在 Ace 编辑器中的多个光标上执行方法
Performing methods on multiple cursor in Ace Editor
我正在使用 Ace 编辑器,我只能在单个游标上执行功能,而不能在多个游标上执行功能例如
editor.navigateLineStart();
如果有一个游标,则将光标移动到行首,但如果有多个游标则不会
这可以通过键入(左主页)手动完成因为下面的代码在文档中 ace.js,但我不明白如何将多选操作设置为"forEach",或者这是否有帮助
{name: "gotolinestart",
bindKey: bindKey("Alt-Left|Home", "Command-Left|Home|Ctrl-A"),
exec: function(editor) { editor.navigateLineStart(); },
multiSelectAction: "forEach",
readOnly: true
}
还有一个功能
forEachSelection(String cmd, String args)
http://ace.c9.io/#nav=api&api=editor为每个选择范围执行命令。但我不知道该输入什么参数我认为对于命令,输入是"Gotolinestart",但我也不确定我可以在一个游标上工作但不能用于多个游标的其他函数包括
editor.getSelection().selectLeft();
editor.navigateLeft(args.times);
在 ACE 编辑器中使用多个光标和选择的函数的任何示例都将非常有帮助。
似乎
文档中有一个错误,它应该说forEachSelection({exec:function}, arg:any)
arg可以是任何东西,它只是传递给cmd.exec
此外,它仅在有多个选择时才有效,因此您需要执行以下操作
if (editor.selection.rangeCount > 1)
editor.forEachSelection({exec: function() {
editor.editor.navigateLeft(10);
}})
} else
editor.editor.navigateLeft(10);
另一种方法是使用 execCommand
editor.execCommand({
exec:function() {
editor.selection.selectLeft()
},
multiSelectAction: "forEach"
})
相关文章:
- 无法在通过jQuery的ajax加载的页面中执行javascript
- JavaScript执行暂时挂起页面
- 如何在ReactJS JSX中执行嵌套的if-else语句
- 当js函数's已执行
- 哪个先执行
- 在使用Polymer'加载所有json文件后执行方法;s的核心ajax
- HTML表单提交时未执行外部函数
- 在Safari执行javascript之前对其进行修改
- Amd,希望确保某个东西总是最后执行
- 在Windows 10中自动执行例行程序(主要与浏览器交互)
- 递归使用 eval() 是检查程序执行的好方法吗?
- 如何做到这一点,使代码在不传递条件后执行函数
- 如何在执行此特定onclick事件时执行JavaScript函数
- 如何在从浏览缓存加载页面时执行javascript
- 自定义函数中的光标位置
- 在光标上执行 for Each 函数时出现更多错误
- 在 Ace 编辑器中的多个光标上执行方法
- 在执行同步ajax请求之前,在单击按钮时显示等待光标
- 为什么我不能把光标改成“进度”呢?在用jQuery执行一些脚本之前
- Javascript表单验证未执行,输入文本框高度光标定位未设置为顶部