ACE编辑器在插入短语后选择单词/标记

时间:2015-01-09 18:35:01

标签: javascript ace-editor

我正在玩ACE编辑器,我正在尝试创建一个简单的降价工具栏,其中使用可以插入粗体文本。斜体等。

我在给定按钮上放置了一个事件,一旦点击,我就会在编辑器中插入给定请求的正确标记。例如,粗体标记具有我插入的以下语法:

**bold_text**

我要做的是选择bold_text令牌,以便用户可以立即开始输入粗体内容。

我有ace编辑器实例化,一切正常但我不知道如何在编辑器中找到一个单词并选择它。

我看到ACE有一个名为selectWordselectAWord的方法,但不使用任何参数。有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您可以使用editor.selection.setRange(...)方法但是对于此用例,snippetManager提供了更好的api

var snippetManager = require("ace/snippets").snippetManager
snippetManager.insertSnippet(editor, "**${0:$SELECTION}**")

ace中的片段与textmate / sublime中的片段格式相同。

请注意,您需要包含ext-language_tools.js才能使用snippetManager