Допустим, у нас есть язык программирования, который использует файлы с различными расширениями, каждый из которых имеет некоторые символы, которые указывают на язык, но продолжается дополнительными символами, которые указывают тип содержимого. Взять, например, из текущего languages.yml :
Xojo:
type: programming
extensions:
- ".xojo_<b>code</b>"
- ".xojo_<b>menu</b>"
- ".xojo_<b>report</b>"
- ".xojo_<b>script</b>"
- ".xojo_<b>toolbar</b>"
- ".xojo_<b>window</b>"
tm_scope: source.vbnet
ace_mode: text
language_id: 405
Для обобщения и во избежание необходимости обновлять languages.yml всякий раз, когда добавляется новый тип контента, было бы естественно использовать подстановочные знаки:
Xojo:
type: programming
extensions:
- ".xojo_<b>*</b>"
tm_scope: source.vbnet
ace_mode: text
language_id: 405
Вот еще один пример:
VHDL:
type: programming
color: "#adb2cb"
extensions:
- ".vhdl"
- ".vh<b>d</b>"
- ".vh<b>f</b>"
- ".vh<b>i</b>"
- ".vh<b>o</b>"
- ".vh<b>s</b>"
- ".vh<b>t</b>"
- ".vh<b>w</b>"
ace_mode: vhdl
codemirror_mode: vhdl
codemirror_mime_type: text/x-vhdl
language_id: 385
Это может быть:
VHDL:
type: programming
color: "#adb2cb"
extensions:
- ".vhdl"
- ".vh<b>?</b>"
ace_mode: vhdl
codemirror_mode: vhdl
codemirror_mime_type: text/x-vhdl
language_id: 385
Разрешает ли Linguist использовать такие шаблоны?