9 lines
34 KiB
JavaScript
9 lines
34 KiB
JavaScript
|
|
import sdbl from './sdbl.mjs'
|
|||
|
|
|
|||
|
|
const lang = Object.freeze(JSON.parse("{\"displayName\":\"1C (Enterprise)\",\"fileTypes\":[\"bsl\",\"os\"],\"name\":\"bsl\",\"patterns\":[{\"include\":\"#basic\"},{\"include\":\"#miscellaneous\"},{\"begin\":\"(?i:(?<=[^.а-яё\\\\w]|^)(Процедура|Procedure|Функция|Function)\\\\s+([0-9_a-zа-яё]+)\\\\s*(\\\\())\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.bsl\"},\"2\":{\"name\":\"entity.name.function.bsl\"},\"3\":{\"name\":\"punctuation.bracket.begin.bsl\"}},\"end\":\"(?i:(\\\\))\\\\s*((Экспорт|Export)(?=[^.а-яё\\\\w]|$))?)\",\"endCaptures\":{\"1\":{\"name\":\"punctuation.bracket.end.bsl\"},\"2\":{\"name\":\"storage.modifier.bsl\"}},\"patterns\":[{\"include\":\"#annotations\"},{\"include\":\"#basic\"},{\"match\":\"(=)\",\"name\":\"keyword.operator.assignment.bsl\"},{\"match\":\"(?i:(?<=[^.а-яё\\\\w]|^)(Знач|Val)(?=[^.а-яё\\\\w]|$))\",\"name\":\"storage.modifier.bsl\"},{\"match\":\"(?<=[^.а-яё\\\\w]|^)((?<==)(?i)[0-9_a-zа-яё]+)(?=[^.а-яё\\\\w]|$)\",\"name\":\"invalid.illegal.bsl\"},{\"match\":\"(?<=[^.а-яё\\\\w]|^)((?<==\\\\s)\\\\s*(?i)[0-9_a-zа-яё]+)(?=[^.а-яё\\\\w]|$)\",\"name\":\"invalid.illegal.bsl\"},{\"match\":\"(?i:[0-9_a-zа-яё]+)\",\"name\":\"variable.parameter.bsl\"}]},{\"begin\":\"(?i:(?<=[^.а-яё\\\\w]|^)(Перем|Var)\\\\s+([0-9_a-zа-яё]+)\\\\s*)\",\"beginCaptures\":{\"1\":{\"name\":\"storage.type.var.bsl\"},\"2\":{\"name\":\"variable.bsl\"}},\"end\":\"(;)\",\"endCaptures\":{\"1\":{\"name\":\"keyword.operator.bsl\"}},\"patterns\":[{\"match\":\"(,)\",\"name\":\"keyword.operator.bsl\"},{\"match\":\"(?i:(?<=[^.а-яё\\\\w]|^)(Экспорт|Export)(?=[^.а-яё\\\\w]|$))\",\"name\":\"storage.modifier.bsl\"},{\"match\":\"(?i:[0-9_a-zа-яё]+)\",\"name\":\"variable.bsl\"}]},{\"begin\":\"(?i:(?<=;|^)\\\\s*(Если|If))\",\"beginCaptures\":{\"1\":{\"name\":\"keyword.control.conditional.bsl\"}},\"end\":\"(?i:(Тогда|Then))\",\"endCaptures\":{\"1\":{\"name\":\"keyword.control.conditional.bsl\"}},\"name\":\"meta.conditional.bsl\",\"patterns\":[{\"include\":\"#basic\"},{\"include\":\"#miscellaneous\"}]},{\"begin\":\"(?i:(?<=;|^)\\\\s*([а-яё\\\\w]+))\\\\s*(=)\",\"beginCaptures\":{\"1\":{\"name\":\"variable.assignment.bsl\"},\"2\":{\"name\":\"keyword.operator.assignment.bsl\"}},\"end\":\"(?i:(?=(;|Иначе|Конец|Els|End)))\",\"name\":\"meta.var-single-variable.bsl\",\"patterns\":[{\"include\":\"#basic\"},{\"include\":\"#miscellaneous\"}]},{\"match\":\"(?i:(?<=[^.а-яё\\\\w]|^)(КонецПроцедуры|EndProcedure|КонецФункции|EndFunction)(?=[^.а-яё\\\\w]|$))\",\"name\":\"storage.type.bsl\"},{\"match\":\"(?i)#(Использовать|Use)(?=[^.а-яё\\\\w]|$)\",\"name\":\"keyword.control.import.bsl\"},{\"match\":\"(?i)#native\",\"name\":\"keyword.control.native.bsl\"},{\"match\":\"(?i:(?<=[^.а-яё\\\\w]|^)(Прервать|Break|Продолжить|Continue|Возврат|Return)(?=[^.а-яё\\\\w]|$))\",\"name\":\"keyword.control.bsl\"},{\"match\":\"(?i:(?<=[^.а-яё\\\\w]|^)(Если|If|Иначе|Else|ИначеЕсли|ElsIf|Тогда|Then|КонецЕсли|EndIf)(?=[^.а-яё\\\\w]|$))\",\"name\":\"keyword.control.conditional.bsl\"},{\"match\":\"(?i:(?<=[^.а-яё\\\\w]|^)(Попытка|Try|Исключение|Except|КонецПопытки|EndTry|ВызватьИсключение|Raise)(?=[^.а-яё\\\\w]|$))\",\"name\":\"keyword.control.exception.bsl\"},{\"match\":\"(?i:(?<=[^.а-яё\\\\w]|^)(Пока|While|(Для|For)(\\\\s+(Каждого|Each))?|Из|In|По|To|Цикл|Do|КонецЦикла|EndDo)(?=[^.а-яё\\\\w]|$))\",\"name\":\"keyword.control.repeat.bsl\"},{\"match\":\"(?i:&(НаКлиенте((НаСервере(БезКонтекста)?)?)|AtClient((AtServer(NoContext)?)?)|НаСервере(БезКонтекста)?|AtServer(NoContext)?))\",\"name\":\"storage.modifier.directive.bsl\"},{\"include\":\"#annotations\"},{\"match\":\"(?i:#(Если|If|ИначеЕсли|ElsIf|Иначе|Else|КонецЕсли|EndIf).*(Тогда|Then)?)\",\"name\":\"keyword.other.preprocessor.bsl\"
|
|||
|
|
|
|||
|
|
export default [
|
|||
|
|
...sdbl,
|
|||
|
|
lang
|
|||
|
|
]
|