Spaces:
Running
Running
File size: 1,006 Bytes
87b3b3a |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
// Because sometimes you need to mark the selected *text*.
//
// Adds an option 'styleSelectedText' which, when enabled, gives
// selected text the CSS class "CodeMirror-selectedtext".
(function() {
"use strict";
CodeMirror.defineOption("styleSelectedText", false, function(cm, val, old) {
var prev = old && old != CodeMirror.Init;
if (val && !prev) {
updateSelectedText(cm);
cm.on("cursorActivity", updateSelectedText);
} else if (!val && prev) {
cm.off("cursorActivity", updateSelectedText);
clearSelectedText(cm);
delete cm._selectionMark;
}
});
function clearSelectedText(cm) {
if (cm._selectionMark) cm._selectionMark.clear();
}
function updateSelectedText(cm) {
clearSelectedText(cm);
if (cm.somethingSelected())
cm._selectionMark = cm.markText(cm.getCursor("start"), cm.getCursor("end"),
{className: "CodeMirror-selectedtext"});
else
cm._selectionMark = null;
}
})();
|