wallaby 7.0.0.beta2 → 7.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (423) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/stylesheets/wallaby/base/_override_vars.scss +3 -0
  3. data/app/assets/stylesheets/wallaby/base.scss +2 -1
  4. data/lib/wallaby/version.rb +1 -1
  5. metadata +21 -434
  6. data/config/brakeman.ignore +0 -26
  7. data/config/massa.yml +0 -45
  8. data/config/rails_best_practices.yml +0 -42
  9. data/vendor/assets/javascripts/codemirror/5.49.2/addon/comment/comment.js +0 -209
  10. data/vendor/assets/javascripts/codemirror/5.49.2/addon/comment/continuecomment.js +0 -113
  11. data/vendor/assets/javascripts/codemirror/5.49.2/addon/dialog/dialog.css +0 -32
  12. data/vendor/assets/javascripts/codemirror/5.49.2/addon/dialog/dialog.js +0 -161
  13. data/vendor/assets/javascripts/codemirror/5.49.2/addon/display/autorefresh.js +0 -47
  14. data/vendor/assets/javascripts/codemirror/5.49.2/addon/display/fullscreen.css +0 -6
  15. data/vendor/assets/javascripts/codemirror/5.49.2/addon/display/fullscreen.js +0 -41
  16. data/vendor/assets/javascripts/codemirror/5.49.2/addon/display/panel.js +0 -127
  17. data/vendor/assets/javascripts/codemirror/5.49.2/addon/display/placeholder.js +0 -63
  18. data/vendor/assets/javascripts/codemirror/5.49.2/addon/display/rulers.js +0 -51
  19. data/vendor/assets/javascripts/codemirror/5.49.2/addon/edit/closebrackets.js +0 -191
  20. data/vendor/assets/javascripts/codemirror/5.49.2/addon/edit/closetag.js +0 -184
  21. data/vendor/assets/javascripts/codemirror/5.49.2/addon/edit/continuelist.js +0 -99
  22. data/vendor/assets/javascripts/codemirror/5.49.2/addon/edit/matchbrackets.js +0 -150
  23. data/vendor/assets/javascripts/codemirror/5.49.2/addon/edit/matchtags.js +0 -66
  24. data/vendor/assets/javascripts/codemirror/5.49.2/addon/edit/trailingspace.js +0 -27
  25. data/vendor/assets/javascripts/codemirror/5.49.2/addon/fold/brace-fold.js +0 -105
  26. data/vendor/assets/javascripts/codemirror/5.49.2/addon/fold/comment-fold.js +0 -59
  27. data/vendor/assets/javascripts/codemirror/5.49.2/addon/fold/foldcode.js +0 -152
  28. data/vendor/assets/javascripts/codemirror/5.49.2/addon/fold/foldgutter.css +0 -20
  29. data/vendor/assets/javascripts/codemirror/5.49.2/addon/fold/foldgutter.js +0 -163
  30. data/vendor/assets/javascripts/codemirror/5.49.2/addon/fold/indent-fold.js +0 -48
  31. data/vendor/assets/javascripts/codemirror/5.49.2/addon/fold/markdown-fold.js +0 -49
  32. data/vendor/assets/javascripts/codemirror/5.49.2/addon/fold/xml-fold.js +0 -184
  33. data/vendor/assets/javascripts/codemirror/5.49.2/addon/hint/anyword-hint.js +0 -41
  34. data/vendor/assets/javascripts/codemirror/5.49.2/addon/hint/css-hint.js +0 -60
  35. data/vendor/assets/javascripts/codemirror/5.49.2/addon/hint/html-hint.js +0 -350
  36. data/vendor/assets/javascripts/codemirror/5.49.2/addon/hint/javascript-hint.js +0 -157
  37. data/vendor/assets/javascripts/codemirror/5.49.2/addon/hint/show-hint.css +0 -36
  38. data/vendor/assets/javascripts/codemirror/5.49.2/addon/hint/show-hint.js +0 -460
  39. data/vendor/assets/javascripts/codemirror/5.49.2/addon/hint/sql-hint.js +0 -304
  40. data/vendor/assets/javascripts/codemirror/5.49.2/addon/hint/xml-hint.js +0 -123
  41. data/vendor/assets/javascripts/codemirror/5.49.2/addon/lint/coffeescript-lint.js +0 -47
  42. data/vendor/assets/javascripts/codemirror/5.49.2/addon/lint/css-lint.js +0 -40
  43. data/vendor/assets/javascripts/codemirror/5.49.2/addon/lint/html-lint.js +0 -59
  44. data/vendor/assets/javascripts/codemirror/5.49.2/addon/lint/javascript-lint.js +0 -63
  45. data/vendor/assets/javascripts/codemirror/5.49.2/addon/lint/json-lint.js +0 -40
  46. data/vendor/assets/javascripts/codemirror/5.49.2/addon/lint/lint.css +0 -73
  47. data/vendor/assets/javascripts/codemirror/5.49.2/addon/lint/lint.js +0 -252
  48. data/vendor/assets/javascripts/codemirror/5.49.2/addon/lint/yaml-lint.js +0 -41
  49. data/vendor/assets/javascripts/codemirror/5.49.2/addon/merge/merge.css +0 -119
  50. data/vendor/assets/javascripts/codemirror/5.49.2/addon/merge/merge.js +0 -1002
  51. data/vendor/assets/javascripts/codemirror/5.49.2/addon/mode/loadmode.js +0 -64
  52. data/vendor/assets/javascripts/codemirror/5.49.2/addon/mode/multiplex.js +0 -131
  53. data/vendor/assets/javascripts/codemirror/5.49.2/addon/mode/multiplex_test.js +0 -33
  54. data/vendor/assets/javascripts/codemirror/5.49.2/addon/mode/overlay.js +0 -90
  55. data/vendor/assets/javascripts/codemirror/5.49.2/addon/mode/simple.js +0 -216
  56. data/vendor/assets/javascripts/codemirror/5.49.2/addon/runmode/colorize.js +0 -40
  57. data/vendor/assets/javascripts/codemirror/5.49.2/addon/runmode/runmode-standalone.js +0 -158
  58. data/vendor/assets/javascripts/codemirror/5.49.2/addon/runmode/runmode.js +0 -72
  59. data/vendor/assets/javascripts/codemirror/5.49.2/addon/runmode/runmode.node.js +0 -197
  60. data/vendor/assets/javascripts/codemirror/5.49.2/addon/scroll/annotatescrollbar.js +0 -122
  61. data/vendor/assets/javascripts/codemirror/5.49.2/addon/scroll/scrollpastend.js +0 -48
  62. data/vendor/assets/javascripts/codemirror/5.49.2/addon/scroll/simplescrollbars.css +0 -66
  63. data/vendor/assets/javascripts/codemirror/5.49.2/addon/scroll/simplescrollbars.js +0 -152
  64. data/vendor/assets/javascripts/codemirror/5.49.2/addon/search/jump-to-line.js +0 -50
  65. data/vendor/assets/javascripts/codemirror/5.49.2/addon/search/match-highlighter.js +0 -165
  66. data/vendor/assets/javascripts/codemirror/5.49.2/addon/search/matchesonscrollbar.css +0 -8
  67. data/vendor/assets/javascripts/codemirror/5.49.2/addon/search/matchesonscrollbar.js +0 -97
  68. data/vendor/assets/javascripts/codemirror/5.49.2/addon/search/search.js +0 -260
  69. data/vendor/assets/javascripts/codemirror/5.49.2/addon/search/searchcursor.js +0 -293
  70. data/vendor/assets/javascripts/codemirror/5.49.2/addon/selection/active-line.js +0 -72
  71. data/vendor/assets/javascripts/codemirror/5.49.2/addon/selection/mark-selection.js +0 -119
  72. data/vendor/assets/javascripts/codemirror/5.49.2/addon/selection/selection-pointer.js +0 -98
  73. data/vendor/assets/javascripts/codemirror/5.49.2/addon/tern/tern.css +0 -87
  74. data/vendor/assets/javascripts/codemirror/5.49.2/addon/tern/tern.js +0 -718
  75. data/vendor/assets/javascripts/codemirror/5.49.2/addon/tern/worker.js +0 -44
  76. data/vendor/assets/javascripts/codemirror/5.49.2/addon/wrap/hardwrap.js +0 -145
  77. data/vendor/assets/javascripts/codemirror/5.49.2/lib/codemirror.js +0 -9783
  78. data/vendor/assets/javascripts/codemirror/5.49.2/mode/apl/apl.js +0 -174
  79. data/vendor/assets/javascripts/codemirror/5.49.2/mode/apl/index.html +0 -72
  80. data/vendor/assets/javascripts/codemirror/5.49.2/mode/asciiarmor/asciiarmor.js +0 -74
  81. data/vendor/assets/javascripts/codemirror/5.49.2/mode/asciiarmor/index.html +0 -46
  82. data/vendor/assets/javascripts/codemirror/5.49.2/mode/asn.1/asn.1.js +0 -204
  83. data/vendor/assets/javascripts/codemirror/5.49.2/mode/asn.1/index.html +0 -78
  84. data/vendor/assets/javascripts/codemirror/5.49.2/mode/asterisk/asterisk.js +0 -220
  85. data/vendor/assets/javascripts/codemirror/5.49.2/mode/asterisk/index.html +0 -155
  86. data/vendor/assets/javascripts/codemirror/5.49.2/mode/brainfuck/brainfuck.js +0 -85
  87. data/vendor/assets/javascripts/codemirror/5.49.2/mode/brainfuck/index.html +0 -85
  88. data/vendor/assets/javascripts/codemirror/5.49.2/mode/clike/clike.js +0 -935
  89. data/vendor/assets/javascripts/codemirror/5.49.2/mode/clike/index.html +0 -380
  90. data/vendor/assets/javascripts/codemirror/5.49.2/mode/clike/scala.html +0 -767
  91. data/vendor/assets/javascripts/codemirror/5.49.2/mode/clike/test.js +0 -165
  92. data/vendor/assets/javascripts/codemirror/5.49.2/mode/clojure/clojure.js +0 -292
  93. data/vendor/assets/javascripts/codemirror/5.49.2/mode/clojure/index.html +0 -95
  94. data/vendor/assets/javascripts/codemirror/5.49.2/mode/clojure/test.js +0 -384
  95. data/vendor/assets/javascripts/codemirror/5.49.2/mode/cmake/cmake.js +0 -97
  96. data/vendor/assets/javascripts/codemirror/5.49.2/mode/cmake/index.html +0 -129
  97. data/vendor/assets/javascripts/codemirror/5.49.2/mode/cobol/cobol.js +0 -255
  98. data/vendor/assets/javascripts/codemirror/5.49.2/mode/cobol/index.html +0 -210
  99. data/vendor/assets/javascripts/codemirror/5.49.2/mode/coffeescript/coffeescript.js +0 -359
  100. data/vendor/assets/javascripts/codemirror/5.49.2/mode/coffeescript/index.html +0 -740
  101. data/vendor/assets/javascripts/codemirror/5.49.2/mode/commonlisp/commonlisp.js +0 -124
  102. data/vendor/assets/javascripts/codemirror/5.49.2/mode/commonlisp/index.html +0 -177
  103. data/vendor/assets/javascripts/codemirror/5.49.2/mode/crystal/crystal.js +0 -433
  104. data/vendor/assets/javascripts/codemirror/5.49.2/mode/crystal/index.html +0 -116
  105. data/vendor/assets/javascripts/codemirror/5.49.2/mode/css/css.js +0 -831
  106. data/vendor/assets/javascripts/codemirror/5.49.2/mode/css/gss.html +0 -104
  107. data/vendor/assets/javascripts/codemirror/5.49.2/mode/css/gss_test.js +0 -17
  108. data/vendor/assets/javascripts/codemirror/5.49.2/mode/css/index.html +0 -75
  109. data/vendor/assets/javascripts/codemirror/5.49.2/mode/css/less.html +0 -152
  110. data/vendor/assets/javascripts/codemirror/5.49.2/mode/css/less_test.js +0 -54
  111. data/vendor/assets/javascripts/codemirror/5.49.2/mode/css/scss.html +0 -158
  112. data/vendor/assets/javascripts/codemirror/5.49.2/mode/css/scss_test.js +0 -110
  113. data/vendor/assets/javascripts/codemirror/5.49.2/mode/css/test.js +0 -217
  114. data/vendor/assets/javascripts/codemirror/5.49.2/mode/cypher/cypher.js +0 -150
  115. data/vendor/assets/javascripts/codemirror/5.49.2/mode/cypher/index.html +0 -64
  116. data/vendor/assets/javascripts/codemirror/5.49.2/mode/cypher/test.js +0 -37
  117. data/vendor/assets/javascripts/codemirror/5.49.2/mode/d/d.js +0 -223
  118. data/vendor/assets/javascripts/codemirror/5.49.2/mode/d/index.html +0 -273
  119. data/vendor/assets/javascripts/codemirror/5.49.2/mode/d/test.js +0 -11
  120. data/vendor/assets/javascripts/codemirror/5.49.2/mode/dart/dart.js +0 -166
  121. data/vendor/assets/javascripts/codemirror/5.49.2/mode/dart/index.html +0 -71
  122. data/vendor/assets/javascripts/codemirror/5.49.2/mode/diff/diff.js +0 -47
  123. data/vendor/assets/javascripts/codemirror/5.49.2/mode/diff/index.html +0 -117
  124. data/vendor/assets/javascripts/codemirror/5.49.2/mode/django/django.js +0 -356
  125. data/vendor/assets/javascripts/codemirror/5.49.2/mode/django/index.html +0 -73
  126. data/vendor/assets/javascripts/codemirror/5.49.2/mode/dockerfile/dockerfile.js +0 -211
  127. data/vendor/assets/javascripts/codemirror/5.49.2/mode/dockerfile/index.html +0 -73
  128. data/vendor/assets/javascripts/codemirror/5.49.2/mode/dockerfile/test.js +0 -128
  129. data/vendor/assets/javascripts/codemirror/5.49.2/mode/dtd/dtd.js +0 -142
  130. data/vendor/assets/javascripts/codemirror/5.49.2/mode/dtd/index.html +0 -89
  131. data/vendor/assets/javascripts/codemirror/5.49.2/mode/dylan/dylan.js +0 -352
  132. data/vendor/assets/javascripts/codemirror/5.49.2/mode/dylan/index.html +0 -407
  133. data/vendor/assets/javascripts/codemirror/5.49.2/mode/dylan/test.js +0 -88
  134. data/vendor/assets/javascripts/codemirror/5.49.2/mode/ebnf/ebnf.js +0 -195
  135. data/vendor/assets/javascripts/codemirror/5.49.2/mode/ebnf/index.html +0 -102
  136. data/vendor/assets/javascripts/codemirror/5.49.2/mode/ecl/ecl.js +0 -206
  137. data/vendor/assets/javascripts/codemirror/5.49.2/mode/ecl/index.html +0 -52
  138. data/vendor/assets/javascripts/codemirror/5.49.2/mode/eiffel/eiffel.js +0 -160
  139. data/vendor/assets/javascripts/codemirror/5.49.2/mode/eiffel/index.html +0 -429
  140. data/vendor/assets/javascripts/codemirror/5.49.2/mode/elm/elm.js +0 -205
  141. data/vendor/assets/javascripts/codemirror/5.49.2/mode/elm/index.html +0 -61
  142. data/vendor/assets/javascripts/codemirror/5.49.2/mode/erlang/erlang.js +0 -619
  143. data/vendor/assets/javascripts/codemirror/5.49.2/mode/erlang/index.html +0 -76
  144. data/vendor/assets/javascripts/codemirror/5.49.2/mode/factor/factor.js +0 -85
  145. data/vendor/assets/javascripts/codemirror/5.49.2/mode/factor/index.html +0 -77
  146. data/vendor/assets/javascripts/codemirror/5.49.2/mode/fcl/fcl.js +0 -173
  147. data/vendor/assets/javascripts/codemirror/5.49.2/mode/fcl/index.html +0 -108
  148. data/vendor/assets/javascripts/codemirror/5.49.2/mode/forth/forth.js +0 -180
  149. data/vendor/assets/javascripts/codemirror/5.49.2/mode/forth/index.html +0 -75
  150. data/vendor/assets/javascripts/codemirror/5.49.2/mode/fortran/fortran.js +0 -188
  151. data/vendor/assets/javascripts/codemirror/5.49.2/mode/fortran/index.html +0 -81
  152. data/vendor/assets/javascripts/codemirror/5.49.2/mode/gas/gas.js +0 -345
  153. data/vendor/assets/javascripts/codemirror/5.49.2/mode/gas/index.html +0 -68
  154. data/vendor/assets/javascripts/codemirror/5.49.2/mode/gfm/gfm.js +0 -129
  155. data/vendor/assets/javascripts/codemirror/5.49.2/mode/gfm/index.html +0 -136
  156. data/vendor/assets/javascripts/codemirror/5.49.2/mode/gfm/test.js +0 -198
  157. data/vendor/assets/javascripts/codemirror/5.49.2/mode/gherkin/gherkin.js +0 -178
  158. data/vendor/assets/javascripts/codemirror/5.49.2/mode/gherkin/index.html +0 -48
  159. data/vendor/assets/javascripts/codemirror/5.49.2/mode/go/go.js +0 -187
  160. data/vendor/assets/javascripts/codemirror/5.49.2/mode/go/index.html +0 -85
  161. data/vendor/assets/javascripts/codemirror/5.49.2/mode/groovy/groovy.js +0 -233
  162. data/vendor/assets/javascripts/codemirror/5.49.2/mode/groovy/index.html +0 -84
  163. data/vendor/assets/javascripts/codemirror/5.49.2/mode/haml/haml.js +0 -161
  164. data/vendor/assets/javascripts/codemirror/5.49.2/mode/haml/index.html +0 -79
  165. data/vendor/assets/javascripts/codemirror/5.49.2/mode/haml/test.js +0 -97
  166. data/vendor/assets/javascripts/codemirror/5.49.2/mode/handlebars/handlebars.js +0 -70
  167. data/vendor/assets/javascripts/codemirror/5.49.2/mode/handlebars/index.html +0 -82
  168. data/vendor/assets/javascripts/codemirror/5.49.2/mode/haskell/haskell.js +0 -268
  169. data/vendor/assets/javascripts/codemirror/5.49.2/mode/haskell/index.html +0 -73
  170. data/vendor/assets/javascripts/codemirror/5.49.2/mode/haskell-literate/haskell-literate.js +0 -43
  171. data/vendor/assets/javascripts/codemirror/5.49.2/mode/haskell-literate/index.html +0 -282
  172. data/vendor/assets/javascripts/codemirror/5.49.2/mode/haxe/haxe.js +0 -515
  173. data/vendor/assets/javascripts/codemirror/5.49.2/mode/haxe/index.html +0 -124
  174. data/vendor/assets/javascripts/codemirror/5.49.2/mode/htmlembedded/htmlembedded.js +0 -37
  175. data/vendor/assets/javascripts/codemirror/5.49.2/mode/htmlembedded/index.html +0 -60
  176. data/vendor/assets/javascripts/codemirror/5.49.2/mode/htmlmixed/htmlmixed.js +0 -152
  177. data/vendor/assets/javascripts/codemirror/5.49.2/mode/htmlmixed/index.html +0 -100
  178. data/vendor/assets/javascripts/codemirror/5.49.2/mode/http/http.js +0 -113
  179. data/vendor/assets/javascripts/codemirror/5.49.2/mode/http/index.html +0 -45
  180. data/vendor/assets/javascripts/codemirror/5.49.2/mode/idl/idl.js +0 -290
  181. data/vendor/assets/javascripts/codemirror/5.49.2/mode/idl/index.html +0 -65
  182. data/vendor/assets/javascripts/codemirror/5.49.2/mode/index.html +0 -165
  183. data/vendor/assets/javascripts/codemirror/5.49.2/mode/javascript/index.html +0 -114
  184. data/vendor/assets/javascripts/codemirror/5.49.2/mode/javascript/javascript.js +0 -930
  185. data/vendor/assets/javascripts/codemirror/5.49.2/mode/javascript/json-ld.html +0 -72
  186. data/vendor/assets/javascripts/codemirror/5.49.2/mode/javascript/test.js +0 -513
  187. data/vendor/assets/javascripts/codemirror/5.49.2/mode/javascript/typescript.html +0 -62
  188. data/vendor/assets/javascripts/codemirror/5.49.2/mode/jinja2/index.html +0 -54
  189. data/vendor/assets/javascripts/codemirror/5.49.2/mode/jinja2/jinja2.js +0 -146
  190. data/vendor/assets/javascripts/codemirror/5.49.2/mode/jsx/index.html +0 -89
  191. data/vendor/assets/javascripts/codemirror/5.49.2/mode/jsx/jsx.js +0 -148
  192. data/vendor/assets/javascripts/codemirror/5.49.2/mode/jsx/test.js +0 -91
  193. data/vendor/assets/javascripts/codemirror/5.49.2/mode/julia/index.html +0 -196
  194. data/vendor/assets/javascripts/codemirror/5.49.2/mode/julia/julia.js +0 -429
  195. data/vendor/assets/javascripts/codemirror/5.49.2/mode/livescript/index.html +0 -459
  196. data/vendor/assets/javascripts/codemirror/5.49.2/mode/livescript/livescript.js +0 -280
  197. data/vendor/assets/javascripts/codemirror/5.49.2/mode/lua/index.html +0 -85
  198. data/vendor/assets/javascripts/codemirror/5.49.2/mode/lua/lua.js +0 -159
  199. data/vendor/assets/javascripts/codemirror/5.49.2/mode/markdown/index.html +0 -412
  200. data/vendor/assets/javascripts/codemirror/5.49.2/mode/markdown/markdown.js +0 -883
  201. data/vendor/assets/javascripts/codemirror/5.49.2/mode/markdown/test.js +0 -1317
  202. data/vendor/assets/javascripts/codemirror/5.49.2/mode/mathematica/index.html +0 -72
  203. data/vendor/assets/javascripts/codemirror/5.49.2/mode/mathematica/mathematica.js +0 -176
  204. data/vendor/assets/javascripts/codemirror/5.49.2/mode/mbox/index.html +0 -44
  205. data/vendor/assets/javascripts/codemirror/5.49.2/mode/mbox/mbox.js +0 -129
  206. data/vendor/assets/javascripts/codemirror/5.49.2/mode/meta.js +0 -219
  207. data/vendor/assets/javascripts/codemirror/5.49.2/mode/mirc/index.html +0 -161
  208. data/vendor/assets/javascripts/codemirror/5.49.2/mode/mirc/mirc.js +0 -193
  209. data/vendor/assets/javascripts/codemirror/5.49.2/mode/mllike/index.html +0 -198
  210. data/vendor/assets/javascripts/codemirror/5.49.2/mode/mllike/mllike.js +0 -359
  211. data/vendor/assets/javascripts/codemirror/5.49.2/mode/modelica/index.html +0 -67
  212. data/vendor/assets/javascripts/codemirror/5.49.2/mode/modelica/modelica.js +0 -245
  213. data/vendor/assets/javascripts/codemirror/5.49.2/mode/mscgen/index.html +0 -151
  214. data/vendor/assets/javascripts/codemirror/5.49.2/mode/mscgen/mscgen.js +0 -175
  215. data/vendor/assets/javascripts/codemirror/5.49.2/mode/mscgen/mscgen_test.js +0 -84
  216. data/vendor/assets/javascripts/codemirror/5.49.2/mode/mscgen/msgenny_test.js +0 -77
  217. data/vendor/assets/javascripts/codemirror/5.49.2/mode/mscgen/xu_test.js +0 -87
  218. data/vendor/assets/javascripts/codemirror/5.49.2/mode/mumps/index.html +0 -85
  219. data/vendor/assets/javascripts/codemirror/5.49.2/mode/mumps/mumps.js +0 -148
  220. data/vendor/assets/javascripts/codemirror/5.49.2/mode/nginx/index.html +0 -181
  221. data/vendor/assets/javascripts/codemirror/5.49.2/mode/nginx/nginx.js +0 -178
  222. data/vendor/assets/javascripts/codemirror/5.49.2/mode/nsis/index.html +0 -80
  223. data/vendor/assets/javascripts/codemirror/5.49.2/mode/nsis/nsis.js +0 -95
  224. data/vendor/assets/javascripts/codemirror/5.49.2/mode/ntriples/index.html +0 -70
  225. data/vendor/assets/javascripts/codemirror/5.49.2/mode/ntriples/ntriples.js +0 -195
  226. data/vendor/assets/javascripts/codemirror/5.49.2/mode/octave/index.html +0 -84
  227. data/vendor/assets/javascripts/codemirror/5.49.2/mode/octave/octave.js +0 -139
  228. data/vendor/assets/javascripts/codemirror/5.49.2/mode/oz/index.html +0 -59
  229. data/vendor/assets/javascripts/codemirror/5.49.2/mode/oz/oz.js +0 -252
  230. data/vendor/assets/javascripts/codemirror/5.49.2/mode/pascal/index.html +0 -61
  231. data/vendor/assets/javascripts/codemirror/5.49.2/mode/pascal/pascal.js +0 -121
  232. data/vendor/assets/javascripts/codemirror/5.49.2/mode/pegjs/index.html +0 -66
  233. data/vendor/assets/javascripts/codemirror/5.49.2/mode/pegjs/pegjs.js +0 -114
  234. data/vendor/assets/javascripts/codemirror/5.49.2/mode/perl/index.html +0 -75
  235. data/vendor/assets/javascripts/codemirror/5.49.2/mode/perl/perl.js +0 -837
  236. data/vendor/assets/javascripts/codemirror/5.49.2/mode/php/index.html +0 -64
  237. data/vendor/assets/javascripts/codemirror/5.49.2/mode/php/php.js +0 -234
  238. data/vendor/assets/javascripts/codemirror/5.49.2/mode/php/test.js +0 -154
  239. data/vendor/assets/javascripts/codemirror/5.49.2/mode/pig/index.html +0 -53
  240. data/vendor/assets/javascripts/codemirror/5.49.2/mode/pig/pig.js +0 -178
  241. data/vendor/assets/javascripts/codemirror/5.49.2/mode/powershell/index.html +0 -205
  242. data/vendor/assets/javascripts/codemirror/5.49.2/mode/powershell/powershell.js +0 -398
  243. data/vendor/assets/javascripts/codemirror/5.49.2/mode/powershell/test.js +0 -74
  244. data/vendor/assets/javascripts/codemirror/5.49.2/mode/properties/index.html +0 -53
  245. data/vendor/assets/javascripts/codemirror/5.49.2/mode/properties/properties.js +0 -78
  246. data/vendor/assets/javascripts/codemirror/5.49.2/mode/protobuf/index.html +0 -104
  247. data/vendor/assets/javascripts/codemirror/5.49.2/mode/protobuf/protobuf.js +0 -69
  248. data/vendor/assets/javascripts/codemirror/5.49.2/mode/pug/index.html +0 -70
  249. data/vendor/assets/javascripts/codemirror/5.49.2/mode/pug/pug.js +0 -591
  250. data/vendor/assets/javascripts/codemirror/5.49.2/mode/puppet/index.html +0 -121
  251. data/vendor/assets/javascripts/codemirror/5.49.2/mode/puppet/puppet.js +0 -220
  252. data/vendor/assets/javascripts/codemirror/5.49.2/mode/python/index.html +0 -207
  253. data/vendor/assets/javascripts/codemirror/5.49.2/mode/python/python.js +0 -399
  254. data/vendor/assets/javascripts/codemirror/5.49.2/mode/python/test.js +0 -44
  255. data/vendor/assets/javascripts/codemirror/5.49.2/mode/q/index.html +0 -144
  256. data/vendor/assets/javascripts/codemirror/5.49.2/mode/q/q.js +0 -139
  257. data/vendor/assets/javascripts/codemirror/5.49.2/mode/r/index.html +0 -88
  258. data/vendor/assets/javascripts/codemirror/5.49.2/mode/r/r.js +0 -190
  259. data/vendor/assets/javascripts/codemirror/5.49.2/mode/rpm/changes/index.html +0 -66
  260. data/vendor/assets/javascripts/codemirror/5.49.2/mode/rpm/index.html +0 -149
  261. data/vendor/assets/javascripts/codemirror/5.49.2/mode/rpm/rpm.js +0 -109
  262. data/vendor/assets/javascripts/codemirror/5.49.2/mode/rst/index.html +0 -535
  263. data/vendor/assets/javascripts/codemirror/5.49.2/mode/rst/rst.js +0 -557
  264. data/vendor/assets/javascripts/codemirror/5.49.2/mode/ruby/index.html +0 -183
  265. data/vendor/assets/javascripts/codemirror/5.49.2/mode/ruby/ruby.js +0 -298
  266. data/vendor/assets/javascripts/codemirror/5.49.2/mode/ruby/test.js +0 -23
  267. data/vendor/assets/javascripts/codemirror/5.49.2/mode/rust/index.html +0 -64
  268. data/vendor/assets/javascripts/codemirror/5.49.2/mode/rust/rust.js +0 -72
  269. data/vendor/assets/javascripts/codemirror/5.49.2/mode/rust/test.js +0 -39
  270. data/vendor/assets/javascripts/codemirror/5.49.2/mode/sas/index.html +0 -81
  271. data/vendor/assets/javascripts/codemirror/5.49.2/mode/sas/sas.js +0 -303
  272. data/vendor/assets/javascripts/codemirror/5.49.2/mode/sass/index.html +0 -68
  273. data/vendor/assets/javascripts/codemirror/5.49.2/mode/sass/sass.js +0 -454
  274. data/vendor/assets/javascripts/codemirror/5.49.2/mode/sass/test.js +0 -122
  275. data/vendor/assets/javascripts/codemirror/5.49.2/mode/scheme/index.html +0 -77
  276. data/vendor/assets/javascripts/codemirror/5.49.2/mode/scheme/scheme.js +0 -265
  277. data/vendor/assets/javascripts/codemirror/5.49.2/mode/shell/index.html +0 -66
  278. data/vendor/assets/javascripts/codemirror/5.49.2/mode/shell/shell.js +0 -152
  279. data/vendor/assets/javascripts/codemirror/5.49.2/mode/shell/test.js +0 -73
  280. data/vendor/assets/javascripts/codemirror/5.49.2/mode/sieve/index.html +0 -93
  281. data/vendor/assets/javascripts/codemirror/5.49.2/mode/sieve/sieve.js +0 -193
  282. data/vendor/assets/javascripts/codemirror/5.49.2/mode/slim/index.html +0 -96
  283. data/vendor/assets/javascripts/codemirror/5.49.2/mode/slim/slim.js +0 -575
  284. data/vendor/assets/javascripts/codemirror/5.49.2/mode/slim/test.js +0 -96
  285. data/vendor/assets/javascripts/codemirror/5.49.2/mode/smalltalk/index.html +0 -68
  286. data/vendor/assets/javascripts/codemirror/5.49.2/mode/smalltalk/smalltalk.js +0 -168
  287. data/vendor/assets/javascripts/codemirror/5.49.2/mode/smarty/index.html +0 -138
  288. data/vendor/assets/javascripts/codemirror/5.49.2/mode/smarty/smarty.js +0 -225
  289. data/vendor/assets/javascripts/codemirror/5.49.2/mode/solr/index.html +0 -57
  290. data/vendor/assets/javascripts/codemirror/5.49.2/mode/solr/solr.js +0 -104
  291. data/vendor/assets/javascripts/codemirror/5.49.2/mode/soy/index.html +0 -68
  292. data/vendor/assets/javascripts/codemirror/5.49.2/mode/soy/soy.js +0 -437
  293. data/vendor/assets/javascripts/codemirror/5.49.2/mode/soy/test.js +0 -204
  294. data/vendor/assets/javascripts/codemirror/5.49.2/mode/sparql/index.html +0 -61
  295. data/vendor/assets/javascripts/codemirror/5.49.2/mode/sparql/sparql.js +0 -180
  296. data/vendor/assets/javascripts/codemirror/5.49.2/mode/spreadsheet/index.html +0 -42
  297. data/vendor/assets/javascripts/codemirror/5.49.2/mode/spreadsheet/spreadsheet.js +0 -112
  298. data/vendor/assets/javascripts/codemirror/5.49.2/mode/sql/index.html +0 -89
  299. data/vendor/assets/javascripts/codemirror/5.49.2/mode/sql/sql.js +0 -494
  300. data/vendor/assets/javascripts/codemirror/5.49.2/mode/stex/index.html +0 -116
  301. data/vendor/assets/javascripts/codemirror/5.49.2/mode/stex/stex.js +0 -264
  302. data/vendor/assets/javascripts/codemirror/5.49.2/mode/stex/test.js +0 -132
  303. data/vendor/assets/javascripts/codemirror/5.49.2/mode/stylus/index.html +0 -106
  304. data/vendor/assets/javascripts/codemirror/5.49.2/mode/stylus/stylus.js +0 -771
  305. data/vendor/assets/javascripts/codemirror/5.49.2/mode/swift/index.html +0 -70
  306. data/vendor/assets/javascripts/codemirror/5.49.2/mode/swift/swift.js +0 -223
  307. data/vendor/assets/javascripts/codemirror/5.49.2/mode/swift/test.js +0 -162
  308. data/vendor/assets/javascripts/codemirror/5.49.2/mode/tcl/index.html +0 -142
  309. data/vendor/assets/javascripts/codemirror/5.49.2/mode/tcl/tcl.js +0 -139
  310. data/vendor/assets/javascripts/codemirror/5.49.2/mode/textile/index.html +0 -191
  311. data/vendor/assets/javascripts/codemirror/5.49.2/mode/textile/test.js +0 -417
  312. data/vendor/assets/javascripts/codemirror/5.49.2/mode/textile/textile.js +0 -469
  313. data/vendor/assets/javascripts/codemirror/5.49.2/mode/tiddlywiki/index.html +0 -154
  314. data/vendor/assets/javascripts/codemirror/5.49.2/mode/tiddlywiki/tiddlywiki.css +0 -14
  315. data/vendor/assets/javascripts/codemirror/5.49.2/mode/tiddlywiki/tiddlywiki.js +0 -308
  316. data/vendor/assets/javascripts/codemirror/5.49.2/mode/tiki/index.html +0 -95
  317. data/vendor/assets/javascripts/codemirror/5.49.2/mode/tiki/tiki.css +0 -26
  318. data/vendor/assets/javascripts/codemirror/5.49.2/mode/tiki/tiki.js +0 -312
  319. data/vendor/assets/javascripts/codemirror/5.49.2/mode/toml/index.html +0 -73
  320. data/vendor/assets/javascripts/codemirror/5.49.2/mode/toml/toml.js +0 -88
  321. data/vendor/assets/javascripts/codemirror/5.49.2/mode/tornado/index.html +0 -63
  322. data/vendor/assets/javascripts/codemirror/5.49.2/mode/tornado/tornado.js +0 -68
  323. data/vendor/assets/javascripts/codemirror/5.49.2/mode/troff/index.html +0 -146
  324. data/vendor/assets/javascripts/codemirror/5.49.2/mode/troff/troff.js +0 -84
  325. data/vendor/assets/javascripts/codemirror/5.49.2/mode/ttcn/index.html +0 -119
  326. data/vendor/assets/javascripts/codemirror/5.49.2/mode/ttcn/ttcn.js +0 -283
  327. data/vendor/assets/javascripts/codemirror/5.49.2/mode/ttcn-cfg/index.html +0 -116
  328. data/vendor/assets/javascripts/codemirror/5.49.2/mode/ttcn-cfg/ttcn-cfg.js +0 -214
  329. data/vendor/assets/javascripts/codemirror/5.49.2/mode/turtle/index.html +0 -51
  330. data/vendor/assets/javascripts/codemirror/5.49.2/mode/turtle/turtle.js +0 -162
  331. data/vendor/assets/javascripts/codemirror/5.49.2/mode/twig/index.html +0 -45
  332. data/vendor/assets/javascripts/codemirror/5.49.2/mode/twig/twig.js +0 -141
  333. data/vendor/assets/javascripts/codemirror/5.49.2/mode/vb/index.html +0 -49
  334. data/vendor/assets/javascripts/codemirror/5.49.2/mode/vb/vb.js +0 -275
  335. data/vendor/assets/javascripts/codemirror/5.49.2/mode/vbscript/index.html +0 -55
  336. data/vendor/assets/javascripts/codemirror/5.49.2/mode/vbscript/vbscript.js +0 -350
  337. data/vendor/assets/javascripts/codemirror/5.49.2/mode/velocity/index.html +0 -120
  338. data/vendor/assets/javascripts/codemirror/5.49.2/mode/velocity/velocity.js +0 -201
  339. data/vendor/assets/javascripts/codemirror/5.49.2/mode/verilog/index.html +0 -120
  340. data/vendor/assets/javascripts/codemirror/5.49.2/mode/verilog/test.js +0 -273
  341. data/vendor/assets/javascripts/codemirror/5.49.2/mode/verilog/verilog.js +0 -675
  342. data/vendor/assets/javascripts/codemirror/5.49.2/mode/vhdl/index.html +0 -95
  343. data/vendor/assets/javascripts/codemirror/5.49.2/mode/vhdl/vhdl.js +0 -189
  344. data/vendor/assets/javascripts/codemirror/5.49.2/mode/vue/index.html +0 -69
  345. data/vendor/assets/javascripts/codemirror/5.49.2/mode/vue/vue.js +0 -77
  346. data/vendor/assets/javascripts/codemirror/5.49.2/mode/webidl/index.html +0 -71
  347. data/vendor/assets/javascripts/codemirror/5.49.2/mode/webidl/webidl.js +0 -195
  348. data/vendor/assets/javascripts/codemirror/5.49.2/mode/xml/index.html +0 -61
  349. data/vendor/assets/javascripts/codemirror/5.49.2/mode/xml/test.js +0 -51
  350. data/vendor/assets/javascripts/codemirror/5.49.2/mode/xml/xml.js +0 -413
  351. data/vendor/assets/javascripts/codemirror/5.49.2/mode/xquery/index.html +0 -211
  352. data/vendor/assets/javascripts/codemirror/5.49.2/mode/xquery/test.js +0 -67
  353. data/vendor/assets/javascripts/codemirror/5.49.2/mode/xquery/xquery.js +0 -448
  354. data/vendor/assets/javascripts/codemirror/5.49.2/mode/yacas/index.html +0 -87
  355. data/vendor/assets/javascripts/codemirror/5.49.2/mode/yacas/yacas.js +0 -204
  356. data/vendor/assets/javascripts/codemirror/5.49.2/mode/yaml/index.html +0 -80
  357. data/vendor/assets/javascripts/codemirror/5.49.2/mode/yaml/yaml.js +0 -120
  358. data/vendor/assets/javascripts/codemirror/5.49.2/mode/yaml-frontmatter/index.html +0 -121
  359. data/vendor/assets/javascripts/codemirror/5.49.2/mode/yaml-frontmatter/yaml-frontmatter.js +0 -68
  360. data/vendor/assets/javascripts/codemirror/5.49.2/mode/z80/index.html +0 -53
  361. data/vendor/assets/javascripts/codemirror/5.49.2/mode/z80/z80.js +0 -116
  362. data/vendor/assets/stylesheets/codemirror/5.49.2/lib/codemirror.css +0 -349
  363. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/3024-day.css +0 -41
  364. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/3024-night.css +0 -39
  365. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/abcdef.css +0 -32
  366. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/ambiance-mobile.css +0 -5
  367. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/ambiance.css +0 -74
  368. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/base16-dark.css +0 -38
  369. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/base16-light.css +0 -38
  370. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/bespin.css +0 -34
  371. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/blackboard.css +0 -32
  372. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/cobalt.css +0 -25
  373. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/colorforth.css +0 -33
  374. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/darcula.css +0 -53
  375. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/dracula.css +0 -40
  376. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/duotone-dark.css +0 -35
  377. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/duotone-light.css +0 -36
  378. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/eclipse.css +0 -23
  379. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/elegant.css +0 -13
  380. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/erlang-dark.css +0 -34
  381. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/gruvbox-dark.css +0 -37
  382. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/hopscotch.css +0 -34
  383. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/icecoder.css +0 -43
  384. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/idea.css +0 -42
  385. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/isotope.css +0 -34
  386. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/lesser-dark.css +0 -47
  387. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/liquibyte.css +0 -95
  388. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/lucario.css +0 -37
  389. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/material-darker.css +0 -135
  390. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/material-ocean.css +0 -135
  391. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/material-palenight.css +0 -135
  392. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/material.css +0 -135
  393. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/mbo.css +0 -37
  394. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/mdn-like.css +0 -46
  395. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/midnight.css +0 -39
  396. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/monokai.css +0 -41
  397. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/moxer.css +0 -143
  398. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/neat.css +0 -12
  399. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/neo.css +0 -43
  400. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/night.css +0 -27
  401. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/nord.css +0 -42
  402. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/oceanic-next.css +0 -44
  403. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/panda-syntax.css +0 -85
  404. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/paraiso-dark.css +0 -38
  405. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/paraiso-light.css +0 -38
  406. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/pastel-on-dark.css +0 -52
  407. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/railscasts.css +0 -34
  408. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/rubyblue.css +0 -25
  409. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/seti.css +0 -44
  410. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/shadowfox.css +0 -52
  411. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/solarized.css +0 -168
  412. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/ssms.css +0 -16
  413. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/the-matrix.css +0 -30
  414. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/tomorrow-night-bright.css +0 -35
  415. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/tomorrow-night-eighties.css +0 -38
  416. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/ttcn.css +0 -64
  417. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/twilight.css +0 -32
  418. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/vibrant-ink.css +0 -34
  419. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/xq-dark.css +0 -53
  420. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/xq-light.css +0 -43
  421. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/yeti.css +0 -44
  422. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/yonce.css +0 -59
  423. data/vendor/assets/stylesheets/codemirror/5.49.2/theme/zenburn.css +0 -37
@@ -1,268 +0,0 @@
1
- // CodeMirror, copyright (c) by Marijn Haverbeke and others
2
- // Distributed under an MIT license: https://codemirror.net/LICENSE
3
-
4
- (function(mod) {
5
- if (typeof exports == "object" && typeof module == "object") // CommonJS
6
- mod(require("../../lib/codemirror"));
7
- else if (typeof define == "function" && define.amd) // AMD
8
- define(["../../lib/codemirror"], mod);
9
- else // Plain browser env
10
- mod(CodeMirror);
11
- })(function(CodeMirror) {
12
- "use strict";
13
-
14
- CodeMirror.defineMode("haskell", function(_config, modeConfig) {
15
-
16
- function switchState(source, setState, f) {
17
- setState(f);
18
- return f(source, setState);
19
- }
20
-
21
- // These should all be Unicode extended, as per the Haskell 2010 report
22
- var smallRE = /[a-z_]/;
23
- var largeRE = /[A-Z]/;
24
- var digitRE = /\d/;
25
- var hexitRE = /[0-9A-Fa-f]/;
26
- var octitRE = /[0-7]/;
27
- var idRE = /[a-z_A-Z0-9'\xa1-\uffff]/;
28
- var symbolRE = /[-!#$%&*+.\/<=>?@\\^|~:]/;
29
- var specialRE = /[(),;[\]`{}]/;
30
- var whiteCharRE = /[ \t\v\f]/; // newlines are handled in tokenizer
31
-
32
- function normal(source, setState) {
33
- if (source.eatWhile(whiteCharRE)) {
34
- return null;
35
- }
36
-
37
- var ch = source.next();
38
- if (specialRE.test(ch)) {
39
- if (ch == '{' && source.eat('-')) {
40
- var t = "comment";
41
- if (source.eat('#')) {
42
- t = "meta";
43
- }
44
- return switchState(source, setState, ncomment(t, 1));
45
- }
46
- return null;
47
- }
48
-
49
- if (ch == '\'') {
50
- if (source.eat('\\')) {
51
- source.next(); // should handle other escapes here
52
- }
53
- else {
54
- source.next();
55
- }
56
- if (source.eat('\'')) {
57
- return "string";
58
- }
59
- return "string error";
60
- }
61
-
62
- if (ch == '"') {
63
- return switchState(source, setState, stringLiteral);
64
- }
65
-
66
- if (largeRE.test(ch)) {
67
- source.eatWhile(idRE);
68
- if (source.eat('.')) {
69
- return "qualifier";
70
- }
71
- return "variable-2";
72
- }
73
-
74
- if (smallRE.test(ch)) {
75
- source.eatWhile(idRE);
76
- return "variable";
77
- }
78
-
79
- if (digitRE.test(ch)) {
80
- if (ch == '0') {
81
- if (source.eat(/[xX]/)) {
82
- source.eatWhile(hexitRE); // should require at least 1
83
- return "integer";
84
- }
85
- if (source.eat(/[oO]/)) {
86
- source.eatWhile(octitRE); // should require at least 1
87
- return "number";
88
- }
89
- }
90
- source.eatWhile(digitRE);
91
- var t = "number";
92
- if (source.match(/^\.\d+/)) {
93
- t = "number";
94
- }
95
- if (source.eat(/[eE]/)) {
96
- t = "number";
97
- source.eat(/[-+]/);
98
- source.eatWhile(digitRE); // should require at least 1
99
- }
100
- return t;
101
- }
102
-
103
- if (ch == "." && source.eat("."))
104
- return "keyword";
105
-
106
- if (symbolRE.test(ch)) {
107
- if (ch == '-' && source.eat(/-/)) {
108
- source.eatWhile(/-/);
109
- if (!source.eat(symbolRE)) {
110
- source.skipToEnd();
111
- return "comment";
112
- }
113
- }
114
- var t = "variable";
115
- if (ch == ':') {
116
- t = "variable-2";
117
- }
118
- source.eatWhile(symbolRE);
119
- return t;
120
- }
121
-
122
- return "error";
123
- }
124
-
125
- function ncomment(type, nest) {
126
- if (nest == 0) {
127
- return normal;
128
- }
129
- return function(source, setState) {
130
- var currNest = nest;
131
- while (!source.eol()) {
132
- var ch = source.next();
133
- if (ch == '{' && source.eat('-')) {
134
- ++currNest;
135
- }
136
- else if (ch == '-' && source.eat('}')) {
137
- --currNest;
138
- if (currNest == 0) {
139
- setState(normal);
140
- return type;
141
- }
142
- }
143
- }
144
- setState(ncomment(type, currNest));
145
- return type;
146
- };
147
- }
148
-
149
- function stringLiteral(source, setState) {
150
- while (!source.eol()) {
151
- var ch = source.next();
152
- if (ch == '"') {
153
- setState(normal);
154
- return "string";
155
- }
156
- if (ch == '\\') {
157
- if (source.eol() || source.eat(whiteCharRE)) {
158
- setState(stringGap);
159
- return "string";
160
- }
161
- if (source.eat('&')) {
162
- }
163
- else {
164
- source.next(); // should handle other escapes here
165
- }
166
- }
167
- }
168
- setState(normal);
169
- return "string error";
170
- }
171
-
172
- function stringGap(source, setState) {
173
- if (source.eat('\\')) {
174
- return switchState(source, setState, stringLiteral);
175
- }
176
- source.next();
177
- setState(normal);
178
- return "error";
179
- }
180
-
181
-
182
- var wellKnownWords = (function() {
183
- var wkw = {};
184
- function setType(t) {
185
- return function () {
186
- for (var i = 0; i < arguments.length; i++)
187
- wkw[arguments[i]] = t;
188
- };
189
- }
190
-
191
- setType("keyword")(
192
- "case", "class", "data", "default", "deriving", "do", "else", "foreign",
193
- "if", "import", "in", "infix", "infixl", "infixr", "instance", "let",
194
- "module", "newtype", "of", "then", "type", "where", "_");
195
-
196
- setType("keyword")(
197
- "\.\.", ":", "::", "=", "\\", "<-", "->", "@", "~", "=>");
198
-
199
- setType("builtin")(
200
- "!!", "$!", "$", "&&", "+", "++", "-", ".", "/", "/=", "<", "<*", "<=",
201
- "<$>", "<*>", "=<<", "==", ">", ">=", ">>", ">>=", "^", "^^", "||", "*",
202
- "*>", "**");
203
-
204
- setType("builtin")(
205
- "Applicative", "Bool", "Bounded", "Char", "Double", "EQ", "Either", "Enum",
206
- "Eq", "False", "FilePath", "Float", "Floating", "Fractional", "Functor",
207
- "GT", "IO", "IOError", "Int", "Integer", "Integral", "Just", "LT", "Left",
208
- "Maybe", "Monad", "Nothing", "Num", "Ord", "Ordering", "Rational", "Read",
209
- "ReadS", "Real", "RealFloat", "RealFrac", "Right", "Show", "ShowS",
210
- "String", "True");
211
-
212
- setType("builtin")(
213
- "abs", "acos", "acosh", "all", "and", "any", "appendFile", "asTypeOf",
214
- "asin", "asinh", "atan", "atan2", "atanh", "break", "catch", "ceiling",
215
- "compare", "concat", "concatMap", "const", "cos", "cosh", "curry",
216
- "cycle", "decodeFloat", "div", "divMod", "drop", "dropWhile", "either",
217
- "elem", "encodeFloat", "enumFrom", "enumFromThen", "enumFromThenTo",
218
- "enumFromTo", "error", "even", "exp", "exponent", "fail", "filter",
219
- "flip", "floatDigits", "floatRadix", "floatRange", "floor", "fmap",
220
- "foldl", "foldl1", "foldr", "foldr1", "fromEnum", "fromInteger",
221
- "fromIntegral", "fromRational", "fst", "gcd", "getChar", "getContents",
222
- "getLine", "head", "id", "init", "interact", "ioError", "isDenormalized",
223
- "isIEEE", "isInfinite", "isNaN", "isNegativeZero", "iterate", "last",
224
- "lcm", "length", "lex", "lines", "log", "logBase", "lookup", "map",
225
- "mapM", "mapM_", "max", "maxBound", "maximum", "maybe", "min", "minBound",
226
- "minimum", "mod", "negate", "not", "notElem", "null", "odd", "or",
227
- "otherwise", "pi", "pred", "print", "product", "properFraction", "pure",
228
- "putChar", "putStr", "putStrLn", "quot", "quotRem", "read", "readFile",
229
- "readIO", "readList", "readLn", "readParen", "reads", "readsPrec",
230
- "realToFrac", "recip", "rem", "repeat", "replicate", "return", "reverse",
231
- "round", "scaleFloat", "scanl", "scanl1", "scanr", "scanr1", "seq",
232
- "sequence", "sequence_", "show", "showChar", "showList", "showParen",
233
- "showString", "shows", "showsPrec", "significand", "signum", "sin",
234
- "sinh", "snd", "span", "splitAt", "sqrt", "subtract", "succ", "sum",
235
- "tail", "take", "takeWhile", "tan", "tanh", "toEnum", "toInteger",
236
- "toRational", "truncate", "uncurry", "undefined", "unlines", "until",
237
- "unwords", "unzip", "unzip3", "userError", "words", "writeFile", "zip",
238
- "zip3", "zipWith", "zipWith3");
239
-
240
- var override = modeConfig.overrideKeywords;
241
- if (override) for (var word in override) if (override.hasOwnProperty(word))
242
- wkw[word] = override[word];
243
-
244
- return wkw;
245
- })();
246
-
247
-
248
-
249
- return {
250
- startState: function () { return { f: normal }; },
251
- copyState: function (s) { return { f: s.f }; },
252
-
253
- token: function(stream, state) {
254
- var t = state.f(stream, function(s) { state.f = s; });
255
- var w = stream.current();
256
- return wellKnownWords.hasOwnProperty(w) ? wellKnownWords[w] : t;
257
- },
258
-
259
- blockCommentStart: "{-",
260
- blockCommentEnd: "-}",
261
- lineComment: "--"
262
- };
263
-
264
- });
265
-
266
- CodeMirror.defineMIME("text/x-haskell", "haskell");
267
-
268
- });
@@ -1,73 +0,0 @@
1
- <!doctype html>
2
-
3
- <title>CodeMirror: Haskell mode</title>
4
- <meta charset="utf-8"/>
5
- <link rel=stylesheet href="../../doc/docs.css">
6
-
7
- <link rel="stylesheet" href="../../lib/codemirror.css">
8
- <link rel="stylesheet" href="../../theme/elegant.css">
9
- <script src="../../lib/codemirror.js"></script>
10
- <script src="../../addon/edit/matchbrackets.js"></script>
11
- <script src="haskell.js"></script>
12
- <style>.CodeMirror {border-top: 1px solid black; border-bottom: 1px solid black;}</style>
13
- <div id=nav>
14
- <a href="https://codemirror.net"><h1>CodeMirror</h1><img id=logo src="../../doc/logo.png" alt=""></a>
15
-
16
- <ul>
17
- <li><a href="../../index.html">Home</a>
18
- <li><a href="../../doc/manual.html">Manual</a>
19
- <li><a href="https://github.com/codemirror/codemirror">Code</a>
20
- </ul>
21
- <ul>
22
- <li><a href="../index.html">Language modes</a>
23
- <li><a class=active href="#">Haskell</a>
24
- </ul>
25
- </div>
26
-
27
- <article>
28
- <h2>Haskell mode</h2>
29
- <form><textarea id="code" name="code">
30
- module UniquePerms (
31
- uniquePerms
32
- )
33
- where
34
-
35
- -- | Find all unique permutations of a list where there might be duplicates.
36
- uniquePerms :: (Eq a) => [a] -> [[a]]
37
- uniquePerms = permBag . makeBag
38
-
39
- -- | An unordered collection where duplicate values are allowed,
40
- -- but represented with a single value and a count.
41
- type Bag a = [(a, Int)]
42
-
43
- makeBag :: (Eq a) => [a] -> Bag a
44
- makeBag [] = []
45
- makeBag (a:as) = mix a $ makeBag as
46
- where
47
- mix a [] = [(a,1)]
48
- mix a (bn@(b,n):bs) | a == b = (b,n+1):bs
49
- | otherwise = bn : mix a bs
50
-
51
- permBag :: Bag a -> [[a]]
52
- permBag [] = [[]]
53
- permBag bs = concatMap (\(f,cs) -> map (f:) $ permBag cs) . oneOfEach $ bs
54
- where
55
- oneOfEach [] = []
56
- oneOfEach (an@(a,n):bs) =
57
- let bs' = if n == 1 then bs else (a,n-1):bs
58
- in (a,bs') : mapSnd (an:) (oneOfEach bs)
59
-
60
- apSnd f (a,b) = (a, f b)
61
- mapSnd = map . apSnd
62
- </textarea></form>
63
-
64
- <script>
65
- var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
66
- lineNumbers: true,
67
- matchBrackets: true,
68
- theme: "elegant"
69
- });
70
- </script>
71
-
72
- <p><strong>MIME types defined:</strong> <code>text/x-haskell</code>.</p>
73
- </article>
@@ -1,43 +0,0 @@
1
- // CodeMirror, copyright (c) by Marijn Haverbeke and others
2
- // Distributed under an MIT license: https://codemirror.net/LICENSE
3
-
4
- (function (mod) {
5
- if (typeof exports == "object" && typeof module == "object") // CommonJS
6
- mod(require("../../lib/codemirror"), require("../haskell/haskell"))
7
- else if (typeof define == "function" && define.amd) // AMD
8
- define(["../../lib/codemirror", "../haskell/haskell"], mod)
9
- else // Plain browser env
10
- mod(CodeMirror)
11
- })(function (CodeMirror) {
12
- "use strict"
13
-
14
- CodeMirror.defineMode("haskell-literate", function (config, parserConfig) {
15
- var baseMode = CodeMirror.getMode(config, (parserConfig && parserConfig.base) || "haskell")
16
-
17
- return {
18
- startState: function () {
19
- return {
20
- inCode: false,
21
- baseState: CodeMirror.startState(baseMode)
22
- }
23
- },
24
- token: function (stream, state) {
25
- if (stream.sol()) {
26
- if (state.inCode = stream.eat(">"))
27
- return "meta"
28
- }
29
- if (state.inCode) {
30
- return baseMode.token(stream, state.baseState)
31
- } else {
32
- stream.skipToEnd()
33
- return "comment"
34
- }
35
- },
36
- innerMode: function (state) {
37
- return state.inCode ? {state: state.baseState, mode: baseMode} : null
38
- }
39
- }
40
- }, "haskell")
41
-
42
- CodeMirror.defineMIME("text/x-literate-haskell", "haskell-literate")
43
- });
@@ -1,282 +0,0 @@
1
- <!doctype html>
2
-
3
- <title>CodeMirror: Haskell-literate mode</title>
4
- <meta charset="utf-8"/>
5
- <link rel=stylesheet href="../../doc/docs.css">
6
-
7
- <link rel="stylesheet" href="../../lib/codemirror.css">
8
- <script src="../../lib/codemirror.js"></script>
9
- <script src="haskell-literate.js"></script>
10
- <script src="../haskell/haskell.js"></script>
11
- <style>.CodeMirror {
12
- border-top : 1px solid #DDDDDD;
13
- border-bottom : 1px solid #DDDDDD;
14
- }</style>
15
- <div id=nav>
16
- <a href="https://codemirror.net"><h1>CodeMirror</h1><img id=logo
17
- src="../../doc/logo.png"></a>
18
-
19
- <ul>
20
- <li><a href="../../index.html">Home</a>
21
- <li><a href="../../doc/manual.html">Manual</a>
22
- <li><a href="https://github.com/codemirror/codemirror">Code</a>
23
- </ul>
24
- <ul>
25
- <li><a href="../index.html">Language modes</a>
26
- <li><a class=active href="#">Haskell-literate</a>
27
- </ul>
28
- </div>
29
-
30
- <article>
31
- <h2>Haskell literate mode</h2>
32
- <form>
33
- <textarea id="code" name="code">
34
- > {-# LANGUAGE OverloadedStrings #-}
35
- > {-# OPTIONS_GHC -fno-warn-unused-do-bind #-}
36
- > import Control.Applicative ((<$>), (<*>))
37
- > import Data.Maybe (isJust)
38
-
39
- > import Data.Text (Text)
40
- > import Text.Blaze ((!))
41
- > import qualified Data.Text as T
42
- > import qualified Happstack.Server as Happstack
43
- > import qualified Text.Blaze.Html5 as H
44
- > import qualified Text.Blaze.Html5.Attributes as A
45
-
46
- > import Text.Digestive
47
- > import Text.Digestive.Blaze.Html5
48
- > import Text.Digestive.Happstack
49
- > import Text.Digestive.Util
50
-
51
- Simple forms and validation
52
- ---------------------------
53
-
54
- Let's start by creating a very simple datatype to represent a user:
55
-
56
- > data User = User
57
- > { userName :: Text
58
- > , userMail :: Text
59
- > } deriving (Show)
60
-
61
- And dive in immediately to create a `Form` for a user. The `Form v m a` type
62
- has three parameters:
63
-
64
- - `v`: the type for messages and errors (usually a `String`-like type, `Text` in
65
- this case);
66
- - `m`: the monad we are operating in, not specified here;
67
- - `a`: the return type of the `Form`, in this case, this is obviously `User`.
68
-
69
- > userForm :: Monad m => Form Text m User
70
-
71
- We create forms by using the `Applicative` interface. A few form types are
72
- provided in the `Text.Digestive.Form` module, such as `text`, `string`,
73
- `bool`...
74
-
75
- In the `digestive-functors` library, the developer is required to label each
76
- field using the `.:` operator. This might look like a bit of a burden, but it
77
- allows you to do some really useful stuff, like separating the `Form` from the
78
- actual HTML layout.
79
-
80
- > userForm = User
81
- > <$> "name" .: text Nothing
82
- > <*> "mail" .: check "Not a valid email address" checkEmail (text Nothing)
83
-
84
- The `check` function enables you to validate the result of a form. For example,
85
- we can validate the email address with a really naive `checkEmail` function.
86
-
87
- > checkEmail :: Text -> Bool
88
- > checkEmail = isJust . T.find (== '@')
89
-
90
- More validation
91
- ---------------
92
-
93
- For our example, we also want descriptions of Haskell libraries, and in order to
94
- do that, we need package versions...
95
-
96
- > type Version = [Int]
97
-
98
- We want to let the user input a version number such as `0.1.0.0`. This means we
99
- need to validate if the input `Text` is of this form, and then we need to parse
100
- it to a `Version` type. Fortunately, we can do this in a single function:
101
- `validate` allows conversion between values, which can optionally fail.
102
-
103
- `readMaybe :: Read a => String -> Maybe a` is a utility function imported from
104
- `Text.Digestive.Util`.
105
-
106
- > validateVersion :: Text -> Result Text Version
107
- > validateVersion = maybe (Error "Cannot parse version") Success .
108
- > mapM (readMaybe . T.unpack) . T.split (== '.')
109
-
110
- A quick test in GHCi:
111
-
112
- ghci> validateVersion (T.pack "0.3.2.1")
113
- Success [0,3,2,1]
114
- ghci> validateVersion (T.pack "0.oops")
115
- Error "Cannot parse version"
116
-
117
- It works! This means we can now easily add a `Package` type and a `Form` for it:
118
-
119
- > data Category = Web | Text | Math
120
- > deriving (Bounded, Enum, Eq, Show)
121
-
122
- > data Package = Package Text Version Category
123
- > deriving (Show)
124
-
125
- > packageForm :: Monad m => Form Text m Package
126
- > packageForm = Package
127
- > <$> "name" .: text Nothing
128
- > <*> "version" .: validate validateVersion (text (Just "0.0.0.1"))
129
- > <*> "category" .: choice categories Nothing
130
- > where
131
- > categories = [(x, T.pack (show x)) | x <- [minBound .. maxBound]]
132
-
133
- Composing forms
134
- ---------------
135
-
136
- A release has an author and a package. Let's use this to illustrate the
137
- composability of the digestive-functors library: we can reuse the forms we have
138
- written earlier on.
139
-
140
- > data Release = Release User Package
141
- > deriving (Show)
142
-
143
- > releaseForm :: Monad m => Form Text m Release
144
- > releaseForm = Release
145
- > <$> "author" .: userForm
146
- > <*> "package" .: packageForm
147
-
148
- Views
149
- -----
150
-
151
- As mentioned before, one of the advantages of using digestive-functors is
152
- separation of forms and their actual HTML layout. In order to do this, we have
153
- another type, `View`.
154
-
155
- We can get a `View` from a `Form` by supplying input. A `View` contains more
156
- information than a `Form`, it has:
157
-
158
- - the original form;
159
- - the input given by the user;
160
- - any errors that have occurred.
161
-
162
- It is this view that we convert to HTML. For this tutorial, we use the
163
- [blaze-html] library, and some helpers from the `digestive-functors-blaze`
164
- library.
165
-
166
- [blaze-html]: http://jaspervdj.be/blaze/
167
-
168
- Let's write a view for the `User` form. As you can see, we here refer to the
169
- different fields in the `userForm`. The `errorList` will generate a list of
170
- errors for the `"mail"` field.
171
-
172
- > userView :: View H.Html -> H.Html
173
- > userView view = do
174
- > label "name" view "Name: "
175
- > inputText "name" view
176
- > H.br
177
- >
178
- > errorList "mail" view
179
- > label "mail" view "Email address: "
180
- > inputText "mail" view
181
- > H.br
182
-
183
- Like forms, views are also composable: let's illustrate that by adding a view
184
- for the `releaseForm`, in which we reuse `userView`. In order to do this, we
185
- take only the parts relevant to the author from the view by using `subView`. We
186
- can then pass the resulting view to our own `userView`.
187
- We have no special view code for `Package`, so we can just add that to
188
- `releaseView` as well. `childErrorList` will generate a list of errors for each
189
- child of the specified form. In this case, this means a list of errors from
190
- `"package.name"` and `"package.version"`. Note how we use `foo.bar` to refer to
191
- nested forms.
192
-
193
- > releaseView :: View H.Html -> H.Html
194
- > releaseView view = do
195
- > H.h2 "Author"
196
- > userView $ subView "author" view
197
- >
198
- > H.h2 "Package"
199
- > childErrorList "package" view
200
- >
201
- > label "package.name" view "Name: "
202
- > inputText "package.name" view
203
- > H.br
204
- >
205
- > label "package.version" view "Version: "
206
- > inputText "package.version" view
207
- > H.br
208
- >
209
- > label "package.category" view "Category: "
210
- > inputSelect "package.category" view
211
- > H.br
212
-
213
- The attentive reader might have wondered what the type parameter for `View` is:
214
- it is the `String`-like type used for e.g. error messages.
215
- But wait! We have
216
- releaseForm :: Monad m => Form Text m Release
217
- releaseView :: View H.Html -> H.Html
218
- ... doesn't this mean that we need a `View Text` rather than a `View Html`? The
219
- answer is yes -- but having `View Html` allows us to write these views more
220
- easily with the `digestive-functors-blaze` library. Fortunately, we will be able
221
- to fix this using the `Functor` instance of `View`.
222
- fmap :: Monad m => (v -> w) -> View v -> View w
223
- A backend
224
- ---------
225
- To finish this tutorial, we need to be able to actually run this code. We need
226
- an HTTP server for that, and we use [Happstack] for this tutorial. The
227
- `digestive-functors-happstack` library gives about everything we need for this.
228
- [Happstack]: http://happstack.com/
229
-
230
- > site :: Happstack.ServerPart Happstack.Response
231
- > site = do
232
- > Happstack.decodeBody $ Happstack.defaultBodyPolicy "/tmp" 4096 4096 4096
233
- > r <- runForm "test" releaseForm
234
- > case r of
235
- > (view, Nothing) -> do
236
- > let view' = fmap H.toHtml view
237
- > Happstack.ok $ Happstack.toResponse $
238
- > template $
239
- > form view' "/" $ do
240
- > releaseView view'
241
- > H.br
242
- > inputSubmit "Submit"
243
- > (_, Just release) -> Happstack.ok $ Happstack.toResponse $
244
- > template $ do
245
- > css
246
- > H.h1 "Release received"
247
- > H.p $ H.toHtml $ show release
248
- >
249
- > main :: IO ()
250
- > main = Happstack.simpleHTTP Happstack.nullConf site
251
-
252
- Utilities
253
- ---------
254
-
255
- > template :: H.Html -> H.Html
256
- > template body = H.docTypeHtml $ do
257
- > H.head $ do
258
- > H.title "digestive-functors tutorial"
259
- > css
260
- > H.body body
261
- > css :: H.Html
262
- > css = H.style ! A.type_ "text/css" $ do
263
- > "label {width: 130px; float: left; clear: both}"
264
- > "ul.digestive-functors-error-list {"
265
- > " color: red;"
266
- > " list-style-type: none;"
267
- > " padding-left: 0px;"
268
- > "}"
269
- </textarea>
270
- </form>
271
-
272
- <p><strong>MIME types
273
- defined:</strong> <code>text/x-literate-haskell</code>.</p>
274
-
275
- <p>Parser configuration parameters recognized: <code>base</code> to
276
- set the base mode (defaults to <code>"haskell"</code>).</p>
277
-
278
- <script>
279
- var editor = CodeMirror.fromTextArea(document.getElementById("code"), {mode: "haskell-literate"});
280
- </script>
281
-
282
- </article>