在 Ace 编辑器中突出显示单词

Highlight word in Ace Editor

我正在使用 Ace Editor,特别是 react-ace。我想突出显示某个词。

我知道我可以定义自定义语法突出显示规则,但与每次输入更改时更新标记相比(在我的情况下,不应该太频繁),这似乎更麻烦而不值得。

对于标记,我需要单词的 Range - startRowstartColendRowendCol。 我尝试为此使用 find(),它似乎确实 return 我搜索的 term/regex 的所需范围,但这似乎是一个执行您期望的高级命令从编辑器中的 "find" 操作 - 突出显示术语并 跳转 到它。

我将如何在 Ace 编辑器中检索单词的 Range

有一个未记录的 preventScroll 选项可以找到 returns 范围 ace/editor.js#L2593-L2594, and you can also use the $search directly to find all ranges similar to ace/multi_select.js#L568。值得注意的是,这不是突出显示大量范围的最有效和最有效的方法,但这取决于您要解决的问题的具体细节,这些细节未在问题中说明。