我创建了一个TokensProvider
来为我的自定义语言提供语法高亮显示。这是可行的,但它只在编辑文本时重绘。
问题是--我的自定义语言依赖于外部环境,即使文本没有变化,外部环境也会改变。因此,我需要触发语法高亮重绘,即使文本没有改变。
我怎样才能做到这一点?
发布于 2018-01-29 14:49:57
通过vscode
回购进行挖掘,如下所示:
monaco.editor.getModel(url)._resetTokenizationState()
不幸的是,这看起来像是一个没有文档的API,可能会与未来的版本决裂,所以一个公共API将是很好的。
发布于 2022-03-25 01:14:07
在摩纳哥编辑器版本0.33.0 (可能是以前的版本)中,该方法已被移动到TextModel的成员对象TextModel中。在那里你必须用
monaco.editor.getModel(url)._tokenization._resetTokenizationState()
https://stackoverflow.com/questions/48508973
复制