Ace编辑器:如何获取键盘事件的位置

Ace editor: How to get position of keyboard event

目前,每当在我的 ace 编辑器中按下任何键时,我都会通过此 javascript 代码获取事件:

editor.keyBinding.addKeyboardHandler({
    handleKeyboard: function(data, hash, keyString, keyCode, event) {

keyString 包含实际按下的键,但如何找到键事件发生的位置(即行和列)?

按键事件不发生在任何位置,而是发生在整个编辑器中。

您可以使用editor.getCursorPosition()找到光标的位置。

你可以使用

 var currentPosition = editor.selection.getCursor();

您可以使用 currentPosition 来查找键事件发生的行和列位置。 (currentPosition.row 和 currentPosition.column)