Что нового

Написать программу, помогающую автоматически русифицировать иностранные скрипты

lemonia

Новичок
Сообщения
120
Репутация
0
AutoIT 3.3.14.5
Это нужно для русифицирования разных медицинских экспертных систем. То есть программ, ведущих с пользователем диалог и предлагающих решение в зависимости от ответов. В тексте теги для Python. Написать кроме этого можно для других языков также, которые Вы знаете (так как экспертные системы пишут на разных языках и можно русифицировать исходники с гитхаба, а конкретно программы в файлах ещё пишут на Prolog и Clips). Комментарии тоже можно русифицировать, а можно и нет.
Теги, в которых в Python может быть текст
Два вида кавычек:
print('text')
print("text")
input('text')
input("text")
input(int('input nomber: '))
input(float('input nomber: '))
Также в этих тегах может быть пусто:
print('')
print("")
input('')
input("")
print(' ')
print(" ")
input(' ')
input(" ")
В python 2.x применяется для этих целей raw_input , а не input (он в Python 3.x)
Программа из тегов должна извлекать в другой файл построчно фразы, приделывая перед каждым фрагментом порядковый номер. Затем засуну этот текст в компьютерный переводчик. Потом файл с переводом скармливать программе и она обратно чтобы засунула переведенные строки в print и input. При этом наверное лучше, чтобы рядом с иностранным текстом был русский в готовом варианте, чтобы если будет в глаза бросаться ошибка, можно было по исходному тексту понять, что на самом деле имелось в виду.
Можно сделать для обработки одного файла или для нескольких, находящихся в папке.
В тегах могут быть вставки форматирования чисел с %d, %i, %.f, %g, .format , как в других языках. Это можно пока не рассматривать, так как в экспертных системах часто не применяется.
Комментарии в Python обозначаются:
#строка с комментарием или часть строки

"""
Многострочный
комментарий
"""
Сообщение автоматически объединено:

У меня Windows XP. Пример программы, написанной для этой операционной системы.
Код:
Const $FR_dir = "E:\Program Files\ABBYY FineReader 8.0 Professional Edition\"
Run($FR_dir&"FineReader.exe")
AutoItSetOption ( "WinTitleMatchMode" , 2 )
$search = FileFindFirstFile("*.pdf")
If $search = -1 Then
 MsgBox(0, "Error", "No pdf files")
 Exit
EndIf
While 1
 $file = FileFindNextFile($search)
 If @error Then ExitLoop
 $file_name= StringTrimRight($file, 4); имя файла без расширения ".pdf"
WinWaitActive("ABBYY")
SendKeepActive("ABBYY")
Send("^n", 0); новый пакет
Send("!f") ;
Send("v")
 WinWaitActive("Save")
 Sleep(500)
 ControlSetText ( "Save", "", "Edit1", @WorkingDir&"\"&$file_name ); создаем папку пакета
 Sleep(500)
 Send("{ENTER}")
 Sleep(500)
 Send("^o")
 Sleep(500)
 ControlSetText ( "Open", "", "Edit1", @WorkingDir&"\"&$file ); открытие и распознавание pdf файла
 Send("{ENTER}")
 WinWaitClose("Adding")
 Sleep(500)
 WinWaitActive("ABBYY")
 Sleep(500)
 Send("^+R")
 WinWaitClose("Reading")
 Sleep(500);
 WinWaitActive("ABBYY")
 Sleep(1000);
 Send("^s")
 WinWait("Save")
 Sleep(500);
 ControlSetText ( "Save", "", "Edit1", @WorkingDir&"\"&$file_name&"\"&$file_name ); сохраняем результаты распознавания в папку пакета
 Send("{ENTER}")
 Sleep(500);
 WinWaitClose("Saving")
 Send("!f")
 Send("c") ;Закрываем пакет
WEnd

FileClose($search)

Сообщение автоматически объединено:

"""Это тоже многострочный
комментарий"""
Сообщение автоматически объединено:

Вот для этого можно не делать, так как возможно такой вариант не встретится.
s2 = """Бывает ещё такой формат
записи строковых констант"""
 
Последнее редактирование:
Верх