frumbert
frumbert

Reputation: 2427

Set selection to a string in codemirror

I'm trying to set a text selection in CodeMirror based on a predefined string, similar to a find without prompt (i.e. http://perso.jojaba.fr/codemirror-test/codemirror/demo/search-element.html) except not marking the value, but actually putting a selection on the range (which might be multi line, depending on the predefined string). I can't seem to figure out how to set a selection in this way. Any idea.

Upvotes: 0

Views: 1674

Answers (1)

frumbert
frumbert

Reputation: 2427

well, as it turns out the findNext() offered by searchwithoutdialog.js actually does what I need. effectively it's:

instance.on("change", function (cm, change) {
    // other code snipped! //
    var str = "my replacement";
    var token = cm.getTokenAt(change.from, false);
    cm.replaceRange(str, { ch: token.start, line: line }, { ch: token.end, line: line });
    CodeMirror.commands.findNext(cm, str);
}

Upvotes: 1

Related Questions