Blame view

build/lib/codemirror/addon/edit/trailingspace.js 1003 Bytes
5a739853   patrick.he   commit
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
  // CodeMirror, copyright (c) by Marijn Haverbeke and others
  // Distributed under an MIT license: http://codemirror.net/LICENSE
  
  (function(mod) {
    if (typeof exports == "object" && typeof module == "object") // CommonJS
      mod(require("../../lib/codemirror"));
    else if (typeof define == "function" && define.amd) // AMD
      define(["../../lib/codemirror"], mod);
    else // Plain browser env
      mod(CodeMirror);
  })(function(CodeMirror) {
    CodeMirror.defineOption("showTrailingSpace", false, function(cm, val, prev) {
      if (prev == CodeMirror.Init) prev = false;
      if (prev && !val)
        cm.removeOverlay("trailingspace");
      else if (!prev && val)
        cm.addOverlay({
          token: function(stream) {
            for (var l = stream.string.length, i = l; i && /\s/.test(stream.string.charAt(i - 1)); --i) {}
            if (i > stream.pos) { stream.pos = i; return null; }
            stream.pos = l;
            return "trailingspace";
          },
          name: "trailingspace"
        });
    });
  });