lines-engine 0.6.2 → 0.9.0

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 (572) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data.tar.gz.sig +0 -0
  4. data/.gitignore +1 -0
  5. data/CHANGELOG.md +10 -3
  6. data/Gemfile +1 -0
  7. data/Gemfile.lock +10 -6
  8. data/app/assets/images/favicon.ico +0 -0
  9. data/app/assets/images/gplus.svg +17 -0
  10. data/app/assets/javascripts/lines/admin/admin.js +299 -0
  11. data/app/assets/javascripts/lines/{autosize.min.js → admin/autosize.min.js} +0 -0
  12. data/app/assets/javascripts/lines/admin/navbar.js +51 -0
  13. data/app/assets/javascripts/lines/{pictures.js.coffee → admin/pictures.js.coffee} +2 -1
  14. data/app/assets/javascripts/lines/application.js +3 -0
  15. data/app/assets/javascripts/lines/articles.js.coffee +1 -0
  16. data/app/assets/javascripts/lines/viewer.js.coffee +3 -0
  17. data/app/assets/stylesheets/lines/admin/admin.scss +609 -0
  18. data/app/assets/stylesheets/lines/admin/variables_and_mixins.scss +36 -0
  19. data/app/assets/stylesheets/lines/application.scss +2 -13
  20. data/app/assets/stylesheets/lines/article.scss +165 -69
  21. data/app/assets/stylesheets/lines/fonts.scss +2 -2
  22. data/app/assets/stylesheets/lines/footer.scss +10 -56
  23. data/app/assets/stylesheets/lines/general.scss +18 -13
  24. data/app/assets/stylesheets/lines/media_queries.scss +5 -1
  25. data/app/assets/stylesheets/lines/messages.scss +28 -0
  26. data/app/assets/stylesheets/lines/navbar.scss +199 -122
  27. data/app/assets/stylesheets/lines/pagination.scss +8 -31
  28. data/app/assets/stylesheets/lines/pygments.css.erb +1 -2
  29. data/app/assets/stylesheets/lines/variables_and_mixins.scss +4 -0
  30. data/app/controllers/lines/admin/articles_controller.rb +8 -6
  31. data/app/controllers/lines/admin/authors_controller.rb +2 -2
  32. data/app/controllers/lines/admin/pictures_controller.rb +1 -1
  33. data/app/controllers/lines/application_controller.rb +1 -1
  34. data/app/controllers/lines/articles_controller.rb +3 -1
  35. data/app/controllers/lines/password_resets_controller.rb +4 -7
  36. data/app/controllers/lines/sessions_controller.rb +3 -3
  37. data/app/helpers/lines/application_helper.rb +25 -4
  38. data/app/mailers/lines/user_mailer.rb +1 -1
  39. data/app/models/lines/article.rb +13 -3
  40. data/app/models/lines/user.rb +2 -2
  41. data/app/uploaders/picture_uploader.rb +1 -1
  42. data/app/views/layouts/lines/_markdown_cheatsheet.html.erb +72 -0
  43. data/app/views/layouts/lines/admin.html.erb +15 -4
  44. data/app/views/layouts/lines/application.html.erb +16 -4
  45. data/app/views/layouts/lines/preview.html.erb +30 -2
  46. data/app/views/lines/admin/articles/_form.html.erb +50 -148
  47. data/app/views/lines/admin/articles/_picture_box.html.erb +37 -8
  48. data/app/views/lines/admin/articles/edit.html.erb +2 -12
  49. data/app/views/lines/admin/articles/index.html.erb +40 -28
  50. data/app/views/lines/admin/articles/new.html.erb +3 -10
  51. data/app/views/lines/admin/articles/show.html.erb +6 -4
  52. data/app/views/lines/admin/authors/_form.html.erb +12 -41
  53. data/app/views/lines/admin/authors/index.html.erb +18 -13
  54. data/app/views/lines/admin/authors/show.html.erb +19 -48
  55. data/app/views/lines/admin/pictures/_picture.html.erb +5 -4
  56. data/app/views/lines/admin/pictures/create.js.erb +1 -1
  57. data/app/views/lines/admin/pictures/destroy.js.erb +1 -1
  58. data/app/views/lines/articles/_article.html.erb +10 -6
  59. data/app/views/lines/articles/_article_collection.html.erb +1 -1
  60. data/app/views/lines/articles/_article_small.html.erb +9 -7
  61. data/app/views/lines/articles/index.atom.builder +10 -9
  62. data/app/views/lines/articles/index.html.erb +2 -2
  63. data/app/views/lines/articles/show.html.erb +5 -1
  64. data/app/views/lines/password_resets/edit.html.erb +25 -12
  65. data/app/views/lines/password_resets/new.html.erb +14 -8
  66. data/app/views/lines/sessions/new.html.erb +6 -10
  67. data/app/views/lines/shared/_flash.html.erb +1 -1
  68. data/app/views/lines/shared/_footer.html.erb +5 -28
  69. data/app/views/lines/user_mailer/password_reset.html.erb +6 -5
  70. data/app/views/lines/user_mailer/password_reset.text.erb +8 -4
  71. data/config/lines_config.yml +15 -14
  72. data/config/routes.rb +2 -2
  73. data/db/seeds.rb +5 -5
  74. data/lib/lines/engine.rb +1 -1
  75. data/lib/lines/version.rb +1 -1
  76. data/lines.gemspec +1 -1
  77. data/public/codemirror/.gitattributes +8 -0
  78. data/public/codemirror/.gitignore +8 -0
  79. data/public/codemirror/.npmignore +9 -0
  80. data/public/codemirror/.travis.yml +4 -0
  81. data/public/codemirror/AUTHORS +474 -0
  82. data/public/codemirror/CONTRIBUTING.md +88 -0
  83. data/public/codemirror/LICENSE +19 -0
  84. data/public/codemirror/README.md +27 -0
  85. data/public/codemirror/addon/comment/comment.js +183 -0
  86. data/public/codemirror/addon/comment/continuecomment.js +85 -0
  87. data/public/codemirror/addon/dialog/dialog.css +32 -0
  88. data/public/codemirror/addon/dialog/dialog.js +157 -0
  89. data/public/codemirror/addon/display/fullscreen.css +6 -0
  90. data/public/codemirror/addon/display/fullscreen.js +41 -0
  91. data/public/codemirror/addon/display/panel.js +112 -0
  92. data/public/codemirror/addon/display/placeholder.js +58 -0
  93. data/public/codemirror/addon/display/rulers.js +63 -0
  94. data/public/codemirror/addon/edit/closebrackets.js +185 -0
  95. data/public/codemirror/addon/edit/closetag.js +166 -0
  96. data/public/codemirror/addon/edit/continuelist.js +51 -0
  97. data/public/codemirror/addon/edit/matchbrackets.js +120 -0
  98. data/public/codemirror/addon/edit/matchtags.js +66 -0
  99. data/public/codemirror/addon/edit/trailingspace.js +27 -0
  100. data/public/codemirror/addon/fold/brace-fold.js +105 -0
  101. data/public/codemirror/addon/fold/comment-fold.js +57 -0
  102. data/public/codemirror/addon/fold/foldcode.js +149 -0
  103. data/public/codemirror/addon/fold/foldgutter.css +20 -0
  104. data/public/codemirror/addon/fold/foldgutter.js +146 -0
  105. data/public/codemirror/addon/fold/indent-fold.js +44 -0
  106. data/public/codemirror/addon/fold/markdown-fold.js +49 -0
  107. data/public/codemirror/addon/fold/xml-fold.js +182 -0
  108. data/public/codemirror/addon/hint/anyword-hint.js +41 -0
  109. data/public/codemirror/addon/hint/css-hint.js +60 -0
  110. data/public/codemirror/addon/hint/html-hint.js +348 -0
  111. data/public/codemirror/addon/hint/javascript-hint.js +146 -0
  112. data/public/codemirror/addon/hint/show-hint.css +38 -0
  113. data/public/codemirror/addon/hint/show-hint.js +386 -0
  114. data/public/codemirror/addon/hint/sql-hint.js +254 -0
  115. data/public/codemirror/addon/hint/xml-hint.js +110 -0
  116. data/public/codemirror/addon/lint/coffeescript-lint.js +41 -0
  117. data/public/codemirror/addon/lint/css-lint.js +35 -0
  118. data/public/codemirror/addon/lint/javascript-lint.js +136 -0
  119. data/public/codemirror/addon/lint/json-lint.js +31 -0
  120. data/public/codemirror/addon/lint/lint.css +73 -0
  121. data/public/codemirror/addon/lint/lint.js +207 -0
  122. data/public/codemirror/addon/lint/yaml-lint.js +28 -0
  123. data/public/codemirror/addon/merge/merge.css +112 -0
  124. data/public/codemirror/addon/merge/merge.js +775 -0
  125. data/public/codemirror/addon/mode/loadmode.js +64 -0
  126. data/public/codemirror/addon/mode/multiplex.js +123 -0
  127. data/public/codemirror/addon/mode/multiplex_test.js +33 -0
  128. data/public/codemirror/addon/mode/overlay.js +85 -0
  129. data/public/codemirror/addon/mode/simple.js +213 -0
  130. data/public/codemirror/addon/runmode/colorize.js +40 -0
  131. data/public/codemirror/addon/runmode/runmode-standalone.js +157 -0
  132. data/public/codemirror/addon/runmode/runmode.js +72 -0
  133. data/public/codemirror/addon/runmode/runmode.node.js +178 -0
  134. data/public/codemirror/addon/scroll/annotatescrollbar.js +115 -0
  135. data/public/codemirror/addon/scroll/scrollpastend.js +46 -0
  136. data/public/codemirror/addon/scroll/simplescrollbars.css +66 -0
  137. data/public/codemirror/addon/scroll/simplescrollbars.js +147 -0
  138. data/public/codemirror/addon/search/match-highlighter.js +128 -0
  139. data/public/codemirror/addon/search/matchesonscrollbar.css +8 -0
  140. data/public/codemirror/addon/search/matchesonscrollbar.js +97 -0
  141. data/public/codemirror/addon/search/search.js +202 -0
  142. data/public/codemirror/addon/search/searchcursor.js +189 -0
  143. data/public/codemirror/addon/selection/active-line.js +71 -0
  144. data/public/codemirror/addon/selection/mark-selection.js +118 -0
  145. data/public/codemirror/addon/selection/selection-pointer.js +98 -0
  146. data/public/codemirror/addon/tern/tern.css +87 -0
  147. data/public/codemirror/addon/tern/tern.js +699 -0
  148. data/public/codemirror/addon/tern/worker.js +44 -0
  149. data/public/codemirror/addon/wrap/hardwrap.js +139 -0
  150. data/public/codemirror/bin/authors.sh +6 -0
  151. data/public/codemirror/bin/compress +92 -0
  152. data/public/codemirror/bin/lint +3 -0
  153. data/public/codemirror/bin/release +45 -0
  154. data/public/codemirror/bin/source-highlight +51 -0
  155. data/public/codemirror/bower.json +17 -0
  156. data/public/codemirror/demo/activeline.html +78 -0
  157. data/public/codemirror/demo/anywordhint.html +79 -0
  158. data/public/codemirror/demo/bidi.html +74 -0
  159. data/public/codemirror/demo/btree.html +85 -0
  160. data/public/codemirror/demo/buffers.html +109 -0
  161. data/public/codemirror/demo/changemode.html +58 -0
  162. data/public/codemirror/demo/closebrackets.html +52 -0
  163. data/public/codemirror/demo/closetag.html +41 -0
  164. data/public/codemirror/demo/complete.html +79 -0
  165. data/public/codemirror/demo/emacs.html +75 -0
  166. data/public/codemirror/demo/folding.html +95 -0
  167. data/public/codemirror/demo/fullscreen.html +83 -0
  168. data/public/codemirror/demo/hardwrap.html +72 -0
  169. data/public/codemirror/demo/html5complete.html +56 -0
  170. data/public/codemirror/demo/indentwrap.html +59 -0
  171. data/public/codemirror/demo/lint.html +171 -0
  172. data/public/codemirror/demo/loadmode.html +72 -0
  173. data/public/codemirror/demo/marker.html +52 -0
  174. data/public/codemirror/demo/markselection.html +52 -0
  175. data/public/codemirror/demo/matchhighlighter.html +47 -0
  176. data/public/codemirror/demo/matchtags.html +48 -0
  177. data/public/codemirror/demo/merge.html +122 -0
  178. data/public/codemirror/demo/multiplex.html +75 -0
  179. data/public/codemirror/demo/mustache.html +69 -0
  180. data/public/codemirror/demo/panel.html +136 -0
  181. data/public/codemirror/demo/placeholder.html +45 -0
  182. data/public/codemirror/demo/preview.html +87 -0
  183. data/public/codemirror/demo/requirejs.html +70 -0
  184. data/public/codemirror/demo/resize.html +51 -0
  185. data/public/codemirror/demo/rulers.html +49 -0
  186. data/public/codemirror/demo/runmode.html +62 -0
  187. data/public/codemirror/demo/search.html +95 -0
  188. data/public/codemirror/demo/simplemode.html +186 -0
  189. data/public/codemirror/demo/simplescrollbars.html +82 -0
  190. data/public/codemirror/demo/spanaffectswrapping_shim.html +85 -0
  191. data/public/codemirror/demo/sublime.html +76 -0
  192. data/public/codemirror/demo/tern.html +133 -0
  193. data/public/codemirror/demo/theme.html +152 -0
  194. data/public/codemirror/demo/trailingspace.html +48 -0
  195. data/public/codemirror/demo/variableheight.html +67 -0
  196. data/public/codemirror/demo/vim.html +104 -0
  197. data/public/codemirror/demo/visibletabs.html +62 -0
  198. data/public/codemirror/demo/widget.html +85 -0
  199. data/public/codemirror/demo/xmlcomplete.html +119 -0
  200. data/public/codemirror/doc/activebookmark.js +57 -0
  201. data/public/codemirror/doc/compress.html +329 -0
  202. data/public/codemirror/doc/docs.css +271 -0
  203. data/public/codemirror/doc/internals.html +503 -0
  204. data/public/codemirror/doc/logo.png +0 -0
  205. data/public/codemirror/doc/logo.svg +181 -0
  206. data/public/codemirror/doc/manual.html +3327 -0
  207. data/public/codemirror/doc/realworld.html +174 -0
  208. data/public/codemirror/doc/releases.html +1116 -0
  209. data/public/codemirror/doc/reporting.html +61 -0
  210. data/public/codemirror/doc/upgrade_v2.2.html +96 -0
  211. data/public/codemirror/doc/upgrade_v3.html +230 -0
  212. data/public/codemirror/doc/upgrade_v4.html +144 -0
  213. data/public/codemirror/doc/yinyang.png +0 -0
  214. data/public/codemirror/index.html +199 -0
  215. data/public/codemirror/keymap/emacs.js +412 -0
  216. data/public/codemirror/keymap/sublime.js +555 -0
  217. data/public/codemirror/keymap/vim.js +5060 -0
  218. data/public/codemirror/lib/codemirror.css +332 -0
  219. data/public/codemirror/lib/codemirror.js +8788 -0
  220. data/public/codemirror/mode/apl/apl.js +174 -0
  221. data/public/codemirror/mode/apl/index.html +72 -0
  222. data/public/codemirror/mode/asciiarmor/asciiarmor.js +73 -0
  223. data/public/codemirror/mode/asciiarmor/index.html +46 -0
  224. data/public/codemirror/mode/asn.1/asn.1.js +204 -0
  225. data/public/codemirror/mode/asn.1/index.html +78 -0
  226. data/public/codemirror/mode/asterisk/asterisk.js +196 -0
  227. data/public/codemirror/mode/asterisk/index.html +154 -0
  228. data/public/codemirror/mode/brainfuck/brainfuck.js +85 -0
  229. data/public/codemirror/mode/brainfuck/index.html +85 -0
  230. data/public/codemirror/mode/clike/clike.js +604 -0
  231. data/public/codemirror/mode/clike/index.html +252 -0
  232. data/public/codemirror/mode/clike/scala.html +767 -0
  233. data/public/codemirror/mode/clike/test.js +33 -0
  234. data/public/codemirror/mode/clojure/clojure.js +244 -0
  235. data/public/codemirror/mode/clojure/index.html +88 -0
  236. data/public/codemirror/mode/cmake/cmake.js +97 -0
  237. data/public/codemirror/mode/cmake/index.html +129 -0
  238. data/public/codemirror/mode/cobol/cobol.js +255 -0
  239. data/public/codemirror/mode/cobol/index.html +210 -0
  240. data/public/codemirror/mode/coffeescript/coffeescript.js +369 -0
  241. data/public/codemirror/mode/coffeescript/index.html +740 -0
  242. data/public/codemirror/mode/commonlisp/commonlisp.js +123 -0
  243. data/public/codemirror/mode/commonlisp/index.html +177 -0
  244. data/public/codemirror/mode/css/css.js +756 -0
  245. data/public/codemirror/mode/css/index.html +75 -0
  246. data/public/codemirror/mode/css/less.html +152 -0
  247. data/public/codemirror/mode/css/less_test.js +54 -0
  248. data/public/codemirror/mode/css/scss.html +157 -0
  249. data/public/codemirror/mode/css/scss_test.js +110 -0
  250. data/public/codemirror/mode/css/test.js +188 -0
  251. data/public/codemirror/mode/cypher/cypher.js +146 -0
  252. data/public/codemirror/mode/cypher/index.html +63 -0
  253. data/public/codemirror/mode/d/d.js +218 -0
  254. data/public/codemirror/mode/d/index.html +273 -0
  255. data/public/codemirror/mode/dart/dart.js +50 -0
  256. data/public/codemirror/mode/dart/index.html +71 -0
  257. data/public/codemirror/mode/diff/diff.js +47 -0
  258. data/public/codemirror/mode/diff/index.html +117 -0
  259. data/public/codemirror/mode/django/django.js +350 -0
  260. data/public/codemirror/mode/django/index.html +73 -0
  261. data/public/codemirror/mode/dockerfile/dockerfile.js +76 -0
  262. data/public/codemirror/mode/dockerfile/index.html +73 -0
  263. data/public/codemirror/mode/dtd/dtd.js +142 -0
  264. data/public/codemirror/mode/dtd/index.html +89 -0
  265. data/public/codemirror/mode/dylan/dylan.js +291 -0
  266. data/public/codemirror/mode/dylan/index.html +407 -0
  267. data/public/codemirror/mode/ebnf/ebnf.js +195 -0
  268. data/public/codemirror/mode/ebnf/index.html +102 -0
  269. data/public/codemirror/mode/ecl/ecl.js +206 -0
  270. data/public/codemirror/mode/ecl/index.html +52 -0
  271. data/public/codemirror/mode/eiffel/eiffel.js +160 -0
  272. data/public/codemirror/mode/eiffel/index.html +429 -0
  273. data/public/codemirror/mode/elm/elm.js +205 -0
  274. data/public/codemirror/mode/elm/index.html +61 -0
  275. data/public/codemirror/mode/erlang/erlang.js +618 -0
  276. data/public/codemirror/mode/erlang/index.html +76 -0
  277. data/public/codemirror/mode/factor/factor.js +83 -0
  278. data/public/codemirror/mode/factor/index.html +77 -0
  279. data/public/codemirror/mode/forth/forth.js +180 -0
  280. data/public/codemirror/mode/forth/index.html +75 -0
  281. data/public/codemirror/mode/fortran/fortran.js +188 -0
  282. data/public/codemirror/mode/fortran/index.html +81 -0
  283. data/public/codemirror/mode/gas/gas.js +345 -0
  284. data/public/codemirror/mode/gas/index.html +68 -0
  285. data/public/codemirror/mode/gfm/gfm.js +124 -0
  286. data/public/codemirror/mode/gfm/index.html +93 -0
  287. data/public/codemirror/mode/gfm/test.js +213 -0
  288. data/public/codemirror/mode/gherkin/gherkin.js +178 -0
  289. data/public/codemirror/mode/gherkin/index.html +48 -0
  290. data/public/codemirror/mode/go/go.js +185 -0
  291. data/public/codemirror/mode/go/index.html +85 -0
  292. data/public/codemirror/mode/groovy/groovy.js +230 -0
  293. data/public/codemirror/mode/groovy/index.html +84 -0
  294. data/public/codemirror/mode/haml/haml.js +159 -0
  295. data/public/codemirror/mode/haml/index.html +79 -0
  296. data/public/codemirror/mode/haml/test.js +97 -0
  297. data/public/codemirror/mode/handlebars/handlebars.js +53 -0
  298. data/public/codemirror/mode/handlebars/index.html +83 -0
  299. data/public/codemirror/mode/haskell/haskell.js +267 -0
  300. data/public/codemirror/mode/haskell/index.html +73 -0
  301. data/public/codemirror/mode/haxe/haxe.js +518 -0
  302. data/public/codemirror/mode/haxe/index.html +124 -0
  303. data/public/codemirror/mode/htmlembedded/htmlembedded.js +28 -0
  304. data/public/codemirror/mode/htmlembedded/index.html +59 -0
  305. data/public/codemirror/mode/htmlmixed/htmlmixed.js +121 -0
  306. data/public/codemirror/mode/htmlmixed/index.html +89 -0
  307. data/public/codemirror/mode/http/http.js +113 -0
  308. data/public/codemirror/mode/http/index.html +45 -0
  309. data/public/codemirror/mode/idl/idl.js +290 -0
  310. data/public/codemirror/mode/idl/index.html +64 -0
  311. data/public/codemirror/mode/index.html +149 -0
  312. data/public/codemirror/mode/jade/index.html +70 -0
  313. data/public/codemirror/mode/jade/jade.js +590 -0
  314. data/public/codemirror/mode/javascript/index.html +114 -0
  315. data/public/codemirror/mode/javascript/javascript.js +704 -0
  316. data/public/codemirror/mode/javascript/json-ld.html +72 -0
  317. data/public/codemirror/mode/javascript/test.js +205 -0
  318. data/public/codemirror/mode/javascript/typescript.html +61 -0
  319. data/public/codemirror/mode/jinja2/index.html +54 -0
  320. data/public/codemirror/mode/jinja2/jinja2.js +142 -0
  321. data/public/codemirror/mode/julia/index.html +195 -0
  322. data/public/codemirror/mode/julia/julia.js +299 -0
  323. data/public/codemirror/mode/kotlin/index.html +89 -0
  324. data/public/codemirror/mode/kotlin/kotlin.js +284 -0
  325. data/public/codemirror/mode/livescript/index.html +459 -0
  326. data/public/codemirror/mode/livescript/livescript.js +280 -0
  327. data/public/codemirror/mode/lua/index.html +85 -0
  328. data/public/codemirror/mode/lua/lua.js +159 -0
  329. data/public/codemirror/mode/markdown/index.html +359 -0
  330. data/public/codemirror/mode/markdown/markdown.js +781 -0
  331. data/public/codemirror/mode/markdown/test.js +792 -0
  332. data/public/codemirror/mode/mathematica/index.html +72 -0
  333. data/public/codemirror/mode/mathematica/mathematica.js +175 -0
  334. data/public/codemirror/mode/meta.js +190 -0
  335. data/public/codemirror/mode/mirc/index.html +160 -0
  336. data/public/codemirror/mode/mirc/mirc.js +193 -0
  337. data/public/codemirror/mode/mllike/index.html +179 -0
  338. data/public/codemirror/mode/mllike/mllike.js +205 -0
  339. data/public/codemirror/mode/modelica/index.html +67 -0
  340. data/public/codemirror/mode/modelica/modelica.js +245 -0
  341. data/public/codemirror/mode/mumps/index.html +85 -0
  342. data/public/codemirror/mode/mumps/mumps.js +148 -0
  343. data/public/codemirror/mode/nginx/index.html +181 -0
  344. data/public/codemirror/mode/nginx/nginx.js +178 -0
  345. data/public/codemirror/mode/ntriples/index.html +45 -0
  346. data/public/codemirror/mode/ntriples/ntriples.js +186 -0
  347. data/public/codemirror/mode/octave/index.html +83 -0
  348. data/public/codemirror/mode/octave/octave.js +135 -0
  349. data/public/codemirror/mode/pascal/index.html +61 -0
  350. data/public/codemirror/mode/pascal/pascal.js +109 -0
  351. data/public/codemirror/mode/pegjs/index.html +66 -0
  352. data/public/codemirror/mode/pegjs/pegjs.js +114 -0
  353. data/public/codemirror/mode/perl/index.html +75 -0
  354. data/public/codemirror/mode/perl/perl.js +837 -0
  355. data/public/codemirror/mode/php/index.html +64 -0
  356. data/public/codemirror/mode/php/php.js +230 -0
  357. data/public/codemirror/mode/php/test.js +154 -0
  358. data/public/codemirror/mode/pig/index.html +55 -0
  359. data/public/codemirror/mode/pig/pig.js +178 -0
  360. data/public/codemirror/mode/properties/index.html +53 -0
  361. data/public/codemirror/mode/properties/properties.js +78 -0
  362. data/public/codemirror/mode/puppet/index.html +121 -0
  363. data/public/codemirror/mode/puppet/puppet.js +220 -0
  364. data/public/codemirror/mode/python/index.html +198 -0
  365. data/public/codemirror/mode/python/python.js +358 -0
  366. data/public/codemirror/mode/q/index.html +144 -0
  367. data/public/codemirror/mode/q/q.js +139 -0
  368. data/public/codemirror/mode/r/index.html +85 -0
  369. data/public/codemirror/mode/r/r.js +162 -0
  370. data/public/codemirror/mode/rpm/changes/index.html +66 -0
  371. data/public/codemirror/mode/rpm/index.html +149 -0
  372. data/public/codemirror/mode/rpm/rpm.js +101 -0
  373. data/public/codemirror/mode/rst/index.html +535 -0
  374. data/public/codemirror/mode/rst/rst.js +557 -0
  375. data/public/codemirror/mode/ruby/index.html +183 -0
  376. data/public/codemirror/mode/ruby/ruby.js +285 -0
  377. data/public/codemirror/mode/ruby/test.js +14 -0
  378. data/public/codemirror/mode/rust/index.html +60 -0
  379. data/public/codemirror/mode/rust/rust.js +451 -0
  380. data/public/codemirror/mode/sass/index.html +66 -0
  381. data/public/codemirror/mode/sass/sass.js +414 -0
  382. data/public/codemirror/mode/scheme/index.html +77 -0
  383. data/public/codemirror/mode/scheme/scheme.js +249 -0
  384. data/public/codemirror/mode/shell/index.html +66 -0
  385. data/public/codemirror/mode/shell/shell.js +139 -0
  386. data/public/codemirror/mode/shell/test.js +58 -0
  387. data/public/codemirror/mode/sieve/index.html +93 -0
  388. data/public/codemirror/mode/sieve/sieve.js +193 -0
  389. data/public/codemirror/mode/slim/index.html +96 -0
  390. data/public/codemirror/mode/slim/slim.js +575 -0
  391. data/public/codemirror/mode/slim/test.js +96 -0
  392. data/public/codemirror/mode/smalltalk/index.html +68 -0
  393. data/public/codemirror/mode/smalltalk/smalltalk.js +168 -0
  394. data/public/codemirror/mode/smarty/index.html +138 -0
  395. data/public/codemirror/mode/smarty/smarty.js +225 -0
  396. data/public/codemirror/mode/solr/index.html +57 -0
  397. data/public/codemirror/mode/solr/solr.js +104 -0
  398. data/public/codemirror/mode/soy/index.html +68 -0
  399. data/public/codemirror/mode/soy/soy.js +198 -0
  400. data/public/codemirror/mode/sparql/index.html +61 -0
  401. data/public/codemirror/mode/sparql/sparql.js +174 -0
  402. data/public/codemirror/mode/spreadsheet/index.html +42 -0
  403. data/public/codemirror/mode/spreadsheet/spreadsheet.js +109 -0
  404. data/public/codemirror/mode/sql/index.html +84 -0
  405. data/public/codemirror/mode/sql/sql.js +391 -0
  406. data/public/codemirror/mode/stex/index.html +110 -0
  407. data/public/codemirror/mode/stex/stex.js +251 -0
  408. data/public/codemirror/mode/stex/test.js +123 -0
  409. data/public/codemirror/mode/stylus/index.html +106 -0
  410. data/public/codemirror/mode/stylus/stylus.js +768 -0
  411. data/public/codemirror/mode/swift/index.html +88 -0
  412. data/public/codemirror/mode/swift/swift.js +203 -0
  413. data/public/codemirror/mode/tcl/index.html +142 -0
  414. data/public/codemirror/mode/tcl/tcl.js +147 -0
  415. data/public/codemirror/mode/textile/index.html +191 -0
  416. data/public/codemirror/mode/textile/test.js +417 -0
  417. data/public/codemirror/mode/textile/textile.js +469 -0
  418. data/public/codemirror/mode/tiddlywiki/index.html +154 -0
  419. data/public/codemirror/mode/tiddlywiki/tiddlywiki.css +14 -0
  420. data/public/codemirror/mode/tiddlywiki/tiddlywiki.js +358 -0
  421. data/public/codemirror/mode/tiki/index.html +95 -0
  422. data/public/codemirror/mode/tiki/tiki.css +26 -0
  423. data/public/codemirror/mode/tiki/tiki.js +312 -0
  424. data/public/codemirror/mode/toml/index.html +73 -0
  425. data/public/codemirror/mode/toml/toml.js +88 -0
  426. data/public/codemirror/mode/tornado/index.html +63 -0
  427. data/public/codemirror/mode/tornado/tornado.js +68 -0
  428. data/public/codemirror/mode/troff/index.html +146 -0
  429. data/public/codemirror/mode/troff/troff.js +82 -0
  430. data/public/codemirror/mode/ttcn-cfg/index.html +115 -0
  431. data/public/codemirror/mode/ttcn-cfg/ttcn-cfg.js +214 -0
  432. data/public/codemirror/mode/ttcn/index.html +118 -0
  433. data/public/codemirror/mode/ttcn/ttcn.js +283 -0
  434. data/public/codemirror/mode/turtle/index.html +50 -0
  435. data/public/codemirror/mode/turtle/turtle.js +162 -0
  436. data/public/codemirror/mode/twig/index.html +45 -0
  437. data/public/codemirror/mode/twig/twig.js +132 -0
  438. data/public/codemirror/mode/vb/index.html +102 -0
  439. data/public/codemirror/mode/vb/vb.js +276 -0
  440. data/public/codemirror/mode/vbscript/index.html +55 -0
  441. data/public/codemirror/mode/vbscript/vbscript.js +350 -0
  442. data/public/codemirror/mode/velocity/index.html +118 -0
  443. data/public/codemirror/mode/velocity/velocity.js +201 -0
  444. data/public/codemirror/mode/verilog/index.html +120 -0
  445. data/public/codemirror/mode/verilog/test.js +273 -0
  446. data/public/codemirror/mode/verilog/verilog.js +537 -0
  447. data/public/codemirror/mode/vhdl/index.html +95 -0
  448. data/public/codemirror/mode/vhdl/vhdl.js +189 -0
  449. data/public/codemirror/mode/xml/index.html +57 -0
  450. data/public/codemirror/mode/xml/test.js +51 -0
  451. data/public/codemirror/mode/xml/xml.js +385 -0
  452. data/public/codemirror/mode/xquery/index.html +210 -0
  453. data/public/codemirror/mode/xquery/test.js +67 -0
  454. data/public/codemirror/mode/xquery/xquery.js +437 -0
  455. data/public/codemirror/mode/yaml/index.html +80 -0
  456. data/public/codemirror/mode/yaml/yaml.js +117 -0
  457. data/public/codemirror/mode/z80/index.html +53 -0
  458. data/public/codemirror/mode/z80/z80.js +116 -0
  459. data/public/codemirror/package.json +20 -0
  460. data/public/codemirror/test/comment_test.js +100 -0
  461. data/public/codemirror/test/doc_test.js +371 -0
  462. data/public/codemirror/test/driver.js +138 -0
  463. data/public/codemirror/test/emacs_test.js +147 -0
  464. data/public/codemirror/test/index.html +241 -0
  465. data/public/codemirror/test/lint.js +11 -0
  466. data/public/codemirror/test/mode_test.css +23 -0
  467. data/public/codemirror/test/mode_test.js +192 -0
  468. data/public/codemirror/test/multi_test.js +285 -0
  469. data/public/codemirror/test/phantom_driver.js +31 -0
  470. data/public/codemirror/test/run.js +31 -0
  471. data/public/codemirror/test/scroll_test.js +115 -0
  472. data/public/codemirror/test/search_test.js +62 -0
  473. data/public/codemirror/test/sql-hint-test.js +189 -0
  474. data/public/codemirror/test/sublime_test.js +303 -0
  475. data/public/codemirror/test/test.js +2142 -0
  476. data/public/codemirror/test/vim_test.js +3955 -0
  477. data/public/codemirror/theme/3024-day.css +41 -0
  478. data/public/codemirror/theme/3024-night.css +39 -0
  479. data/public/codemirror/theme/ambiance-mobile.css +5 -0
  480. data/public/codemirror/theme/ambiance.css +76 -0
  481. data/public/codemirror/theme/base16-dark.css +38 -0
  482. data/public/codemirror/theme/base16-light.css +38 -0
  483. data/public/codemirror/theme/blackboard.css +32 -0
  484. data/public/codemirror/theme/cobalt.css +25 -0
  485. data/public/codemirror/theme/colorforth.css +33 -0
  486. data/public/codemirror/theme/dracula.css +87 -0
  487. data/public/codemirror/theme/eclipse.css +23 -0
  488. data/public/codemirror/theme/elegant.css +13 -0
  489. data/public/codemirror/theme/erlang-dark.css +34 -0
  490. data/public/codemirror/theme/icecoder.css +42 -0
  491. data/public/codemirror/theme/lesser-dark.css +47 -0
  492. data/public/codemirror/theme/lines.css +109 -0
  493. data/public/codemirror/theme/liquibyte.css +95 -0
  494. data/public/codemirror/theme/material.css +105 -0
  495. data/public/codemirror/theme/mbo.css +37 -0
  496. data/public/codemirror/theme/mdn-like.css +46 -0
  497. data/public/codemirror/theme/midnight.css +47 -0
  498. data/public/codemirror/theme/monokai.css +35 -0
  499. data/public/codemirror/theme/neat.css +12 -0
  500. data/public/codemirror/theme/neo.css +43 -0
  501. data/public/codemirror/theme/night.css +28 -0
  502. data/public/codemirror/theme/paraiso-dark.css +38 -0
  503. data/public/codemirror/theme/paraiso-light.css +38 -0
  504. data/public/codemirror/theme/pastel-on-dark.css +53 -0
  505. data/public/codemirror/theme/rubyblue.css +25 -0
  506. data/public/codemirror/theme/seti.css +88 -0
  507. data/public/codemirror/theme/solarized.css +165 -0
  508. data/public/codemirror/theme/the-matrix.css +30 -0
  509. data/public/codemirror/theme/tomorrow-night-bright.css +35 -0
  510. data/public/codemirror/theme/tomorrow-night-eighties.css +38 -0
  511. data/public/codemirror/theme/ttcn.css +65 -0
  512. data/public/codemirror/theme/twilight.css +32 -0
  513. data/public/codemirror/theme/vibrant-ink.css +34 -0
  514. data/public/codemirror/theme/xq-dark.css +53 -0
  515. data/public/codemirror/theme/xq-light.css +43 -0
  516. data/public/codemirror/theme/yeti.css +86 -0
  517. data/public/codemirror/theme/zenburn.css +37 -0
  518. data/public/fira-mono/FiraMono-Bold.eot +0 -0
  519. data/public/fira-mono/FiraMono-Bold.otf +0 -0
  520. data/public/fira-mono/FiraMono-Bold.ttf +0 -0
  521. data/public/fira-mono/FiraMono-Bold.woff +0 -0
  522. data/public/fira-mono/FiraMono-Medium.eot +0 -0
  523. data/public/fira-mono/FiraMono-Medium.otf +0 -0
  524. data/public/fira-mono/FiraMono-Medium.ttf +0 -0
  525. data/public/fira-mono/FiraMono-Medium.woff +0 -0
  526. data/public/fira-mono/FiraMono-Regular.eot +0 -0
  527. data/public/fira-mono/FiraMono-Regular.otf +0 -0
  528. data/public/fira-mono/FiraMono-Regular.ttf +0 -0
  529. data/public/fira-mono/FiraMono-Regular.woff +0 -0
  530. data/public/fira-mono/fira-mono.css +32 -0
  531. data/public/heroes/lines_default_01.png +0 -0
  532. data/public/heroes/lines_default_02.png +0 -0
  533. data/public/heroes/lines_default_03.png +0 -0
  534. data/public/iconfont/iconfont.css +48 -0
  535. data/public/iconfont/iconfont.eot +0 -0
  536. data/public/iconfont/iconfont.svg +18 -0
  537. data/public/iconfont/iconfont.ttf +0 -0
  538. data/public/iconfont/iconfont.woff +0 -0
  539. data/spec/dummy/config/environments/test.rb +3 -1
  540. data/spec/dummy/db/migrate/20140505122014_base_migration.rb +84 -0
  541. data/spec/dummy/db/migrate/20140702160602_acts_as_taggable_on_migration.acts_as_taggable_on_engine.rb +31 -0
  542. data/spec/dummy/db/migrate/20140702160603_add_missing_unique_indices.acts_as_taggable_on_engine.rb +20 -0
  543. data/spec/dummy/db/migrate/20140702160604_add_taggings_counter_cache_to_tags.acts_as_taggable_on_engine.rb +15 -0
  544. data/spec/dummy/db/migrate/20141027143656_add_teaser_to_article.rb +5 -0
  545. data/spec/dummy/db/migrate/20150421093311_add_reset_password_fields_to_users.rb +6 -0
  546. data/spec/dummy/db/schema.rb +50 -50
  547. data/spec/dummy/db/seeds.rb +5 -5
  548. data/spec/factories/users.rb +1 -1
  549. data/spec/features/article_spec.rb +4 -4
  550. data/spec/features/password_reset_spec.rb +17 -17
  551. data/spec/features/user_logs_in_spec.rb +6 -8
  552. data/spec/mailers/lines/user_mailer_spec.rb +1 -1
  553. data/spec/models/article_spec.rb +6 -6
  554. data/spec/support/auth_macros.rb +2 -2
  555. metadata +492 -26
  556. metadata.gz.sig +0 -0
  557. data/app/assets/images/ic_gplus.png +0 -0
  558. data/app/assets/images/ic_gplus_hover.png +0 -0
  559. data/app/assets/images/logo.png +0 -0
  560. data/app/assets/images/logo_opoloo.png +0 -0
  561. data/app/assets/images/signet.png +0 -0
  562. data/app/assets/javascripts/lines/admin.js +0 -201
  563. data/app/assets/stylesheets/lines/admin.scss +0 -970
  564. data/app/views/layouts/lines/_messages.html.erb +0 -8
  565. data/app/views/lines/admin/articles/_formatting_guide.html.erb +0 -89
  566. data/public/heroes/001.jpg +0 -0
  567. data/public/heroes/001_dark.jpg +0 -0
  568. data/public/heroes/002.jpg +0 -0
  569. data/public/heroes/002_dark.jpg +0 -0
  570. data/public/heroes/003.jpg +0 -0
  571. data/public/heroes/003_dark.jpg +0 -0
  572. data/spec/dummy/config/lines_config.yml +0 -58
@@ -0,0 +1,129 @@
1
+ <!doctype html>
2
+
3
+ <title>CodeMirror: CMake 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="../../addon/edit/matchbrackets.js"></script>
10
+ <script src="cmake.js"></script>
11
+ <style>
12
+ .CodeMirror {border-top: 1px solid black; border-bottom: 1px solid black;}
13
+ .cm-s-default span.cm-arrow { color: red; }
14
+ </style>
15
+ <div id=nav>
16
+ <a href="http://codemirror.net"><h1>CodeMirror</h1><img id=logo src="../../doc/logo.png"></a>
17
+
18
+ <ul>
19
+ <li><a href="../../index.html">Home</a>
20
+ <li><a href="../../doc/manual.html">Manual</a>
21
+ <li><a href="https://github.com/codemirror/codemirror">Code</a>
22
+ </ul>
23
+ <ul>
24
+ <li><a href="../index.html">Language modes</a>
25
+ <li><a class=active href="#">CMake</a>
26
+ </ul>
27
+ </div>
28
+
29
+ <article>
30
+ <h2>CMake mode</h2>
31
+ <form><textarea id="code" name="code">
32
+ # vim: syntax=cmake
33
+ if(NOT CMAKE_BUILD_TYPE)
34
+ # default to Release build for GCC builds
35
+ set(CMAKE_BUILD_TYPE Release CACHE STRING
36
+ "Choose the type of build, options are: None(CMAKE_CXX_FLAGS or CMAKE_C_FLAGS used) Debug Release RelWithDebInfo MinSizeRel."
37
+ FORCE)
38
+ endif()
39
+ message(STATUS "cmake version ${CMAKE_VERSION}")
40
+ if(POLICY CMP0025)
41
+ cmake_policy(SET CMP0025 OLD) # report Apple's Clang as just Clang
42
+ endif()
43
+ if(POLICY CMP0042)
44
+ cmake_policy(SET CMP0042 NEW) # MACOSX_RPATH
45
+ endif()
46
+
47
+ project (x265)
48
+ cmake_minimum_required (VERSION 2.8.8) # OBJECT libraries require 2.8.8
49
+ include(CheckIncludeFiles)
50
+ include(CheckFunctionExists)
51
+ include(CheckSymbolExists)
52
+ include(CheckCXXCompilerFlag)
53
+
54
+ # X265_BUILD must be incremented each time the public API is changed
55
+ set(X265_BUILD 48)
56
+ configure_file("${PROJECT_SOURCE_DIR}/x265.def.in"
57
+ "${PROJECT_BINARY_DIR}/x265.def")
58
+ configure_file("${PROJECT_SOURCE_DIR}/x265_config.h.in"
59
+ "${PROJECT_BINARY_DIR}/x265_config.h")
60
+
61
+ SET(CMAKE_MODULE_PATH "${PROJECT_SOURCE_DIR}/cmake" "${CMAKE_MODULE_PATH}")
62
+
63
+ # System architecture detection
64
+ string(TOLOWER "${CMAKE_SYSTEM_PROCESSOR}" SYSPROC)
65
+ set(X86_ALIASES x86 i386 i686 x86_64 amd64)
66
+ list(FIND X86_ALIASES "${SYSPROC}" X86MATCH)
67
+ if("${SYSPROC}" STREQUAL "" OR X86MATCH GREATER "-1")
68
+ message(STATUS "Detected x86 target processor")
69
+ set(X86 1)
70
+ add_definitions(-DX265_ARCH_X86=1)
71
+ if("${CMAKE_SIZEOF_VOID_P}" MATCHES 8)
72
+ set(X64 1)
73
+ add_definitions(-DX86_64=1)
74
+ endif()
75
+ elseif(${SYSPROC} STREQUAL "armv6l")
76
+ message(STATUS "Detected ARM target processor")
77
+ set(ARM 1)
78
+ add_definitions(-DX265_ARCH_ARM=1 -DHAVE_ARMV6=1)
79
+ else()
80
+ message(STATUS "CMAKE_SYSTEM_PROCESSOR value `${CMAKE_SYSTEM_PROCESSOR}` is unknown")
81
+ message(STATUS "Please add this value near ${CMAKE_CURRENT_LIST_FILE}:${CMAKE_CURRENT_LIST_LINE}")
82
+ endif()
83
+
84
+ if(UNIX)
85
+ list(APPEND PLATFORM_LIBS pthread)
86
+ find_library(LIBRT rt)
87
+ if(LIBRT)
88
+ list(APPEND PLATFORM_LIBS rt)
89
+ endif()
90
+ find_package(Numa)
91
+ if(NUMA_FOUND)
92
+ list(APPEND CMAKE_REQUIRED_LIBRARIES ${NUMA_LIBRARY})
93
+ check_symbol_exists(numa_node_of_cpu numa.h NUMA_V2)
94
+ if(NUMA_V2)
95
+ add_definitions(-DHAVE_LIBNUMA)
96
+ message(STATUS "libnuma found, building with support for NUMA nodes")
97
+ list(APPEND PLATFORM_LIBS ${NUMA_LIBRARY})
98
+ link_directories(${NUMA_LIBRARY_DIR})
99
+ include_directories(${NUMA_INCLUDE_DIR})
100
+ endif()
101
+ endif()
102
+ mark_as_advanced(LIBRT NUMA_FOUND)
103
+ endif(UNIX)
104
+
105
+ if(X64 AND NOT WIN32)
106
+ option(ENABLE_PIC "Enable Position Independent Code" ON)
107
+ else()
108
+ option(ENABLE_PIC "Enable Position Independent Code" OFF)
109
+ endif(X64 AND NOT WIN32)
110
+
111
+ # Compiler detection
112
+ if(CMAKE_GENERATOR STREQUAL "Xcode")
113
+ set(XCODE 1)
114
+ endif()
115
+ if (APPLE)
116
+ add_definitions(-DMACOS)
117
+ endif()
118
+ </textarea></form>
119
+ <script>
120
+ var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
121
+ mode: "text/x-cmake",
122
+ matchBrackets: true,
123
+ indentUnit: 4
124
+ });
125
+ </script>
126
+
127
+ <p><strong>MIME types defined:</strong> <code>text/x-cmake</code>.</p>
128
+
129
+ </article>
@@ -0,0 +1,255 @@
1
+ // CodeMirror, copyright (c) by Marijn Haverbeke and others
2
+ // Distributed under an MIT license: http://codemirror.net/LICENSE
3
+
4
+ /**
5
+ * Author: Gautam Mehta
6
+ * Branched from CodeMirror's Scheme mode
7
+ */
8
+ (function(mod) {
9
+ if (typeof exports == "object" && typeof module == "object") // CommonJS
10
+ mod(require("../../lib/codemirror"));
11
+ else if (typeof define == "function" && define.amd) // AMD
12
+ define(["../../lib/codemirror"], mod);
13
+ else // Plain browser env
14
+ mod(CodeMirror);
15
+ })(function(CodeMirror) {
16
+ "use strict";
17
+
18
+ CodeMirror.defineMode("cobol", function () {
19
+ var BUILTIN = "builtin", COMMENT = "comment", STRING = "string",
20
+ ATOM = "atom", NUMBER = "number", KEYWORD = "keyword", MODTAG = "header",
21
+ COBOLLINENUM = "def", PERIOD = "link";
22
+ function makeKeywords(str) {
23
+ var obj = {}, words = str.split(" ");
24
+ for (var i = 0; i < words.length; ++i) obj[words[i]] = true;
25
+ return obj;
26
+ }
27
+ var atoms = makeKeywords("TRUE FALSE ZEROES ZEROS ZERO SPACES SPACE LOW-VALUE LOW-VALUES ");
28
+ var keywords = makeKeywords(
29
+ "ACCEPT ACCESS ACQUIRE ADD ADDRESS " +
30
+ "ADVANCING AFTER ALIAS ALL ALPHABET " +
31
+ "ALPHABETIC ALPHABETIC-LOWER ALPHABETIC-UPPER ALPHANUMERIC ALPHANUMERIC-EDITED " +
32
+ "ALSO ALTER ALTERNATE AND ANY " +
33
+ "ARE AREA AREAS ARITHMETIC ASCENDING " +
34
+ "ASSIGN AT ATTRIBUTE AUTHOR AUTO " +
35
+ "AUTO-SKIP AUTOMATIC B-AND B-EXOR B-LESS " +
36
+ "B-NOT B-OR BACKGROUND-COLOR BACKGROUND-COLOUR BEEP " +
37
+ "BEFORE BELL BINARY BIT BITS " +
38
+ "BLANK BLINK BLOCK BOOLEAN BOTTOM " +
39
+ "BY CALL CANCEL CD CF " +
40
+ "CH CHARACTER CHARACTERS CLASS CLOCK-UNITS " +
41
+ "CLOSE COBOL CODE CODE-SET COL " +
42
+ "COLLATING COLUMN COMMA COMMIT COMMITMENT " +
43
+ "COMMON COMMUNICATION COMP COMP-0 COMP-1 " +
44
+ "COMP-2 COMP-3 COMP-4 COMP-5 COMP-6 " +
45
+ "COMP-7 COMP-8 COMP-9 COMPUTATIONAL COMPUTATIONAL-0 " +
46
+ "COMPUTATIONAL-1 COMPUTATIONAL-2 COMPUTATIONAL-3 COMPUTATIONAL-4 COMPUTATIONAL-5 " +
47
+ "COMPUTATIONAL-6 COMPUTATIONAL-7 COMPUTATIONAL-8 COMPUTATIONAL-9 COMPUTE " +
48
+ "CONFIGURATION CONNECT CONSOLE CONTAINED CONTAINS " +
49
+ "CONTENT CONTINUE CONTROL CONTROL-AREA CONTROLS " +
50
+ "CONVERTING COPY CORR CORRESPONDING COUNT " +
51
+ "CRT CRT-UNDER CURRENCY CURRENT CURSOR " +
52
+ "DATA DATE DATE-COMPILED DATE-WRITTEN DAY " +
53
+ "DAY-OF-WEEK DB DB-ACCESS-CONTROL-KEY DB-DATA-NAME DB-EXCEPTION " +
54
+ "DB-FORMAT-NAME DB-RECORD-NAME DB-SET-NAME DB-STATUS DBCS " +
55
+ "DBCS-EDITED DE DEBUG-CONTENTS DEBUG-ITEM DEBUG-LINE " +
56
+ "DEBUG-NAME DEBUG-SUB-1 DEBUG-SUB-2 DEBUG-SUB-3 DEBUGGING " +
57
+ "DECIMAL-POINT DECLARATIVES DEFAULT DELETE DELIMITED " +
58
+ "DELIMITER DEPENDING DESCENDING DESCRIBED DESTINATION " +
59
+ "DETAIL DISABLE DISCONNECT DISPLAY DISPLAY-1 " +
60
+ "DISPLAY-2 DISPLAY-3 DISPLAY-4 DISPLAY-5 DISPLAY-6 " +
61
+ "DISPLAY-7 DISPLAY-8 DISPLAY-9 DIVIDE DIVISION " +
62
+ "DOWN DROP DUPLICATE DUPLICATES DYNAMIC " +
63
+ "EBCDIC EGI EJECT ELSE EMI " +
64
+ "EMPTY EMPTY-CHECK ENABLE END END. END-ACCEPT END-ACCEPT. " +
65
+ "END-ADD END-CALL END-COMPUTE END-DELETE END-DISPLAY " +
66
+ "END-DIVIDE END-EVALUATE END-IF END-INVOKE END-MULTIPLY " +
67
+ "END-OF-PAGE END-PERFORM END-READ END-RECEIVE END-RETURN " +
68
+ "END-REWRITE END-SEARCH END-START END-STRING END-SUBTRACT " +
69
+ "END-UNSTRING END-WRITE END-XML ENTER ENTRY " +
70
+ "ENVIRONMENT EOP EQUAL EQUALS ERASE " +
71
+ "ERROR ESI EVALUATE EVERY EXCEEDS " +
72
+ "EXCEPTION EXCLUSIVE EXIT EXTEND EXTERNAL " +
73
+ "EXTERNALLY-DESCRIBED-KEY FD FETCH FILE FILE-CONTROL " +
74
+ "FILE-STREAM FILES FILLER FINAL FIND " +
75
+ "FINISH FIRST FOOTING FOR FOREGROUND-COLOR " +
76
+ "FOREGROUND-COLOUR FORMAT FREE FROM FULL " +
77
+ "FUNCTION GENERATE GET GIVING GLOBAL " +
78
+ "GO GOBACK GREATER GROUP HEADING " +
79
+ "HIGH-VALUE HIGH-VALUES HIGHLIGHT I-O I-O-CONTROL " +
80
+ "ID IDENTIFICATION IF IN INDEX " +
81
+ "INDEX-1 INDEX-2 INDEX-3 INDEX-4 INDEX-5 " +
82
+ "INDEX-6 INDEX-7 INDEX-8 INDEX-9 INDEXED " +
83
+ "INDIC INDICATE INDICATOR INDICATORS INITIAL " +
84
+ "INITIALIZE INITIATE INPUT INPUT-OUTPUT INSPECT " +
85
+ "INSTALLATION INTO INVALID INVOKE IS " +
86
+ "JUST JUSTIFIED KANJI KEEP KEY " +
87
+ "LABEL LAST LD LEADING LEFT " +
88
+ "LEFT-JUSTIFY LENGTH LENGTH-CHECK LESS LIBRARY " +
89
+ "LIKE LIMIT LIMITS LINAGE LINAGE-COUNTER " +
90
+ "LINE LINE-COUNTER LINES LINKAGE LOCAL-STORAGE " +
91
+ "LOCALE LOCALLY LOCK " +
92
+ "MEMBER MEMORY MERGE MESSAGE METACLASS " +
93
+ "MODE MODIFIED MODIFY MODULES MOVE " +
94
+ "MULTIPLE MULTIPLY NATIONAL NATIVE NEGATIVE " +
95
+ "NEXT NO NO-ECHO NONE NOT " +
96
+ "NULL NULL-KEY-MAP NULL-MAP NULLS NUMBER " +
97
+ "NUMERIC NUMERIC-EDITED OBJECT OBJECT-COMPUTER OCCURS " +
98
+ "OF OFF OMITTED ON ONLY " +
99
+ "OPEN OPTIONAL OR ORDER ORGANIZATION " +
100
+ "OTHER OUTPUT OVERFLOW OWNER PACKED-DECIMAL " +
101
+ "PADDING PAGE PAGE-COUNTER PARSE PERFORM " +
102
+ "PF PH PIC PICTURE PLUS " +
103
+ "POINTER POSITION POSITIVE PREFIX PRESENT " +
104
+ "PRINTING PRIOR PROCEDURE PROCEDURE-POINTER PROCEDURES " +
105
+ "PROCEED PROCESS PROCESSING PROGRAM PROGRAM-ID " +
106
+ "PROMPT PROTECTED PURGE QUEUE QUOTE " +
107
+ "QUOTES RANDOM RD READ READY " +
108
+ "REALM RECEIVE RECONNECT RECORD RECORD-NAME " +
109
+ "RECORDS RECURSIVE REDEFINES REEL REFERENCE " +
110
+ "REFERENCE-MONITOR REFERENCES RELATION RELATIVE RELEASE " +
111
+ "REMAINDER REMOVAL RENAMES REPEATED REPLACE " +
112
+ "REPLACING REPORT REPORTING REPORTS REPOSITORY " +
113
+ "REQUIRED RERUN RESERVE RESET RETAINING " +
114
+ "RETRIEVAL RETURN RETURN-CODE RETURNING REVERSE-VIDEO " +
115
+ "REVERSED REWIND REWRITE RF RH " +
116
+ "RIGHT RIGHT-JUSTIFY ROLLBACK ROLLING ROUNDED " +
117
+ "RUN SAME SCREEN SD SEARCH " +
118
+ "SECTION SECURE SECURITY SEGMENT SEGMENT-LIMIT " +
119
+ "SELECT SEND SENTENCE SEPARATE SEQUENCE " +
120
+ "SEQUENTIAL SET SHARED SIGN SIZE " +
121
+ "SKIP1 SKIP2 SKIP3 SORT SORT-MERGE " +
122
+ "SORT-RETURN SOURCE SOURCE-COMPUTER SPACE-FILL " +
123
+ "SPECIAL-NAMES STANDARD STANDARD-1 STANDARD-2 " +
124
+ "START STARTING STATUS STOP STORE " +
125
+ "STRING SUB-QUEUE-1 SUB-QUEUE-2 SUB-QUEUE-3 SUB-SCHEMA " +
126
+ "SUBFILE SUBSTITUTE SUBTRACT SUM SUPPRESS " +
127
+ "SYMBOLIC SYNC SYNCHRONIZED SYSIN SYSOUT " +
128
+ "TABLE TALLYING TAPE TENANT TERMINAL " +
129
+ "TERMINATE TEST TEXT THAN THEN " +
130
+ "THROUGH THRU TIME TIMES TITLE " +
131
+ "TO TOP TRAILING TRAILING-SIGN TRANSACTION " +
132
+ "TYPE TYPEDEF UNDERLINE UNEQUAL UNIT " +
133
+ "UNSTRING UNTIL UP UPDATE UPON " +
134
+ "USAGE USAGE-MODE USE USING VALID " +
135
+ "VALIDATE VALUE VALUES VARYING VLR " +
136
+ "WAIT WHEN WHEN-COMPILED WITH WITHIN " +
137
+ "WORDS WORKING-STORAGE WRITE XML XML-CODE " +
138
+ "XML-EVENT XML-NTEXT XML-TEXT ZERO ZERO-FILL " );
139
+
140
+ var builtins = makeKeywords("- * ** / + < <= = > >= ");
141
+ var tests = {
142
+ digit: /\d/,
143
+ digit_or_colon: /[\d:]/,
144
+ hex: /[0-9a-f]/i,
145
+ sign: /[+-]/,
146
+ exponent: /e/i,
147
+ keyword_char: /[^\s\(\[\;\)\]]/,
148
+ symbol: /[\w*+\-]/
149
+ };
150
+ function isNumber(ch, stream){
151
+ // hex
152
+ if ( ch === '0' && stream.eat(/x/i) ) {
153
+ stream.eatWhile(tests.hex);
154
+ return true;
155
+ }
156
+ // leading sign
157
+ if ( ( ch == '+' || ch == '-' ) && ( tests.digit.test(stream.peek()) ) ) {
158
+ stream.eat(tests.sign);
159
+ ch = stream.next();
160
+ }
161
+ if ( tests.digit.test(ch) ) {
162
+ stream.eat(ch);
163
+ stream.eatWhile(tests.digit);
164
+ if ( '.' == stream.peek()) {
165
+ stream.eat('.');
166
+ stream.eatWhile(tests.digit);
167
+ }
168
+ if ( stream.eat(tests.exponent) ) {
169
+ stream.eat(tests.sign);
170
+ stream.eatWhile(tests.digit);
171
+ }
172
+ return true;
173
+ }
174
+ return false;
175
+ }
176
+ return {
177
+ startState: function () {
178
+ return {
179
+ indentStack: null,
180
+ indentation: 0,
181
+ mode: false
182
+ };
183
+ },
184
+ token: function (stream, state) {
185
+ if (state.indentStack == null && stream.sol()) {
186
+ // update indentation, but only if indentStack is empty
187
+ state.indentation = 6 ; //stream.indentation();
188
+ }
189
+ // skip spaces
190
+ if (stream.eatSpace()) {
191
+ return null;
192
+ }
193
+ var returnType = null;
194
+ switch(state.mode){
195
+ case "string": // multi-line string parsing mode
196
+ var next = false;
197
+ while ((next = stream.next()) != null) {
198
+ if (next == "\"" || next == "\'") {
199
+ state.mode = false;
200
+ break;
201
+ }
202
+ }
203
+ returnType = STRING; // continue on in string mode
204
+ break;
205
+ default: // default parsing mode
206
+ var ch = stream.next();
207
+ var col = stream.column();
208
+ if (col >= 0 && col <= 5) {
209
+ returnType = COBOLLINENUM;
210
+ } else if (col >= 72 && col <= 79) {
211
+ stream.skipToEnd();
212
+ returnType = MODTAG;
213
+ } else if (ch == "*" && col == 6) { // comment
214
+ stream.skipToEnd(); // rest of the line is a comment
215
+ returnType = COMMENT;
216
+ } else if (ch == "\"" || ch == "\'") {
217
+ state.mode = "string";
218
+ returnType = STRING;
219
+ } else if (ch == "'" && !( tests.digit_or_colon.test(stream.peek()) )) {
220
+ returnType = ATOM;
221
+ } else if (ch == ".") {
222
+ returnType = PERIOD;
223
+ } else if (isNumber(ch,stream)){
224
+ returnType = NUMBER;
225
+ } else {
226
+ if (stream.current().match(tests.symbol)) {
227
+ while (col < 71) {
228
+ if (stream.eat(tests.symbol) === undefined) {
229
+ break;
230
+ } else {
231
+ col++;
232
+ }
233
+ }
234
+ }
235
+ if (keywords && keywords.propertyIsEnumerable(stream.current().toUpperCase())) {
236
+ returnType = KEYWORD;
237
+ } else if (builtins && builtins.propertyIsEnumerable(stream.current().toUpperCase())) {
238
+ returnType = BUILTIN;
239
+ } else if (atoms && atoms.propertyIsEnumerable(stream.current().toUpperCase())) {
240
+ returnType = ATOM;
241
+ } else returnType = null;
242
+ }
243
+ }
244
+ return returnType;
245
+ },
246
+ indent: function (state) {
247
+ if (state.indentStack == null) return state.indentation;
248
+ return state.indentStack.indent;
249
+ }
250
+ };
251
+ });
252
+
253
+ CodeMirror.defineMIME("text/x-cobol", "cobol");
254
+
255
+ });
@@ -0,0 +1,210 @@
1
+ <!doctype html>
2
+
3
+ <title>CodeMirror: COBOL 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/neat.css">
9
+ <link rel="stylesheet" href="../../theme/elegant.css">
10
+ <link rel="stylesheet" href="../../theme/erlang-dark.css">
11
+ <link rel="stylesheet" href="../../theme/night.css">
12
+ <link rel="stylesheet" href="../../theme/monokai.css">
13
+ <link rel="stylesheet" href="../../theme/cobalt.css">
14
+ <link rel="stylesheet" href="../../theme/eclipse.css">
15
+ <link rel="stylesheet" href="../../theme/rubyblue.css">
16
+ <link rel="stylesheet" href="../../theme/lesser-dark.css">
17
+ <link rel="stylesheet" href="../../theme/xq-dark.css">
18
+ <link rel="stylesheet" href="../../theme/xq-light.css">
19
+ <link rel="stylesheet" href="../../theme/ambiance.css">
20
+ <link rel="stylesheet" href="../../theme/blackboard.css">
21
+ <link rel="stylesheet" href="../../theme/vibrant-ink.css">
22
+ <link rel="stylesheet" href="../../theme/solarized.css">
23
+ <link rel="stylesheet" href="../../theme/twilight.css">
24
+ <link rel="stylesheet" href="../../theme/midnight.css">
25
+ <link rel="stylesheet" href="../../addon/dialog/dialog.css">
26
+ <script src="../../lib/codemirror.js"></script>
27
+ <script src="../../addon/edit/matchbrackets.js"></script>
28
+ <script src="cobol.js"></script>
29
+ <script src="../../addon/selection/active-line.js"></script>
30
+ <script src="../../addon/search/search.js"></script>
31
+ <script src="../../addon/dialog/dialog.js"></script>
32
+ <script src="../../addon/search/searchcursor.js"></script>
33
+ <style>
34
+ .CodeMirror {
35
+ border: 1px solid #eee;
36
+ font-size : 20px;
37
+ height : auto !important;
38
+ }
39
+ .CodeMirror-activeline-background {background: #555555 !important;}
40
+ </style>
41
+ <div id=nav>
42
+ <a href="http://codemirror.net"><h1>CodeMirror</h1><img id=logo src="../../doc/logo.png"></a>
43
+
44
+ <ul>
45
+ <li><a href="../../index.html">Home</a>
46
+ <li><a href="../../doc/manual.html">Manual</a>
47
+ <li><a href="https://github.com/codemirror/codemirror">Code</a>
48
+ </ul>
49
+ <ul>
50
+ <li><a href="../index.html">Language modes</a>
51
+ <li><a class=active href="#">COBOL</a>
52
+ </ul>
53
+ </div>
54
+
55
+ <article>
56
+ <h2>COBOL mode</h2>
57
+
58
+ <p> Select Theme <select onchange="selectTheme()" id="selectTheme">
59
+ <option>default</option>
60
+ <option>ambiance</option>
61
+ <option>blackboard</option>
62
+ <option>cobalt</option>
63
+ <option>eclipse</option>
64
+ <option>elegant</option>
65
+ <option>erlang-dark</option>
66
+ <option>lesser-dark</option>
67
+ <option>midnight</option>
68
+ <option>monokai</option>
69
+ <option>neat</option>
70
+ <option>night</option>
71
+ <option>rubyblue</option>
72
+ <option>solarized dark</option>
73
+ <option>solarized light</option>
74
+ <option selected>twilight</option>
75
+ <option>vibrant-ink</option>
76
+ <option>xq-dark</option>
77
+ <option>xq-light</option>
78
+ </select> Select Font Size <select onchange="selectFontsize()" id="selectFontSize">
79
+ <option value="13px">13px</option>
80
+ <option value="14px">14px</option>
81
+ <option value="16px">16px</option>
82
+ <option value="18px">18px</option>
83
+ <option value="20px" selected="selected">20px</option>
84
+ <option value="24px">24px</option>
85
+ <option value="26px">26px</option>
86
+ <option value="28px">28px</option>
87
+ <option value="30px">30px</option>
88
+ <option value="32px">32px</option>
89
+ <option value="34px">34px</option>
90
+ <option value="36px">36px</option>
91
+ </select>
92
+ <label for="checkBoxReadOnly">Read-only</label>
93
+ <input type="checkbox" id="checkBoxReadOnly" onchange="selectReadOnly()">
94
+ <label for="id_tabToIndentSpace">Insert Spaces on Tab</label>
95
+ <input type="checkbox" id="id_tabToIndentSpace" onchange="tabToIndentSpace()">
96
+ </p>
97
+ <textarea id="code" name="code">
98
+ ---------1---------2---------3---------4---------5---------6---------7---------8
99
+ 12345678911234567892123456789312345678941234567895123456789612345678971234567898
100
+ 000010 IDENTIFICATION DIVISION. MODTGHERE
101
+ 000020 PROGRAM-ID. SAMPLE.
102
+ 000030 AUTHOR. TEST SAM.
103
+ 000040 DATE-WRITTEN. 5 February 2013
104
+ 000041
105
+ 000042* A sample program just to show the form.
106
+ 000043* The program copies its input to the output,
107
+ 000044* and counts the number of records.
108
+ 000045* At the end this number is printed.
109
+ 000046
110
+ 000050 ENVIRONMENT DIVISION.
111
+ 000060 INPUT-OUTPUT SECTION.
112
+ 000070 FILE-CONTROL.
113
+ 000080 SELECT STUDENT-FILE ASSIGN TO SYSIN
114
+ 000090 ORGANIZATION IS LINE SEQUENTIAL.
115
+ 000100 SELECT PRINT-FILE ASSIGN TO SYSOUT
116
+ 000110 ORGANIZATION IS LINE SEQUENTIAL.
117
+ 000120
118
+ 000130 DATA DIVISION.
119
+ 000140 FILE SECTION.
120
+ 000150 FD STUDENT-FILE
121
+ 000160 RECORD CONTAINS 43 CHARACTERS
122
+ 000170 DATA RECORD IS STUDENT-IN.
123
+ 000180 01 STUDENT-IN PIC X(43).
124
+ 000190
125
+ 000200 FD PRINT-FILE
126
+ 000210 RECORD CONTAINS 80 CHARACTERS
127
+ 000220 DATA RECORD IS PRINT-LINE.
128
+ 000230 01 PRINT-LINE PIC X(80).
129
+ 000240
130
+ 000250 WORKING-STORAGE SECTION.
131
+ 000260 01 DATA-REMAINS-SWITCH PIC X(2) VALUE SPACES.
132
+ 000261 01 RECORDS-WRITTEN PIC 99.
133
+ 000270
134
+ 000280 01 DETAIL-LINE.
135
+ 000290 05 FILLER PIC X(7) VALUE SPACES.
136
+ 000300 05 RECORD-IMAGE PIC X(43).
137
+ 000310 05 FILLER PIC X(30) VALUE SPACES.
138
+ 000311
139
+ 000312 01 SUMMARY-LINE.
140
+ 000313 05 FILLER PIC X(7) VALUE SPACES.
141
+ 000314 05 TOTAL-READ PIC 99.
142
+ 000315 05 FILLER PIC X VALUE SPACE.
143
+ 000316 05 FILLER PIC X(17)
144
+ 000317 VALUE 'Records were read'.
145
+ 000318 05 FILLER PIC X(53) VALUE SPACES.
146
+ 000319
147
+ 000320 PROCEDURE DIVISION.
148
+ 000321
149
+ 000330 PREPARE-SENIOR-REPORT.
150
+ 000340 OPEN INPUT STUDENT-FILE
151
+ 000350 OUTPUT PRINT-FILE.
152
+ 000351 MOVE ZERO TO RECORDS-WRITTEN.
153
+ 000360 READ STUDENT-FILE
154
+ 000370 AT END MOVE 'NO' TO DATA-REMAINS-SWITCH
155
+ 000380 END-READ.
156
+ 000390 PERFORM PROCESS-RECORDS
157
+ 000410 UNTIL DATA-REMAINS-SWITCH = 'NO'.
158
+ 000411 PERFORM PRINT-SUMMARY.
159
+ 000420 CLOSE STUDENT-FILE
160
+ 000430 PRINT-FILE.
161
+ 000440 STOP RUN.
162
+ 000450
163
+ 000460 PROCESS-RECORDS.
164
+ 000470 MOVE STUDENT-IN TO RECORD-IMAGE.
165
+ 000480 MOVE DETAIL-LINE TO PRINT-LINE.
166
+ 000490 WRITE PRINT-LINE.
167
+ 000500 ADD 1 TO RECORDS-WRITTEN.
168
+ 000510 READ STUDENT-FILE
169
+ 000520 AT END MOVE 'NO' TO DATA-REMAINS-SWITCH
170
+ 000530 END-READ.
171
+ 000540
172
+ 000550 PRINT-SUMMARY.
173
+ 000560 MOVE RECORDS-WRITTEN TO TOTAL-READ.
174
+ 000570 MOVE SUMMARY-LINE TO PRINT-LINE.
175
+ 000571 WRITE PRINT-LINE.
176
+ 000572
177
+ 000580
178
+ </textarea>
179
+ <script>
180
+ var editor = CodeMirror.fromTextArea(document.getElementById("code"), {
181
+ lineNumbers: true,
182
+ matchBrackets: true,
183
+ mode: "text/x-cobol",
184
+ theme : "twilight",
185
+ styleActiveLine: true,
186
+ showCursorWhenSelecting : true,
187
+ });
188
+ function selectTheme() {
189
+ var themeInput = document.getElementById("selectTheme");
190
+ var theme = themeInput.options[themeInput.selectedIndex].innerHTML;
191
+ editor.setOption("theme", theme);
192
+ }
193
+ function selectFontsize() {
194
+ var fontSizeInput = document.getElementById("selectFontSize");
195
+ var fontSize = fontSizeInput.options[fontSizeInput.selectedIndex].innerHTML;
196
+ editor.getWrapperElement().style.fontSize = fontSize;
197
+ editor.refresh();
198
+ }
199
+ function selectReadOnly() {
200
+ editor.setOption("readOnly", document.getElementById("checkBoxReadOnly").checked);
201
+ }
202
+ function tabToIndentSpace() {
203
+ if (document.getElementById("id_tabToIndentSpace").checked) {
204
+ editor.setOption("extraKeys", {Tab: function(cm) { cm.replaceSelection(" ", "end"); }});
205
+ } else {
206
+ editor.setOption("extraKeys", {Tab: function(cm) { cm.replaceSelection(" ", "end"); }});
207
+ }
208
+ }
209
+ </script>
210
+ </article>