codemirror-rails 4.6 → 4.7

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 (41) hide show
  1. checksums.yaml +4 -4
  2. data/lib/codemirror/rails/version.rb +2 -2
  3. data/vendor/assets/javascripts/codemirror.js +24 -25
  4. data/vendor/assets/javascripts/codemirror/addons/comment/comment.js +1 -1
  5. data/vendor/assets/javascripts/codemirror/addons/dialog/dialog.js +4 -1
  6. data/vendor/assets/javascripts/codemirror/addons/edit/closebrackets.js +7 -6
  7. data/vendor/assets/javascripts/codemirror/addons/edit/continuelist.js +21 -8
  8. data/vendor/assets/javascripts/codemirror/addons/hint/sql-hint.js +54 -20
  9. data/vendor/assets/javascripts/codemirror/addons/lint/lint.js +10 -15
  10. data/vendor/assets/javascripts/codemirror/addons/mode/simple.js +210 -0
  11. data/vendor/assets/javascripts/codemirror/addons/runmode/runmode-standalone.js +5 -1
  12. data/vendor/assets/javascripts/codemirror/addons/runmode/runmode.node.js +2 -4
  13. data/vendor/assets/javascripts/codemirror/keymaps/vim.js +425 -554
  14. data/vendor/assets/javascripts/codemirror/modes/clike.js +28 -5
  15. data/vendor/assets/javascripts/codemirror/modes/clojure.js +5 -3
  16. data/vendor/assets/javascripts/codemirror/modes/coffeescript.js +8 -7
  17. data/vendor/assets/javascripts/codemirror/modes/d.js +1 -1
  18. data/vendor/assets/javascripts/codemirror/modes/dtd.js +1 -1
  19. data/vendor/assets/javascripts/codemirror/modes/gherkin.js +1 -1
  20. data/vendor/assets/javascripts/codemirror/modes/go.js +1 -1
  21. data/vendor/assets/javascripts/codemirror/modes/haskell.js +1 -1
  22. data/vendor/assets/javascripts/codemirror/modes/javascript.js +3 -3
  23. data/vendor/assets/javascripts/codemirror/modes/julia.js +1 -1
  24. data/vendor/assets/javascripts/codemirror/modes/markdown.js +4 -3
  25. data/vendor/assets/javascripts/codemirror/modes/octave.js +1 -1
  26. data/vendor/assets/javascripts/codemirror/modes/perl.js +2 -2
  27. data/vendor/assets/javascripts/codemirror/modes/php.js +37 -44
  28. data/vendor/assets/javascripts/codemirror/modes/python.js +17 -4
  29. data/vendor/assets/javascripts/codemirror/modes/ruby.js +12 -11
  30. data/vendor/assets/javascripts/codemirror/modes/rust.js +2 -2
  31. data/vendor/assets/javascripts/codemirror/modes/smartymixed.js +5 -1
  32. data/vendor/assets/javascripts/codemirror/modes/sql.js +2 -1
  33. data/vendor/assets/javascripts/codemirror/modes/stex.js +2 -1
  34. data/vendor/assets/javascripts/codemirror/modes/tcl.js +1 -1
  35. data/vendor/assets/javascripts/codemirror/modes/textile.js +553 -0
  36. data/vendor/assets/javascripts/codemirror/modes/tornado.js +68 -0
  37. data/vendor/assets/javascripts/codemirror/modes/verilog.js +14 -9
  38. data/vendor/assets/stylesheets/codemirror.css +1 -1
  39. data/vendor/assets/stylesheets/codemirror/themes/base16-dark.css +2 -2
  40. data/vendor/assets/stylesheets/codemirror/themes/mdn-like.css +1 -1
  41. metadata +4 -1
@@ -0,0 +1,68 @@
1
+ // CodeMirror, copyright (c) by Marijn Haverbeke and others
2
+ // Distributed under an MIT license: http://codemirror.net/LICENSE
3
+
4
+ (function(mod) {
5
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
6
+ mod(require("../../lib/codemirror"), require("../htmlmixed/htmlmixed"),
7
+ require("../../addon/mode/overlay"));
8
+ else if (typeof define == "function" && define.amd) // AMD
9
+ define(["../../lib/codemirror", "../htmlmixed/htmlmixed",
10
+ "../../addon/mode/overlay"], mod);
11
+ else // Plain browser env
12
+ mod(CodeMirror);
13
+ })(function(CodeMirror) {
14
+ "use strict";
15
+
16
+ CodeMirror.defineMode("tornado:inner", function() {
17
+ var keywords = ["and","as","assert","autoescape","block","break","class","comment","context",
18
+ "continue","datetime","def","del","elif","else","end","escape","except",
19
+ "exec","extends","false","finally","for","from","global","if","import","in",
20
+ "include","is","json_encode","lambda","length","linkify","load","module",
21
+ "none","not","or","pass","print","put","raise","raw","return","self","set",
22
+ "squeeze","super","true","try","url_escape","while","with","without","xhtml_escape","yield"];
23
+ keywords = new RegExp("^((" + keywords.join(")|(") + "))\\b");
24
+
25
+ function tokenBase (stream, state) {
26
+ stream.eatWhile(/[^\{]/);
27
+ var ch = stream.next();
28
+ if (ch == "{") {
29
+ if (ch = stream.eat(/\{|%|#/)) {
30
+ state.tokenize = inTag(ch);
31
+ return "tag";
32
+ }
33
+ }
34
+ }
35
+ function inTag (close) {
36
+ if (close == "{") {
37
+ close = "}";
38
+ }
39
+ return function (stream, state) {
40
+ var ch = stream.next();
41
+ if ((ch == close) && stream.eat("}")) {
42
+ state.tokenize = tokenBase;
43
+ return "tag";
44
+ }
45
+ if (stream.match(keywords)) {
46
+ return "keyword";
47
+ }
48
+ return close == "#" ? "comment" : "string";
49
+ };
50
+ }
51
+ return {
52
+ startState: function () {
53
+ return {tokenize: tokenBase};
54
+ },
55
+ token: function (stream, state) {
56
+ return state.tokenize(stream, state);
57
+ }
58
+ };
59
+ });
60
+
61
+ CodeMirror.defineMode("tornado", function(config) {
62
+ var htmlBase = CodeMirror.getMode(config, "text/html");
63
+ var tornadoInner = CodeMirror.getMode(config, "tornado:inner");
64
+ return CodeMirror.overlayMode(htmlBase, tornadoInner);
65
+ });
66
+
67
+ CodeMirror.defineMIME("text/x-tornado", "tornado");
68
+ });
@@ -80,7 +80,7 @@ CodeMirror.defineMode("verilog", function(config, parserConfig) {
80
80
  // Block openings which are closed by a matching keyword in the form of ("end" + keyword)
81
81
  // E.g. "task" => "endtask"
82
82
  var blockKeywords = words(
83
- "case checker class clocking config function generate group interface module package" +
83
+ "case checker class clocking config function generate interface module package" +
84
84
  "primitive program property specify sequence table task"
85
85
  );
86
86
 
@@ -94,11 +94,7 @@ CodeMirror.defineMode("verilog", function(config, parserConfig) {
94
94
  openClose["casez"] = "endcase";
95
95
  openClose["do" ] = "while";
96
96
  openClose["fork" ] = "join;join_any;join_none";
97
-
98
- // This is a bit of a hack but will work to not indent after import/epxort statements
99
- // as long as the function/task name is on the same line
100
- openClose["import"] = "function;task";
101
- openClose["export"] = "function;task";
97
+ openClose["covergroup"] = "endgroup";
102
98
 
103
99
  for (var i in noIndentKeywords) {
104
100
  var keyword = noIndentKeywords[i];
@@ -107,7 +103,8 @@ CodeMirror.defineMode("verilog", function(config, parserConfig) {
107
103
  }
108
104
  }
109
105
 
110
- var statementKeywords = words("always always_comb always_ff always_latch assert assign assume else for foreach forever if initial repeat while");
106
+ // Keywords which open statements that are ended with a semi-colon
107
+ var statementKeywords = words("always always_comb always_ff always_latch assert assign assume else export for foreach forever if import initial repeat while");
111
108
 
112
109
  function tokenBase(stream, state) {
113
110
  var ch = stream.peek();
@@ -320,8 +317,16 @@ CodeMirror.defineMode("verilog", function(config, parserConfig) {
320
317
  else if (curPunc == "newstatement") {
321
318
  pushContext(state, stream.column(), "statement");
322
319
  } else if (curPunc == "newblock") {
323
- var close = openClose[curKeyword];
324
- pushContext(state, stream.column(), close);
320
+ if (curKeyword == "function" && ctx && (ctx.type == "statement" || ctx.type == "endgroup")) {
321
+ // The 'function' keyword can appear in some other contexts where it actually does not
322
+ // indicate a function (import/export DPI and covergroup definitions).
323
+ // Do nothing in this case
324
+ } else if (curKeyword == "task" && ctx && ctx.type == "statement") {
325
+ // Same thing for task
326
+ } else {
327
+ var close = openClose[curKeyword];
328
+ pushContext(state, stream.column(), close);
329
+ }
325
330
  }
326
331
 
327
332
  state.startOfLine = false;
@@ -87,7 +87,7 @@
87
87
  /* Can style cursor different in overwrite (non-insert) mode */
88
88
  div.CodeMirror-overwrite div.CodeMirror-cursor {}
89
89
 
90
- .cm-tab { display: inline-block; }
90
+ .cm-tab { display: inline-block; text-decoration: inherit; }
91
91
 
92
92
  .CodeMirror-ruler {
93
93
  border-left: 1px solid #ccc;
@@ -9,7 +9,7 @@
9
9
  */
10
10
 
11
11
  .cm-s-base16-dark.CodeMirror {background: #151515; color: #e0e0e0;}
12
- .cm-s-base16-dark div.CodeMirror-selected {background: #202020 !important;}
12
+ .cm-s-base16-dark div.CodeMirror-selected {background: #303030 !important;}
13
13
  .cm-s-base16-dark .CodeMirror-gutters {background: #151515; border-right: 0px;}
14
14
  .cm-s-base16-dark .CodeMirror-guttermarker { color: #ac4142; }
15
15
  .cm-s-base16-dark .CodeMirror-guttermarker-subtle { color: #505050; }
@@ -32,5 +32,5 @@
32
32
  .cm-s-base16-dark span.cm-link {color: #aa759f;}
33
33
  .cm-s-base16-dark span.cm-error {background: #ac4142; color: #b0b0b0;}
34
34
 
35
- .cm-s-base16-dark .CodeMirror-activeline-background {background: #2F2F2F !important;}
35
+ .cm-s-base16-dark .CodeMirror-activeline-background {background: #202020 !important;}
36
36
  .cm-s-base16-dark .CodeMirror-matchingbracket { text-decoration: underline; color: white !important;}
@@ -1,7 +1,7 @@
1
1
  /*
2
2
  MDN-LIKE Theme - Mozilla
3
3
  Ported to CodeMirror by Peter Kroon <plakroon@gmail.com>
4
- Report bugs/issues here: https://github.com/marijnh/CodeMirror/issues
4
+ Report bugs/issues here: https://github.com/codemirror/CodeMirror/issues
5
5
  GitHub: @peterkroon
6
6
 
7
7
  The mdn-like theme is inspired on the displayed code examples at: https://developer.mozilla.org/en-US/docs/Web/CSS/animation
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: codemirror-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: '4.6'
4
+ version: '4.7'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Nathan Fixler
@@ -246,6 +246,7 @@ files:
246
246
  - vendor/assets/javascripts/codemirror/addons/mode/loadmode.js
247
247
  - vendor/assets/javascripts/codemirror/addons/mode/multiplex.js
248
248
  - vendor/assets/javascripts/codemirror/addons/mode/overlay.js
249
+ - vendor/assets/javascripts/codemirror/addons/mode/simple.js
249
250
  - vendor/assets/javascripts/codemirror/addons/runmode/colorize.js
250
251
  - vendor/assets/javascripts/codemirror/addons/runmode/runmode-standalone.js
251
252
  - vendor/assets/javascripts/codemirror/addons/runmode/runmode.js
@@ -332,9 +333,11 @@ files:
332
333
  - vendor/assets/javascripts/codemirror/modes/sql.js
333
334
  - vendor/assets/javascripts/codemirror/modes/stex.js
334
335
  - vendor/assets/javascripts/codemirror/modes/tcl.js
336
+ - vendor/assets/javascripts/codemirror/modes/textile.js
335
337
  - vendor/assets/javascripts/codemirror/modes/tiddlywiki.js
336
338
  - vendor/assets/javascripts/codemirror/modes/tiki.js
337
339
  - vendor/assets/javascripts/codemirror/modes/toml.js
340
+ - vendor/assets/javascripts/codemirror/modes/tornado.js
338
341
  - vendor/assets/javascripts/codemirror/modes/turtle.js
339
342
  - vendor/assets/javascripts/codemirror/modes/vb.js
340
343
  - vendor/assets/javascripts/codemirror/modes/vbscript.js