Visual Studio Code / Atom Editor - Подсветка синтаксиса с помощью функции / объекта - PullRequest
0 голосов
/ 04 февраля 2019

Можно ли программно написать плагин для поддержки синтаксиса языка?Я имею в виду, чтобы получить содержимое текущего открытого файла в мою программу и вернуть структуру данных с синтаксическим токеном?Что-то вроде:

editor.onChange((fileContent) => {
    return tokenizeForVSCode(fileContent);
    // return tokenizeForAtome(fileContent);
});

РЕДАКТИРОВАТЬ:

Чтобы улучшить мой вопрос ... Я хочу использовать функцию, которая получает содержимое файла (например, открытый в настоящее время файл js) и затем возвращаетобъект, который сообщает vscode / atom, как выделить синтаксис в этом файле.

Я знаю, что это обычно делается с помощью регулярных выражений в файле .tmLanguage.json.Но я хотел бы использовать пропрограмму, которая производит массив токенов или AST.Что-то вроде:

[
    { "type": "keyword", "position": 1, "source": "if",...},
    { "type": "operator", "position": 13, "source": "+",...},
]

Это возможно в vscode или атомных плагинах?И если ДА: как должна выглядеть структура объекта?

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