问题标签 [monaco-editor]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
monaco-editor - 如何以编程方式或其他方式在 monaco 编辑器上设置“tabindex”?
我想知道是否有办法以编程方式或其他方式在编辑器上设置“tabindex”。在我的应用程序中,monaco 编辑器是一个相当复杂的表单的一部分(位于常规 HTML 表单字段元素之间),我需要在表单字段元素上定义 tabindex 属性。我相信编辑器上的 tabindex 设置为“0”。它产生的问题是,一旦我跳出编辑器,它就会乱序跳转到 HTML 元素。
例如,请看下面的图片。
理想情况下,当我在编辑器中按 tab 键时,焦点应该放在“LOCKED UNTIL”(1)的文本框上,当我在编辑器中按 shift+tab 键时,焦点应该放在“MESSAGE ID”的文本框上”(二)。但是,按 tab 键会将焦点放在拆分器 (3) 上,因为拆分器和编辑器的 tabindex 均为“0”。
目前为了解决这个问题,我正在keyDown
编辑器上捕获事件并手动设置焦点。
我想知道是否有更好的方法来处理这个问题?
monaco-editor - 如何手动缩进(格式化)我的 monaco-editor 的代码?
将代码导入编辑器后,我在格式化代码时遇到了一些问题。
我试过了
但getAction
只有回报null
。
我的编辑器输入为monaco.editor.ICommonEditor
.
从来没有太多的经验monaco-editor
,所以我可能做错了什么。
有什么建议么?
javascript - 无法隐藏摩纳哥编辑器
我的页面中有一个摩纳哥编辑器。现在,我需要不时隐藏/显示它。但我意识到它不能很好地使用ng-show
,ng-hide
或(见下面的截图) ng-if
。有没有人有办法解决吗?
https://jsbin.com/mepupagisi/4/edit?html,输出
编辑1:我仍然看到一条细线:
javascript - 获取/恢复 Monaco 编辑器撤消和重做堆栈
我想创建一个系统来存储Undo&Redo stack
摩纳哥编辑器的。
为什么?:我有一个摩纳哥实例,我在其中进行了一些更改。然后我必须处理该实例并打开一个新实例。在这里,我想恢复与前一个实例相同的堆栈状态。
问题:我怎样才能得到和恢复Undo&Redo stack
?
更新:
当我处理 Monaco 编辑器实例时,JavaScript 环境可能会被完全破坏。它集成在C#
能够与之通信的环境中JS
。我的目标是将其存储Monaco Editor model
或C#
序列化。
javascript - 如何在摩纳哥编辑器中插入片段?
我在网页中使用 Monaco Editor v 0.10.1,想知道是否有人知道是否可以添加一组将在命令面板中弹出的片段 -> 插入片段,就像 Visual Code 编辑器一样。
monaco-editor - 如何在 monaco 编辑器中删除 javascript 模式的关键字
在我尝试构建的项目中,我使用了编辑器代码。我尝试使用 monaco 编辑器。
我希望编辑器支持的主要内容是:
- 标记我的自定义语言关键字、功能等...
- 我的自定义语言的智能感知。
- 预览功能参数。
所以现在:
我仔细查看了官方网站上的 monaco editor examples。
结果与我寻找的结果非常接近,但对我来说主要问题是虽然我将 noLib 选项添加到我的代码中,但还有其他关键字,请参见下图。 https://imgur.com/pwDikZI
- 其他的东西有效。见图片https://imgur.com/0c4K8wE
- 我知道因为我使用了 javascript/typescript 语言模式,所以标记有问题。
这是我写的代码:
我的问题是:
- 有一种方法可以禁用 javascript/typescript 附加关键字,以便用户只能看到我的自定义语言?
- 有一种方法可以像在 monaco 编辑器示例中那样使用自定义语言并添加功能预览,就像我在上面显示的图片中一样?(不使用 js/ts 语言)。
monaco-editor - 在 Monaco 编辑器中以编程方式重置标记化状态
我创建了一个TokensProvider
为我的自定义语言提供语法突出显示。这有效,但它仅在编辑文本时重绘。
问题是 - 我的自定义语言取决于外部上下文,即使文本没有变化。因此,即使文本没有改变,我也需要触发语法高亮重绘。
我怎样才能做到这一点?
javascript - 如何在摩纳哥的自定义函数中自动完成参数?
我目前想使用带有 PHP 的 monaco 编辑器,并且我想通过自动完成来扩展它,用于常规 PHP 函数以及自定义函数。
虽然函数的自动完成功能在我早期的原型上运行良好,但自动完成参数不起作用。参见小提琴的例子: https ://jsfiddle.net/95aq6497/2/
目前,只有函数 substr 被提供为自动完成并且正在工作。但是,由 registerSignatureHelpProvider 定义的参数的帮助器不起作用:
});
该功能甚至没有执行,因为 console.log 根本没有触发。我错过了什么?通过一个函数类似地扩展 javascript 像这样工作得很好,但它不适用于 PHP,那么这里有什么不同呢?
syntax-highlighting - 摩纳哥编辑器(Monarch)上的语法着色,遇到新行时的'@popall'
我目前正在使用Monarch为 Monaco Editor 编写语法荧光笔。
我使用 是states
为了根据它们在行中的位置来不同地处理令牌。
我想做的是@popall
到达行尾时的状态,因为所有行都是独立的。
现在我发现的唯一方法是在所有规则的末尾添加条件,如下所示:
这显然是多余的,因为我的 50 多条规则都有这种情况。
这样做的干净方法是什么?