aboutsummaryrefslogtreecommitdiff
path: root/imports/codemirror/mode/stex/stex.js
diff options
context:
space:
mode:
authorArmen Kesablyan2012-05-08 16:43:43 -0700
committerArmen Kesablyan2012-05-08 16:43:43 -0700
commitdc075ffcc6dd03c090d90fad999eee9b924d56ee (patch)
tree867f8bdd588c8f9076979233ca46a688ff70523e /imports/codemirror/mode/stex/stex.js
parent5d7e470351fd150d5e70a97332fa2f2553797499 (diff)
parent4d949f141247215b5f2a6ec0cfc7d2d31cf2bb1f (diff)
downloadninja-dc075ffcc6dd03c090d90fad999eee9b924d56ee.tar.gz
Merge branch 'refs/heads/dom-architecture' into binding
Conflicts: js/components/layout/tools-properties.reel/tools-properties.html Signed-off-by: Armen Kesablyan <armen@motorola.com>
Diffstat (limited to 'imports/codemirror/mode/stex/stex.js')
-rw-r--r--imports/codemirror/mode/stex/stex.js17
1 files changed, 15 insertions, 2 deletions
diff --git a/imports/codemirror/mode/stex/stex.js b/imports/codemirror/mode/stex/stex.js
index bb47fb45..b89e619e 100644
--- a/imports/codemirror/mode/stex/stex.js
+++ b/imports/codemirror/mode/stex/stex.js
@@ -82,7 +82,7 @@ CodeMirror.defineMode("stex", function(cmCfg, modeCfg)
82 } 82 }
83 83
84 function normal(source, state) { 84 function normal(source, state) {
85 if (source.match(/^\\[a-z]+/)) { 85 if (source.match(/^\\[a-zA-Z@]+/)) {
86 var cmdName = source.current(); 86 var cmdName = source.current();
87 cmdName = cmdName.substr(1, cmdName.length-1); 87 cmdName = cmdName.substr(1, cmdName.length-1);
88 var plug = plugins[cmdName]; 88 var plug = plugins[cmdName];
@@ -95,9 +95,22 @@ CodeMirror.defineMode("stex", function(cmCfg, modeCfg)
95 return plug.style; 95 return plug.style;
96 } 96 }
97 97
98 // escape characters
99 if (source.match(/^\\[$&%#{}_]/)) {
100 return "tag";
101 }
102
103 // white space control characters
104 if (source.match(/^\\[,;!\/]/)) {
105 return "tag";
106 }
107
98 var ch = source.next(); 108 var ch = source.next();
99 if (ch == "%") { 109 if (ch == "%") {
100 setState(state, inCComment); 110 // special case: % at end of its own line; stay in same state
111 if (!source.eol()) {
112 setState(state, inCComment);
113 }
101 return "comment"; 114 return "comment";
102 } 115 }
103 else if (ch=='}' || ch==']') { 116 else if (ch=='}' || ch==']') {