Компилятор словаря экранного переводчика

Формат исходных данных

На вход утилиты подается текстовый файл простого формата:

базовая_форма
   перевод1
   перевод2

базовая_форма
   перевод1

   :

Словарные статьи разделяются одной или несколькими пустыми строками. В одной статье может быть несколько переводов - порядок их следования будет сохранен при выдаче перевода в переводчике.

Комментарии

Если первый символ в строке #, то строка пропускается, что позволяет вставлять комментарии в исходный текст словаря.

Теги

По умолчанию переводы относятся к общей лексике. Также строки переводов могут помечаться тегами - обычно это тематика, в рамках которой актуален вариант перевода:

[tag]тематика[/tag]перевод

В ходе сборки словаря компилятор сформирует справочник использованных тэгов и сохранит его вместе с самими переводами. Программа экранного перевода после загрузки словаря прочитает этот справочник и отобразит его элементы в выпадающем списке в главном окне. Таким образом, разработчик словаря переводов сохраняет практически полную свободу выбора тегов для своего варианта словаря - теги нигде не зашиты жестко.

Кодировка

Крайне желательно использовать кодировку utf8 для исходного файла - это позволяет пересобирать словарь переводов на любом компьютере без необходимости учитывать язык текущего пользователя.

Запуск компилятора

Формат командной строки:

ThesaurusCompiler исходный_текстовый_файл trans.bin

Результатом компиляции будет файл  словаря переводов trans.bin. Это имя  не следует менять, так как экранный переводчик ожидает найти именно его.

Список словоформ

Ряд модулей переводчика нуждаются в полном справочнике встречающихся словоформ. Если создан словарь переводов, в котором добавлены новые слова, отсутствующие в исходном словаре, то необходимо сформировать также свой справочник словоформ.

Для его сборки используется утилита str2bin, входящая в SDK экранного переводчика. Список словоформ необходимо записать в текстовый файл в кодировке utf-8, одно слова на одной строке.

Затем запускаем сборку:

str2bin -sort входной_текстовый_файл wordforms.bin

Созданный бинарный файл wordforms.bin нужно добавить в подкаталог со своим вариантом словаря - см. далее.

Загрузка своего варианта словаря в переводчике

Доступные для загрузки экранным переводчиком словари описываются в текстовых файлах с расширением *.dict в каталоге программы. Каждый такой файл содержит несколько строк:

отображаемое название словаря

относительный подкаталог для файлов словаря

название исходного языка

Словарь переводов и тезаурус

В отличие от тезауруса, являющегося частью грамматического словаря, словарь переводов ориентирован исключительно на визуальное представление информации. Поэтому в теле статей можно свободно использовать специальные управляющие теги для оформления текста на экране.

Допустимы любые теги языка разметки HTML.

Чтобы сделать исходное текстовое представление и результирующий бинарный файл более компактными, можно использовать синонимы тегов. Все синонимы - то есть их представление в тексте словаря и подставляемый текст - объявляются опять-таки в словаре, в теле специальной словарной статьи .html_tags. Таким образом, составитель словаря свободен в выборе способов верстки.

В качестве поясняющего примера можно посмотреть на результат конвертации русско-английского словаря - исходный текст конвертора содержит генерацию тела служебной статьи .html_tags и демонстрирует применение синонимов тегов. Пример отображения словарной статьи для этого словаря:

англо-русский словарь переводов

Дополнительные материалы

Компилятор грамматического словаря

  © Mental Computing 2010 изменено 16-Oct-10