Подсветка синтаксиса - использование одного ключевого слова в разных областях в зависимости от начала строки - PullRequest
0 голосов
/ 18 января 2019

Я определил определение языка для пользовательского языка. Для подсветки синтаксиса я определил некоторые области действия в шаблонах:

"patterns":
[
    {
        "match": "(?i)\\b((IGNORE)|(OVERWRITE)|(SEQUENCE))\\b",
        "name": "keyword.option.ths"
    },
    {
        "match": "(?i)\\b((NUMBER)|(DATE)|(SEQUENCE)|(STRING))\\b",
        "name": "keyword.datatype.ths"
    }
]

Как видите, ключевое слово SEQUENCE появляется в обеих областях keyword.option.ths и keyword.datatype.ths. Когда применяются цвета, SEQUENCE всегда получает цвет, связанный с keyword.option.ths. Я хотел бы, чтобы эта область использовалась только в том случае, если первый непробельный символ в строке - @.

Я пытался изменить регулярное выражение для keyword.option.ths на

(?i)^\\s*@.+\\b((IGNORE)|(OVERWRITE)|(SEQUENCE))\\b

Но тогда ничего не узнается.

Есть ли возможность добиться того, чего я хочу?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...