marty 2.4.7 → 2.4.8

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 (225) hide show
  1. checksums.yaml +4 -4
  2. data/Dockerfile.dummy +8 -5
  3. data/Gemfile.lock +1 -1
  4. data/README.md +8 -0
  5. data/app/assets/javascripts/marty/application.js +1 -0
  6. data/app/assets/javascripts/marty/codemirror/codemirror.js +9730 -0
  7. data/app/{components/marty/script_form/client → assets/javascripts/marty/codemirror}/mode/delorean/delorean.js +0 -0
  8. data/app/assets/javascripts/marty/codemirror/mode/javascript/javascript.js +900 -0
  9. data/app/assets/javascripts/marty/codemirror/mode/python/python.js +399 -0
  10. data/app/{components/marty/script_form/client → assets/javascripts/marty/codemirror}/mode/ruby/ruby.js +135 -34
  11. data/app/{components/marty/script_form/client/Ext.ux.form.field.CodeMirror.js → assets/javascripts/marty/extjs/extensions/marty.js} +87 -6
  12. data/app/assets/stylesheets/marty/application.css +1 -13
  13. data/app/assets/stylesheets/marty/codemirror/codemirror.css +346 -0
  14. data/app/{components/marty/script_form/client → assets/stylesheets/marty/codemirror}/delorean.css +0 -0
  15. data/app/components/marty/auth_app/client/auth_app.js +82 -80
  16. data/app/components/marty/data_grid_view.rb +1 -54
  17. data/app/components/marty/data_grid_view/client/data_grid_view.js +49 -0
  18. data/app/components/marty/form.rb +1 -5
  19. data/app/components/marty/form/client/form.js +5 -0
  20. data/app/components/marty/grid.rb +1 -146
  21. data/app/components/marty/grid/client/grid.js +146 -0
  22. data/app/components/marty/import_view.rb +1 -32
  23. data/app/components/marty/import_view/client/import_view.js +32 -0
  24. data/app/components/marty/live_search_grid_panel.rb +1 -21
  25. data/app/components/marty/live_search_grid_panel/client/live_search_grid_panel.js +27 -0
  26. data/app/components/marty/main_auth_app.rb +4 -145
  27. data/app/components/marty/main_auth_app/client/main_auth_app.js +124 -0
  28. data/app/components/marty/mcfly_grid_panel.rb +1 -17
  29. data/app/components/marty/mcfly_grid_panel/client/mcfly_grid_panel.js +37 -0
  30. data/app/components/marty/new_posting_form.rb +1 -6
  31. data/app/components/marty/new_posting_form/client/new_posting_form.js +6 -0
  32. data/app/components/marty/panel.rb +1 -5
  33. data/app/components/marty/panel/client/panel.js +5 -0
  34. data/app/components/marty/posting_grid.rb +4 -55
  35. data/app/components/marty/posting_grid/client/posting_grid.js +50 -0
  36. data/app/components/marty/promise_view.rb +2 -75
  37. data/app/components/marty/promise_view/client/promise_view.css +12 -9
  38. data/app/components/marty/promise_view/client/promise_view.js +57 -0
  39. data/app/components/marty/report_form.rb +3 -69
  40. data/app/components/marty/report_form/client/report_form.js +78 -0
  41. data/app/components/marty/report_select.rb +1 -45
  42. data/app/components/marty/report_select/client/report_select.js +50 -0
  43. data/app/components/marty/reporting.rb +1 -8
  44. data/app/components/marty/reporting/client/reporting.js +8 -0
  45. data/app/components/marty/script_form.rb +2 -63
  46. data/app/components/marty/script_form/client/script_form.js +44 -0
  47. data/app/components/marty/script_tester.rb +1 -7
  48. data/app/components/marty/script_tester/client/script_tester.js +7 -0
  49. data/app/components/marty/scripting.rb +1 -55
  50. data/app/components/marty/scripting/client/scripting.js +62 -0
  51. data/app/components/marty/simple_app/client/simple_app.js +21 -13
  52. data/app/models/marty/promise.rb +22 -1
  53. data/app/views/layouts/marty/application.html.erb +8 -6
  54. data/docker-compose.dummy.yml +2 -0
  55. data/lib/marty/monkey.rb +0 -16
  56. data/lib/marty/version.rb +1 -1
  57. data/spec/dummy/config/initializers/assets.rb +1 -0
  58. data/spec/features/reporting_spec.rb +1 -0
  59. data/spec/features/scripting_spec.rb +4 -4
  60. data/spec/spec_helper.rb +1 -0
  61. data/spec/support/chromedriver.rb +5 -1
  62. data/spec/support/shared_connection_db_helpers.rb +42 -2
  63. metadata +29 -168
  64. data/app/assets/images/marty/.gitkeep +0 -0
  65. data/app/components/marty/mcfly_grid_panel/client/dup_in_form.js +0 -20
  66. data/app/components/marty/script_form/client/codemirror.css +0 -172
  67. data/app/components/marty/script_form/client/codemirror.js +0 -3130
  68. data/app/components/marty/script_form/client/mode/clike/clike.js +0 -284
  69. data/app/components/marty/script_form/client/mode/clike/index.html +0 -102
  70. data/app/components/marty/script_form/client/mode/clike/scala.html +0 -766
  71. data/app/components/marty/script_form/client/mode/clojure/clojure.js +0 -206
  72. data/app/components/marty/script_form/client/mode/clojure/index.html +0 -67
  73. data/app/components/marty/script_form/client/mode/coffeescript/LICENSE +0 -22
  74. data/app/components/marty/script_form/client/mode/coffeescript/coffeescript.js +0 -346
  75. data/app/components/marty/script_form/client/mode/coffeescript/index.html +0 -728
  76. data/app/components/marty/script_form/client/mode/commonlisp/commonlisp.js +0 -101
  77. data/app/components/marty/script_form/client/mode/commonlisp/index.html +0 -165
  78. data/app/components/marty/script_form/client/mode/css/css.js +0 -448
  79. data/app/components/marty/script_form/client/mode/css/index.html +0 -58
  80. data/app/components/marty/script_form/client/mode/css/test.js +0 -501
  81. data/app/components/marty/script_form/client/mode/diff/diff.js +0 -32
  82. data/app/components/marty/script_form/client/mode/diff/index.html +0 -105
  83. data/app/components/marty/script_form/client/mode/ecl/ecl.js +0 -203
  84. data/app/components/marty/script_form/client/mode/ecl/index.html +0 -42
  85. data/app/components/marty/script_form/client/mode/erlang/erlang.js +0 -463
  86. data/app/components/marty/script_form/client/mode/erlang/index.html +0 -63
  87. data/app/components/marty/script_form/client/mode/gfm/gfm.js +0 -150
  88. data/app/components/marty/script_form/client/mode/gfm/index.html +0 -48
  89. data/app/components/marty/script_form/client/mode/go/go.js +0 -170
  90. data/app/components/marty/script_form/client/mode/go/index.html +0 -73
  91. data/app/components/marty/script_form/client/mode/groovy/groovy.js +0 -210
  92. data/app/components/marty/script_form/client/mode/groovy/index.html +0 -72
  93. data/app/components/marty/script_form/client/mode/haskell/haskell.js +0 -242
  94. data/app/components/marty/script_form/client/mode/haskell/index.html +0 -61
  95. data/app/components/marty/script_form/client/mode/haxe/haxe.js +0 -429
  96. data/app/components/marty/script_form/client/mode/haxe/index.html +0 -91
  97. data/app/components/marty/script_form/client/mode/htmlembedded/htmlembedded.js +0 -72
  98. data/app/components/marty/script_form/client/mode/htmlembedded/index.html +0 -50
  99. data/app/components/marty/script_form/client/mode/htmlmixed/htmlmixed.js +0 -84
  100. data/app/components/marty/script_form/client/mode/htmlmixed/index.html +0 -52
  101. data/app/components/marty/script_form/client/mode/javascript/index.html +0 -78
  102. data/app/components/marty/script_form/client/mode/javascript/javascript.js +0 -361
  103. data/app/components/marty/script_form/client/mode/jinja2/index.html +0 -38
  104. data/app/components/marty/script_form/client/mode/jinja2/jinja2.js +0 -42
  105. data/app/components/marty/script_form/client/mode/less/index.html +0 -740
  106. data/app/components/marty/script_form/client/mode/less/less.js +0 -266
  107. data/app/components/marty/script_form/client/mode/lua/index.html +0 -73
  108. data/app/components/marty/script_form/client/mode/lua/lua.js +0 -140
  109. data/app/components/marty/script_form/client/mode/markdown/index.html +0 -343
  110. data/app/components/marty/script_form/client/mode/markdown/markdown.js +0 -382
  111. data/app/components/marty/script_form/client/mode/markdown/test.js +0 -1084
  112. data/app/components/marty/script_form/client/mode/mysql/index.html +0 -42
  113. data/app/components/marty/script_form/client/mode/mysql/mysql.js +0 -186
  114. data/app/components/marty/script_form/client/mode/ntriples/index.html +0 -33
  115. data/app/components/marty/script_form/client/mode/ntriples/ntriples.js +0 -172
  116. data/app/components/marty/script_form/client/mode/ocaml/index.html +0 -130
  117. data/app/components/marty/script_form/client/mode/ocaml/ocaml.js +0 -114
  118. data/app/components/marty/script_form/client/mode/pascal/LICENSE +0 -7
  119. data/app/components/marty/script_form/client/mode/pascal/index.html +0 -49
  120. data/app/components/marty/script_form/client/mode/pascal/pascal.js +0 -94
  121. data/app/components/marty/script_form/client/mode/perl/LICENSE +0 -19
  122. data/app/components/marty/script_form/client/mode/perl/index.html +0 -63
  123. data/app/components/marty/script_form/client/mode/perl/perl.js +0 -816
  124. data/app/components/marty/script_form/client/mode/php/index.html +0 -49
  125. data/app/components/marty/script_form/client/mode/php/php.js +0 -148
  126. data/app/components/marty/script_form/client/mode/pig/index.html +0 -43
  127. data/app/components/marty/script_form/client/mode/pig/pig.js +0 -172
  128. data/app/components/marty/script_form/client/mode/plsql/index.html +0 -63
  129. data/app/components/marty/script_form/client/mode/plsql/plsql.js +0 -217
  130. data/app/components/marty/script_form/client/mode/properties/index.html +0 -41
  131. data/app/components/marty/script_form/client/mode/properties/properties.js +0 -63
  132. data/app/components/marty/script_form/client/mode/python/LICENSE.txt +0 -21
  133. data/app/components/marty/script_form/client/mode/python/index.html +0 -123
  134. data/app/components/marty/script_form/client/mode/python/python.js +0 -338
  135. data/app/components/marty/script_form/client/mode/r/LICENSE +0 -24
  136. data/app/components/marty/script_form/client/mode/r/index.html +0 -74
  137. data/app/components/marty/script_form/client/mode/r/r.js +0 -141
  138. data/app/components/marty/script_form/client/mode/rpm/changes/changes.js +0 -19
  139. data/app/components/marty/script_form/client/mode/rpm/changes/index.html +0 -54
  140. data/app/components/marty/script_form/client/mode/rpm/spec/index.html +0 -100
  141. data/app/components/marty/script_form/client/mode/rpm/spec/spec.css +0 -5
  142. data/app/components/marty/script_form/client/mode/rpm/spec/spec.js +0 -66
  143. data/app/components/marty/script_form/client/mode/rst/index.html +0 -526
  144. data/app/components/marty/script_form/client/mode/rst/rst.js +0 -326
  145. data/app/components/marty/script_form/client/mode/ruby/LICENSE +0 -24
  146. data/app/components/marty/script_form/client/mode/ruby/index.html +0 -172
  147. data/app/components/marty/script_form/client/mode/rust/index.html +0 -49
  148. data/app/components/marty/script_form/client/mode/rust/rust.js +0 -432
  149. data/app/components/marty/script_form/client/mode/scheme/index.html +0 -65
  150. data/app/components/marty/script_form/client/mode/scheme/scheme.js +0 -230
  151. data/app/components/marty/script_form/client/mode/shell/index.html +0 -50
  152. data/app/components/marty/script_form/client/mode/shell/shell.js +0 -118
  153. data/app/components/marty/script_form/client/mode/sieve/LICENSE +0 -23
  154. data/app/components/marty/script_form/client/mode/sieve/index.html +0 -81
  155. data/app/components/marty/script_form/client/mode/sieve/sieve.js +0 -156
  156. data/app/components/marty/script_form/client/mode/smalltalk/index.html +0 -56
  157. data/app/components/marty/script_form/client/mode/smalltalk/smalltalk.js +0 -139
  158. data/app/components/marty/script_form/client/mode/smarty/index.html +0 -83
  159. data/app/components/marty/script_form/client/mode/smarty/smarty.js +0 -148
  160. data/app/components/marty/script_form/client/mode/sparql/index.html +0 -41
  161. data/app/components/marty/script_form/client/mode/sparql/sparql.js +0 -143
  162. data/app/components/marty/script_form/client/mode/stex/index.html +0 -98
  163. data/app/components/marty/script_form/client/mode/stex/stex.js +0 -182
  164. data/app/components/marty/script_form/client/mode/stex/test.js +0 -343
  165. data/app/components/marty/script_form/client/mode/tiddlywiki/index.html +0 -141
  166. data/app/components/marty/script_form/client/mode/tiddlywiki/tiddlywiki.css +0 -14
  167. data/app/components/marty/script_form/client/mode/tiddlywiki/tiddlywiki.js +0 -384
  168. data/app/components/marty/script_form/client/mode/tiki/index.html +0 -83
  169. data/app/components/marty/script_form/client/mode/tiki/tiki.css +0 -26
  170. data/app/components/marty/script_form/client/mode/tiki/tiki.js +0 -309
  171. data/app/components/marty/script_form/client/mode/vb/LICENSE.txt +0 -21
  172. data/app/components/marty/script_form/client/mode/vb/index.html +0 -89
  173. data/app/components/marty/script_form/client/mode/vb/vb.js +0 -260
  174. data/app/components/marty/script_form/client/mode/vbscript/index.html +0 -43
  175. data/app/components/marty/script_form/client/mode/vbscript/vbscript.js +0 -26
  176. data/app/components/marty/script_form/client/mode/velocity/index.html +0 -104
  177. data/app/components/marty/script_form/client/mode/velocity/velocity.js +0 -146
  178. data/app/components/marty/script_form/client/mode/verilog/index.html +0 -211
  179. data/app/components/marty/script_form/client/mode/verilog/verilog.js +0 -194
  180. data/app/components/marty/script_form/client/mode/xml/index.html +0 -45
  181. data/app/components/marty/script_form/client/mode/xml/xml.js +0 -318
  182. data/app/components/marty/script_form/client/mode/xquery/LICENSE +0 -20
  183. data/app/components/marty/script_form/client/mode/xquery/index.html +0 -223
  184. data/app/components/marty/script_form/client/mode/xquery/test/index.html +0 -27
  185. data/app/components/marty/script_form/client/mode/xquery/test/testBase.js +0 -42
  186. data/app/components/marty/script_form/client/mode/xquery/test/testEmptySequenceKeyword.js +0 -16
  187. data/app/components/marty/script_form/client/mode/xquery/test/testMultiAttr.js +0 -16
  188. data/app/components/marty/script_form/client/mode/xquery/test/testNamespaces.js +0 -91
  189. data/app/components/marty/script_form/client/mode/xquery/test/testProcessingInstructions.js +0 -16
  190. data/app/components/marty/script_form/client/mode/xquery/test/testQuotes.js +0 -19
  191. data/app/components/marty/script_form/client/mode/xquery/xquery.js +0 -451
  192. data/app/components/marty/script_form/client/mode/yaml/index.html +0 -68
  193. data/app/components/marty/script_form/client/mode/yaml/yaml.js +0 -95
  194. data/app/components/marty/script_form/client/theme/ambiance.css +0 -81
  195. data/app/components/marty/script_form/client/theme/blackboard.css +0 -25
  196. data/app/components/marty/script_form/client/theme/cobalt.css +0 -18
  197. data/app/components/marty/script_form/client/theme/eclipse.css +0 -25
  198. data/app/components/marty/script_form/client/theme/elegant.css +0 -10
  199. data/app/components/marty/script_form/client/theme/erlang-dark.css +0 -21
  200. data/app/components/marty/script_form/client/theme/lesser-dark.css +0 -44
  201. data/app/components/marty/script_form/client/theme/monokai.css +0 -28
  202. data/app/components/marty/script_form/client/theme/neat.css +0 -9
  203. data/app/components/marty/script_form/client/theme/night.css +0 -21
  204. data/app/components/marty/script_form/client/theme/rubyblue.css +0 -21
  205. data/app/components/marty/script_form/client/theme/vibrant-ink.css +0 -27
  206. data/app/components/marty/script_form/client/theme/xq-dark.css +0 -46
  207. data/app/components/marty/script_form/client/util/closetag.js +0 -164
  208. data/app/components/marty/script_form/client/util/dialog.css +0 -27
  209. data/app/components/marty/script_form/client/util/dialog.js +0 -70
  210. data/app/components/marty/script_form/client/util/foldcode.js +0 -196
  211. data/app/components/marty/script_form/client/util/formatting.js +0 -193
  212. data/app/components/marty/script_form/client/util/javascript-hint.js +0 -134
  213. data/app/components/marty/script_form/client/util/loadmode.js +0 -51
  214. data/app/components/marty/script_form/client/util/match-highlighter.js +0 -44
  215. data/app/components/marty/script_form/client/util/multiplex.js +0 -77
  216. data/app/components/marty/script_form/client/util/overlay.js +0 -54
  217. data/app/components/marty/script_form/client/util/pig-hint.js +0 -123
  218. data/app/components/marty/script_form/client/util/runmode-standalone.js +0 -90
  219. data/app/components/marty/script_form/client/util/runmode.js +0 -53
  220. data/app/components/marty/script_form/client/util/search.js +0 -118
  221. data/app/components/marty/script_form/client/util/searchcursor.js +0 -119
  222. data/app/components/marty/script_form/client/util/simple-hint.css +0 -16
  223. data/app/components/marty/script_form/client/util/simple-hint.js +0 -97
  224. data/app/components/marty/script_form/client/util/xml-hint.js +0 -137
  225. data/lib/marty/javascript/grid_view_in_form.js +0 -81
@@ -1,42 +0,0 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8">
5
- <title>CodeMirror: MySQL mode</title>
6
- <link rel="stylesheet" href="../../lib/codemirror.css">
7
- <script src="../../lib/codemirror.js"></script>
8
- <script src="mysql.js"></script>
9
- <style>.CodeMirror {border-top: 1px solid black; border-bottom: 1px solid black;}</style>
10
- <link rel="stylesheet" href="../../doc/docs.css">
11
- </head>
12
- <body>
13
- <h1>CodeMirror: MySQL mode</h1>
14
- <form><textarea id="code" name="code">
15
- -- Comment for the code
16
- -- MySQL Mode for CodeMirror2 by MySQLTools http://github.com/partydroid/MySQL-Tools
17
- SELECT UNIQUE `var1` as `variable`,
18
- MAX(`var5`) as `max`,
19
- MIN(`var5`) as `min`,
20
- STDEV(`var5`) as `dev`
21
- FROM `table`
22
-
23
- LEFT JOIN `table2` ON `var2` = `variable`
24
-
25
- ORDER BY `var3` DESC
26
- GROUP BY `groupvar`
27
-
28
- LIMIT 0,30;
29
-
30
- </textarea></form>
31
- <script>
32
- var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
33
- mode: "text/x-mysql",
34
- tabMode: "indent",
35
- matchBrackets: true
36
- });
37
- </script>
38
-
39
- <p><strong>MIME types defined:</strong> <code>text/x-mysql</code>.</p>
40
-
41
- </body>
42
- </html>
@@ -1,186 +0,0 @@
1
- /*
2
- * MySQL Mode for CodeMirror 2 by MySQL-Tools
3
- * @author James Thorne (partydroid)
4
- * @link http://github.com/partydroid/MySQL-Tools
5
- * @link http://mysqltools.org
6
- * @version 02/Jan/2012
7
- */
8
- CodeMirror.defineMode("mysql", function(config) {
9
- var indentUnit = config.indentUnit;
10
- var curPunc;
11
-
12
- function wordRegexp(words) {
13
- return new RegExp("^(?:" + words.join("|") + ")$", "i");
14
- }
15
- var ops = wordRegexp(["str", "lang", "langmatches", "datatype", "bound", "sameterm", "isiri", "isuri",
16
- "isblank", "isliteral", "union", "a"]);
17
- var keywords = wordRegexp([
18
- ('ACCESSIBLE'),('ALTER'),('AS'),('BEFORE'),('BINARY'),('BY'),('CASE'),('CHARACTER'),('COLUMN'),('CONTINUE'),('CROSS'),('CURRENT_TIMESTAMP'),('DATABASE'),('DAY_MICROSECOND'),('DEC'),('DEFAULT'),
19
- ('DESC'),('DISTINCT'),('DOUBLE'),('EACH'),('ENCLOSED'),('EXIT'),('FETCH'),('FLOAT8'),('FOREIGN'),('GRANT'),('HIGH_PRIORITY'),('HOUR_SECOND'),('IN'),('INNER'),('INSERT'),('INT2'),('INT8'),
20
- ('INTO'),('JOIN'),('KILL'),('LEFT'),('LINEAR'),('LOCALTIME'),('LONG'),('LOOP'),('MATCH'),('MEDIUMTEXT'),('MINUTE_SECOND'),('NATURAL'),('NULL'),('OPTIMIZE'),('OR'),('OUTER'),('PRIMARY'),
21
- ('RANGE'),('READ_WRITE'),('REGEXP'),('REPEAT'),('RESTRICT'),('RIGHT'),('SCHEMAS'),('SENSITIVE'),('SHOW'),('SPECIFIC'),('SQLSTATE'),('SQL_CALC_FOUND_ROWS'),('STARTING'),('TERMINATED'),
22
- ('TINYINT'),('TRAILING'),('UNDO'),('UNLOCK'),('USAGE'),('UTC_DATE'),('VALUES'),('VARCHARACTER'),('WHERE'),('WRITE'),('ZEROFILL'),('ALL'),('AND'),('ASENSITIVE'),('BIGINT'),('BOTH'),('CASCADE'),
23
- ('CHAR'),('COLLATE'),('CONSTRAINT'),('CREATE'),('CURRENT_TIME'),('CURSOR'),('DAY_HOUR'),('DAY_SECOND'),('DECLARE'),('DELETE'),('DETERMINISTIC'),('DIV'),('DUAL'),('ELSEIF'),('EXISTS'),('FALSE'),
24
- ('FLOAT4'),('FORCE'),('FULLTEXT'),('HAVING'),('HOUR_MINUTE'),('IGNORE'),('INFILE'),('INSENSITIVE'),('INT1'),('INT4'),('INTERVAL'),('ITERATE'),('KEYS'),('LEAVE'),('LIMIT'),('LOAD'),('LOCK'),
25
- ('LONGTEXT'),('MASTER_SSL_VERIFY_SERVER_CERT'),('MEDIUMINT'),('MINUTE_MICROSECOND'),('MODIFIES'),('NO_WRITE_TO_BINLOG'),('ON'),('OPTIONALLY'),('OUT'),('PRECISION'),('PURGE'),('READS'),
26
- ('REFERENCES'),('RENAME'),('REQUIRE'),('REVOKE'),('SCHEMA'),('SELECT'),('SET'),('SPATIAL'),('SQLEXCEPTION'),('SQL_BIG_RESULT'),('SSL'),('TABLE'),('TINYBLOB'),('TO'),('TRUE'),('UNIQUE'),
27
- ('UPDATE'),('USING'),('UTC_TIMESTAMP'),('VARCHAR'),('WHEN'),('WITH'),('YEAR_MONTH'),('ADD'),('ANALYZE'),('ASC'),('BETWEEN'),('BLOB'),('CALL'),('CHANGE'),('CHECK'),('CONDITION'),('CONVERT'),
28
- ('CURRENT_DATE'),('CURRENT_USER'),('DATABASES'),('DAY_MINUTE'),('DECIMAL'),('DELAYED'),('DESCRIBE'),('DISTINCTROW'),('DROP'),('ELSE'),('ESCAPED'),('EXPLAIN'),('FLOAT'),('FOR'),('FROM'),
29
- ('GROUP'),('HOUR_MICROSECOND'),('IF'),('INDEX'),('INOUT'),('INT'),('INT3'),('INTEGER'),('IS'),('KEY'),('LEADING'),('LIKE'),('LINES'),('LOCALTIMESTAMP'),('LONGBLOB'),('LOW_PRIORITY'),
30
- ('MEDIUMBLOB'),('MIDDLEINT'),('MOD'),('NOT'),('NUMERIC'),('OPTION'),('ORDER'),('OUTFILE'),('PROCEDURE'),('READ'),('REAL'),('RELEASE'),('REPLACE'),('RETURN'),('RLIKE'),('SECOND_MICROSECOND'),
31
- ('SEPARATOR'),('SMALLINT'),('SQL'),('SQLWARNING'),('SQL_SMALL_RESULT'),('STRAIGHT_JOIN'),('THEN'),('TINYTEXT'),('TRIGGER'),('UNION'),('UNSIGNED'),('USE'),('UTC_TIME'),('VARBINARY'),('VARYING'),
32
- ('WHILE'),('XOR'),('FULL'),('COLUMNS'),('MIN'),('MAX'),('STDEV'),('COUNT')
33
- ]);
34
- var operatorChars = /[*+\-<>=&|]/;
35
-
36
- function tokenBase(stream, state) {
37
- var ch = stream.next();
38
- curPunc = null;
39
- if (ch == "$" || ch == "?") {
40
- stream.match(/^[\w\d]*/);
41
- return "variable-2";
42
- }
43
- else if (ch == "<" && !stream.match(/^[\s\u00a0=]/, false)) {
44
- stream.match(/^[^\s\u00a0>]*>?/);
45
- return "atom";
46
- }
47
- else if (ch == "\"" || ch == "'") {
48
- state.tokenize = tokenLiteral(ch);
49
- return state.tokenize(stream, state);
50
- }
51
- else if (ch == "`") {
52
- state.tokenize = tokenOpLiteral(ch);
53
- return state.tokenize(stream, state);
54
- }
55
- else if (/[{}\(\),\.;\[\]]/.test(ch)) {
56
- curPunc = ch;
57
- return null;
58
- }
59
- else if (ch == "-") {
60
- var ch2 = stream.next();
61
- if (ch2=="-") {
62
- stream.skipToEnd();
63
- return "comment";
64
- }
65
- }
66
- else if (operatorChars.test(ch)) {
67
- stream.eatWhile(operatorChars);
68
- return null;
69
- }
70
- else if (ch == ":") {
71
- stream.eatWhile(/[\w\d\._\-]/);
72
- return "atom";
73
- }
74
- else {
75
- stream.eatWhile(/[_\w\d]/);
76
- if (stream.eat(":")) {
77
- stream.eatWhile(/[\w\d_\-]/);
78
- return "atom";
79
- }
80
- var word = stream.current(), type;
81
- if (ops.test(word))
82
- return null;
83
- else if (keywords.test(word))
84
- return "keyword";
85
- else
86
- return "variable";
87
- }
88
- }
89
-
90
- function tokenLiteral(quote) {
91
- return function(stream, state) {
92
- var escaped = false, ch;
93
- while ((ch = stream.next()) != null) {
94
- if (ch == quote && !escaped) {
95
- state.tokenize = tokenBase;
96
- break;
97
- }
98
- escaped = !escaped && ch == "\\";
99
- }
100
- return "string";
101
- };
102
- }
103
-
104
- function tokenOpLiteral(quote) {
105
- return function(stream, state) {
106
- var escaped = false, ch;
107
- while ((ch = stream.next()) != null) {
108
- if (ch == quote && !escaped) {
109
- state.tokenize = tokenBase;
110
- break;
111
- }
112
- escaped = !escaped && ch == "\\";
113
- }
114
- return "variable-2";
115
- };
116
- }
117
-
118
-
119
- function pushContext(state, type, col) {
120
- state.context = {prev: state.context, indent: state.indent, col: col, type: type};
121
- }
122
- function popContext(state) {
123
- state.indent = state.context.indent;
124
- state.context = state.context.prev;
125
- }
126
-
127
- return {
128
- startState: function(base) {
129
- return {tokenize: tokenBase,
130
- context: null,
131
- indent: 0,
132
- col: 0};
133
- },
134
-
135
- token: function(stream, state) {
136
- if (stream.sol()) {
137
- if (state.context && state.context.align == null) state.context.align = false;
138
- state.indent = stream.indentation();
139
- }
140
- if (stream.eatSpace()) return null;
141
- var style = state.tokenize(stream, state);
142
-
143
- if (style != "comment" && state.context && state.context.align == null && state.context.type != "pattern") {
144
- state.context.align = true;
145
- }
146
-
147
- if (curPunc == "(") pushContext(state, ")", stream.column());
148
- else if (curPunc == "[") pushContext(state, "]", stream.column());
149
- else if (curPunc == "{") pushContext(state, "}", stream.column());
150
- else if (/[\]\}\)]/.test(curPunc)) {
151
- while (state.context && state.context.type == "pattern") popContext(state);
152
- if (state.context && curPunc == state.context.type) popContext(state);
153
- }
154
- else if (curPunc == "." && state.context && state.context.type == "pattern") popContext(state);
155
- else if (/atom|string|variable/.test(style) && state.context) {
156
- if (/[\}\]]/.test(state.context.type))
157
- pushContext(state, "pattern", stream.column());
158
- else if (state.context.type == "pattern" && !state.context.align) {
159
- state.context.align = true;
160
- state.context.col = stream.column();
161
- }
162
- }
163
-
164
- return style;
165
- },
166
-
167
- indent: function(state, textAfter) {
168
- var firstChar = textAfter && textAfter.charAt(0);
169
- var context = state.context;
170
- if (/[\]\}]/.test(firstChar))
171
- while (context && context.type == "pattern") context = context.prev;
172
-
173
- var closing = context && firstChar == context.type;
174
- if (!context)
175
- return 0;
176
- else if (context.type == "pattern")
177
- return context.col;
178
- else if (context.align)
179
- return context.col + (closing ? 0 : 1);
180
- else
181
- return context.indent + (closing ? 0 : indentUnit);
182
- }
183
- };
184
- });
185
-
186
- CodeMirror.defineMIME("text/x-mysql", "mysql");
@@ -1,33 +0,0 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8">
5
- <title>CodeMirror: NTriples mode</title>
6
- <link rel="stylesheet" href="../../lib/codemirror.css">
7
- <script src="../../lib/codemirror.js"></script>
8
- <script src="ntriples.js"></script>
9
- <link rel="stylesheet" href="../../doc/docs.css">
10
- <style type="text/css">
11
- .CodeMirror {
12
- border: 1px solid #eee;
13
- }
14
- </style>
15
- </head>
16
- <body>
17
- <h1>CodeMirror: NTriples mode</h1>
18
- <form>
19
- <textarea id="ntriples" name="ntriples">
20
- <http://Sub1> <http://pred1> <http://obj> .
21
- <http://Sub2> <http://pred2#an2> "literal 1" .
22
- <http://Sub3#an3> <http://pred3> _:bnode3 .
23
- _:bnode4 <http://pred4> "literal 2"@lang .
24
- _:bnode5 <http://pred5> "literal 3"^^<http://type> .
25
- </textarea>
26
- </form>
27
-
28
- <script>
29
- var editor = CodeMirror.fromTextArea(document.getElementById("ntriples"), {});
30
- </script>
31
- <p><strong>MIME types defined:</strong> <code>text/n-triples</code>.</p>
32
- </body>
33
- </html>
@@ -1,172 +0,0 @@
1
- /**********************************************************
2
- * This script provides syntax highlighting support for
3
- * the Ntriples format.
4
- * Ntriples format specification:
5
- * http://www.w3.org/TR/rdf-testcases/#ntriples
6
- ***********************************************************/
7
-
8
- /*
9
- The following expression defines the defined ASF grammar transitions.
10
-
11
- pre_subject ->
12
- {
13
- ( writing_subject_uri | writing_bnode_uri )
14
- -> pre_predicate
15
- -> writing_predicate_uri
16
- -> pre_object
17
- -> writing_object_uri | writing_object_bnode |
18
- (
19
- writing_object_literal
20
- -> writing_literal_lang | writing_literal_type
21
- )
22
- -> post_object
23
- -> BEGIN
24
- } otherwise {
25
- -> ERROR
26
- }
27
- */
28
- CodeMirror.defineMode("ntriples", function() {
29
-
30
- var Location = {
31
- PRE_SUBJECT : 0,
32
- WRITING_SUB_URI : 1,
33
- WRITING_BNODE_URI : 2,
34
- PRE_PRED : 3,
35
- WRITING_PRED_URI : 4,
36
- PRE_OBJ : 5,
37
- WRITING_OBJ_URI : 6,
38
- WRITING_OBJ_BNODE : 7,
39
- WRITING_OBJ_LITERAL : 8,
40
- WRITING_LIT_LANG : 9,
41
- WRITING_LIT_TYPE : 10,
42
- POST_OBJ : 11,
43
- ERROR : 12
44
- };
45
- function transitState(currState, c) {
46
- var currLocation = currState.location;
47
- var ret;
48
-
49
- // Opening.
50
- if (currLocation == Location.PRE_SUBJECT && c == '<') ret = Location.WRITING_SUB_URI;
51
- else if(currLocation == Location.PRE_SUBJECT && c == '_') ret = Location.WRITING_BNODE_URI;
52
- else if(currLocation == Location.PRE_PRED && c == '<') ret = Location.WRITING_PRED_URI;
53
- else if(currLocation == Location.PRE_OBJ && c == '<') ret = Location.WRITING_OBJ_URI;
54
- else if(currLocation == Location.PRE_OBJ && c == '_') ret = Location.WRITING_OBJ_BNODE;
55
- else if(currLocation == Location.PRE_OBJ && c == '"') ret = Location.WRITING_OBJ_LITERAL;
56
-
57
- // Closing.
58
- else if(currLocation == Location.WRITING_SUB_URI && c == '>') ret = Location.PRE_PRED;
59
- else if(currLocation == Location.WRITING_BNODE_URI && c == ' ') ret = Location.PRE_PRED;
60
- else if(currLocation == Location.WRITING_PRED_URI && c == '>') ret = Location.PRE_OBJ;
61
- else if(currLocation == Location.WRITING_OBJ_URI && c == '>') ret = Location.POST_OBJ;
62
- else if(currLocation == Location.WRITING_OBJ_BNODE && c == ' ') ret = Location.POST_OBJ;
63
- else if(currLocation == Location.WRITING_OBJ_LITERAL && c == '"') ret = Location.POST_OBJ;
64
- else if(currLocation == Location.WRITING_LIT_LANG && c == ' ') ret = Location.POST_OBJ;
65
- else if(currLocation == Location.WRITING_LIT_TYPE && c == '>') ret = Location.POST_OBJ;
66
-
67
- // Closing typed and language literal.
68
- else if(currLocation == Location.WRITING_OBJ_LITERAL && c == '@') ret = Location.WRITING_LIT_LANG;
69
- else if(currLocation == Location.WRITING_OBJ_LITERAL && c == '^') ret = Location.WRITING_LIT_TYPE;
70
-
71
- // Spaces.
72
- else if( c == ' ' &&
73
- (
74
- currLocation == Location.PRE_SUBJECT ||
75
- currLocation == Location.PRE_PRED ||
76
- currLocation == Location.PRE_OBJ ||
77
- currLocation == Location.POST_OBJ
78
- )
79
- ) ret = currLocation;
80
-
81
- // Reset.
82
- else if(currLocation == Location.POST_OBJ && c == '.') ret = Location.PRE_SUBJECT;
83
-
84
- // Error
85
- else ret = Location.ERROR;
86
-
87
- currState.location=ret;
88
- }
89
-
90
- var untilSpace = function(c) { return c != ' '; };
91
- var untilEndURI = function(c) { return c != '>'; };
92
- return {
93
- startState: function() {
94
- return {
95
- location : Location.PRE_SUBJECT,
96
- uris : [],
97
- anchors : [],
98
- bnodes : [],
99
- langs : [],
100
- types : []
101
- };
102
- },
103
- token: function(stream, state) {
104
- var ch = stream.next();
105
- if(ch == '<') {
106
- transitState(state, ch);
107
- var parsedURI = '';
108
- stream.eatWhile( function(c) { if( c != '#' && c != '>' ) { parsedURI += c; return true; } return false;} );
109
- state.uris.push(parsedURI);
110
- if( stream.match('#', false) ) return 'variable';
111
- stream.next();
112
- transitState(state, '>');
113
- return 'variable';
114
- }
115
- if(ch == '#') {
116
- var parsedAnchor = '';
117
- stream.eatWhile(function(c) { if(c != '>' && c != ' ') { parsedAnchor+= c; return true; } return false;});
118
- state.anchors.push(parsedAnchor);
119
- return 'variable-2';
120
- }
121
- if(ch == '>') {
122
- transitState(state, '>');
123
- return 'variable';
124
- }
125
- if(ch == '_') {
126
- transitState(state, ch);
127
- var parsedBNode = '';
128
- stream.eatWhile(function(c) { if( c != ' ' ) { parsedBNode += c; return true; } return false;});
129
- state.bnodes.push(parsedBNode);
130
- stream.next();
131
- transitState(state, ' ');
132
- return 'builtin';
133
- }
134
- if(ch == '"') {
135
- transitState(state, ch);
136
- stream.eatWhile( function(c) { return c != '"'; } );
137
- stream.next();
138
- if( stream.peek() != '@' && stream.peek() != '^' ) {
139
- transitState(state, '"');
140
- }
141
- return 'string';
142
- }
143
- if( ch == '@' ) {
144
- transitState(state, '@');
145
- var parsedLang = '';
146
- stream.eatWhile(function(c) { if( c != ' ' ) { parsedLang += c; return true; } return false;});
147
- state.langs.push(parsedLang);
148
- stream.next();
149
- transitState(state, ' ');
150
- return 'string-2';
151
- }
152
- if( ch == '^' ) {
153
- stream.next();
154
- transitState(state, '^');
155
- var parsedType = '';
156
- stream.eatWhile(function(c) { if( c != '>' ) { parsedType += c; return true; } return false;} );
157
- state.types.push(parsedType);
158
- stream.next();
159
- transitState(state, '>');
160
- return 'variable';
161
- }
162
- if( ch == ' ' ) {
163
- transitState(state, ch);
164
- }
165
- if( ch == '.' ) {
166
- transitState(state, ch);
167
- }
168
- }
169
- };
170
- });
171
-
172
- CodeMirror.defineMIME("text/n-triples", "ntriples");
@@ -1,130 +0,0 @@
1
- <!doctype html>
2
- <meta charset=utf-8>
3
- <title>CodeMirror: OCaml mode</title>
4
-
5
- <link rel=stylesheet href=../../lib/codemirror.css>
6
- <link rel=stylesheet href=../../doc/docs.css>
7
-
8
- <style type=text/css>
9
- .CodeMirror {border-top: 1px solid black; border-bottom: 1px solid black;}
10
- </style>
11
-
12
- <script src=../../lib/codemirror.js></script>
13
- <script src=ocaml.js></script>
14
-
15
- <h1>CodeMirror: OCaml mode</h1>
16
-
17
- <textarea id=code>
18
- (* Summing a list of integers *)
19
- let rec sum xs =
20
- match xs with
21
- | [] -&gt; 0
22
- | x :: xs' -&gt; x + sum xs'
23
-
24
- (* Quicksort *)
25
- let rec qsort = function
26
- | [] -&gt; []
27
- | pivot :: rest -&gt;
28
- let is_less x = x &lt; pivot in
29
- let left, right = List.partition is_less rest in
30
- qsort left @ [pivot] @ qsort right
31
-
32
- (* Fibonacci Sequence *)
33
- let rec fib_aux n a b =
34
- match n with
35
- | 0 -&gt; a
36
- | _ -&gt; fib_aux (n - 1) (a + b) a
37
- let fib n = fib_aux n 0 1
38
-
39
- (* Birthday paradox *)
40
- let year_size = 365.
41
-
42
- let rec birthday_paradox prob people =
43
- let prob' = (year_size -. float people) /. year_size *. prob in
44
- if prob' &lt; 0.5 then
45
- Printf.printf "answer = %d\n" (people+1)
46
- else
47
- birthday_paradox prob' (people+1) ;;
48
-
49
- birthday_paradox 1.0 1
50
-
51
- (* Church numerals *)
52
- let zero f x = x
53
- let succ n f x = f (n f x)
54
- let one = succ zero
55
- let two = succ (succ zero)
56
- let add n1 n2 f x = n1 f (n2 f x)
57
- let to_string n = n (fun k -&gt; "S" ^ k) "0"
58
- let _ = to_string (add (succ two) two)
59
-
60
- (* Elementary functions *)
61
- let square x = x * x;;
62
- let rec fact x =
63
- if x &lt;= 1 then 1 else x * fact (x - 1);;
64
-
65
- (* Automatic memory management *)
66
- let l = 1 :: 2 :: 3 :: [];;
67
- [1; 2; 3];;
68
- 5 :: l;;
69
-
70
- (* Polymorphism: sorting lists *)
71
- let rec sort = function
72
- | [] -&gt; []
73
- | x :: l -&gt; insert x (sort l)
74
-
75
- and insert elem = function
76
- | [] -&gt; [elem]
77
- | x :: l -&gt;
78
- if elem &lt; x then elem :: x :: l else x :: insert elem l;;
79
-
80
- (* Imperative features *)
81
- let add_polynom p1 p2 =
82
- let n1 = Array.length p1
83
- and n2 = Array.length p2 in
84
- let result = Array.create (max n1 n2) 0 in
85
- for i = 0 to n1 - 1 do result.(i) &lt;- p1.(i) done;
86
- for i = 0 to n2 - 1 do result.(i) &lt;- result.(i) + p2.(i) done;
87
- result;;
88
- add_polynom [| 1; 2 |] [| 1; 2; 3 |];;
89
-
90
- (* We may redefine fact using a reference cell and a for loop *)
91
- let fact n =
92
- let result = ref 1 in
93
- for i = 2 to n do
94
- result := i * !result
95
- done;
96
- !result;;
97
- fact 5;;
98
-
99
- (* Triangle (graphics) *)
100
- let () =
101
- ignore( Glut.init Sys.argv );
102
- Glut.initDisplayMode ~double_buffer:true ();
103
- ignore (Glut.createWindow ~title:"OpenGL Demo");
104
- let angle t = 10. *. t *. t in
105
- let render () =
106
- GlClear.clear [ `color ];
107
- GlMat.load_identity ();
108
- GlMat.rotate ~angle: (angle (Sys.time ())) ~z:1. ();
109
- GlDraw.begins `triangles;
110
- List.iter GlDraw.vertex2 [-1., -1.; 0., 1.; 1., -1.];
111
- GlDraw.ends ();
112
- Glut.swapBuffers () in
113
- GlMat.mode `modelview;
114
- Glut.displayFunc ~cb:render;
115
- Glut.idleFunc ~cb:(Some Glut.postRedisplay);
116
- Glut.mainLoop ()
117
-
118
- (* A Hundred Lines of Caml - http://caml.inria.fr/about/taste.en.html *)
119
- (* OCaml page on Wikipedia - http://en.wikipedia.org/wiki/OCaml *)
120
- </textarea>
121
-
122
- <script>
123
- var editor = CodeMirror.fromTextArea(document.getElementById('code'), {
124
- mode: 'ocaml',
125
- lineNumbers: true,
126
- matchBrackets: true
127
- });
128
- </script>
129
-
130
- <p><strong>MIME types defined:</strong> <code>text/x-ocaml</code>.</p>