Получить соответствующие скобки в редакторе ace js
Есть ли способ получить положение соответствующей скобки в редакторе ace js?
Итак, скажем, что я перебираю строки и токены, как это
var editor = ace.edit("editor");
var session = editor.getSession();
for(var i = 0; i < session.getLength(); i++){
var tokens = session.getTokens(i);
for(var j=0;j<thisTokens.length; j++){
if(tokens[j].value == '{'){
// how to get position of the closing bracket here?
}
}
}
Я заметил, что у туза есть этот https://github.com/ajaxorg/ace/blob/master/lib/ace/edit_session/bracket_match.js
но я просто не уверен, как его использовать. Этого нет в документации API.
2 ответа
Есть editor.session.findMatchingBracket
функция https://github.com/ajaxorg/ace/blob/v1.2.6/lib/ace/editor.js#L522
Из библиотеки Ace Documentation вы можете использовать функцию jumpToMatching(), чтобы получить позицию положения Соответствующей скобки
editor.jumpToMatching();
var matchPosition = editor.selection.getCursor();
matchPosition должен дать вам согласованную позицию скобки.