vscode расширение грамматики времени выполнения? - PullRequest
0 голосов
/ 06 марта 2020

Я хотел бы написать и расширение с грамматикой языка. Он предназначен для выполнения rp c запросов к узлу. Запрос будет

method params

Грамматика должна быть динамической c, где ключевыми словами являются method. Они получены путем вызова команды help rp c, она выдаст мне список команд с подписью и описанием. Узел имеет подключаемую архитектуру, которая позволяет добавлять дополнительные команды rp c, поэтому полный список доступных методов не известен, пока я не подключусь к узлу и не введу команду help (плюс он автоматически обновляется для узла изменения версии).

В настоящее время я работаю в автономном режиме в редакторе Monaco, используя поставщика токенов Monarch и дополнительно регистрируя провайдеры hover / code lens / complete / signature. Я хотел бы преобразовать в расширение vscode, но грамматики tm, похоже, загружаются только из файла AFAICT, что было бы неплохо, если бы я мог динамически добавлять ключевые слова во время выполнения, как это можно сделать?

Также в мире Монако я могу позвонить по номеру monaco.editor.tokenize(str, lang), и мне еще предстоит найти эквивалент vscode, это полезно для вышеупомянутых провайдеров.

...