DSL: различия между версиями

Материал из Wiki FU-Lab
Перейти к навигации Перейти к поиску
Нет описания правки
Строка 19: Строка 19:


== Синтаксис DSL ==
== Синтаксис DSL ==
* ударение - ['],[/']
* ударение - '''['],[/']'''
* цветной текст - [c название_цвета],[/c]
* цветной текст - '''[c название_цвета],[/c]'''
* полужирный текст - [b],[/b]
* полужирный текст - '''[b],[/b]'''
* курсив - [i],[/i]
* курсив - '''[i],[/i]'''
* подчёркивание - [u],[/u]
* подчёркивание - '''[u],[/u]'''
* условные сокращения - [p],[/p]
* условные сокращения - '''[p],[/p]'''
* исключить из индексации - [!trs],[/!trs]
* исключить из индексации - '''[!trs],[/!trs]'''
* зона перевода - [trn],[/trn]
* зона перевода - '''[trn],[/trn]'''
* неосновной текст - [ex],[/ex]
* неосновной текст - '''[ex],[/ex]'''
* язык - [lang id=ай-ди_языка],[/lang]
* язык - '''[lang id=ай-ди_языка],[/lang]'''
* отступ:
* отступ:
- [m1],[/m] - отступ на 1 пункт
- '''[m1],[/m]''' - отступ на 1 пункт;
- [m2],[/m] - отступ на 2 пункта
- '''[m2],[/m]''' - отступ на 2 пункта;
- [m3],[/m] - отступ на 3 пункта
- '''[m3],[/m]''' - отступ на 3 пункта;
...
...
- [m9],[/m] - отступ на 9 пунктов
- '''[m9],[/m]''' - отступ на 9 пунктов
* гиперссылка - [ref],[/ref]
* гиперссылка - '''[ref],[/ref]'''

Версия от 10:01, 13 августа 2012

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-словарей

Рассмотрим создание DSL-словаря на примере марийско-русского словаря на основе Словаря марийского языка в 10-томах (1990-2005), изданного «Марийским научно-исследовательским институтом языка, литературы и истории имени В.М. Васильева» (МарНИИЯЛИ). Пользователю, работающему в Unix-подобных системах (Linux, Mac OS и т.д.), удобнее работать с текстами в UTF-8, текстовый редактор может быть любым, например, gedit. После того, как закончили редактировать текст будущего dsl-словаря, например, marirus.txt, сохраните его с расширением .dsl в кодировке UTF-16:

Marirus.png

Синтаксис DSL

  • ударение - ['],[/']
  • цветной текст - [c название_цвета],[/c]
  • полужирный текст - [b],[/b]
  • курсив - [i],[/i]
  • подчёркивание - [u],[/u]
  • условные сокращения - [p],[/p]
  • исключить из индексации - [!trs],[/!trs]
  • зона перевода - [trn],[/trn]
  • неосновной текст - [ex],[/ex]
  • язык - [lang id=ай-ди_языка],[/lang]
  • отступ:

- [m1],[/m] - отступ на 1 пункт; - [m2],[/m] - отступ на 2 пункта; - [m3],[/m] - отступ на 3 пункта; ... - [m9],[/m] - отступ на 9 пунктов

  • гиперссылка - [ref],[/ref]