编辑器适配屏幕缩放
Diff Editor
- 通过
monaco.editor.createDiffEditor方法创建 diff editor 实例; - 通过
diffEditorIns.setModel方法设置 diff 的原始值和现在的值diffEditorIns.setModel({original: monaco.editor.createModel(originalValue, 'javascript'),modified: monaco.editor.createModel(nowValue, 'javascript'),});
更新编辑器 options
通过 updateOptions 来更新,比如
editorIns.updateOptions({readOnly: true,});
自定义语言高亮
如果是自定义的语言需要先注册自定义语言名称
monaco.languages.register({ id: 'configItem' });
定义高亮规则 setMonarchTokensProvider 文档 ```typescript // 如果是已有语言高亮则不需要第一步直接设置高亮规则就可以 monaco.languages.setMonarchTokensProvider(‘yaml’, { tokenizer: { root: [[tokenRegx, { token: ‘keyword’ }]], }, });
// 自定义语言 monaco.languages.setMonarchTokensProvider(‘configItem’, { tokenizer: { root: [[tokenRegx, { token: ‘keyword’ }]], }, });
<a name="iJhC8"></a>###<a name="DCJ8V"></a>### 标记错误通过 `monaco.editor.setModelMarkers` 方法标记位置点,[文档](https://microsoft.github.io/monaco-editor/api/modules/monaco.editor.html#setmodelmarkers)```typescriptmonaco.editor.setModelMarkers(model,'javascript',[{startLineNumber: 2,endLineNumber: 2,startColumn: 1,endColumn: 10,severity: monaco.MarkerSeverity.Error,message: `语法错误`,}],);
