(cm)
| 57 | } |
| 58 | |
| 59 | function handleBackspace(cm) { |
| 60 | var conf = getConfig(cm); |
| 61 | if (!conf || cm.getOption("disableInput")) return CodeMirror.Pass; |
| 62 | |
| 63 | var pairs = getOption(conf, "pairs"); |
| 64 | var ranges = cm.listSelections(); |
| 65 | for (var i = 0; i < ranges.length; i++) { |
| 66 | if (!ranges[i].empty()) return CodeMirror.Pass; |
| 67 | var around = charsAround(cm, ranges[i].head); |
| 68 | if (!around || pairs.indexOf(around) % 2 != 0) return CodeMirror.Pass; |
| 69 | } |
| 70 | for (var i = ranges.length - 1; i >= 0; i--) { |
| 71 | var cur = ranges[i].head; |
| 72 | cm.replaceRange("", Pos(cur.line, cur.ch - 1), Pos(cur.line, cur.ch + 1), "+delete"); |
| 73 | } |
| 74 | } |
| 75 | |
| 76 | function handleEnter(cm) { |
| 77 | var conf = getConfig(cm); |
nothing calls this directly
no test coverage detected