codemirror-rails 3.24 → 4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (145) hide show
  1. checksums.yaml +4 -4
  2. data/lib/codemirror/rails/version.rb +2 -2
  3. data/vendor/assets/javascripts/codemirror.js +3001 -1798
  4. data/vendor/assets/javascripts/codemirror/addons/comment/comment.js +24 -4
  5. data/vendor/assets/javascripts/codemirror/addons/comment/continuecomment.js +47 -32
  6. data/vendor/assets/javascripts/codemirror/addons/dialog/dialog.js +9 -2
  7. data/vendor/assets/javascripts/codemirror/addons/display/fullscreen.js +9 -2
  8. data/vendor/assets/javascripts/codemirror/addons/display/placeholder.js +9 -2
  9. data/vendor/assets/javascripts/codemirror/addons/display/rulers.js +9 -2
  10. data/vendor/assets/javascripts/codemirror/addons/edit/closebrackets.js +76 -37
  11. data/vendor/assets/javascripts/codemirror/addons/edit/closetag.js +59 -37
  12. data/vendor/assets/javascripts/codemirror/addons/edit/continuelist.js +25 -17
  13. data/vendor/assets/javascripts/codemirror/addons/edit/matchbrackets.js +67 -46
  14. data/vendor/assets/javascripts/codemirror/addons/edit/matchtags.js +10 -3
  15. data/vendor/assets/javascripts/codemirror/addons/edit/trailingspace.js +23 -14
  16. data/vendor/assets/javascripts/codemirror/addons/fold/brace-fold.js +12 -3
  17. data/vendor/assets/javascripts/codemirror/addons/fold/comment-fold.js +12 -0
  18. data/vendor/assets/javascripts/codemirror/addons/fold/foldcode.js +28 -3
  19. data/vendor/assets/javascripts/codemirror/addons/fold/foldgutter.js +9 -2
  20. data/vendor/assets/javascripts/codemirror/addons/fold/indent-fold.js +12 -1
  21. data/vendor/assets/javascripts/codemirror/addons/fold/markdown-fold.js +12 -0
  22. data/vendor/assets/javascripts/codemirror/addons/fold/xml-fold.js +9 -4
  23. data/vendor/assets/javascripts/codemirror/addons/hint/anyword-hint.js +9 -2
  24. data/vendor/assets/javascripts/codemirror/addons/hint/css-hint.js +10 -3
  25. data/vendor/assets/javascripts/codemirror/addons/hint/html-hint.js +11 -3
  26. data/vendor/assets/javascripts/codemirror/addons/hint/javascript-hint.js +9 -4
  27. data/vendor/assets/javascripts/codemirror/addons/hint/python-hint.js +11 -3
  28. data/vendor/assets/javascripts/codemirror/addons/hint/show-hint.js +10 -4
  29. data/vendor/assets/javascripts/codemirror/addons/hint/sql-hint.js +9 -2
  30. data/vendor/assets/javascripts/codemirror/addons/hint/xml-hint.js +22 -34
  31. data/vendor/assets/javascripts/codemirror/addons/lint/coffeescript-lint.js +12 -1
  32. data/vendor/assets/javascripts/codemirror/addons/lint/css-lint.js +12 -1
  33. data/vendor/assets/javascripts/codemirror/addons/lint/javascript-lint.js +9 -4
  34. data/vendor/assets/javascripts/codemirror/addons/lint/json-lint.js +12 -1
  35. data/vendor/assets/javascripts/codemirror/addons/lint/lint.js +12 -8
  36. data/vendor/assets/javascripts/codemirror/addons/lint/yaml-lint.js +12 -1
  37. data/vendor/assets/javascripts/codemirror/addons/merge/merge.js +18 -16
  38. data/vendor/assets/javascripts/codemirror/addons/mode/loadmode.js +9 -2
  39. data/vendor/assets/javascripts/codemirror/addons/mode/multiplex.js +12 -0
  40. data/vendor/assets/javascripts/codemirror/addons/mode/overlay.js +15 -10
  41. data/vendor/assets/javascripts/codemirror/addons/runmode/colorize.js +11 -3
  42. data/vendor/assets/javascripts/codemirror/addons/runmode/runmode-standalone.js +0 -2
  43. data/vendor/assets/javascripts/codemirror/addons/runmode/runmode.js +12 -0
  44. data/vendor/assets/javascripts/codemirror/addons/runmode/runmode.node.js +4 -0
  45. data/vendor/assets/javascripts/codemirror/addons/scroll/scrollpastend.js +9 -2
  46. data/vendor/assets/javascripts/codemirror/addons/search/match-highlighter.js +12 -3
  47. data/vendor/assets/javascripts/codemirror/addons/search/search.js +24 -16
  48. data/vendor/assets/javascripts/codemirror/addons/search/searchcursor.js +21 -2
  49. data/vendor/assets/javascripts/codemirror/addons/selection/active-line.js +38 -17
  50. data/vendor/assets/javascripts/codemirror/addons/selection/mark-selection.js +16 -9
  51. data/vendor/assets/javascripts/codemirror/addons/tern/tern.js +33 -5
  52. data/vendor/assets/javascripts/codemirror/addons/wrap/hardwrap.js +27 -2
  53. data/vendor/assets/javascripts/codemirror/keymaps/emacs.js +12 -5
  54. data/vendor/assets/javascripts/codemirror/keymaps/sublime.js +505 -0
  55. data/vendor/assets/javascripts/codemirror/keymaps/vim.js +138 -179
  56. data/vendor/assets/javascripts/codemirror/modes/apl.js +12 -0
  57. data/vendor/assets/javascripts/codemirror/modes/asterisk.js +12 -0
  58. data/vendor/assets/javascripts/codemirror/modes/clike.js +15 -4
  59. data/vendor/assets/javascripts/codemirror/modes/clojure.js +13 -0
  60. data/vendor/assets/javascripts/codemirror/modes/cobol.js +12 -0
  61. data/vendor/assets/javascripts/codemirror/modes/coffeescript.js +12 -0
  62. data/vendor/assets/javascripts/codemirror/modes/commonlisp.js +12 -0
  63. data/vendor/assets/javascripts/codemirror/modes/css.js +18 -27
  64. data/vendor/assets/javascripts/codemirror/modes/d.js +12 -2
  65. data/vendor/assets/javascripts/codemirror/modes/diff.js +12 -0
  66. data/vendor/assets/javascripts/codemirror/modes/dtd.js +12 -0
  67. data/vendor/assets/javascripts/codemirror/modes/ecl.js +12 -0
  68. data/vendor/assets/javascripts/codemirror/modes/eiffel.js +12 -0
  69. data/vendor/assets/javascripts/codemirror/modes/erlang.js +13 -1
  70. data/vendor/assets/javascripts/codemirror/modes/fortran.js +12 -0
  71. data/vendor/assets/javascripts/codemirror/modes/gas.js +12 -0
  72. data/vendor/assets/javascripts/codemirror/modes/gfm.js +12 -0
  73. data/vendor/assets/javascripts/codemirror/modes/gherkin.js +12 -0
  74. data/vendor/assets/javascripts/codemirror/modes/go.js +12 -1
  75. data/vendor/assets/javascripts/codemirror/modes/groovy.js +12 -0
  76. data/vendor/assets/javascripts/codemirror/modes/haml.js +12 -0
  77. data/vendor/assets/javascripts/codemirror/modes/haskell.js +12 -0
  78. data/vendor/assets/javascripts/codemirror/modes/haxe.js +18 -9
  79. data/vendor/assets/javascripts/codemirror/modes/htmlembedded.js +12 -0
  80. data/vendor/assets/javascripts/codemirror/modes/htmlmixed.js +12 -0
  81. data/vendor/assets/javascripts/codemirror/modes/http.js +12 -0
  82. data/vendor/assets/javascripts/codemirror/modes/jade.js +12 -0
  83. data/vendor/assets/javascripts/codemirror/modes/javascript.js +23 -16
  84. data/vendor/assets/javascripts/codemirror/modes/jinja2.js +53 -118
  85. data/vendor/assets/javascripts/codemirror/modes/julia.js +12 -0
  86. data/vendor/assets/javascripts/codemirror/modes/livescript.js +17 -4
  87. data/vendor/assets/javascripts/codemirror/modes/lua.js +12 -0
  88. data/vendor/assets/javascripts/codemirror/modes/markdown.js +12 -0
  89. data/vendor/assets/javascripts/codemirror/modes/mirc.js +13 -0
  90. data/vendor/assets/javascripts/codemirror/modes/mllike.js +12 -1
  91. data/vendor/assets/javascripts/codemirror/modes/nginx.js +12 -0
  92. data/vendor/assets/javascripts/codemirror/modes/ntriples.js +13 -0
  93. data/vendor/assets/javascripts/codemirror/modes/octave.js +12 -0
  94. data/vendor/assets/javascripts/codemirror/modes/pascal.js +12 -0
  95. data/vendor/assets/javascripts/codemirror/modes/pegjs.js +12 -0
  96. data/vendor/assets/javascripts/codemirror/modes/perl.js +84 -73
  97. data/vendor/assets/javascripts/codemirror/modes/php.js +20 -101
  98. data/vendor/assets/javascripts/codemirror/modes/pig.js +12 -0
  99. data/vendor/assets/javascripts/codemirror/modes/properties.js +12 -0
  100. data/vendor/assets/javascripts/codemirror/modes/puppet.js +13 -0
  101. data/vendor/assets/javascripts/codemirror/modes/python.js +21 -11
  102. data/vendor/assets/javascripts/codemirror/modes/q.js +12 -0
  103. data/vendor/assets/javascripts/codemirror/modes/r.js +13 -3
  104. data/vendor/assets/javascripts/codemirror/modes/{rpm-spec.js → rpm.js} +34 -2
  105. data/vendor/assets/javascripts/codemirror/modes/rst.js +12 -0
  106. data/vendor/assets/javascripts/codemirror/modes/ruby.js +11 -0
  107. data/vendor/assets/javascripts/codemirror/modes/rust.js +12 -0
  108. data/vendor/assets/javascripts/codemirror/modes/sass.js +12 -0
  109. data/vendor/assets/javascripts/codemirror/modes/scheme.js +13 -0
  110. data/vendor/assets/javascripts/codemirror/modes/shell.js +12 -0
  111. data/vendor/assets/javascripts/codemirror/modes/sieve.js +11 -4
  112. data/vendor/assets/javascripts/codemirror/modes/smalltalk.js +12 -0
  113. data/vendor/assets/javascripts/codemirror/modes/smarty.js +13 -0
  114. data/vendor/assets/javascripts/codemirror/modes/smartymixed.js +14 -2
  115. data/vendor/assets/javascripts/codemirror/modes/solr.js +12 -0
  116. data/vendor/assets/javascripts/codemirror/modes/sparql.js +12 -0
  117. data/vendor/assets/javascripts/codemirror/modes/sql.js +12 -0
  118. data/vendor/assets/javascripts/codemirror/modes/stex.js +12 -0
  119. data/vendor/assets/javascripts/codemirror/modes/tcl.js +13 -0
  120. data/vendor/assets/javascripts/codemirror/modes/tiddlywiki.js +13 -0
  121. data/vendor/assets/javascripts/codemirror/modes/tiki.js +12 -0
  122. data/vendor/assets/javascripts/codemirror/modes/toml.js +12 -0
  123. data/vendor/assets/javascripts/codemirror/modes/turtle.js +12 -0
  124. data/vendor/assets/javascripts/codemirror/modes/vb.js +12 -0
  125. data/vendor/assets/javascripts/codemirror/modes/vbscript.js +13 -0
  126. data/vendor/assets/javascripts/codemirror/modes/velocity.js +12 -0
  127. data/vendor/assets/javascripts/codemirror/modes/verilog.js +89 -236
  128. data/vendor/assets/javascripts/codemirror/modes/xml.js +41 -60
  129. data/vendor/assets/javascripts/codemirror/modes/xquery.js +12 -0
  130. data/vendor/assets/javascripts/codemirror/modes/yaml.js +12 -0
  131. data/vendor/assets/javascripts/codemirror/modes/z80.js +12 -0
  132. data/vendor/assets/stylesheets/codemirror.css +15 -10
  133. data/vendor/assets/stylesheets/codemirror/themes/ambiance.css +1 -0
  134. data/vendor/assets/stylesheets/codemirror/themes/lesser-dark.css +4 -0
  135. data/vendor/assets/stylesheets/codemirror/themes/mdn-like.css +1 -1
  136. data/vendor/assets/stylesheets/codemirror/themes/pastel-on-dark.css +1 -0
  137. data/vendor/assets/stylesheets/codemirror/themes/rubyblue.css +2 -0
  138. data/vendor/assets/stylesheets/codemirror/themes/solarized.css +17 -3
  139. metadata +20 -25
  140. data/vendor/assets/javascripts/codemirror/keymaps/extra.js +0 -43
  141. data/vendor/assets/javascripts/codemirror/modes/django.js +0 -55
  142. data/vendor/assets/javascripts/codemirror/modes/dylan.js +0 -284
  143. data/vendor/assets/javascripts/codemirror/modes/less.js +0 -347
  144. data/vendor/assets/javascripts/codemirror/modes/rpm-changes.js +0 -19
  145. data/vendor/assets/stylesheets/codemirror/modes/rpm-spec.css +0 -5
@@ -1,3 +1,13 @@
1
+ (function(mod) {
2
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
3
+ mod(require("../../lib/codemirror"));
4
+ else if (typeof define == "function" && define.amd) // AMD
5
+ define(["../../lib/codemirror"], mod);
6
+ else // Plain browser env
7
+ mod(CodeMirror);
8
+ })(function(CodeMirror) {
9
+ "use strict";
10
+
1
11
  CodeMirror.defineMode("fortran", function() {
2
12
  function words(array) {
3
13
  var keys = {};
@@ -171,3 +181,5 @@ CodeMirror.defineMode("fortran", function() {
171
181
  });
172
182
 
173
183
  CodeMirror.defineMIME("text/x-fortran", "fortran");
184
+
185
+ });
@@ -1,3 +1,13 @@
1
+ (function(mod) {
2
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
3
+ mod(require("../../lib/codemirror"));
4
+ else if (typeof define == "function" && define.amd) // AMD
5
+ define(["../../lib/codemirror"], mod);
6
+ else // Plain browser env
7
+ mod(CodeMirror);
8
+ })(function(CodeMirror) {
9
+ "use strict";
10
+
1
11
  CodeMirror.defineMode("gas", function(_config, parserConfig) {
2
12
  'use strict';
3
13
 
@@ -328,3 +338,5 @@ CodeMirror.defineMode("gas", function(_config, parserConfig) {
328
338
  blockCommentEnd: "*/"
329
339
  };
330
340
  });
341
+
342
+ });
@@ -1,3 +1,13 @@
1
+ (function(mod) {
2
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
3
+ mod(require("../../lib/codemirror"), require("../markdown/markdown"), require("../../addon/mode/overlay"));
4
+ else if (typeof define == "function" && define.amd) // AMD
5
+ define(["../../lib/codemirror", "../markdown/markdown", "../../addon/mode/overlay"], mod);
6
+ else // Plain browser env
7
+ mod(CodeMirror);
8
+ })(function(CodeMirror) {
9
+ "use strict";
10
+
1
11
  CodeMirror.defineMode("gfm", function(config, modeConfig) {
2
12
  var codeDepth = 0;
3
13
  function blankLine(state) {
@@ -100,3 +110,5 @@ CodeMirror.defineMode("gfm", function(config, modeConfig) {
100
110
  CodeMirror.defineMIME("gfmBase", markdownConfig);
101
111
  return CodeMirror.overlayMode(CodeMirror.getMode(config, "gfmBase"), gfmOverlay);
102
112
  }, "markdown");
113
+
114
+ });
@@ -13,6 +13,16 @@ Report bugs/issues here: https://github.com/marijnh/CodeMirror/issues
13
13
  // keywords: /(Feature| {2}(Scenario|In order to|As|I)| {4}(Given|When|Then|And))/
14
14
  //};
15
15
 
16
+ (function(mod) {
17
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
18
+ mod(require("../../lib/codemirror"));
19
+ else if (typeof define == "function" && define.amd) // AMD
20
+ define(["../../lib/codemirror"], mod);
21
+ else // Plain browser env
22
+ mod(CodeMirror);
23
+ })(function(CodeMirror) {
24
+ "use strict";
25
+
16
26
  CodeMirror.defineMode("gherkin", function () {
17
27
  return {
18
28
  startState: function () {
@@ -161,3 +171,5 @@ CodeMirror.defineMode("gherkin", function () {
161
171
  });
162
172
 
163
173
  CodeMirror.defineMIME("text/x-feature", "gherkin");
174
+
175
+ });
@@ -1,3 +1,13 @@
1
+ (function(mod) {
2
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
3
+ mod(require("../../lib/codemirror"));
4
+ else if (typeof define == "function" && define.amd) // AMD
5
+ define(["../../lib/codemirror"], mod);
6
+ else // Plain browser env
7
+ mod(CodeMirror);
8
+ })(function(CodeMirror) {
9
+ "use strict";
10
+
1
11
  CodeMirror.defineMode("go", function(config) {
2
12
  var indentUnit = config.indentUnit;
3
13
 
@@ -159,7 +169,6 @@ CodeMirror.defineMode("go", function(config) {
159
169
  },
160
170
 
161
171
  electricChars: "{}):",
162
- fold: "brace",
163
172
  blockCommentStart: "/*",
164
173
  blockCommentEnd: "*/",
165
174
  lineComment: "//"
@@ -167,3 +176,5 @@ CodeMirror.defineMode("go", function(config) {
167
176
  });
168
177
 
169
178
  CodeMirror.defineMIME("text/x-go", "go");
179
+
180
+ });
@@ -1,3 +1,13 @@
1
+ (function(mod) {
2
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
3
+ mod(require("../../lib/codemirror"));
4
+ else if (typeof define == "function" && define.amd) // AMD
5
+ define(["../../lib/codemirror"], mod);
6
+ else // Plain browser env
7
+ mod(CodeMirror);
8
+ })(function(CodeMirror) {
9
+ "use strict";
10
+
1
11
  CodeMirror.defineMode("groovy", function(config) {
2
12
  function words(str) {
3
13
  var obj = {}, words = str.split(" ");
@@ -209,3 +219,5 @@ CodeMirror.defineMode("groovy", function(config) {
209
219
  });
210
220
 
211
221
  CodeMirror.defineMIME("text/x-groovy", "groovy");
222
+
223
+ });
@@ -1,3 +1,13 @@
1
+ (function(mod) {
2
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
3
+ mod(require("../../lib/codemirror"), require("../htmlmixed/htmlmixed"), require("../ruby/ruby"));
4
+ else if (typeof define == "function" && define.amd) // AMD
5
+ define(["../../lib/codemirror", "../htmlmixed/htmlmixed", "../ruby/ruby"], mod);
6
+ else // Plain browser env
7
+ mod(CodeMirror);
8
+ })(function(CodeMirror) {
9
+ "use strict";
10
+
1
11
  (function() {
2
12
  "use strict";
3
13
 
@@ -147,3 +157,5 @@
147
157
 
148
158
  CodeMirror.defineMIME("text/x-haml", "haml");
149
159
  })();
160
+
161
+ });
@@ -1,3 +1,13 @@
1
+ (function(mod) {
2
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
3
+ mod(require("../../lib/codemirror"));
4
+ else if (typeof define == "function" && define.amd) // AMD
5
+ define(["../../lib/codemirror"], mod);
6
+ else // Plain browser env
7
+ mod(CodeMirror);
8
+ })(function(CodeMirror) {
9
+ "use strict";
10
+
1
11
  CodeMirror.defineMode("haskell", function(_config, modeConfig) {
2
12
 
3
13
  function switchState(source, setState, f) {
@@ -250,3 +260,5 @@ CodeMirror.defineMode("haskell", function(_config, modeConfig) {
250
260
  });
251
261
 
252
262
  CodeMirror.defineMIME("text/x-haskell", "haskell");
263
+
264
+ });
@@ -1,3 +1,13 @@
1
+ (function(mod) {
2
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
3
+ mod(require("../../lib/codemirror"));
4
+ else if (typeof define == "function" && define.amd) // AMD
5
+ define(["../../lib/codemirror"], mod);
6
+ else // Plain browser env
7
+ mod(CodeMirror);
8
+ })(function(CodeMirror) {
9
+ "use strict";
10
+
1
11
  CodeMirror.defineMode("haxe", function(config, parserConfig) {
2
12
  var indentUnit = config.indentUnit;
3
13
 
@@ -16,7 +26,7 @@ CodeMirror.defineMode("haxe", function(config, parserConfig) {
16
26
  "function": kw("function"), "catch": kw("catch"), "untyped": kw("untyped"), "callback": kw("cb"),
17
27
  "for": kw("for"), "switch": kw("switch"), "case": kw("case"), "default": kw("default"),
18
28
  "in": operator, "never": kw("property_access"), "trace":kw("trace"),
19
- "class": type, "abstract":type, "enum":type, "interface":type, "typedef":type, "extends":type, "implements":type, "dynamic":type,
29
+ "class": type, "enum":type, "interface":type, "typedef":type, "extends":type, "implements":type, "dynamic":type,
20
30
  "true": atom, "false": atom, "null": atom
21
31
  };
22
32
  }();
@@ -235,11 +245,12 @@ CodeMirror.defineMode("haxe", function(config, parserConfig) {
235
245
  poplex.lex = true;
236
246
 
237
247
  function expect(wanted) {
238
- return function(type) {
248
+ function f(type) {
239
249
  if (type == wanted) return cont();
240
250
  else if (wanted == ";") return pass();
241
- else return cont(arguments.callee);
251
+ else return cont(f);
242
252
  };
253
+ return f;
243
254
  }
244
255
 
245
256
  function statement(type) {
@@ -305,13 +316,12 @@ CodeMirror.defineMode("haxe", function(config, parserConfig) {
305
316
 
306
317
  function importdef (type, value) {
307
318
  if(type == "variable" && /[A-Z]/.test(value.charAt(0))) { registerimport(value); return cont(); }
308
- else if(type == "variable" || type == "property" || type == "." || value == "*") return cont(importdef);
319
+ else if(type == "variable" || type == "property" || type == ".") return cont(importdef);
309
320
  }
310
321
 
311
322
  function typedef (type, value)
312
323
  {
313
324
  if(type == "variable" && /[A-Z]/.test(value.charAt(0))) { registerimport(value); return cont(); }
314
- else if (type == "type" && /[A-Z]/.test(value.charAt(0))) { return cont(); }
315
325
  }
316
326
 
317
327
  function maybelabel(type) {
@@ -423,11 +433,10 @@ CodeMirror.defineMode("haxe", function(config, parserConfig) {
423
433
  else return lexical.indented + (closing ? 0 : indentUnit);
424
434
  },
425
435
 
426
- electricChars: "{}",
427
- blockCommentStart: "/*",
428
- blockCommentEnd: "*/",
429
- lineComment: "//"
436
+ electricChars: "{}"
430
437
  };
431
438
  });
432
439
 
433
440
  CodeMirror.defineMIME("text/x-haxe", "haxe");
441
+
442
+ });
@@ -1,3 +1,13 @@
1
+ (function(mod) {
2
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
3
+ mod(require("../../lib/codemirror"), require("../htmlmixed/htmlmixed"));
4
+ else if (typeof define == "function" && define.amd) // AMD
5
+ define(["../../lib/codemirror", "../htmlmixed/htmlmixed"], mod);
6
+ else // Plain browser env
7
+ mod(CodeMirror);
8
+ })(function(CodeMirror) {
9
+ "use strict";
10
+
1
11
  CodeMirror.defineMode("htmlembedded", function(config, parserConfig) {
2
12
 
3
13
  //config settings
@@ -69,3 +79,5 @@ CodeMirror.defineMIME("application/x-ejs", { name: "htmlembedded", scriptingMode
69
79
  CodeMirror.defineMIME("application/x-aspx", { name: "htmlembedded", scriptingModeSpec:"text/x-csharp"});
70
80
  CodeMirror.defineMIME("application/x-jsp", { name: "htmlembedded", scriptingModeSpec:"text/x-java"});
71
81
  CodeMirror.defineMIME("application/x-erb", { name: "htmlembedded", scriptingModeSpec:"ruby"});
82
+
83
+ });
@@ -1,3 +1,13 @@
1
+ (function(mod) {
2
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
3
+ mod(require("../../lib/codemirror"), require("../xml/xml"), require("../javascript/javascript"), require("../css/css"));
4
+ else if (typeof define == "function" && define.amd) // AMD
5
+ define(["../../lib/codemirror", "../xml/xml", "../javascript/javascript", "../css/css"], mod);
6
+ else // Plain browser env
7
+ mod(CodeMirror);
8
+ })(function(CodeMirror) {
9
+ "use strict";
10
+
1
11
  CodeMirror.defineMode("htmlmixed", function(config, parserConfig) {
2
12
  var htmlMode = CodeMirror.getMode(config, {name: "xml",
3
13
  htmlMode: true,
@@ -103,3 +113,5 @@ CodeMirror.defineMode("htmlmixed", function(config, parserConfig) {
103
113
  }, "xml", "javascript", "css");
104
114
 
105
115
  CodeMirror.defineMIME("text/html", "htmlmixed");
116
+
117
+ });
@@ -1,3 +1,13 @@
1
+ (function(mod) {
2
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
3
+ mod(require("../../lib/codemirror"));
4
+ else if (typeof define == "function" && define.amd) // AMD
5
+ define(["../../lib/codemirror"], mod);
6
+ else // Plain browser env
7
+ mod(CodeMirror);
8
+ })(function(CodeMirror) {
9
+ "use strict";
10
+
1
11
  CodeMirror.defineMode("http", function() {
2
12
  function failFirstLine(stream, state) {
3
13
  stream.skipToEnd();
@@ -96,3 +106,5 @@ CodeMirror.defineMode("http", function() {
96
106
  });
97
107
 
98
108
  CodeMirror.defineMIME("message/http", "http");
109
+
110
+ });
@@ -1,3 +1,13 @@
1
+ (function(mod) {
2
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
3
+ mod(require("../../lib/codemirror"));
4
+ else if (typeof define == "function" && define.amd) // AMD
5
+ define(["../../lib/codemirror"], mod);
6
+ else // Plain browser env
7
+ mod(CodeMirror);
8
+ })(function(CodeMirror) {
9
+ "use strict";
10
+
1
11
  CodeMirror.defineMode("jade", function () {
2
12
  var symbol_regex1 = /^(?:~|!|%|\^|\*|\+|=|\\|:|;|,|\/|\?|&|<|>|\|)/;
3
13
  var open_paren_regex = /^(\(|\[)/;
@@ -88,3 +98,5 @@ CodeMirror.defineMode("jade", function () {
88
98
  });
89
99
 
90
100
  CodeMirror.defineMIME('text/x-jade', 'jade');
101
+
102
+ });
@@ -1,5 +1,15 @@
1
1
  // TODO actually recognize syntax of TypeScript constructs
2
2
 
3
+ (function(mod) {
4
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
5
+ mod(require("../../lib/codemirror"));
6
+ else if (typeof define == "function" && define.amd) // AMD
7
+ define(["../../lib/codemirror"], mod);
8
+ else // Plain browser env
9
+ mod(CodeMirror);
10
+ })(function(CodeMirror) {
11
+ "use strict";
12
+
3
13
  CodeMirror.defineMode("javascript", function(config, parserConfig) {
4
14
  var indentUnit = config.indentUnit;
5
15
  var statementIndent = parserConfig.statementIndent;
@@ -301,11 +311,12 @@ CodeMirror.defineMode("javascript", function(config, parserConfig) {
301
311
  poplex.lex = true;
302
312
 
303
313
  function expect(wanted) {
304
- return function(type) {
314
+ function exp(type) {
305
315
  if (type == wanted) return cont();
306
316
  else if (wanted == ";") return pass();
307
- else return cont(arguments.callee);
317
+ else return cont(exp);
308
318
  };
319
+ return exp;
309
320
  }
310
321
 
311
322
  function statement(type, value) {
@@ -314,11 +325,7 @@ CodeMirror.defineMode("javascript", function(config, parserConfig) {
314
325
  if (type == "keyword b") return cont(pushlex("form"), statement, poplex);
315
326
  if (type == "{") return cont(pushlex("}"), block, poplex);
316
327
  if (type == ";") return cont();
317
- if (type == "if") {
318
- if (cx.state.lexical.info == "else" && cx.state.cc[cx.state.cc.length - 1] == poplex)
319
- cx.state.cc.pop()();
320
- return cont(pushlex("form"), expression, statement, poplex, maybeelse);
321
- }
328
+ if (type == "if") return cont(pushlex("form"), expression, statement, poplex, maybeelse);
322
329
  if (type == "function") return cont(functiondef);
323
330
  if (type == "for") return cont(pushlex("form"), forspec, statement, poplex);
324
331
  if (type == "variable") return cont(pushlex("stat"), maybelabel);
@@ -349,13 +356,12 @@ CodeMirror.defineMode("javascript", function(config, parserConfig) {
349
356
 
350
357
  var maybeop = noComma ? maybeoperatorNoComma : maybeoperatorComma;
351
358
  if (atomicTypes.hasOwnProperty(type)) return cont(maybeop);
352
- if (type == "function") return cont(functiondef, maybeop);
359
+ if (type == "function") return cont(functiondef);
353
360
  if (type == "keyword c") return cont(noComma ? maybeexpressionNoComma : maybeexpression);
354
361
  if (type == "(") return cont(pushlex(")"), maybeexpression, comprehension, expect(")"), poplex, maybeop);
355
362
  if (type == "operator" || type == "spread") return cont(noComma ? expressionNoComma : expression);
356
363
  if (type == "[") return cont(pushlex("]"), arrayLiteral, poplex, maybeop);
357
364
  if (type == "{") return contCommasep(objprop, "}", null, maybeop);
358
- if (type == "quasi") { return pass(quasi, maybeop); }
359
365
  return cont();
360
366
  }
361
367
  function maybeexpression(type) {
@@ -380,22 +386,21 @@ CodeMirror.defineMode("javascript", function(config, parserConfig) {
380
386
  if (value == "?") return cont(expression, expect(":"), expr);
381
387
  return cont(expr);
382
388
  }
383
- if (type == "quasi") { return pass(quasi, me); }
389
+ if (type == "quasi") { cx.cc.push(me); return quasi(value); }
384
390
  if (type == ";") return;
385
391
  if (type == "(") return contCommasep(expressionNoComma, ")", "call", me);
386
392
  if (type == ".") return cont(property, me);
387
393
  if (type == "[") return cont(pushlex("]"), maybeexpression, expect("]"), poplex, me);
388
394
  }
389
- function quasi(type, value) {
390
- if (type != "quasi") return pass();
391
- if (value.slice(value.length - 2) != "${") return cont(quasi);
395
+ function quasi(value) {
396
+ if (value.slice(value.length - 2) != "${") return cont();
392
397
  return cont(expression, continueQuasi);
393
398
  }
394
399
  function continueQuasi(type) {
395
400
  if (type == "}") {
396
401
  cx.marked = "string-2";
397
402
  cx.state.tokenize = tokenQuasi;
398
- return cont(quasi);
403
+ return cont();
399
404
  }
400
405
  }
401
406
  function arrowBody(type) {
@@ -488,7 +493,7 @@ CodeMirror.defineMode("javascript", function(config, parserConfig) {
488
493
  if (type == ",") return cont(vardef);
489
494
  }
490
495
  function maybeelse(type, value) {
491
- if (type == "keyword b" && value == "else") return cont(pushlex("form", "else"), statement, poplex);
496
+ if (type == "keyword b" && value == "else") return cont(pushlex("form"), statement, poplex);
492
497
  }
493
498
  function forspec(type) {
494
499
  if (type == "(") return cont(pushlex(")"), forspec1, expect(")"), poplex);
@@ -601,7 +606,7 @@ CodeMirror.defineMode("javascript", function(config, parserConfig) {
601
606
  if (state.tokenize != tokenBase) return 0;
602
607
  var firstChar = textAfter && textAfter.charAt(0), lexical = state.lexical;
603
608
  // Kludge to prevent 'maybelse' from blocking lexical scope pops
604
- if (!/^\s*else\b/.test(textAfter)) for (var i = state.cc.length - 1; i >= 0; --i) {
609
+ for (var i = state.cc.length - 1; i >= 0; --i) {
605
610
  var c = state.cc[i];
606
611
  if (c == poplex) lexical = lexical.prev;
607
612
  else if (c != maybeelse) break;
@@ -643,3 +648,5 @@ CodeMirror.defineMIME("application/x-json", {name: "javascript", json: true});
643
648
  CodeMirror.defineMIME("application/ld+json", {name: "javascript", jsonld: true});
644
649
  CodeMirror.defineMIME("text/typescript", { name: "javascript", typescript: true });
645
650
  CodeMirror.defineMIME("application/typescript", { name: "javascript", typescript: true });
651
+
652
+ });
@@ -1,128 +1,63 @@
1
- CodeMirror.defineMode("jinja2", function() {
2
- var keywords = ["and", "as", "block", "endblock", "by", "cycle", "debug", "else", "elif",
3
- "extends", "filter", "endfilter", "firstof", "for",
4
- "endfor", "if", "endif", "ifchanged", "endifchanged",
5
- "ifequal", "endifequal", "ifnotequal",
6
- "endifnotequal", "in", "include", "load", "not", "now", "or",
7
- "parsed", "regroup", "reversed", "spaceless",
8
- "endspaceless", "ssi", "templatetag", "openblock",
9
- "closeblock", "openvariable", "closevariable",
10
- "openbrace", "closebrace", "opencomment",
11
- "closecomment", "widthratio", "url", "with", "endwith",
12
- "get_current_language", "trans", "endtrans", "noop", "blocktrans",
13
- "endblocktrans", "get_available_languages",
14
- "get_current_language_bidi", "plural"],
15
- operator = /^[+\-*&%=<>!?|~^]/,
16
- sign = /^[:\[\(\{]/,
17
- atom = ["true", "false"],
18
- number = /^(\d[+\-\*\/])?\d+(\.\d+)?/;
1
+ (function(mod) {
2
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
3
+ mod(require("../../lib/codemirror"));
4
+ else if (typeof define == "function" && define.amd) // AMD
5
+ define(["../../lib/codemirror"], mod);
6
+ else // Plain browser env
7
+ mod(CodeMirror);
8
+ })(function(CodeMirror) {
9
+ "use strict";
19
10
 
20
- keywords = new RegExp("((" + keywords.join(")|(") + "))\\b");
21
- atom = new RegExp("((" + atom.join(")|(") + "))\\b");
11
+ CodeMirror.defineMode("jinja2", function() {
12
+ var keywords = ["and", "as", "block", "endblock", "by", "cycle", "debug", "else", "elif",
13
+ "extends", "filter", "endfilter", "firstof", "for",
14
+ "endfor", "if", "endif", "ifchanged", "endifchanged",
15
+ "ifequal", "endifequal", "ifnotequal",
16
+ "endifnotequal", "in", "include", "load", "not", "now", "or",
17
+ "parsed", "regroup", "reversed", "spaceless",
18
+ "endspaceless", "ssi", "templatetag", "openblock",
19
+ "closeblock", "openvariable", "closevariable",
20
+ "openbrace", "closebrace", "opencomment",
21
+ "closecomment", "widthratio", "url", "with", "endwith",
22
+ "get_current_language", "trans", "noop", "blocktrans",
23
+ "endblocktrans", "get_available_languages",
24
+ "get_current_language_bidi", "plural"];
25
+ keywords = new RegExp("^((" + keywords.join(")|(") + "))\\b");
22
26
 
23
27
  function tokenBase (stream, state) {
24
- var ch = stream.peek();
25
-
26
- //Comment
27
- if (state.incomment) {
28
- if(!stream.skipTo("#}")) {
29
- stream.skipToEnd();
30
- } else {
31
- stream.eatWhile(/\#|}/);
32
- state.incomment = false;
33
- }
34
- return "comment";
35
- //Tag
36
- } else if (state.intag) {
37
- //After operator
38
- if(state.operator) {
39
- state.operator = false;
40
- if(stream.match(atom)) {
41
- return "atom";
42
- }
43
- if(stream.match(number)) {
44
- return "number";
45
- }
46
- }
47
- //After sign
48
- if(state.sign) {
49
- state.sign = false;
50
- if(stream.match(atom)) {
51
- return "atom";
52
- }
53
- if(stream.match(number)) {
54
- return "number";
55
- }
56
- }
57
-
58
- if(state.instring) {
59
- if(ch == state.instring) {
60
- state.instring = false;
61
- }
62
- stream.next();
63
- return "string";
64
- } else if(ch == "'" || ch == '"') {
65
- state.instring = ch;
66
- stream.next();
67
- return "string";
68
- } else if(stream.match(state.intag + "}") || stream.eat("-") && stream.match(state.intag + "}")) {
69
- state.intag = false;
70
- return "tag";
71
- } else if(stream.match(operator)) {
72
- state.operator = true;
73
- return "operator";
74
- } else if(stream.match(sign)) {
75
- state.sign = true;
76
- } else {
77
- if(stream.eat(" ") || stream.sol()) {
78
- if(stream.match(keywords)) {
79
- return "keyword";
80
- }
81
- if(stream.match(atom)) {
82
- return "atom";
83
- }
84
- if(stream.match(number)) {
85
- return "number";
86
- }
87
- if(stream.sol()) {
88
- stream.next();
89
- }
90
- } else {
91
- stream.next();
92
- }
93
-
94
- }
95
- return "variable";
96
- } else if (stream.eat("{")) {
97
- if (ch = stream.eat("#")) {
98
- state.incomment = true;
99
- if(!stream.skipTo("#}")) {
100
- stream.skipToEnd();
101
- } else {
102
- stream.eatWhile(/\#|}/);
103
- state.incomment = false;
104
- }
105
- return "comment";
106
- //Open tag
107
- } else if (ch = stream.eat(/\{|%/)) {
108
- //Cache close tag
109
- state.intag = ch;
110
- if(ch == "{") {
111
- state.intag = "}";
112
- }
28
+ var ch = stream.next();
29
+ if (ch == "{") {
30
+ if (ch = stream.eat(/\{|%|#/)) {
113
31
  stream.eat("-");
32
+ state.tokenize = inTag(ch);
114
33
  return "tag";
115
34
  }
116
35
  }
117
- stream.next();
118
- };
119
-
120
- return {
121
- startState: function () {
122
- return {tokenize: tokenBase};
123
- },
124
- token: function (stream, state) {
125
- return state.tokenize(stream, state);
36
+ }
37
+ function inTag (close) {
38
+ if (close == "{") {
39
+ close = "}";
40
+ }
41
+ return function (stream, state) {
42
+ var ch = stream.next();
43
+ if ((ch == close || (ch == "-" && stream.eat(close)))
44
+ && stream.eat("}")) {
45
+ state.tokenize = tokenBase;
46
+ return "tag";
47
+ }
48
+ if (stream.match(keywords)) {
49
+ return "keyword";
126
50
  }
51
+ return close == "#" ? "comment" : "string";
52
+ };
53
+ }
54
+ return {
55
+ startState: function () {
56
+ return {tokenize: tokenBase};
57
+ },
58
+ token: function (stream, state) {
59
+ return state.tokenize(stream, state);
60
+ }
127
61
  };
62
+ });
128
63
  });