codemirror-rails 2.21.1 → 2.22

Sign up to get free protection for your applications and to get access to all the features.
Files changed (37) hide show
  1. data/README.md +8 -0
  2. data/lib/codemirror/rails/version.rb +2 -2
  3. data/vendor/assets/javascripts/codemirror.js +160 -86
  4. data/vendor/assets/javascripts/codemirror/modes/clike.js +2 -2
  5. data/vendor/assets/javascripts/codemirror/modes/clojure.js +1 -1
  6. data/vendor/assets/javascripts/codemirror/modes/ecl.js +203 -0
  7. data/vendor/assets/javascripts/codemirror/modes/gfm.js +1 -1
  8. data/vendor/assets/javascripts/codemirror/modes/go.js +20 -22
  9. data/vendor/assets/javascripts/codemirror/modes/less.js +5 -2
  10. data/vendor/assets/javascripts/codemirror/modes/markdown.js +58 -24
  11. data/vendor/assets/javascripts/codemirror/modes/pascal.js +2 -46
  12. data/vendor/assets/javascripts/codemirror/modes/perl.js +1 -1
  13. data/vendor/assets/javascripts/codemirror/modes/php.js +53 -24
  14. data/vendor/assets/javascripts/codemirror/modes/properties.js +57 -0
  15. data/vendor/assets/javascripts/codemirror/modes/rpm-spec.css +5 -0
  16. data/vendor/assets/javascripts/codemirror/modes/rpm-spec.js +1 -1
  17. data/vendor/assets/javascripts/codemirror/modes/ruby.js +1 -1
  18. data/vendor/assets/javascripts/codemirror/modes/smalltalk.js +16 -16
  19. data/vendor/assets/javascripts/codemirror/modes/verilog.js +194 -194
  20. data/vendor/assets/javascripts/codemirror/modes/xml.js +15 -8
  21. data/vendor/assets/javascripts/codemirror/utils/dialog.js +63 -0
  22. data/vendor/assets/javascripts/codemirror/utils/foldcode.js +186 -0
  23. data/vendor/assets/javascripts/codemirror/utils/formatting.js +294 -0
  24. data/vendor/assets/javascripts/codemirror/utils/javascript-hint.js +132 -0
  25. data/vendor/assets/javascripts/codemirror/utils/match-highlighter.js +44 -0
  26. data/vendor/assets/javascripts/codemirror/{overlay.js → utils/overlay.js} +0 -0
  27. data/vendor/assets/javascripts/codemirror/utils/runmode.js +49 -0
  28. data/vendor/assets/javascripts/codemirror/utils/search.js +114 -0
  29. data/vendor/assets/javascripts/codemirror/utils/searchcursor.js +117 -0
  30. data/vendor/assets/javascripts/codemirror/utils/simple-hint.js +66 -0
  31. data/vendor/assets/stylesheets/codemirror.css +3 -0
  32. data/vendor/assets/stylesheets/codemirror/modes/properties.css +3 -0
  33. data/vendor/assets/stylesheets/codemirror/themes/rubyblue.css +1 -1
  34. data/vendor/assets/stylesheets/codemirror/utils/dialog.css +23 -0
  35. data/vendor/assets/stylesheets/codemirror/utils/simple-hint.css +16 -0
  36. metadata +20 -6
  37. data/vendor/assets/javascripts/codemirror/runmode.js +0 -27
@@ -0,0 +1,66 @@
1
+ (function() {
2
+ CodeMirror.simpleHint = function(editor, getHints) {
3
+ // We want a single cursor position.
4
+ if (editor.somethingSelected()) return;
5
+ var result = getHints(editor);
6
+ if (!result || !result.list.length) return;
7
+ var completions = result.list;
8
+ function insert(str) {
9
+ editor.replaceRange(str, result.from, result.to);
10
+ }
11
+ // When there is only one completion, use it directly.
12
+ if (completions.length == 1) {insert(completions[0]); return true;}
13
+
14
+ // Build the select widget
15
+ var complete = document.createElement("div");
16
+ complete.className = "CodeMirror-completions";
17
+ var sel = complete.appendChild(document.createElement("select"));
18
+ // Opera doesn't move the selection when pressing up/down in a
19
+ // multi-select, but it does properly support the size property on
20
+ // single-selects, so no multi-select is necessary.
21
+ if (!window.opera) sel.multiple = true;
22
+ for (var i = 0; i < completions.length; ++i) {
23
+ var opt = sel.appendChild(document.createElement("option"));
24
+ opt.appendChild(document.createTextNode(completions[i]));
25
+ }
26
+ sel.firstChild.selected = true;
27
+ sel.size = Math.min(10, completions.length);
28
+ var pos = editor.cursorCoords();
29
+ complete.style.left = pos.x + "px";
30
+ complete.style.top = pos.yBot + "px";
31
+ document.body.appendChild(complete);
32
+ // Hack to hide the scrollbar.
33
+ if (completions.length <= 10)
34
+ complete.style.width = (sel.clientWidth - 1) + "px";
35
+
36
+ var done = false;
37
+ function close() {
38
+ if (done) return;
39
+ done = true;
40
+ complete.parentNode.removeChild(complete);
41
+ }
42
+ function pick() {
43
+ insert(completions[sel.selectedIndex]);
44
+ close();
45
+ setTimeout(function(){editor.focus();}, 50);
46
+ }
47
+ CodeMirror.connect(sel, "blur", close);
48
+ CodeMirror.connect(sel, "keydown", function(event) {
49
+ var code = event.keyCode;
50
+ // Enter
51
+ if (code == 13) {CodeMirror.e_stop(event); pick();}
52
+ // Escape
53
+ else if (code == 27) {CodeMirror.e_stop(event); close(); editor.focus();}
54
+ else if (code != 38 && code != 40) {
55
+ close(); editor.focus();
56
+ setTimeout(function(){CodeMirror.simpleHint(editor, getHints);}, 50);
57
+ }
58
+ });
59
+ CodeMirror.connect(sel, "dblclick", pick);
60
+
61
+ sel.focus();
62
+ // Opera sometimes ignores focusing a freshly created node
63
+ if (window.opera) setTimeout(function(){if (!done) sel.focus();}, 100);
64
+ return true;
65
+ };
66
+ })();
@@ -59,7 +59,10 @@
59
59
  position: absolute;
60
60
  visibility: hidden;
61
61
  border-left: 1px solid black;
62
+ border-right:none;
63
+ width:0;
62
64
  }
65
+ .CodeMirror pre.CodeMirror-cursor.CodeMirror-overwrite {}
63
66
  .CodeMirror-focused pre.CodeMirror-cursor {
64
67
  visibility: visible;
65
68
  }
@@ -0,0 +1,3 @@
1
+ span.cm-key {color: #00c;}
2
+ span.cm-equals {color: #a11;}
3
+ span.cm-value {color: #170;}
@@ -1,7 +1,7 @@
1
1
  .cm-s-rubyblue { font:13px/1.4em Trebuchet, Verdana, sans-serif; } /* - customized editor font - */
2
2
 
3
3
  .cm-s-rubyblue { background: #112435; color: white; }
4
- .cm-s-rubyblue div.CodeMirror-selected { background: #0000FF !important; }
4
+ .cm-s-rubyblue div.CodeMirror-selected { background: #38566F !important; }
5
5
  .cm-s-rubyblue .CodeMirror-gutter { background: #1F4661; border-right: 7px solid #3E7087; min-width:2.5em; }
6
6
  .cm-s-rubyblue .CodeMirror-gutter-text { color: white; }
7
7
  .cm-s-rubyblue .CodeMirror-cursor { border-left: 1px solid white !important; }
@@ -0,0 +1,23 @@
1
+ .CodeMirror-dialog {
2
+ position: relative;
3
+ }
4
+
5
+ .CodeMirror-dialog > div {
6
+ position: absolute;
7
+ top: 0; left: 0; right: 0;
8
+ background: white;
9
+ border-bottom: 1px solid #eee;
10
+ z-index: 15;
11
+ padding: .1em .8em;
12
+ overflow: hidden;
13
+ color: #333;
14
+ }
15
+
16
+ .CodeMirror-dialog input {
17
+ border: none;
18
+ outline: none;
19
+ background: transparent;
20
+ width: 20em;
21
+ color: inherit;
22
+ font-family: monospace;
23
+ }
@@ -0,0 +1,16 @@
1
+ .CodeMirror-completions {
2
+ position: absolute;
3
+ z-index: 10;
4
+ overflow: hidden;
5
+ -webkit-box-shadow: 2px 3px 5px rgba(0,0,0,.2);
6
+ -moz-box-shadow: 2px 3px 5px rgba(0,0,0,.2);
7
+ box-shadow: 2px 3px 5px rgba(0,0,0,.2);
8
+ }
9
+ .CodeMirror-completions select {
10
+ background: #fafafa;
11
+ outline: none;
12
+ border: none;
13
+ padding: 0;
14
+ margin: 0;
15
+ font-family: monospace;
16
+ }
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: 2.21.1
4
+ version: '2.22'
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-02-02 00:00:00.000000000Z
12
+ date: 2012-02-27 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: railties
16
- requirement: &2153355080 !ruby/object:Gem::Requirement
16
+ requirement: &2152221920 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ~>
@@ -21,7 +21,7 @@ dependencies:
21
21
  version: '3.0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2153355080
24
+ version_requirements: *2152221920
25
25
  description: This gem provides CodeMirror assets for your Rails 3 application.
26
26
  email: nathan@fixler.org
27
27
  executables: []
@@ -48,6 +48,7 @@ files:
48
48
  - vendor/assets/javascripts/codemirror/modes/coffeescript.js
49
49
  - vendor/assets/javascripts/codemirror/modes/css.js
50
50
  - vendor/assets/javascripts/codemirror/modes/diff.js
51
+ - vendor/assets/javascripts/codemirror/modes/ecl.js
51
52
  - vendor/assets/javascripts/codemirror/modes/gfm.js
52
53
  - vendor/assets/javascripts/codemirror/modes/go.js
53
54
  - vendor/assets/javascripts/codemirror/modes/groovy.js
@@ -65,9 +66,11 @@ files:
65
66
  - vendor/assets/javascripts/codemirror/modes/perl.js
66
67
  - vendor/assets/javascripts/codemirror/modes/php.js
67
68
  - vendor/assets/javascripts/codemirror/modes/plsql.js
69
+ - vendor/assets/javascripts/codemirror/modes/properties.js
68
70
  - vendor/assets/javascripts/codemirror/modes/python.js
69
71
  - vendor/assets/javascripts/codemirror/modes/r.js
70
72
  - vendor/assets/javascripts/codemirror/modes/rpm-changes.js
73
+ - vendor/assets/javascripts/codemirror/modes/rpm-spec.css
71
74
  - vendor/assets/javascripts/codemirror/modes/rpm-spec.js
72
75
  - vendor/assets/javascripts/codemirror/modes/rst.js
73
76
  - vendor/assets/javascripts/codemirror/modes/ruby.js
@@ -82,10 +85,19 @@ files:
82
85
  - vendor/assets/javascripts/codemirror/modes/xml.js
83
86
  - vendor/assets/javascripts/codemirror/modes/xmlpure.js
84
87
  - vendor/assets/javascripts/codemirror/modes/yaml.js
85
- - vendor/assets/javascripts/codemirror/overlay.js
86
- - vendor/assets/javascripts/codemirror/runmode.js
88
+ - vendor/assets/javascripts/codemirror/utils/dialog.js
89
+ - vendor/assets/javascripts/codemirror/utils/foldcode.js
90
+ - vendor/assets/javascripts/codemirror/utils/formatting.js
91
+ - vendor/assets/javascripts/codemirror/utils/javascript-hint.js
92
+ - vendor/assets/javascripts/codemirror/utils/match-highlighter.js
93
+ - vendor/assets/javascripts/codemirror/utils/overlay.js
94
+ - vendor/assets/javascripts/codemirror/utils/runmode.js
95
+ - vendor/assets/javascripts/codemirror/utils/search.js
96
+ - vendor/assets/javascripts/codemirror/utils/searchcursor.js
97
+ - vendor/assets/javascripts/codemirror/utils/simple-hint.js
87
98
  - vendor/assets/stylesheets/codemirror.css
88
99
  - vendor/assets/stylesheets/codemirror/modes/diff.css
100
+ - vendor/assets/stylesheets/codemirror/modes/properties.css
89
101
  - vendor/assets/stylesheets/codemirror/modes/rpm-spec.css
90
102
  - vendor/assets/stylesheets/codemirror/modes/tiddlywiki.css
91
103
  - vendor/assets/stylesheets/codemirror/themes/cobalt.css
@@ -95,6 +107,8 @@ files:
95
107
  - vendor/assets/stylesheets/codemirror/themes/neat.css
96
108
  - vendor/assets/stylesheets/codemirror/themes/night.css
97
109
  - vendor/assets/stylesheets/codemirror/themes/rubyblue.css
110
+ - vendor/assets/stylesheets/codemirror/utils/dialog.css
111
+ - vendor/assets/stylesheets/codemirror/utils/simple-hint.css
98
112
  homepage: https://rubygems.org/gems/codemirror-rails
99
113
  licenses: []
100
114
  post_install_message:
@@ -1,27 +0,0 @@
1
- CodeMirror.runMode = function(string, modespec, callback) {
2
- var mode = CodeMirror.getMode({indentUnit: 2}, modespec);
3
- var isNode = callback.nodeType == 1;
4
- if (isNode) {
5
- var node = callback, accum = [];
6
- callback = function(string, style) {
7
- if (string == "\n")
8
- accum.push("<br>");
9
- else if (style)
10
- accum.push("<span class=\"cm-" + CodeMirror.htmlEscape(style) + "\">" + CodeMirror.htmlEscape(string) + "</span>");
11
- else
12
- accum.push(CodeMirror.htmlEscape(string));
13
- }
14
- }
15
- var lines = CodeMirror.splitLines(string), state = CodeMirror.startState(mode);
16
- for (var i = 0, e = lines.length; i < e; ++i) {
17
- if (i) callback("\n");
18
- var stream = new CodeMirror.StringStream(lines[i]);
19
- while (!stream.eol()) {
20
- var style = mode.token(stream, state);
21
- callback(stream.current(), style, i, stream.start);
22
- stream.start = stream.pos;
23
- }
24
- }
25
- if (isNode)
26
- node.innerHTML = accum.join("");
27
- };