codemirror-rails 3.00 → 3.02

Sign up to get free protection for your applications and to get access to all the features.
Files changed (34) hide show
  1. data/README.md +5 -2
  2. data/lib/codemirror/rails/version.rb +2 -2
  3. data/test/dummy/config/database.yml +25 -0
  4. data/test/dummy/db/.gitkeep +0 -0
  5. data/test/integration/codemirror_rails_integration_test.rb +1 -1
  6. data/vendor/assets/javascripts/codemirror.js +385 -152
  7. data/vendor/assets/javascripts/codemirror/keymaps/vim.js +279 -66
  8. data/vendor/assets/javascripts/codemirror/modes/apl.js +160 -0
  9. data/vendor/assets/javascripts/codemirror/modes/asterisk.js +183 -0
  10. data/vendor/assets/javascripts/codemirror/modes/clike.js +2 -0
  11. data/vendor/assets/javascripts/codemirror/modes/clojure.js +3 -3
  12. data/vendor/assets/javascripts/codemirror/modes/css.js +2 -2
  13. data/vendor/assets/javascripts/codemirror/modes/d.js +205 -0
  14. data/vendor/assets/javascripts/codemirror/modes/gfm.js +2 -1
  15. data/vendor/assets/javascripts/codemirror/modes/javascript.js +13 -2
  16. data/vendor/assets/javascripts/codemirror/modes/markdown.js +8 -7
  17. data/vendor/assets/javascripts/codemirror/modes/properties.js +0 -0
  18. data/vendor/assets/javascripts/codemirror/modes/sass.js +349 -0
  19. data/vendor/assets/javascripts/codemirror/modes/sieve.js +37 -10
  20. data/vendor/assets/javascripts/codemirror/modes/sql.js +268 -0
  21. data/vendor/assets/javascripts/codemirror/modes/xquery.js +8 -8
  22. data/vendor/assets/javascripts/codemirror/utils/collapserange.js +68 -0
  23. data/vendor/assets/javascripts/codemirror/utils/dialog.js +1 -0
  24. data/vendor/assets/javascripts/codemirror/utils/foldcode.js +2 -1
  25. data/vendor/assets/javascripts/codemirror/utils/formatting.js +9 -3
  26. data/vendor/assets/javascripts/codemirror/utils/javascript-hint.js +5 -4
  27. data/vendor/assets/javascripts/codemirror/utils/python-hint.js +93 -0
  28. data/vendor/assets/javascripts/codemirror/utils/runmode-standalone.js +51 -10
  29. data/vendor/assets/javascripts/codemirror/utils/search.js +20 -8
  30. data/vendor/assets/javascripts/codemirror/utils/searchcursor.js +17 -10
  31. data/vendor/assets/stylesheets/codemirror.css +10 -9
  32. metadata +47 -15
  33. data/vendor/assets/javascripts/codemirror/modes/xmlpure.js +0 -490
  34. data/vendor/assets/stylesheets/codemirror/modes/diff.css +0 -3
@@ -0,0 +1,93 @@
1
+ (function () {
2
+ function forEach(arr, f) {
3
+ for (var i = 0, e = arr.length; i < e; ++i) f(arr[i]);
4
+ }
5
+
6
+ function arrayContains(arr, item) {
7
+ if (!Array.prototype.indexOf) {
8
+ var i = arr.length;
9
+ while (i--) {
10
+ if (arr[i] === item) {
11
+ return true;
12
+ }
13
+ }
14
+ return false;
15
+ }
16
+ return arr.indexOf(item) != -1;
17
+ }
18
+
19
+ function scriptHint(editor, _keywords, getToken) {
20
+ // Find the token at the cursor
21
+ var cur = editor.getCursor(), token = getToken(editor, cur), tprop = token;
22
+ // If it's not a 'word-style' token, ignore the token.
23
+
24
+ if (!/^[\w$_]*$/.test(token.string)) {
25
+ token = tprop = {start: cur.ch, end: cur.ch, string: "", state: token.state,
26
+ className: token.string == ":" ? "python-type" : null};
27
+ }
28
+
29
+ if (!context) var context = [];
30
+ context.push(tprop);
31
+
32
+ var completionList = getCompletions(token, context);
33
+ completionList = completionList.sort();
34
+ //prevent autocomplete for last word, instead show dropdown with one word
35
+ if(completionList.length == 1) {
36
+ completionList.push(" ");
37
+ }
38
+
39
+ return {list: completionList,
40
+ from: {line: cur.line, ch: token.start},
41
+ to: {line: cur.line, ch: token.end}};
42
+ }
43
+
44
+ CodeMirror.pythonHint = function(editor) {
45
+ return scriptHint(editor, pythonKeywordsU, function (e, cur) {return e.getTokenAt(cur);});
46
+ };
47
+
48
+ var pythonKeywords = "and del from not while as elif global or with assert else if pass yield"
49
+ + "break except import print class exec in raise continue finally is return def for lambda try";
50
+ var pythonKeywordsL = pythonKeywords.split(" ");
51
+ var pythonKeywordsU = pythonKeywords.toUpperCase().split(" ");
52
+
53
+ var pythonBuiltins = "abs divmod input open staticmethod all enumerate int ord str "
54
+ + "any eval isinstance pow sum basestring execfile issubclass print super"
55
+ + "bin file iter property tuple bool filter len range type"
56
+ + "bytearray float list raw_input unichr callable format locals reduce unicode"
57
+ + "chr frozenset long reload vars classmethod getattr map repr xrange"
58
+ + "cmp globals max reversed zip compile hasattr memoryview round __import__"
59
+ + "complex hash min set apply delattr help next setattr buffer"
60
+ + "dict hex object slice coerce dir id oct sorted intern ";
61
+ var pythonBuiltinsL = pythonBuiltins.split(" ").join("() ").split(" ");
62
+ var pythonBuiltinsU = pythonBuiltins.toUpperCase().split(" ").join("() ").split(" ");
63
+
64
+ function getCompletions(token, context) {
65
+ var found = [], start = token.string;
66
+ function maybeAdd(str) {
67
+ if (str.indexOf(start) == 0 && !arrayContains(found, str)) found.push(str);
68
+ }
69
+
70
+ function gatherCompletions(_obj) {
71
+ forEach(pythonBuiltinsL, maybeAdd);
72
+ forEach(pythonBuiltinsU, maybeAdd);
73
+ forEach(pythonKeywordsL, maybeAdd);
74
+ forEach(pythonKeywordsU, maybeAdd);
75
+ }
76
+
77
+ if (context) {
78
+ // If this is a property, see if it belongs to some object we can
79
+ // find in the current environment.
80
+ var obj = context.pop(), base;
81
+
82
+ if (obj.type == "variable")
83
+ base = obj.string;
84
+ else if(obj.type == "variable-3")
85
+ base = ":" + obj.string;
86
+
87
+ while (base != null && context.length)
88
+ base = base[context.pop().string];
89
+ if (base != null) gatherCompletions(base);
90
+ }
91
+ return found;
92
+ }
93
+ })();
@@ -1,5 +1,7 @@
1
1
  /* Just enough of CodeMirror to run runMode under node.js */
2
2
 
3
+ window.CodeMirror = {};
4
+
3
5
  function splitLines(string){ return string.split(/\r?\n|\r/); };
4
6
 
5
7
  function StringStream(string) {
@@ -54,16 +56,16 @@ StringStream.prototype = {
54
56
  },
55
57
  current: function(){return this.string.slice(this.start, this.pos);}
56
58
  };
57
- exports.StringStream = StringStream;
59
+ CodeMirror.StringStream = StringStream;
58
60
 
59
- exports.startState = function(mode, a1, a2) {
61
+ CodeMirror.startState = function (mode, a1, a2) {
60
62
  return mode.startState ? mode.startState(a1, a2) : true;
61
63
  };
62
64
 
63
- var modes = exports.modes = {}, mimeModes = exports.mimeModes = {};
64
- exports.defineMode = function(name, mode) { modes[name] = mode; };
65
- exports.defineMIME = function(mime, spec) { mimeModes[mime] = spec; };
66
- exports.getMode = function(options, spec) {
65
+ var modes = CodeMirror.modes = {}, mimeModes = CodeMirror.mimeModes = {};
66
+ CodeMirror.defineMode = function (name, mode) { modes[name] = mode; };
67
+ CodeMirror.defineMIME = function (mime, spec) { mimeModes[mime] = spec; };
68
+ CodeMirror.getMode = function (options, spec) {
67
69
  if (typeof spec == "string" && mimeModes.hasOwnProperty(spec))
68
70
  spec = mimeModes[spec];
69
71
  if (typeof spec == "string")
@@ -75,12 +77,51 @@ exports.getMode = function(options, spec) {
75
77
  return mfactory(options, config || {});
76
78
  };
77
79
 
78
- exports.runMode = function(string, modespec, callback) {
79
- var mode = exports.getMode({indentUnit: 2}, modespec);
80
- var lines = splitLines(string), state = exports.startState(mode);
80
+ CodeMirror.runMode = function (string, modespec, callback, options) {
81
+ var mode = CodeMirror.getMode({ indentUnit: 2 }, modespec);
82
+
83
+ if (callback.nodeType == 1) {
84
+ var tabSize = (options && options.tabSize) || 4;
85
+ var node = callback, col = 0;
86
+ node.innerHTML = "";
87
+ callback = function (text, style) {
88
+ if (text == "\n") {
89
+ node.appendChild(document.createElement("br"));
90
+ col = 0;
91
+ return;
92
+ }
93
+ var content = "";
94
+ // replace tabs
95
+ for (var pos = 0; ;) {
96
+ var idx = text.indexOf("\t", pos);
97
+ if (idx == -1) {
98
+ content += text.slice(pos);
99
+ col += text.length - pos;
100
+ break;
101
+ } else {
102
+ col += idx - pos;
103
+ content += text.slice(pos, idx);
104
+ var size = tabSize - col % tabSize;
105
+ col += size;
106
+ for (var i = 0; i < size; ++i) content += " ";
107
+ pos = idx + 1;
108
+ }
109
+ }
110
+
111
+ if (style) {
112
+ var sp = node.appendChild(document.createElement("span"));
113
+ sp.className = "cm-" + style.replace(/ +/g, " cm-");
114
+ sp.appendChild(document.createTextNode(content));
115
+ } else {
116
+ node.appendChild(document.createTextNode(content));
117
+ }
118
+ };
119
+ }
120
+
121
+ var lines = splitLines(string), state = CodeMirror.startState(mode);
81
122
  for (var i = 0, e = lines.length; i < e; ++i) {
82
123
  if (i) callback("\n");
83
- var stream = new exports.StringStream(lines[i]);
124
+ var stream = new CodeMirror.StringStream(lines[i]);
84
125
  while (!stream.eol()) {
85
126
  var style = mode.token(stream, state);
86
127
  callback(stream.current(), style, i, stream.start);
@@ -7,9 +7,24 @@
7
7
  // Ctrl-G.
8
8
 
9
9
  (function() {
10
+ function searchOverlay(query) {
11
+ if (typeof query == "string") return {token: function(stream) {
12
+ if (stream.match(query)) return "searching";
13
+ stream.next();
14
+ stream.skipTo(query.charAt(0)) || stream.skipToEnd();
15
+ }};
16
+ return {token: function(stream) {
17
+ if (stream.match(query)) return "searching";
18
+ while (!stream.eol()) {
19
+ stream.next();
20
+ if (stream.match(query, false)) break;
21
+ }
22
+ }};
23
+ }
24
+
10
25
  function SearchState() {
11
26
  this.posFrom = this.posTo = this.query = null;
12
- this.marked = [];
27
+ this.overlay = null;
13
28
  }
14
29
  function getSearchState(cm) {
15
30
  return cm._searchState || (cm._searchState = new SearchState());
@@ -39,11 +54,9 @@
39
54
  cm.operation(function() {
40
55
  if (!query || state.query) return;
41
56
  state.query = parseQuery(query);
42
- if (cm.lineCount() < 2000) { // This is too expensive on big documents.
43
- for (var cursor = getSearchCursor(cm, state.query); cursor.findNext();)
44
- state.marked.push(cm.markText(cursor.from(), cursor.to(),
45
- {className: "CodeMirror-searching"}));
46
- }
57
+ cm.removeOverlay(state.overlay);
58
+ state.overlay = searchOverlay(query);
59
+ cm.addOverlay(state.overlay);
47
60
  state.posFrom = state.posTo = cm.getCursor();
48
61
  findNext(cm, rev);
49
62
  });
@@ -63,8 +76,7 @@
63
76
  var state = getSearchState(cm);
64
77
  if (!state.query) return;
65
78
  state.query = null;
66
- for (var i = 0; i < state.marked.length; ++i) state.marked[i].clear();
67
- state.marked.length = 0;
79
+ cm.removeOverlay(state.overlay);
68
80
  });}
69
81
 
70
82
  var replaceQueryDialog =
@@ -30,7 +30,7 @@
30
30
  var line = cm.getLine(pos.line), match = query.exec(line),
31
31
  start = match && match.index;
32
32
  }
33
- if (match)
33
+ if (match && match[0])
34
34
  return {from: {line: pos.line, ch: start},
35
35
  to: {line: pos.line, ch: start + match[0].length},
36
36
  match: match};
@@ -40,15 +40,21 @@
40
40
  var fold = caseFold ? function(str){return str.toLowerCase();} : function(str){return str;};
41
41
  var target = query.split("\n");
42
42
  // Different methods for single-line and multi-line queries
43
- if (target.length == 1)
44
- this.matches = function(reverse, pos) {
45
- var line = fold(cm.getLine(pos.line)), len = query.length, match;
46
- if (reverse ? (pos.ch >= len && (match = line.lastIndexOf(query, pos.ch - len)) != -1)
47
- : (match = line.indexOf(query, pos.ch)) != -1)
48
- return {from: {line: pos.line, ch: match},
49
- to: {line: pos.line, ch: match + len}};
50
- };
51
- else
43
+ if (target.length == 1) {
44
+ if (!query.length) {
45
+ // Empty string would match anything and never progress, so
46
+ // we define it to match nothing instead.
47
+ this.matches = function() {};
48
+ } else {
49
+ this.matches = function(reverse, pos) {
50
+ var line = fold(cm.getLine(pos.line)), len = query.length, match;
51
+ if (reverse ? (pos.ch >= len && (match = line.lastIndexOf(query, pos.ch - len)) != -1)
52
+ : (match = line.indexOf(query, pos.ch)) != -1)
53
+ return {from: {line: pos.line, ch: match},
54
+ to: {line: pos.line, ch: match + len}};
55
+ };
56
+ }
57
+ } else {
52
58
  this.matches = function(reverse, pos) {
53
59
  var ln = pos.line, idx = (reverse ? target.length - 1 : 0), match = target[idx], line = fold(cm.getLine(ln));
54
60
  var offsetA = (reverse ? line.indexOf(match) + match.length : line.lastIndexOf(match));
@@ -70,6 +76,7 @@
70
76
  return {from: reverse ? end : start, to: reverse ? start : end};
71
77
  }
72
78
  };
79
+ }
73
80
  }
74
81
  }
75
82
 
@@ -39,14 +39,14 @@
39
39
 
40
40
  /* CURSOR */
41
41
 
42
- .CodeMirror pre.CodeMirror-cursor {
42
+ .CodeMirror div.CodeMirror-cursor {
43
43
  border-left: 1px solid black;
44
44
  }
45
45
  /* Shown when moving in bi-directional text */
46
- .CodeMirror pre.CodeMirror-secondarycursor {
46
+ .CodeMirror div.CodeMirror-secondarycursor {
47
47
  border-left: 1px solid silver;
48
48
  }
49
- .cm-keymap-fat-cursor pre.CodeMirror-cursor {
49
+ .CodeMirror.cm-keymap-fat-cursor div.CodeMirror-cursor {
50
50
  width: auto;
51
51
  border: 0;
52
52
  background: transparent;
@@ -54,11 +54,11 @@
54
54
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#6600c800, endColorstr=#4c00c800);
55
55
  }
56
56
  /* Kludge to turn off filter in ie9+, which also accepts rgba */
57
- .cm-keymap-fat-cursor pre.CodeMirror-cursor:not(#nonsense_id) {
57
+ .CodeMirror.cm-keymap-fat-cursor div.CodeMirror-cursor:not(#nonsense_id) {
58
58
  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
59
59
  }
60
60
  /* Can style cursor different in overwrite (non-insert) mode */
61
- .CodeMirror pre.CodeMirror-cursor.CodeMirror-overwrite {}
61
+ .CodeMirror div.CodeMirror-cursor.CodeMirror-overwrite {}
62
62
 
63
63
  /* DEFAULT THEME */
64
64
 
@@ -196,6 +196,7 @@ div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #f22;}
196
196
  .CodeMirror-linewidget {
197
197
  position: relative;
198
198
  z-index: 2;
199
+ overflow: auto;
199
200
  }
200
201
 
201
202
  .CodeMirror-wrap .CodeMirror-scroll {
@@ -210,20 +211,20 @@ div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #f22;}
210
211
  }
211
212
  .CodeMirror-measure pre { position: static; }
212
213
 
213
- .CodeMirror pre.CodeMirror-cursor {
214
+ .CodeMirror div.CodeMirror-cursor {
214
215
  position: absolute;
215
216
  visibility: hidden;
216
217
  border-right: none;
217
218
  width: 0;
218
219
  }
219
- .CodeMirror-focused pre.CodeMirror-cursor {
220
+ .CodeMirror-focused div.CodeMirror-cursor {
220
221
  visibility: visible;
221
222
  }
222
223
 
223
224
  .CodeMirror-selected { background: #d9d9d9; }
224
225
  .CodeMirror-focused .CodeMirror-selected { background: #d7d4f0; }
225
226
 
226
- .CodeMirror-searching {
227
+ .cm-searching {
227
228
  background: #ffa;
228
229
  background: rgba(255, 255, 0, .4);
229
230
  }
@@ -233,7 +234,7 @@ div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #f22;}
233
234
 
234
235
  @media print {
235
236
  /* Hide the cursor when printing */
236
- .CodeMirror pre.CodeMirror-cursor {
237
+ .CodeMirror div.CodeMirror-cursor {
237
238
  visibility: hidden;
238
239
  }
239
240
  }
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: '3.00'
4
+ version: '3.02'
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-12-14 00:00:00.000000000Z
12
+ date: 2013-02-12 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: railties
16
- requirement: &2161470620 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,10 +21,15 @@ dependencies:
21
21
  version: '3.0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2161470620
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ~>
28
+ - !ruby/object:Gem::Version
29
+ version: '3.0'
25
30
  - !ruby/object:Gem::Dependency
26
31
  name: rails
27
- requirement: &2161470100 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
28
33
  none: false
29
34
  requirements:
30
35
  - - ~>
@@ -32,10 +37,15 @@ dependencies:
32
37
  version: '3.0'
33
38
  type: :development
34
39
  prerelease: false
35
- version_requirements: *2161470100
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ~>
44
+ - !ruby/object:Gem::Version
45
+ version: '3.0'
36
46
  - !ruby/object:Gem::Dependency
37
47
  name: sqlite3
38
- requirement: &2161469720 !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
39
49
  none: false
40
50
  requirements:
41
51
  - - ! '>='
@@ -43,10 +53,15 @@ dependencies:
43
53
  version: '0'
44
54
  type: :development
45
55
  prerelease: false
46
- version_requirements: *2161469720
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
47
62
  - !ruby/object:Gem::Dependency
48
63
  name: minitest
49
- requirement: &2161469060 !ruby/object:Gem::Requirement
64
+ requirement: !ruby/object:Gem::Requirement
50
65
  none: false
51
66
  requirements:
52
67
  - - ! '>='
@@ -54,10 +69,15 @@ dependencies:
54
69
  version: '0'
55
70
  type: :development
56
71
  prerelease: false
57
- version_requirements: *2161469060
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
58
78
  - !ruby/object:Gem::Dependency
59
79
  name: capybara
60
- requirement: &2161468480 !ruby/object:Gem::Requirement
80
+ requirement: !ruby/object:Gem::Requirement
61
81
  none: false
62
82
  requirements:
63
83
  - - ! '>='
@@ -65,7 +85,12 @@ dependencies:
65
85
  version: '0'
66
86
  type: :development
67
87
  prerelease: false
68
- version_requirements: *2161468480
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ! '>='
92
+ - !ruby/object:Gem::Version
93
+ version: '0'
69
94
  description: This gem provides CodeMirror assets for your Rails 3 application.
70
95
  email: nathan@fixler.org
71
96
  executables: []
@@ -97,6 +122,7 @@ files:
97
122
  - test/dummy/config.ru
98
123
  - test/dummy/config/application.rb
99
124
  - test/dummy/config/boot.rb
125
+ - test/dummy/config/database.yml
100
126
  - test/dummy/config/environment.rb
101
127
  - test/dummy/config/environments/development.rb
102
128
  - test/dummy/config/environments/production.rb
@@ -109,6 +135,7 @@ files:
109
135
  - test/dummy/config/initializers/wrap_parameters.rb
110
136
  - test/dummy/config/locales/en.yml
111
137
  - test/dummy/config/routes.rb
138
+ - test/dummy/db/.gitkeep
112
139
  - test/dummy/lib/assets/.gitkeep
113
140
  - test/dummy/log/.gitkeep
114
141
  - test/dummy/public/404.html
@@ -127,11 +154,14 @@ files:
127
154
  - vendor/assets/javascripts/codemirror.js
128
155
  - vendor/assets/javascripts/codemirror/keymaps/emacs.js
129
156
  - vendor/assets/javascripts/codemirror/keymaps/vim.js
157
+ - vendor/assets/javascripts/codemirror/modes/apl.js
158
+ - vendor/assets/javascripts/codemirror/modes/asterisk.js
130
159
  - vendor/assets/javascripts/codemirror/modes/clike.js
131
160
  - vendor/assets/javascripts/codemirror/modes/clojure.js
132
161
  - vendor/assets/javascripts/codemirror/modes/coffeescript.js
133
162
  - vendor/assets/javascripts/codemirror/modes/commonlisp.js
134
163
  - vendor/assets/javascripts/codemirror/modes/css.js
164
+ - vendor/assets/javascripts/codemirror/modes/d.js
135
165
  - vendor/assets/javascripts/codemirror/modes/diff.js
136
166
  - vendor/assets/javascripts/codemirror/modes/ecl.js
137
167
  - vendor/assets/javascripts/codemirror/modes/erlang.js
@@ -164,12 +194,14 @@ files:
164
194
  - vendor/assets/javascripts/codemirror/modes/rst.js
165
195
  - vendor/assets/javascripts/codemirror/modes/ruby.js
166
196
  - vendor/assets/javascripts/codemirror/modes/rust.js
197
+ - vendor/assets/javascripts/codemirror/modes/sass.js
167
198
  - vendor/assets/javascripts/codemirror/modes/scheme.js
168
199
  - vendor/assets/javascripts/codemirror/modes/shell.js
169
200
  - vendor/assets/javascripts/codemirror/modes/sieve.js
170
201
  - vendor/assets/javascripts/codemirror/modes/smalltalk.js
171
202
  - vendor/assets/javascripts/codemirror/modes/smarty.js
172
203
  - vendor/assets/javascripts/codemirror/modes/sparql.js
204
+ - vendor/assets/javascripts/codemirror/modes/sql.js
173
205
  - vendor/assets/javascripts/codemirror/modes/stex.js
174
206
  - vendor/assets/javascripts/codemirror/modes/tiddlywiki.js
175
207
  - vendor/assets/javascripts/codemirror/modes/tiki.js
@@ -178,11 +210,11 @@ files:
178
210
  - vendor/assets/javascripts/codemirror/modes/velocity.js
179
211
  - vendor/assets/javascripts/codemirror/modes/verilog.js
180
212
  - vendor/assets/javascripts/codemirror/modes/xml.js
181
- - vendor/assets/javascripts/codemirror/modes/xmlpure.js
182
213
  - vendor/assets/javascripts/codemirror/modes/xquery.js
183
214
  - vendor/assets/javascripts/codemirror/modes/yaml.js
184
215
  - vendor/assets/javascripts/codemirror/modes/z80.js
185
216
  - vendor/assets/javascripts/codemirror/utils/closetag.js
217
+ - vendor/assets/javascripts/codemirror/utils/collapserange.js
186
218
  - vendor/assets/javascripts/codemirror/utils/colorize.js
187
219
  - vendor/assets/javascripts/codemirror/utils/continuecomment.js
188
220
  - vendor/assets/javascripts/codemirror/utils/continuelist.js
@@ -196,6 +228,7 @@ files:
196
228
  - vendor/assets/javascripts/codemirror/utils/multiplex.js
197
229
  - vendor/assets/javascripts/codemirror/utils/overlay.js
198
230
  - vendor/assets/javascripts/codemirror/utils/pig-hint.js
231
+ - vendor/assets/javascripts/codemirror/utils/python-hint.js
199
232
  - vendor/assets/javascripts/codemirror/utils/runmode-standalone.js
200
233
  - vendor/assets/javascripts/codemirror/utils/runmode.js
201
234
  - vendor/assets/javascripts/codemirror/utils/search.js
@@ -203,7 +236,6 @@ files:
203
236
  - vendor/assets/javascripts/codemirror/utils/simple-hint.js
204
237
  - vendor/assets/javascripts/codemirror/utils/xml-hint.js
205
238
  - vendor/assets/stylesheets/codemirror.css
206
- - vendor/assets/stylesheets/codemirror/modes/diff.css
207
239
  - vendor/assets/stylesheets/codemirror/modes/rpm-spec.css
208
240
  - vendor/assets/stylesheets/codemirror/modes/tiddlywiki.css
209
241
  - vendor/assets/stylesheets/codemirror/modes/tiki.css
@@ -245,7 +277,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
245
277
  version: '0'
246
278
  requirements: []
247
279
  rubyforge_project:
248
- rubygems_version: 1.8.10
280
+ rubygems_version: 1.8.25
249
281
  signing_key:
250
282
  specification_version: 3
251
283
  summary: Use CodeMirror with Rails 3