TagLinks - yozhic/DSL-Reference GitHub Wiki
Общие характеристики
Тэг << >>
Тэг [ref] [/ref]
Тэг [url] [/url]
В DSL предусмотрено использование ссылок трёх видов:
- между статьями в пределах одного словаря;
- из одного словаря в другой словарь;
- из словаря на внешний интернет-адрес.
В словарных карточках ссылки выделяются цветом, по умолчанию тёмно-синим
На внешний вид ссылок влияют только тэги надстрочного [sup] и подстрочного [sub] индекса. Применение других тэгов форматирования (начертания и цвета) игнорируется.
Щелчок ЛКМ по ссылке открывает целевой объект в другом окне (или вкладке). В GoldenDict щелчок ЛКМ открывает ссылку в текущей вкладке, а с зажатым Ctrl — в другой вкладке.
Содержимое тэгов ссылок автоматически исключается из индексации.
Размещение других тэгов в зоне действия тэгов ссылок запрещено правилами синтаксиса.
Назначение: Указание ссылки на заголовок другой статьи в пределах текущего (активного в данный момент) словаря.
Использование: В теле словарных статей. Также допускается использование в заголовках.
В заголовках необходимо скрывать дескрипторы при помощи команды несортируемой части { }, иначе они отобразятся как обычный текст в списке найденных слов.
Отображение в карточках: Выделяется цветом, по умолчанию тёмно-синим
Синтаксис: Правильное оформление: <<_адресат_>>. В качестве адресата указывается заголовок целевой статьи.
Если целевой заголовок содержит альтернативную часть в круглых скобках ( ), то в качестве адресата необходимо указывать один из вариантов заголовка без скобок. В противном случае ссылка станет неработоспособной. Например, для заголовка вдохновить(ся), правильной записью будет <<вдохновить>> или <<вдохновиться>>, а ⛔<<вдохновить(ся)>> — неработоспособной.
Если целевой заголовок содержит несортируемую часть в фигурных скобках { }, то в адресате таковая не указывается. В противном случае ссылка станет неработоспособной. Например, для целевого заголовка {«}Современник{»}, правильной записью будет <<Современник>>, а ⛔<<«Современник»>> и ⛔<<\{«\}Современник\{»\}>> — неработоспособными.
Если целевой заголовок содержит экранированные круглые \( \) или фигурные \{ \} скобки (в литеральном представлении), то в адресате их необходимо указать: можно вместе с символами экранирования, можно без них. В противном случае ссылка станет неработоспособной. Например, для целевого заголовка вдохновить\(ся\), правильной записью будет <<вдохновить(ся)>> или <<вдохновить\(ся\)>>, а ⛔<<вдохновить>> и ⛔<<вдохновиться>> — неработоспособными.
Размещение других тэгов в зоне действия << >> не допускается.
Особенности: Адресаты чувствительны к регистру знаков. Например, если в словаре есть статья с заголовком иван-да-марья, то ссылка ⛔<<Иван-да-Марья>> работать не будет.
В зоне действия << >> действуют правила сокращения пробелов: начальные и конечные удаляются, срединные сокращаются до единичных. Иными словами, ссылки << хлеб да соль>> и <<хлеб да соль >> — одинаково работоспособны, и обе откроют заголовок хлеб да соль. Однако злоупотреблять этой особенностью не рекомендуется. Аккуратно оформленные адресаты облегчают редактирование словаря и его конвертацию в другой формат, особенно если словарь — большого объёма.
На внешний вид данного тэга влияют только тэги надстрочного [sup] и подстрочного [sub] индекса. Применение других тэгов форматирования (начертания и цвета) игнорируется.
Пример ссылки << >> — Запись в DSL:
адгезивы
[m1]То же самое, что и <<клеи>> — вещества, обладающие способностью соединять материалы.[/m]
Пример ссылки << >> — Вид в словарной карточке:

Замечания: При компилировании словаря ссылки данного тэга проверяются на работоспособность, т.е. проверяется наличие целевых заголовков. Недействующие ссылки перечисляются в файле отчёта DDE, если при компилировании включена опция Output warnings.
История: Использование тэга наблюдается в словарях Lingvo 5.
Назначение: Указание ссылки на заголовок другой статьи. Другая статья может располагаться как в пределах текущего словаря (активного в данный момент), так и за его пределами, в другом словаре.
Этимология: ref — сокращение от англ. reference (ссылка).
Использование: В теле словарных статей. Также допускается использование в заголовках.
В заголовках необходимо скрывать дескрипторы при помощи команды несортируемой части { }, иначе они отобразятся как обычный текст в списке найденных слов.
Отображение в карточках: Выделяется цветом, по умолчанию тёмно-синим
Синтаксис: Тэг существует в двух формах: базовой и с атрибутами.
-
Базовая:
[ref]адресат[/ref]. В качестве адресата используется заголовок целевой статьи.
-
С атрибутом dict:
[ref dict="значение"]адресат[/ref]. В качестве значения используется «внутреннее» наименование целевого словаря в том виде, как оно указано в его директиве#NAME. В качестве адресата используется заголовок целевой статьи. В значениях допускается использовать только символы из таблицы ASCII.
- 🥷 С недокументированным атрибутом target:
[ref target="адресат"]любой текст[/ref]. В качестве адресата используется заголовок целевой статьи.
Примеры ссылок REF — Запись в DSL:
адгезивы
[m1]То же самое, что и [ref]клеи[/ref] — вещества, обладающие способностью соединять материалы.[/m]
[m1][p]См. тж.[/p] [ref dict="Справочник реставратора (Ru-Ru)"]адгезивы в реставрации[/ref][/m]
[m1][p]См. тж.[/p] [ref target="самостоятельное приготовление"]рецептуры приготовления адгезивов[/ref][/m]
Примеры ссылок REF — Вид в словарной карточке:

При оформлении атрибутов для обрамления значений и адресатов допустимо использовать только двойные кавычки ". Использование в этих целях кавычек одинарных ' или обратных апострофов ` компилятором отвергается.
Если целевой заголовок содержит альтернативную часть в круглых скобках ( ), то в качестве адресата необходимо указывать один из вариантов заголовка без скобок. В противном случае ссылка станет неработоспособной. Например, для заголовка вдохновить(ся), правильной записью будет [ref]вдохновить[/ref] или [ref]вдохновиться[/ref], а ⛔[ref]вдохновить(ся)[/ref] — неработоспособной. Правило также в силе для адресатов атрибута target.
Если целевой заголовок содержит несортируемую часть в фигурных скобках { }, то в адресате таковая не указывается. В противном случае ссылка станет неработоспособной. Например, для целевого заголовка {«}Современник{»}, правильной записью будет [ref]Современник[/ref], а ⛔[ref]«Современник»[/ref] и ⛔[ref]\{«\}Современник\{»\}[/ref] — неработоспособными. Правило также в силе для адресатов атрибута target.
Если целевой заголовок содержит экранированные круглые \( \) или фигурные \{ \} скобки (в литеральном представлении), то в адресате их необходимо указать: можно вместе с символами экранирования, можно без них. В противном случае ссылка станет неработоспособной. Например, для целевого заголовка вдохновить\(ся\), правильной записью будет [ref]вдохновить(ся)[/ref] или [ref]вдохновить\(ся\)[/ref], а ⛔[ref]вдохновить[/ref] и ⛔[ref]вдохновиться[/ref] — неработоспособными. Правило также в силе для адресатов атрибута target.
В адресатах атрибута target необходимо экранировать метасимволы: квадратных скобок [ ], двойных угловых скобок << >>, «решётки» #, «эт» @, тильды ~. Символы одинарных угловых скобок < > и «крышки» ^ в target-адресатах воспринимаются литерально, экранировать их не нужно. Символ двойной кавычки " передать в target-адресате невозможно, любая попытка его литерального представления (экранирование, удваивание) компилятором отвергается.
Служебные комментарии {{ }} в адресатах атрибута target обрабатываются так же, как и в любом другом месте DSL, т.е. игнорируются («удаляются») при компилировании.
Размещение других тэгов в зоне действия [ref] [/ref] не допускается.
Особенности: Адресаты чувствительны к регистру знаков. Например, если в словаре есть статья с заголовком иван-да-марья, то ссылка ⛔[ref]Иван-да-Марья[/ref] работать не будет.
На внешний вид данного тэга влияют только тэги надстрочного [sup] и подстрочного [sub] индекса. Применение других тэгов форматирования (начертания и цвета) игнорируется.
В зоне действия базовой формы [ref] [/ref] действуют правила сокращения пробелов: начальные и конечные удаляются, срединные сокращаются до единичных. Иными словами, ссылки [ref] хлеб да соль[/ref] и [ref]хлеб да соль [/ref] — одинаково работоспособны, и обе откроют заголовок хлеб да соль. Однако злоупотреблять этой особенностью не рекомендуется. Аккуратно оформленные адресаты облегчают редактирование словаря и его конвертацию в другой формат, особенно если словарь — большого объёма.
В адресатах атрибута target target="адресат" сокращение пробелов происходит по-другому: срединные сокращаются до единичных, а начальные и конечные сокращаются, но не удаляются. Поэтому ссылка [ref target="хлеб да соль"]фразеологизм[/ref] будет работать, а ⛔[ref target=" хлеб да соль "]фразеологизм[/ref] — нет. Иными словами, в target-адресатах наличие начальных и конечных пробелов может привести к неработоспособности ссылки.
На target-адресаты не распространяется ограничение DSL в 255 символов на максимальную длину «слова». С другой стороны компилятор устанавливает для них ограничение в 1024 символа. Но поскольку заголовки длиннее 246 символов в DSL недопустимы, превышение этого порога в target теряет свой практический смысл, следовательно и введение других ограничений, превышающих 246, становится избыточным. По-видимому, этот момент в DSL недостаточно полно проработан, что, впрочем, объясняет недокументированность атрибута target.
Замечания: В ранних версиях Lingvo при компилировании DSL ссылки данного тэга не проверялись на работоспособность. Такая проверка была реализована начиная с версии x5 только для ссылок локального действия (в пределах текущего словаря), т.е. для форм базовой и с атрибутом target.
В официальном справочном руководстве к Lingvo x6 говорится об отсутствии проверки ссылок в данном тэге. Эта информация ошибочна — компилятор x6 осуществляет такую проверку в пределах текущего словаря и создаёт отчёт о недействующих ссылках в файле DDE.
Из-за ограничения на использование не-ASCII-символов в значениях атрибута dict, в ссылках этой формы невозможно обратиться к словарям с нелатинскими наименованиями. Это существенно сужает круг использования данного атрибута и нивелирует его практическую пользу.
История: Формы базовая и с атрибутом dict были введены в употребление в Lingvo 8. Форма с атрибутом target впервые появилась в Lingvo x5 (15.0).
Назначение: Указание ссылки на внешний адрес страницы в интернет или электронной почты.
Этимология: url — англ. аббревиатура Uniform Resource Locator (определитель местонахождения ресурса).
Использование: В теле словарных статей. Также допускается использование в заголовках.
В заголовках необходимо скрывать дескрипторы при помощи команды несортируемой части { }, иначе они отобразятся как обычный текст в списке найденных слов.
Отображение в карточках: Выделяется цветом, по умолчанию тёмно-синим
Синтаксис: Тэг существует в двух формах: базовой и с атрибутом.
-
Базовая:
[url]адресат[/url]. В качестве адресата используется адрес страницы в интернет или электронной почты.
- 🥷 С недокументированным атрибутом target:
[url target="адресат"]любой текст[/url]. В качестве адресата используется адрес страницы в интернет или электронной почты.
Наличие лишних пробелов в адресатах обеих форм приведёт к неработоспособности ссылки либо в словарной программе, либо в браузере.
При оформлении target для обрамления адресатов допустимо использовать только двойные кавычки ". Использование в этих целях кавычек одинарных ' или обратных апострофов ` компилятором отвергается.
В адресатах атрибута target необходимо обращать внимание на экранирование часто используемых в URL метасимволов решётки # и эт @. Особое внимание следует уделить экранированию тильды ~, поскольку если этого не сделать, компилятор без предупреждений отклонирует на её место заголовок, и тем самым превратит ссылку в несуществующую. Следующие символы обычно не встречаются в URL, но если случайно попадут в адресат, вызовут протест компилятора: скобки квадратные [ ] и двойные угловые << >>. Символ двойной кавычки " передать в target-адресате невозможно, любая попытка его литерального представления (экранирование, удваивание) компилятором отвергается.
Адрес интернет-страницы должен начинаться с www. или http://, или https://, иначе ссылка станет неработоспособной.
Примеры ссылок URL — Запись в DSL:
адгезивы в реставрации
[m1]Кроме природных животных клеев для укрепления живописи в последнее время применяют различные составы на основе эфиров целлюлозы.[/m]
[m0]\ [/m]
[m1][i]Подробнее об адгезивах [p]см.[/p] в статье[/i]: [url target="http://volrest.ucoz.ru/publ/khimija_v_restavracii/adgezivy_dlja_ukreplenija_krasochnogo_sloja_i_dublirovanija_kholsta/8-1-0-30"]Адгезивы для укрепления красочного слоя[/url][/m]
[m1][i]Подробнее о реставрации [p]см.[/p][/i]: Сайт «Реставрация»: [url]http://volrest.ucoz.ru/[/url][/m]
Примеры ссылок URL — Вид в словарной карточке:

Ссылка на электронный почтовый адрес должна начинаться с приставки mailto: непосредственно за которой указывается почтовый адрес. Символ эт @ в адресе необходимо экранировать.
Ссылки с адресом электронной почты — Запись в DSL:
Контакты
[m1]С автором-составителем можно связаться по адресу:[/m]
[m3][url]mailto:author\@gmail.com[/url][/m]
[m1]Замечания и пожелания по словарю присылайте по адресу:[/m]
[m3][url target="mailto:dictionaries\@gmail.com?subject=SUBJECT"]dictionaries\@gmail.com[/url][/m]
Ссылки с адресом электронной почты — Вид в словарной карточке:

Как видно из примера выше, почтовый адрес можно дополнять конструкцией для автоматического заполнения темы письма. Для этого после завершающей доменной части адреса нужно набрать ?subject=SUBJECT, где вместо SUBJECT указать свою тему. В текущей версии Lingvo (x6) работоспособны только темы, набранные латинскими символами, при этом в тексте темы возможно использование пробелов.
Особенности: При щелчке по ссылке на интернет-страницу запускается браузер, а по ссылке на электронный адрес — почтовая программа, установленные в системе по умолчанию.
Ссылки на интернет-страницы не чувствительны к регистру знаков. Например, вариант [url]www.lingvoda.ru[/url] будет равнозначен варианту [url]WWW.LingvoDa.Ru[/url].
На target-адресаты не распространяется ограничение DSL в 255 символов на максимальную длину «слова». Однако, компилятор устанавливает для них ограничение в 1024 символа. Возможно, этот порог в DSL продиктован внутренними техническими причинами, поскольку известные внешние ограничения на длину URL начинаются от 2000 символов. Вывод: если словарь планируется использовать в Lingvo, то адресат длиннее 1024 символов не пропустит компилятор, если же цель — GoldenDict, то разумней ориентироваться на порог 2000.
На внешний вид данного тэга влияют только тэги надстрочного [sup] и подстрочного [sub] индекса. Применение других тэгов форматирования (начертания и цвета) игнорируется.
Замечание: В ранних версиях DSL по 14 (x3) включительно, до появления атрибута target, в силу ограничений DSL и по эстетическим причинам для указания в ссылках длинных интернет-адресов приходилось их укорачивать с помощью таких сервисов, как https://clck.ru, https://tinyurl.com и других URL shorteners. В современном DSL (16.0) насущная необходимость в этом отпала, однако пользоваться такой возможностью никто не запрещал. В качестве примера: вот как выглядит ссылка длиной в 410 символов после укорачивания: https://clck.ru/34s9fx.
История: Базовая форма тэга введена в употребление в Lingvo 6.5. Форма с атрибутом target впервые появилась в Lingvo x5 (15.0).