|
|
|
Существует два способа создания пользовательских словарей для Lingvo:
Что такое язык DSL и как им пользоваться. DSL (Dictionary Specification Language) – язык, разработанный компанией ABBYY для разметки словарных статей в соответствии с технологией показа словарей, принятой в Lingvo. Компилятор языка DSL входит в состав ABBYY Lingvo начиная с 6 версии. Таким образом, любой пользователь словаря может создать и распространять свой собственный словарь.
Основное назначение языка DSL - описание того, как показывать словарную статью. Язык не определяет в точности структуру карточки или возможные типы информации. Например, в языке DSL нет понятия "синоним", "лексическое значение" или "синтаксическая модель", но есть понятия "курсив", "ссылка", "подстатья" и т.д.
Словарь может быть создан прямо на языке DSL в виде простого текстового файла. Этот файл следует сохранить в кодировке ANSI или Unicode, а затем изменить расширение файла на dsl.
Пример содержимого исходного файла и соответствующей ему карточки в Lingvo:
словарный[m1][p][i][c][com][lang id=2]прил.[/p] от[/i] [ref]словарь[/ref][/lang][/com][/c][/m]
[m1][trn]lexical; lexicographic[/trn][/m]
[m2][*][ex][lang id=2]богатый словарный запас[/lang] — copious vocabulary[/ex][/*][/m]
[m2][*]- [ref]словарный состав[/ref][/*][/m]
Подробное описание языка DSL, структуры карточек и используемых для форматирования тегов содержится в справке к ABBYY Lingvo.
Макросы для конвертации текста в формат DSL. Однако при создании объемных словарей удобнее использовать базу данных или текст со специальным форматированием, заменяющим теги языка DSL; а затем из этого формата преобразовать в DSL-формат.
Например, для преобразования doc-файлов в dsl-файлы Вы можете воспользоваться специальным макросом DSLConverter. Этот макрос стал победителем конкурса, организованного ABBYY по инициативе пользователей. Автор этого макроса – опытный пользователь Lingvo Назар Кравцив из Львова, создатель десятков словарей для Lingvo, сделанных в формате DSL. Вы набираете текст словаря в редакторе MS Word (при этом важно отформатировать текст словаря в соответствии с правилами, описанными в файле DSL Converter Description.doc), а затем, используя макрос, переводите полученный doc-файл в dsl-файл.
Языки словарей. В Lingvo 12 DSL-компилятор позволяет создавать словари на 30 языках, т.е. в оболочке Lingvo поддержаны отображение всех символов этих языков и сортировка слов по алфавиту (важно правильно указать исходный язык и язык перевода словаря), кроме того, для ряда языков реализована морфологическая поддержка и возможность просмотра\добавления парадигм (словоформ):
| Язык | Сортировка | Морфология | Парадигмы |
| Английский | + | + | + |
| Африкаанс | + | ||
| Баскский | + | ||
| Белорусский | + | ||
| Болгарский | + | + | |
| Венгерский | + | + | |
| Голландский | + | + | |
| Датский | + | + | |
| Индонезийский | + | ||
| Испанский (международная сортировка) |
+ | + | + |
| Испанский (традиционная сортировка) |
+ | + | + |
| Итальянский | + | + | + |
| Китайский | + | ||
| Китайский (традиционное начертание) | + | ||
| Латинский | + | ||
| Немецкий (Новая Орфография) | + | + | + |
| Немецкий | + | + | + |
| Норвежский (Букмол) | + | + | |
| Норвежский (Нюнорск) | + | + | |
| Польский | + | + | |
| Португальский | + | + | |
| Русский | + | + | + |
| Сербский (кириллица) | + | ||
| Суахили | + | ||
| Турецкий | + | + | |
| Украинский | + | + | + |
| Финский | + | + | |
| Французский | + | + | + |
| Чешский | + | + | |
| Шведский | + | + |
Опыт создания пользовательских словарей для Lingvo показал, что можно создавать словари для языков, далеко выходящих за пределы «официального» списка. В их числе такие языки, как армянский, иврит, японский, арабский и многие другие. Для создания словарей на других языках в разметке можно указать либо английский язык, либо любой другой, например суахили. При втором варианте не будет «вмешиваться» языковая морфология и сортировка.