prism-rails 1.6.0.3 → 1.19.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (341) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +3 -0
  3. data/README.md +88 -44
  4. data/lib/prism-rails/version.rb +1 -1
  5. data/vendor/assets/javascripts/languages/index.js +82 -0
  6. data/vendor/assets/javascripts/{prism → languages}/prism-abap.js +2 -2
  7. data/vendor/assets/javascripts/languages/prism-abnf.js +54 -0
  8. data/vendor/assets/javascripts/{prism → languages}/prism-actionscript.js +3 -5
  9. data/vendor/assets/javascripts/{prism → languages}/prism-ada.js +2 -2
  10. data/vendor/assets/javascripts/languages/prism-antlr4.js +65 -0
  11. data/vendor/assets/javascripts/languages/prism-apacheconf.js +47 -0
  12. data/vendor/assets/javascripts/{prism → languages}/prism-apl.js +8 -5
  13. data/vendor/assets/javascripts/{prism → languages}/prism-applescript.js +3 -3
  14. data/vendor/assets/javascripts/languages/prism-aql.js +41 -0
  15. data/vendor/assets/javascripts/languages/prism-arduino.js +5 -0
  16. data/vendor/assets/javascripts/languages/prism-arff.js +10 -0
  17. data/vendor/assets/javascripts/{prism → languages}/prism-asciidoc.js +23 -60
  18. data/vendor/assets/javascripts/languages/prism-asm6502.js +28 -0
  19. data/vendor/assets/javascripts/{prism → languages}/prism-aspnet.js +22 -10
  20. data/vendor/assets/javascripts/languages/prism-autohotkey.js +27 -0
  21. data/vendor/assets/javascripts/{prism → languages}/prism-autoit.js +1 -0
  22. data/vendor/assets/javascripts/languages/prism-bash.js +197 -0
  23. data/vendor/assets/javascripts/{prism → languages}/prism-basic.js +5 -2
  24. data/vendor/assets/javascripts/{prism → languages}/prism-batch.js +0 -0
  25. data/vendor/assets/javascripts/languages/prism-bbcode.js +27 -0
  26. data/vendor/assets/javascripts/{prism → languages}/prism-bison.js +0 -0
  27. data/vendor/assets/javascripts/languages/prism-bnf.js +21 -0
  28. data/vendor/assets/javascripts/{prism → languages}/prism-brainfuck.js +0 -0
  29. data/vendor/assets/javascripts/languages/prism-brightscript.js +44 -0
  30. data/vendor/assets/javascripts/languages/prism-bro.js +48 -0
  31. data/vendor/assets/javascripts/languages/prism-c.js +41 -0
  32. data/vendor/assets/javascripts/languages/prism-cil.js +27 -0
  33. data/vendor/assets/javascripts/languages/prism-clike.js +30 -0
  34. data/vendor/assets/javascripts/languages/prism-clojure.js +16 -0
  35. data/vendor/assets/javascripts/languages/prism-cmake.js +29 -0
  36. data/vendor/assets/javascripts/{prism → languages}/prism-coffeescript.js +6 -5
  37. data/vendor/assets/javascripts/languages/prism-concurnas.js +48 -0
  38. data/vendor/assets/javascripts/languages/prism-core.js +627 -0
  39. data/vendor/assets/javascripts/languages/prism-cpp.js +21 -0
  40. data/vendor/assets/javascripts/{prism → languages}/prism-crystal.js +5 -7
  41. data/vendor/assets/javascripts/languages/prism-csharp.js +81 -0
  42. data/vendor/assets/javascripts/languages/prism-csp.js +25 -0
  43. data/vendor/assets/javascripts/languages/prism-css-extras.js +109 -0
  44. data/vendor/assets/javascripts/languages/prism-css.js +62 -0
  45. data/vendor/assets/javascripts/{prism → languages}/prism-d.js +49 -34
  46. data/vendor/assets/javascripts/{prism → languages}/prism-dart.js +8 -2
  47. data/vendor/assets/javascripts/languages/prism-diff.js +54 -0
  48. data/vendor/assets/javascripts/languages/prism-django.js +60 -0
  49. data/vendor/assets/javascripts/languages/prism-dns-zone-file.js +33 -0
  50. data/vendor/assets/javascripts/languages/prism-docker.js +11 -0
  51. data/vendor/assets/javascripts/languages/prism-ebnf.js +22 -0
  52. data/vendor/assets/javascripts/{prism → languages}/prism-eiffel.js +20 -7
  53. data/vendor/assets/javascripts/languages/prism-ejs.js +24 -0
  54. data/vendor/assets/javascripts/{prism → languages}/prism-elixir.js +14 -15
  55. data/vendor/assets/javascripts/languages/prism-elm.js +44 -0
  56. data/vendor/assets/javascripts/languages/prism-erb.js +20 -0
  57. data/vendor/assets/javascripts/{prism → languages}/prism-erlang.js +7 -4
  58. data/vendor/assets/javascripts/languages/prism-etlua.js +23 -0
  59. data/vendor/assets/javascripts/languages/prism-factor.js +403 -0
  60. data/vendor/assets/javascripts/languages/prism-firestore-security-rules.js +35 -0
  61. data/vendor/assets/javascripts/languages/prism-flow.js +35 -0
  62. data/vendor/assets/javascripts/{prism → languages}/prism-fortran.js +5 -2
  63. data/vendor/assets/javascripts/languages/prism-fsharp.js +67 -0
  64. data/vendor/assets/javascripts/languages/prism-ftl.js +97 -0
  65. data/vendor/assets/javascripts/languages/prism-gcode.js +15 -0
  66. data/vendor/assets/javascripts/languages/prism-gdscript.js +27 -0
  67. data/vendor/assets/javascripts/languages/prism-gedcom.js +28 -0
  68. data/vendor/assets/javascripts/languages/prism-gherkin.js +85 -0
  69. data/vendor/assets/javascripts/{prism → languages}/prism-git.js +2 -2
  70. data/vendor/assets/javascripts/{prism → languages}/prism-glsl.js +3 -3
  71. data/vendor/assets/javascripts/languages/prism-gml.js +7 -0
  72. data/vendor/assets/javascripts/languages/prism-go.js +12 -0
  73. data/vendor/assets/javascripts/languages/prism-graphql.js +31 -0
  74. data/vendor/assets/javascripts/{prism → languages}/prism-groovy.js +12 -10
  75. data/vendor/assets/javascripts/{prism → languages}/prism-haml.js +14 -26
  76. data/vendor/assets/javascripts/languages/prism-handlebars.js +37 -0
  77. data/vendor/assets/javascripts/languages/prism-haskell.js +38 -0
  78. data/vendor/assets/javascripts/{prism → languages}/prism-haxe.js +4 -2
  79. data/vendor/assets/javascripts/languages/prism-hcl.js +65 -0
  80. data/vendor/assets/javascripts/languages/prism-hpkp.js +20 -0
  81. data/vendor/assets/javascripts/languages/prism-hsts.js +20 -0
  82. data/vendor/assets/javascripts/languages/prism-http.js +77 -0
  83. data/vendor/assets/javascripts/languages/prism-ichigojam.js +15 -0
  84. data/vendor/assets/javascripts/{prism → languages}/prism-icon.js +4 -1
  85. data/vendor/assets/javascripts/{prism → languages}/prism-inform7.js +6 -3
  86. data/vendor/assets/javascripts/{prism → languages}/prism-ini.js +2 -2
  87. data/vendor/assets/javascripts/languages/prism-io.js +31 -0
  88. data/vendor/assets/javascripts/{prism → languages}/prism-j.js +5 -2
  89. data/vendor/assets/javascripts/{prism → languages}/prism-jade.js +0 -0
  90. data/vendor/assets/javascripts/languages/prism-java.js +63 -0
  91. data/vendor/assets/javascripts/languages/prism-javadoc.js +54 -0
  92. data/vendor/assets/javascripts/languages/prism-javadoclike.js +87 -0
  93. data/vendor/assets/javascripts/languages/prism-javascript.js +91 -0
  94. data/vendor/assets/javascripts/languages/prism-javastacktrace.js +93 -0
  95. data/vendor/assets/javascripts/{prism → languages}/prism-jolie.js +9 -10
  96. data/vendor/assets/javascripts/languages/prism-jq.js +67 -0
  97. data/vendor/assets/javascripts/languages/prism-js-extras.js +104 -0
  98. data/vendor/assets/javascripts/languages/prism-js-templates.js +346 -0
  99. data/vendor/assets/javascripts/languages/prism-jsdoc.js +73 -0
  100. data/vendor/assets/javascripts/languages/prism-json.js +19 -0
  101. data/vendor/assets/javascripts/languages/prism-json5.js +23 -0
  102. data/vendor/assets/javascripts/languages/prism-jsonp.js +7 -0
  103. data/vendor/assets/javascripts/languages/prism-jsx.js +126 -0
  104. data/vendor/assets/javascripts/languages/prism-julia.js +13 -0
  105. data/vendor/assets/javascripts/languages/prism-keyman.js +14 -0
  106. data/vendor/assets/javascripts/{prism → languages}/prism-kotlin.js +6 -6
  107. data/vendor/assets/javascripts/{prism → languages}/prism-latex.js +16 -13
  108. data/vendor/assets/javascripts/languages/prism-latte.js +69 -0
  109. data/vendor/assets/javascripts/{prism → languages}/prism-less.js +3 -9
  110. data/vendor/assets/javascripts/languages/prism-lilypond.js +69 -0
  111. data/vendor/assets/javascripts/languages/prism-liquid.js +12 -0
  112. data/vendor/assets/javascripts/languages/prism-lisp.js +197 -0
  113. data/vendor/assets/javascripts/{prism → languages}/prism-livescript.js +19 -18
  114. data/vendor/assets/javascripts/{prism → languages}/prism-lolcode.js +3 -2
  115. data/vendor/assets/javascripts/{prism → languages}/prism-lua.js +0 -0
  116. data/vendor/assets/javascripts/{prism → languages}/prism-makefile.js +5 -2
  117. data/vendor/assets/javascripts/languages/prism-markdown.js +344 -0
  118. data/vendor/assets/javascripts/languages/prism-markup-templating.js +123 -0
  119. data/vendor/assets/javascripts/languages/prism-markup.js +103 -0
  120. data/vendor/assets/javascripts/{prism → languages}/prism-matlab.js +5 -3
  121. data/vendor/assets/javascripts/{prism → languages}/prism-mel.js +7 -3
  122. data/vendor/assets/javascripts/{prism → languages}/prism-mizar.js +0 -0
  123. data/vendor/assets/javascripts/{prism → languages}/prism-monkey.js +9 -3
  124. data/vendor/assets/javascripts/languages/prism-moonscript.js +57 -0
  125. data/vendor/assets/javascripts/languages/prism-n1ql.js +18 -0
  126. data/vendor/assets/javascripts/languages/prism-n4js.js +14 -0
  127. data/vendor/assets/javascripts/languages/prism-nand2tetris-hdl.js +9 -0
  128. data/vendor/assets/javascripts/languages/prism-nasm.js +24 -0
  129. data/vendor/assets/javascripts/languages/prism-neon.js +41 -0
  130. data/vendor/assets/javascripts/languages/prism-nginx.js +11 -0
  131. data/vendor/assets/javascripts/{prism → languages}/prism-nim.js +4 -1
  132. data/vendor/assets/javascripts/{prism → languages}/prism-nix.js +2 -1
  133. data/vendor/assets/javascripts/languages/prism-nsis.js +29 -0
  134. data/vendor/assets/javascripts/languages/prism-objectivec.js +7 -0
  135. data/vendor/assets/javascripts/languages/prism-ocaml.js +41 -0
  136. data/vendor/assets/javascripts/languages/prism-opencl.js +54 -0
  137. data/vendor/assets/javascripts/{prism → languages}/prism-oz.js +6 -2
  138. data/vendor/assets/javascripts/{prism → languages}/prism-parigp.js +4 -1
  139. data/vendor/assets/javascripts/languages/prism-parser.js +73 -0
  140. data/vendor/assets/javascripts/{prism → languages}/prism-pascal.js +9 -4
  141. data/vendor/assets/javascripts/languages/prism-pascaligo.js +62 -0
  142. data/vendor/assets/javascripts/languages/prism-pcaxis.js +53 -0
  143. data/vendor/assets/javascripts/languages/prism-perl.js +191 -0
  144. data/vendor/assets/javascripts/{prism → languages}/prism-php-extras.js +3 -3
  145. data/vendor/assets/javascripts/languages/prism-php.js +130 -0
  146. data/vendor/assets/javascripts/languages/prism-phpdoc.js +27 -0
  147. data/vendor/assets/javascripts/languages/prism-plsql.js +26 -0
  148. data/vendor/assets/javascripts/languages/prism-powershell.js +60 -0
  149. data/vendor/assets/javascripts/{prism → languages}/prism-processing.js +2 -2
  150. data/vendor/assets/javascripts/{prism → languages}/prism-prolog.js +4 -1
  151. data/vendor/assets/javascripts/{prism → languages}/prism-properties.js +2 -2
  152. data/vendor/assets/javascripts/languages/prism-protobuf.js +36 -0
  153. data/vendor/assets/javascripts/languages/prism-pug.js +181 -0
  154. data/vendor/assets/javascripts/{prism → languages}/prism-puppet.js +7 -2
  155. data/vendor/assets/javascripts/{prism → languages}/prism-pure.js +19 -17
  156. data/vendor/assets/javascripts/languages/prism-python.js +64 -0
  157. data/vendor/assets/javascripts/{prism → languages}/prism-q.js +13 -6
  158. data/vendor/assets/javascripts/languages/prism-qml.js +58 -0
  159. data/vendor/assets/javascripts/{prism → languages}/prism-qore.js +7 -4
  160. data/vendor/assets/javascripts/{prism → languages}/prism-r.js +5 -2
  161. data/vendor/assets/javascripts/{prism → languages}/prism-reason.js +4 -8
  162. data/vendor/assets/javascripts/languages/prism-regex.js +97 -0
  163. data/vendor/assets/javascripts/languages/prism-renpy.js +29 -0
  164. data/vendor/assets/javascripts/{prism → languages}/prism-rest.js +4 -4
  165. data/vendor/assets/javascripts/{prism → languages}/prism-rip.js +7 -3
  166. data/vendor/assets/javascripts/{prism → languages}/prism-roboconf.js +0 -0
  167. data/vendor/assets/javascripts/languages/prism-robotframework.js +104 -0
  168. data/vendor/assets/javascripts/{prism → languages}/prism-ruby.js +49 -15
  169. data/vendor/assets/javascripts/languages/prism-rust.js +68 -0
  170. data/vendor/assets/javascripts/languages/prism-sas.js +302 -0
  171. data/vendor/assets/javascripts/{prism → languages}/prism-sass.js +1 -2
  172. data/vendor/assets/javascripts/{prism → languages}/prism-scala.js +10 -11
  173. data/vendor/assets/javascripts/languages/prism-scheme.js +33 -0
  174. data/vendor/assets/javascripts/{prism → languages}/prism-scss.js +18 -16
  175. data/vendor/assets/javascripts/languages/prism-shell-session.js +54 -0
  176. data/vendor/assets/javascripts/{prism → languages}/prism-smalltalk.js +9 -9
  177. data/vendor/assets/javascripts/languages/prism-smarty.js +87 -0
  178. data/vendor/assets/javascripts/languages/prism-solidity.js +20 -0
  179. data/vendor/assets/javascripts/languages/prism-solution-file.js +51 -0
  180. data/vendor/assets/javascripts/languages/prism-soy.js +96 -0
  181. data/vendor/assets/javascripts/languages/prism-sparql.js +18 -0
  182. data/vendor/assets/javascripts/languages/prism-splunk-spl.js +24 -0
  183. data/vendor/assets/javascripts/languages/prism-sqf.js +34 -0
  184. data/vendor/assets/javascripts/languages/prism-sql.js +24 -0
  185. data/vendor/assets/javascripts/{prism → languages}/prism-stylus.js +16 -7
  186. data/vendor/assets/javascripts/languages/prism-swift.js +25 -0
  187. data/vendor/assets/javascripts/languages/prism-t4-cs.js +1 -0
  188. data/vendor/assets/javascripts/languages/prism-t4-templating.js +49 -0
  189. data/vendor/assets/javascripts/languages/prism-t4-vb.js +1 -0
  190. data/vendor/assets/javascripts/languages/prism-tap.js +20 -0
  191. data/vendor/assets/javascripts/languages/prism-tcl.js +46 -0
  192. data/vendor/assets/javascripts/{prism → languages}/prism-textile.js +35 -32
  193. data/vendor/assets/javascripts/languages/prism-toml.js +43 -0
  194. data/vendor/assets/javascripts/languages/prism-tsx.js +2 -0
  195. data/vendor/assets/javascripts/languages/prism-tt2.js +53 -0
  196. data/vendor/assets/javascripts/languages/prism-turtle.js +54 -0
  197. data/vendor/assets/javascripts/{prism → languages}/prism-twig.js +8 -8
  198. data/vendor/assets/javascripts/languages/prism-typescript.js +7 -0
  199. data/vendor/assets/javascripts/languages/prism-vala.js +74 -0
  200. data/vendor/assets/javascripts/languages/prism-vbnet.js +15 -0
  201. data/vendor/assets/javascripts/languages/prism-velocity.js +72 -0
  202. data/vendor/assets/javascripts/languages/prism-verilog.js +20 -0
  203. data/vendor/assets/javascripts/{prism → languages}/prism-vhdl.js +2 -2
  204. data/vendor/assets/javascripts/{prism → languages}/prism-vim.js +1 -1
  205. data/vendor/assets/javascripts/languages/prism-visual-basic.js +34 -0
  206. data/vendor/assets/javascripts/languages/prism-wasm.js +31 -0
  207. data/vendor/assets/javascripts/{prism → languages}/prism-wiki.js +7 -6
  208. data/vendor/assets/javascripts/languages/prism-xeora.js +114 -0
  209. data/vendor/assets/javascripts/{prism → languages}/prism-xojo.js +1 -1
  210. data/vendor/assets/javascripts/languages/prism-xquery.js +162 -0
  211. data/vendor/assets/javascripts/languages/prism-yaml.js +76 -0
  212. data/vendor/assets/javascripts/languages/prism-zig.js +97 -0
  213. data/vendor/assets/javascripts/prism-plugin/prism-autolinker.js +13 -8
  214. data/vendor/assets/javascripts/prism-plugin/prism-autoloader.js +306 -95
  215. data/vendor/assets/javascripts/prism-plugin/prism-command-line.js +96 -38
  216. data/vendor/assets/javascripts/prism-plugin/prism-copy-to-clipboard.js +10 -10
  217. data/vendor/assets/javascripts/prism-plugin/prism-custom-class.js +89 -23
  218. data/vendor/assets/javascripts/prism-plugin/prism-data-uri-highlight.js +2 -2
  219. data/vendor/assets/javascripts/prism-plugin/prism-diff-highlight.js +83 -0
  220. data/vendor/assets/javascripts/prism-plugin/prism-download-button.js +19 -0
  221. data/vendor/assets/javascripts/prism-plugin/prism-file-highlight.js +53 -41
  222. data/vendor/assets/javascripts/prism-plugin/prism-filter-highlight-all.js +125 -0
  223. data/vendor/assets/javascripts/prism-plugin/prism-inline-color.js +88 -0
  224. data/vendor/assets/javascripts/prism-plugin/prism-jsonp-highlight.js +124 -69
  225. data/vendor/assets/javascripts/prism-plugin/prism-keep-markup.js +4 -2
  226. data/vendor/assets/javascripts/prism-plugin/prism-line-highlight.js +195 -115
  227. data/vendor/assets/javascripts/prism-plugin/prism-line-numbers.js +154 -43
  228. data/vendor/assets/javascripts/prism-plugin/prism-match-braces.js +184 -0
  229. data/vendor/assets/javascripts/prism-plugin/prism-normalize-whitespace.js +29 -11
  230. data/vendor/assets/javascripts/prism-plugin/prism-previewers.js +703 -0
  231. data/vendor/assets/javascripts/prism-plugin/prism-remove-initial-line-feed.js +2 -2
  232. data/vendor/assets/javascripts/prism-plugin/prism-show-invisibles.js +83 -18
  233. data/vendor/assets/javascripts/prism-plugin/prism-show-language.js +190 -19
  234. data/vendor/assets/javascripts/prism-plugin/prism-toolbar.js +53 -8
  235. data/vendor/assets/javascripts/prism-plugin/prism-unescaped-markup.js +11 -7
  236. data/vendor/assets/javascripts/prism-plugin/prism-wpd.js +12 -12
  237. data/vendor/assets/javascripts/prism.js +210 -127
  238. data/vendor/assets/stylesheets/prism-plugin/prism-diff-highlight.css +13 -0
  239. data/vendor/assets/stylesheets/prism-plugin/prism-inline-color.css +9 -0
  240. data/vendor/assets/stylesheets/prism-plugin/prism-line-highlight.css +5 -0
  241. data/vendor/assets/stylesheets/prism-plugin/prism-line-numbers.css +4 -3
  242. data/vendor/assets/stylesheets/prism-plugin/prism-match-braces.css +29 -0
  243. data/vendor/assets/stylesheets/prism-plugin/prism-previewers.css +242 -0
  244. data/vendor/assets/stylesheets/prism-plugin/prism-show-invisibles.css +7 -6
  245. data/vendor/assets/stylesheets/prism-plugin/prism-toolbar.css +21 -15
  246. data/vendor/assets/stylesheets/prism-plugin/prism-unescaped-markup.css +4 -4
  247. data/vendor/assets/stylesheets/prism-theme/prism-a11y-dark.css +161 -0
  248. data/vendor/assets/stylesheets/{prism-atom-dark.css → prism-theme/prism-atom-dark.css} +10 -13
  249. data/vendor/assets/stylesheets/prism-theme/prism-autolinker.css +3 -0
  250. data/vendor/assets/stylesheets/{prism-base16-ateliersulphurpool.light.css → prism-theme/prism-base16-ateliersulphurpool.light.css} +57 -53
  251. data/vendor/assets/stylesheets/{prism-cb.css → prism-theme/prism-cb.css} +27 -27
  252. data/vendor/assets/stylesheets/prism-theme/prism-command-line.css +33 -0
  253. data/vendor/assets/stylesheets/{prism-coy.css → prism-theme/prism-coy.css} +14 -9
  254. data/vendor/assets/stylesheets/prism-theme/prism-darcula.css +159 -0
  255. data/vendor/assets/stylesheets/{prism-dark.css → prism-theme/prism-dark.css} +2 -1
  256. data/vendor/assets/stylesheets/prism-theme/prism-dracula.css +122 -0
  257. data/vendor/assets/stylesheets/{prism-duotone-dark.css → prism-theme/prism-duotone-dark.css} +55 -51
  258. data/vendor/assets/stylesheets/{prism-duotone-earth.css → prism-theme/prism-duotone-earth.css} +55 -51
  259. data/vendor/assets/stylesheets/{prism-duotone-forest.css → prism-theme/prism-duotone-forest.css} +55 -51
  260. data/vendor/assets/stylesheets/{prism-duotone-light.css → prism-theme/prism-duotone-light.css} +55 -51
  261. data/vendor/assets/stylesheets/{prism-duotone-sea.css → prism-theme/prism-duotone-sea.css} +55 -51
  262. data/vendor/assets/stylesheets/{prism-duotone-space.css → prism-theme/prism-duotone-space.css} +55 -51
  263. data/vendor/assets/stylesheets/{prism-funky.css → prism-theme/prism-funky.css} +16 -2
  264. data/vendor/assets/stylesheets/{prism-ghcolors.css → prism-theme/prism-ghcolors.css} +47 -44
  265. data/vendor/assets/stylesheets/prism-theme/prism-hopscotch.css +132 -0
  266. data/vendor/assets/stylesheets/prism-theme/prism-line-highlight.css +49 -0
  267. data/vendor/assets/stylesheets/prism-theme/prism-line-numbers.css +41 -0
  268. data/vendor/assets/stylesheets/prism-theme/prism-material-dark.css +205 -0
  269. data/vendor/assets/stylesheets/prism-theme/prism-material-light.css +207 -0
  270. data/vendor/assets/stylesheets/prism-theme/prism-material-oceanic.css +210 -0
  271. data/vendor/assets/stylesheets/prism-theme/prism-nord.css +124 -0
  272. data/vendor/assets/stylesheets/{prism-okaidia.css → prism-theme/prism-okaidia.css} +4 -2
  273. data/vendor/assets/stylesheets/prism-theme/prism-pojoaque.css +151 -0
  274. data/vendor/assets/stylesheets/prism-theme/prism-previewers.css +242 -0
  275. data/vendor/assets/stylesheets/prism-theme/prism-shades-of-purple.css +200 -0
  276. data/vendor/assets/stylesheets/prism-theme/prism-show-invisibles.css +34 -0
  277. data/vendor/assets/stylesheets/{prism-show-language.css → prism-theme/prism-show-language.css} +0 -0
  278. data/vendor/assets/stylesheets/{prism-solarizedlight.css → prism-theme/prism-solarizedlight.css} +5 -3
  279. data/vendor/assets/stylesheets/prism-theme/prism-synthwave84.css +140 -0
  280. data/vendor/assets/stylesheets/{prism-tomorrow.css → prism-theme/prism-tomorrow.css} +1 -0
  281. data/vendor/assets/stylesheets/{prism-toolbar.css → prism-theme/prism-toolbar.css} +15 -15
  282. data/vendor/assets/stylesheets/{prism-twilight.css → prism-theme/prism-twilight.css} +2 -1
  283. data/vendor/assets/stylesheets/prism-theme/prism-unescaped-markup.css +10 -0
  284. data/vendor/assets/stylesheets/{prism-vs.css → prism-theme/prism-vs.css} +62 -55
  285. data/vendor/assets/stylesheets/prism-theme/prism-vsc-dark-plus.css +216 -0
  286. data/vendor/assets/stylesheets/prism-theme/prism-wpd.css +11 -0
  287. data/vendor/assets/stylesheets/prism-theme/prism-xonokai.css +189 -0
  288. data/vendor/assets/stylesheets/prism.css +5 -3
  289. metadata +262 -148
  290. data/vendor/assets/javascripts/prism/prism-apacheconf.js +0 -47
  291. data/vendor/assets/javascripts/prism/prism-autohotkey.js +0 -27
  292. data/vendor/assets/javascripts/prism/prism-bash.js +0 -80
  293. data/vendor/assets/javascripts/prism/prism-bro.js +0 -50
  294. data/vendor/assets/javascripts/prism/prism-c.js +0 -33
  295. data/vendor/assets/javascripts/prism/prism-clike.js +0 -29
  296. data/vendor/assets/javascripts/prism/prism-core.js +0 -511
  297. data/vendor/assets/javascripts/prism/prism-cpp.js +0 -12
  298. data/vendor/assets/javascripts/prism/prism-csharp.js +0 -32
  299. data/vendor/assets/javascripts/prism/prism-css-extras.js +0 -16
  300. data/vendor/assets/javascripts/prism/prism-css.js +0 -51
  301. data/vendor/assets/javascripts/prism/prism-diff.js +0 -20
  302. data/vendor/assets/javascripts/prism/prism-docker.js +0 -9
  303. data/vendor/assets/javascripts/prism/prism-fsharp.js +0 -33
  304. data/vendor/assets/javascripts/prism/prism-gherkin.js +0 -78
  305. data/vendor/assets/javascripts/prism/prism-go.js +0 -9
  306. data/vendor/assets/javascripts/prism/prism-graphql.js +0 -24
  307. data/vendor/assets/javascripts/prism/prism-handlebars.js +0 -83
  308. data/vendor/assets/javascripts/prism/prism-haskell.js +0 -35
  309. data/vendor/assets/javascripts/prism/prism-http.js +0 -50
  310. data/vendor/assets/javascripts/prism/prism-java.js +0 -16
  311. data/vendor/assets/javascripts/prism/prism-javascript.js +0 -48
  312. data/vendor/assets/javascripts/prism/prism-json.js +0 -11
  313. data/vendor/assets/javascripts/prism/prism-jsx.js +0 -27
  314. data/vendor/assets/javascripts/prism/prism-julia.js +0 -12
  315. data/vendor/assets/javascripts/prism/prism-keyman.js +0 -14
  316. data/vendor/assets/javascripts/prism/prism-markdown.js +0 -120
  317. data/vendor/assets/javascripts/prism/prism-markup.js +0 -46
  318. data/vendor/assets/javascripts/prism/prism-nasm.js +0 -24
  319. data/vendor/assets/javascripts/prism/prism-nginx.js +0 -11
  320. data/vendor/assets/javascripts/prism/prism-nsis.js +0 -26
  321. data/vendor/assets/javascripts/prism/prism-objectivec.js +0 -5
  322. data/vendor/assets/javascripts/prism/prism-ocaml.js +0 -21
  323. data/vendor/assets/javascripts/prism/prism-parser.js +0 -66
  324. data/vendor/assets/javascripts/prism/prism-perl.js +0 -140
  325. data/vendor/assets/javascripts/prism/prism-php.js +0 -111
  326. data/vendor/assets/javascripts/prism/prism-powershell.js +0 -52
  327. data/vendor/assets/javascripts/prism/prism-protobuf.js +0 -8
  328. data/vendor/assets/javascripts/prism/prism-python.js +0 -27
  329. data/vendor/assets/javascripts/prism/prism-rust.js +0 -53
  330. data/vendor/assets/javascripts/prism/prism-sas.js +0 -31
  331. data/vendor/assets/javascripts/prism/prism-scheme.js +0 -26
  332. data/vendor/assets/javascripts/prism/prism-smarty.js +0 -127
  333. data/vendor/assets/javascripts/prism/prism-sql.js +0 -17
  334. data/vendor/assets/javascripts/prism/prism-swift.js +0 -25
  335. data/vendor/assets/javascripts/prism/prism-tcl.js +0 -43
  336. data/vendor/assets/javascripts/prism/prism-typescript.js +0 -5
  337. data/vendor/assets/javascripts/prism/prism-verilog.js +0 -17
  338. data/vendor/assets/javascripts/prism/prism-yaml.js +0 -44
  339. data/vendor/assets/stylesheets/prism-hopscotch.css +0 -124
  340. data/vendor/assets/stylesheets/prism-pojoaque.css +0 -134
  341. data/vendor/assets/stylesheets/prism-xonokai.css +0 -164
@@ -1,12 +1,15 @@
1
1
  Prism.languages.basic = {
2
- 'string': /"(?:""|[!#$%&'()*,\/:;<=>?^_ +\-.A-Z\d])*"/i,
3
2
  'comment': {
4
3
  pattern: /(?:!|REM\b).+/i,
5
4
  inside: {
6
5
  'keyword': /^REM/i
7
6
  }
8
7
  },
9
- 'number': /(?:\b|\B[.-])(?:\d+\.?\d*)(?:E[+-]?\d+)?/i,
8
+ 'string': {
9
+ pattern: /"(?:""|[!#$%&'()*,\/:;<=>?^_ +\-.A-Z\d])*"/i,
10
+ greedy: true
11
+ },
12
+ 'number': /(?:\b\d+\.?\d*|\B\.\d+)(?:E[+-]?\d+)?/i,
10
13
  'keyword': /\b(?:AS|BEEP|BLOAD|BSAVE|CALL(?: ABSOLUTE)?|CASE|CHAIN|CHDIR|CLEAR|CLOSE|CLS|COM|COMMON|CONST|DATA|DECLARE|DEF(?: FN| SEG|DBL|INT|LNG|SNG|STR)|DIM|DO|DOUBLE|ELSE|ELSEIF|END|ENVIRON|ERASE|ERROR|EXIT|FIELD|FILES|FOR|FUNCTION|GET|GOSUB|GOTO|IF|INPUT|INTEGER|IOCTL|KEY|KILL|LINE INPUT|LOCATE|LOCK|LONG|LOOP|LSET|MKDIR|NAME|NEXT|OFF|ON(?: COM| ERROR| KEY| TIMER)?|OPEN|OPTION BASE|OUT|POKE|PUT|READ|REDIM|REM|RESTORE|RESUME|RETURN|RMDIR|RSET|RUN|SHARED|SINGLE|SELECT CASE|SHELL|SLEEP|STATIC|STEP|STOP|STRING|SUB|SWAP|SYSTEM|THEN|TIMER|TO|TROFF|TRON|TYPE|UNLOCK|UNTIL|USING|VIEW PRINT|WAIT|WEND|WHILE|WRITE)(?:\$|\b)/i,
11
14
  'function': /\b(?:ABS|ACCESS|ACOS|ANGLE|AREA|ARITHMETIC|ARRAY|ASIN|ASK|AT|ATN|BASE|BEGIN|BREAK|CAUSE|CEIL|CHR|CLIP|COLLATE|COLOR|CON|COS|COSH|COT|CSC|DATE|DATUM|DEBUG|DECIMAL|DEF|DEG|DEGREES|DELETE|DET|DEVICE|DISPLAY|DOT|ELAPSED|EPS|ERASABLE|EXLINE|EXP|EXTERNAL|EXTYPE|FILETYPE|FIXED|FP|GO|GRAPH|HANDLER|IDN|IMAGE|IN|INT|INTERNAL|IP|IS|KEYED|LBOUND|LCASE|LEFT|LEN|LENGTH|LET|LINE|LINES|LOG|LOG10|LOG2|LTRIM|MARGIN|MAT|MAX|MAXNUM|MID|MIN|MISSING|MOD|NATIVE|NUL|NUMERIC|OF|OPTION|ORD|ORGANIZATION|OUTIN|OUTPUT|PI|POINT|POINTER|POINTS|POS|PRINT|PROGRAM|PROMPT|RAD|RADIANS|RANDOMIZE|RECORD|RECSIZE|RECTYPE|RELATIVE|REMAINDER|REPEAT|REST|RETRY|REWRITE|RIGHT|RND|ROUND|RTRIM|SAME|SEC|SELECT|SEQUENTIAL|SET|SETTER|SGN|SIN|SINH|SIZE|SKIP|SQR|STANDARD|STATUS|STR|STREAM|STYLE|TAB|TAN|TANH|TEMPLATE|TEXT|THERE|TIME|TIMEOUT|TRACE|TRANSFORM|TRUNCATE|UBOUND|UCASE|USE|VAL|VARIABLE|VIEWPORT|WHEN|WINDOW|WITH|ZER|ZONEWIDTH)(?:\$|\b)/i,
12
15
  'operator': /<[=>]?|>=?|[+\-*\/^=&]|\b(?:AND|EQV|IMP|NOT|OR|XOR)\b/i,
@@ -0,0 +1,27 @@
1
+ Prism.languages.bbcode = {
2
+ 'tag': {
3
+ pattern: /\[\/?[^\s=\]]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'"\]=]+))?(?:\s+[^\s=\]]+\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'"\]=]+))*\s*\]/,
4
+ inside: {
5
+ 'tag': {
6
+ pattern: /^\[\/?[^\s=\]]+/,
7
+ inside: {
8
+ 'punctuation': /^\[\/?/
9
+ }
10
+ },
11
+ 'attr-value': {
12
+ pattern: /=\s*(?:"[^"]*"|'[^']*'|[^\s'"\]=]+)/i,
13
+ inside: {
14
+ 'punctuation': [
15
+ /^=/,
16
+ {
17
+ pattern: /^(\s*)["']|["']$/,
18
+ lookbehind: true
19
+ }
20
+ ]
21
+ }
22
+ },
23
+ 'punctuation': /\]/,
24
+ 'attr-name': /[^\s=\]]+/
25
+ }
26
+ }
27
+ };
@@ -0,0 +1,21 @@
1
+ Prism.languages.bnf = {
2
+ 'string': {
3
+ pattern: /"[^\r\n"]*"|'[^\r\n']*'/
4
+ },
5
+ 'definition': {
6
+ pattern: /<[^<>\r\n\t]+>(?=\s*::=)/,
7
+ alias: ['rule', 'keyword'],
8
+ inside: {
9
+ 'punctuation': /^<|>$/
10
+ }
11
+ },
12
+ 'rule': {
13
+ pattern: /<[^<>\r\n\t]+>/,
14
+ inside: {
15
+ 'punctuation': /^<|>$/
16
+ }
17
+ },
18
+ 'operator': /::=|[|()[\]{}*+?]|\.{3}/
19
+ };
20
+
21
+ Prism.languages.rbnf = Prism.languages.bnf;
@@ -0,0 +1,44 @@
1
+ Prism.languages.brightscript = {
2
+ 'comment': /(?:\brem|').*/i,
3
+ 'directive-statement': {
4
+ pattern: /(^[\t ]*)#(?:const|else(?:[\t ]+if)?|end[\t ]+if|error|if).*/im,
5
+ lookbehind: true,
6
+ alias: 'property',
7
+ inside: {
8
+ 'error-message': {
9
+ pattern: /(^#error).+/,
10
+ lookbehind: true
11
+ },
12
+ 'directive': {
13
+ pattern: /^#(?:const|else(?:[\t ]+if)?|end[\t ]+if|error|if)/,
14
+ alias: 'keyword'
15
+ },
16
+ 'expression': {
17
+ pattern: /[\s\S]+/,
18
+ inside: null // see below
19
+ }
20
+ }
21
+ },
22
+ 'property': {
23
+ pattern: /([\r\n{,][\t ]*)(?:(?!\d)\w+|"(?:[^"\r\n]|"")*"(?!"))(?=[ \t]*:)/,
24
+ lookbehind: true,
25
+ greedy: true
26
+ },
27
+ 'string': {
28
+ pattern: /"(?:[^"\r\n]|"")*"(?!")/,
29
+ greedy: true
30
+ },
31
+ 'class-name': {
32
+ pattern: /(\bAs[\t ]+)\w+/i,
33
+ lookbehind: true
34
+ },
35
+ 'keyword': /\b(?:As|Dim|Each|Else|Elseif|End|Exit|For|Function|Goto|If|In|Print|Return|Step|Stop|Sub|Then|To|While)\b/i,
36
+ 'boolean': /\b(?:true|false)\b/i,
37
+ 'function': /\b(?!\d)\w+(?=[\t ]*\()/i,
38
+ 'number': /(?:\b\d+(?:\.\d+)?(?:[ed][+-]\d+)?|&h[a-f\d]+)\b[%&!#]?/i,
39
+ 'operator': /--|\+\+|>>=?|<<=?|<>|[-+*/\\<>]=?|[:^=?]|\b(?:and|mod|not|or)\b/i,
40
+ 'punctuation': /[.,;()[\]{}]/,
41
+ 'constant': /\b(?:LINE_NUM)\b/i
42
+ };
43
+
44
+ Prism.languages.brightscript['directive-statement'].inside.expression.inside = Prism.languages.brightscript;
@@ -0,0 +1,48 @@
1
+ Prism.languages.bro = {
2
+
3
+ 'comment': {
4
+ pattern: /(^|[^\\$])#.*/,
5
+ lookbehind: true,
6
+ inside: {
7
+ 'italic': /\b(?:TODO|FIXME|XXX)\b/
8
+ }
9
+ },
10
+
11
+ 'string': {
12
+ pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,
13
+ greedy: true
14
+ },
15
+
16
+ 'boolean': /\b[TF]\b/,
17
+
18
+ 'function': {
19
+ pattern: /(?:function|hook|event) \w+(?:::\w+)?/,
20
+ inside: {
21
+ keyword: /^(?:function|hook|event)/
22
+ }
23
+ },
24
+
25
+ 'variable': {
26
+ pattern: /(?:global|local) \w+/i,
27
+ inside: {
28
+ keyword: /(?:global|local)/
29
+ }
30
+ },
31
+
32
+ 'builtin': /(?:@(?:load(?:-(?:sigs|plugin))?|unload|prefixes|ifn?def|else|(?:end)?if|DIR|FILENAME))|(?:&?(?:redef|priority|log|optional|default|add_func|delete_func|expire_func|read_expire|write_expire|create_expire|synchronized|persistent|rotate_interval|rotate_size|encrypt|raw_output|mergeable|group|error_handler|type_column))/,
33
+
34
+ 'constant': {
35
+ pattern: /const \w+/i,
36
+ inside: {
37
+ keyword: /const/
38
+ }
39
+ },
40
+
41
+ 'keyword': /\b(?:break|next|continue|alarm|using|of|add|delete|export|print|return|schedule|when|timeout|addr|any|bool|count|double|enum|file|int|interval|pattern|opaque|port|record|set|string|subnet|table|time|vector|for|if|else|in|module|function)\b/,
42
+
43
+ 'operator': /--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&|\|\|?|\?|\*|\/|~|\^|%/,
44
+
45
+ 'number': /\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i,
46
+
47
+ 'punctuation': /[{}[\];(),.:]/
48
+ };
@@ -0,0 +1,41 @@
1
+ Prism.languages.c = Prism.languages.extend('clike', {
2
+ 'comment': {
3
+ pattern: /\/\/(?:[^\r\n\\]|\\(?:\r\n?|\n|(?![\r\n])))*|\/\*[\s\S]*?(?:\*\/|$)/,
4
+ greedy: true
5
+ },
6
+ 'class-name': {
7
+ pattern: /(\b(?:enum|struct)\s+(?:__attribute__\s*\(\([\s\S]*?\)\)\s*)?)\w+/,
8
+ lookbehind: true
9
+ },
10
+ 'keyword': /\b(?:__attribute__|_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/,
11
+ 'function': /[a-z_]\w*(?=\s*\()/i,
12
+ 'operator': />>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/,
13
+ 'number': /(?:\b0x(?:[\da-f]+\.?[\da-f]*|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i
14
+ });
15
+
16
+ Prism.languages.insertBefore('c', 'string', {
17
+ 'macro': {
18
+ // allow for multiline macro definitions
19
+ // spaces after the # character compile fine with gcc
20
+ pattern: /(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im,
21
+ lookbehind: true,
22
+ alias: 'property',
23
+ inside: {
24
+ // highlight the path of the include statement as a string
25
+ 'string': {
26
+ pattern: /(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/,
27
+ lookbehind: true
28
+ },
29
+ // highlight macro directives as keywords
30
+ 'directive': {
31
+ pattern: /(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/,
32
+ lookbehind: true,
33
+ alias: 'keyword'
34
+ }
35
+ }
36
+ },
37
+ // highlight predefined macros as constants
38
+ 'constant': /\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/
39
+ });
40
+
41
+ delete Prism.languages.c['boolean'];
@@ -0,0 +1,27 @@
1
+ Prism.languages.cil = {
2
+ 'comment': /\/\/.*/,
3
+
4
+ 'string': {
5
+ pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,
6
+ greedy: true
7
+ },
8
+
9
+ 'directive': {
10
+ pattern: /(^|\W)\.[a-z]+(?=\s)/,
11
+ lookbehind: true,
12
+ alias: 'class-name'
13
+ },
14
+
15
+ // Actually an assembly reference
16
+ 'variable': /\[[\w\.]+\]/,
17
+
18
+
19
+ 'keyword': /\b(?:abstract|ansi|assembly|auto|autochar|beforefieldinit|bool|bstr|byvalstr|catch|char|cil|class|currency|date|decimal|default|enum|error|explicit|extends|extern|famandassem|family|famorassem|final(?:ly)?|float32|float64|hidebysig|iant|idispatch|implements|import|initonly|instance|u?int(?:8|16|32|64)?|interface|iunknown|literal|lpstr|lpstruct|lptstr|lpwstr|managed|method|native(?:Type)?|nested|newslot|object(?:ref)?|pinvokeimpl|private|privatescope|public|reqsecobj|rtspecialname|runtime|sealed|sequential|serializable|specialname|static|string|struct|syschar|tbstr|unicode|unmanagedexp|unsigned|value(?:type)?|variant|virtual|void)\b/,
20
+
21
+ 'function': /\b(?:(?:constrained|unaligned|volatile|readonly|tail|no)\.)?(?:conv\.(?:[iu][1248]?|ovf\.[iu][1248]?(?:\.un)?|r\.un|r4|r8)|ldc\.(?:i4(?:\.[0-9]+|\.[mM]1|\.s)?|i8|r4|r8)|ldelem(?:\.[iu][1248]?|\.r[48]|\.ref|a)?|ldind\.(?:[iu][1248]?|r[48]|ref)|stelem\.?(?:i[1248]?|r[48]|ref)?|stind\.(?:i[1248]?|r[48]|ref)?|end(?:fault|filter|finally)|ldarg(?:\.[0-3s]|a(?:\.s)?)?|ldloc(?:\.[0-9]+|\.s)?|sub(?:\.ovf(?:\.un)?)?|mul(?:\.ovf(?:\.un)?)?|add(?:\.ovf(?:\.un)?)?|stloc(?:\.[0-3s])?|refany(?:type|val)|blt(?:\.un)?(?:\.s)?|ble(?:\.un)?(?:\.s)?|bgt(?:\.un)?(?:\.s)?|bge(?:\.un)?(?:\.s)?|unbox(?:\.any)?|init(?:blk|obj)|call(?:i|virt)?|brfalse(?:\.s)?|bne\.un(?:\.s)?|ldloca(?:\.s)?|brzero(?:\.s)?|brtrue(?:\.s)?|brnull(?:\.s)?|brinst(?:\.s)?|starg(?:\.s)?|leave(?:\.s)?|shr(?:\.un)?|rem(?:\.un)?|div(?:\.un)?|clt(?:\.un)?|alignment|ldvirtftn|castclass|beq(?:\.s)?|mkrefany|localloc|ckfinite|rethrow|ldtoken|ldsflda|cgt\.un|arglist|switch|stsfld|sizeof|newobj|newarr|ldsfld|ldnull|ldflda|isinst|throw|stobj|stloc|stfld|ldstr|ldobj|ldlen|ldftn|ldfld|cpobj|cpblk|break|br\.s|xor|shl|ret|pop|not|nop|neg|jmp|dup|clt|cgt|ceq|box|and|or|br)\b/,
22
+
23
+ 'boolean': /\b(?:true|false)\b/,
24
+ 'number': /\b-?(?:0x[0-9a-fA-F]+|[0-9]+)(?:\.[0-9a-fA-F]+)?\b/i,
25
+
26
+ 'punctuation': /[{}[\];(),:=]|IL_[0-9A-Za-z]+/
27
+ }
@@ -0,0 +1,30 @@
1
+ Prism.languages.clike = {
2
+ 'comment': [
3
+ {
4
+ pattern: /(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,
5
+ lookbehind: true
6
+ },
7
+ {
8
+ pattern: /(^|[^\\:])\/\/.*/,
9
+ lookbehind: true,
10
+ greedy: true
11
+ }
12
+ ],
13
+ 'string': {
14
+ pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,
15
+ greedy: true
16
+ },
17
+ 'class-name': {
18
+ pattern: /(\b(?:class|interface|extends|implements|trait|instanceof|new)\s+|\bcatch\s+\()[\w.\\]+/i,
19
+ lookbehind: true,
20
+ inside: {
21
+ 'punctuation': /[.\\]/
22
+ }
23
+ },
24
+ 'keyword': /\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,
25
+ 'boolean': /\b(?:true|false)\b/,
26
+ 'function': /\w+(?=\()/,
27
+ 'number': /\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i,
28
+ 'operator': /[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,
29
+ 'punctuation': /[{}[\];(),.:]/
30
+ };
@@ -0,0 +1,16 @@
1
+ // Copied from https://github.com/jeluard/prism-clojure
2
+ Prism.languages.clojure = {
3
+ 'comment': /;.*/,
4
+ 'string': {
5
+ pattern: /"(?:[^"\\]|\\.)*"/,
6
+ greedy: true
7
+ },
8
+ 'operator': /(?:::|[:|'])\b[a-z][\w*+!?-]*\b/i, //used for symbols and keywords
9
+ 'keyword': {
10
+ pattern: /([^\w+*'?-])(?:def|if|do|let|\.\.|quote|var|->>|->|fn|loop|recur|throw|try|monitor-enter|\.|new|set!|def\-|defn|defn\-|defmacro|defmulti|defmethod|defstruct|defonce|declare|definline|definterface|defprotocol|==|defrecord|>=|deftype|<=|defproject|ns|\*|\+|\-|\/|<|=|>|accessor|agent|agent-errors|aget|alength|all-ns|alter|and|append-child|apply|array-map|aset|aset-boolean|aset-byte|aset-char|aset-double|aset-float|aset-int|aset-long|aset-short|assert|assoc|await|await-for|bean|binding|bit-and|bit-not|bit-or|bit-shift-left|bit-shift-right|bit-xor|boolean|branch\?|butlast|byte|cast|char|children|class|clear-agent-errors|comment|commute|comp|comparator|complement|concat|conj|cons|constantly|cond|if-not|construct-proxy|contains\?|count|create-ns|create-struct|cycle|dec|deref|difference|disj|dissoc|distinct|doall|doc|dorun|doseq|dosync|dotimes|doto|double|down|drop|drop-while|edit|end\?|ensure|eval|every\?|false\?|ffirst|file-seq|filter|find|find-doc|find-ns|find-var|first|float|flush|for|fnseq|frest|gensym|get-proxy-class|get|hash-map|hash-set|identical\?|identity|if-let|import|in-ns|inc|index|insert-child|insert-left|insert-right|inspect-table|inspect-tree|instance\?|int|interleave|intersection|into|into-array|iterate|join|key|keys|keyword|keyword\?|last|lazy-cat|lazy-cons|left|lefts|line-seq|list\*|list|load|load-file|locking|long|loop|macroexpand|macroexpand-1|make-array|make-node|map|map-invert|map\?|mapcat|max|max-key|memfn|merge|merge-with|meta|min|min-key|name|namespace|neg\?|new|newline|next|nil\?|node|not|not-any\?|not-every\?|not=|ns-imports|ns-interns|ns-map|ns-name|ns-publics|ns-refers|ns-resolve|ns-unmap|nth|nthrest|or|parse|partial|path|peek|pop|pos\?|pr|pr-str|print|print-str|println|println-str|prn|prn-str|project|proxy|proxy-mappings|quot|rand|rand-int|range|re-find|re-groups|re-matcher|re-matches|re-pattern|re-seq|read|read-line|reduce|ref|ref-set|refer|rem|remove|remove-method|remove-ns|rename|rename-keys|repeat|replace|replicate|resolve|rest|resultset-seq|reverse|rfirst|right|rights|root|rrest|rseq|second|select|select-keys|send|send-off|seq|seq-zip|seq\?|set|short|slurp|some|sort|sort-by|sorted-map|sorted-map-by|sorted-set|special-symbol\?|split-at|split-with|str|string\?|struct|struct-map|subs|subvec|symbol|symbol\?|sync|take|take-nth|take-while|test|time|to-array|to-array-2d|tree-seq|true\?|union|up|update-proxy|val|vals|var-get|var-set|var\?|vector|vector-zip|vector\?|when|when-first|when-let|when-not|with-local-vars|with-meta|with-open|with-out-str|xml-seq|xml-zip|zero\?|zipmap|zipper)(?=[^\w+*'?-])/,
11
+ lookbehind: true
12
+ },
13
+ 'boolean': /\b(?:true|false|nil)\b/,
14
+ 'number': /\b[\da-f]+\b/i,
15
+ 'punctuation': /[{}\[\](),]/
16
+ };
@@ -0,0 +1,29 @@
1
+ Prism.languages.cmake = {
2
+ 'comment': /#.*/,
3
+ 'string': {
4
+ pattern: /"(?:[^\\"]|\\.)*"/,
5
+ greedy: true,
6
+ inside: {
7
+ 'interpolation': {
8
+ pattern: /\${(?:[^{}$]|\${[^{}$]*})*}/,
9
+ inside: {
10
+ 'punctuation': /\${|}/,
11
+ 'variable': /\w+/
12
+ }
13
+ }
14
+ }
15
+ },
16
+ 'variable': /\b(?:CMAKE_\w+|\w+_(?:VERSION(?:_MAJOR|_MINOR|_PATCH|_TWEAK)?|(?:BINARY|SOURCE)_DIR|DESCRIPTION|HOMEPAGE_URL|ROOT)|(?:CTEST_CUSTOM_(?:MAXIMUM_(?:(?:FAIL|PASS)ED_TEST_OUTPUT_SIZE|NUMBER_OF_(?:ERROR|WARNING)S)|ERROR_(?:P(?:OST|RE)_CONTEXT|EXCEPTION|MATCH)|P(?:OST|RE)_MEMCHECK|WARNING_(?:EXCEPTION|MATCH)|(?:MEMCHECK|TESTS)_IGNORE|P(?:OST|RE)_TEST|COVERAGE_EXCLUDE)|ANDROID|APPLE|BORLAND|BUILD_SHARED_LIBS|CACHE|CPACK_(?:ABSOLUTE_DESTINATION_FILES|COMPONENT_INCLUDE_TOPLEVEL_DIRECTORY|ERROR_ON_ABSOLUTE_INSTALL_DESTINATION|INCLUDE_TOPLEVEL_DIRECTORY|INSTALL_DEFAULT_DIRECTORY_PERMISSIONS|INSTALL_SCRIPT|PACKAGING_INSTALL_PREFIX|SET_DESTDIR|WARN_ON_ABSOLUTE_INSTALL_DESTINATION)|CTEST_(?:BINARY_DIRECTORY|BUILD_COMMAND|BUILD_NAME|BZR_COMMAND|BZR_UPDATE_OPTIONS|CHANGE_ID|CHECKOUT_COMMAND|CONFIGURATION_TYPE|CONFIGURE_COMMAND|COVERAGE_COMMAND|COVERAGE_EXTRA_FLAGS|CURL_OPTIONS|CUSTOM_(?:COVERAGE_EXCLUDE|ERROR_EXCEPTION|ERROR_MATCH|ERROR_POST_CONTEXT|ERROR_PRE_CONTEXT|MAXIMUM_FAILED_TEST_OUTPUT_SIZE|MAXIMUM_NUMBER_OF_(?:ERRORS|WARNINGS)|MAXIMUM_PASSED_TEST_OUTPUT_SIZE|MEMCHECK_IGNORE|POST_MEMCHECK|POST_TEST|PRE_MEMCHECK|PRE_TEST|TESTS_IGNORE|WARNING_EXCEPTION|WARNING_MATCH)|CVS_CHECKOUT|CVS_COMMAND|CVS_UPDATE_OPTIONS|DROP_LOCATION|DROP_METHOD|DROP_SITE|DROP_SITE_CDASH|DROP_SITE_PASSWORD|DROP_SITE_USER|EXTRA_COVERAGE_GLOB|GIT_COMMAND|GIT_INIT_SUBMODULES|GIT_UPDATE_CUSTOM|GIT_UPDATE_OPTIONS|HG_COMMAND|HG_UPDATE_OPTIONS|LABELS_FOR_SUBPROJECTS|MEMORYCHECK_(?:COMMAND|COMMAND_OPTIONS|SANITIZER_OPTIONS|SUPPRESSIONS_FILE|TYPE)|NIGHTLY_START_TIME|P4_CLIENT|P4_COMMAND|P4_OPTIONS|P4_UPDATE_OPTIONS|RUN_CURRENT_SCRIPT|SCP_COMMAND|SITE|SOURCE_DIRECTORY|SUBMIT_URL|SVN_COMMAND|SVN_OPTIONS|SVN_UPDATE_OPTIONS|TEST_LOAD|TEST_TIMEOUT|TRIGGER_SITE|UPDATE_COMMAND|UPDATE_OPTIONS|UPDATE_VERSION_ONLY|USE_LAUNCHERS)|CYGWIN|ENV|EXECUTABLE_OUTPUT_PATH|GHS-MULTI|IOS|LIBRARY_OUTPUT_PATH|MINGW|MSVC(?:10|11|12|14|60|70|71|80|90|_IDE|_TOOLSET_VERSION|_VERSION)?|MSYS|PROJECT_(?:BINARY_DIR|DESCRIPTION|HOMEPAGE_URL|NAME|SOURCE_DIR|VERSION|VERSION_(?:MAJOR|MINOR|PATCH|TWEAK))|UNIX|WIN32|WINCE|WINDOWS_PHONE|WINDOWS_STORE|XCODE|XCODE_VERSION))\b/,
17
+ 'property': /\b(?:cxx_\w+|(?:ARCHIVE_OUTPUT_(?:DIRECTORY|NAME)|COMPILE_DEFINITIONS|COMPILE_PDB_NAME|COMPILE_PDB_OUTPUT_DIRECTORY|EXCLUDE_FROM_DEFAULT_BUILD|IMPORTED_(?:IMPLIB|LIBNAME|LINK_DEPENDENT_LIBRARIES|LINK_INTERFACE_LANGUAGES|LINK_INTERFACE_LIBRARIES|LINK_INTERFACE_MULTIPLICITY|LOCATION|NO_SONAME|OBJECTS|SONAME)|INTERPROCEDURAL_OPTIMIZATION|LIBRARY_OUTPUT_DIRECTORY|LIBRARY_OUTPUT_NAME|LINK_FLAGS|LINK_INTERFACE_LIBRARIES|LINK_INTERFACE_MULTIPLICITY|LOCATION|MAP_IMPORTED_CONFIG|OSX_ARCHITECTURES|OUTPUT_NAME|PDB_NAME|PDB_OUTPUT_DIRECTORY|RUNTIME_OUTPUT_DIRECTORY|RUNTIME_OUTPUT_NAME|STATIC_LIBRARY_FLAGS|VS_CSHARP|VS_DOTNET_REFERENCEPROP|VS_DOTNET_REFERENCE|VS_GLOBAL_SECTION_POST|VS_GLOBAL_SECTION_PRE|VS_GLOBAL|XCODE_ATTRIBUTE)_\w+|\w+_(?:CLANG_TIDY|COMPILER_LAUNCHER|CPPCHECK|CPPLINT|INCLUDE_WHAT_YOU_USE|OUTPUT_NAME|POSTFIX|VISIBILITY_PRESET)|ABSTRACT|ADDITIONAL_MAKE_CLEAN_FILES|ADVANCED|ALIASED_TARGET|ALLOW_DUPLICATE_CUSTOM_TARGETS|ANDROID_(?:ANT_ADDITIONAL_OPTIONS|API|API_MIN|ARCH|ASSETS_DIRECTORIES|GUI|JAR_DEPENDENCIES|NATIVE_LIB_DEPENDENCIES|NATIVE_LIB_DIRECTORIES|PROCESS_MAX|PROGUARD|PROGUARD_CONFIG_PATH|SECURE_PROPS_PATH|SKIP_ANT_STEP|STL_TYPE)|ARCHIVE_OUTPUT_DIRECTORY|ARCHIVE_OUTPUT_NAME|ATTACHED_FILES|ATTACHED_FILES_ON_FAIL|AUTOGEN_(?:BUILD_DIR|ORIGIN_DEPENDS|PARALLEL|SOURCE_GROUP|TARGETS_FOLDER|TARGET_DEPENDS)|AUTOMOC|AUTOMOC_(?:COMPILER_PREDEFINES|DEPEND_FILTERS|EXECUTABLE|MACRO_NAMES|MOC_OPTIONS|SOURCE_GROUP|TARGETS_FOLDER)|AUTORCC|AUTORCC_EXECUTABLE|AUTORCC_OPTIONS|AUTORCC_SOURCE_GROUP|AUTOUIC|AUTOUIC_EXECUTABLE|AUTOUIC_OPTIONS|AUTOUIC_SEARCH_PATHS|BINARY_DIR|BUILDSYSTEM_TARGETS|BUILD_RPATH|BUILD_RPATH_USE_ORIGIN|BUILD_WITH_INSTALL_NAME_DIR|BUILD_WITH_INSTALL_RPATH|BUNDLE|BUNDLE_EXTENSION|CACHE_VARIABLES|CLEAN_NO_CUSTOM|COMMON_LANGUAGE_RUNTIME|COMPATIBLE_INTERFACE_(?:BOOL|NUMBER_MAX|NUMBER_MIN|STRING)|COMPILE_(?:DEFINITIONS|FEATURES|FLAGS|OPTIONS|PDB_NAME|PDB_OUTPUT_DIRECTORY)|COST|CPACK_DESKTOP_SHORTCUTS|CPACK_NEVER_OVERWRITE|CPACK_PERMANENT|CPACK_STARTUP_SHORTCUTS|CPACK_START_MENU_SHORTCUTS|CPACK_WIX_ACL|CROSSCOMPILING_EMULATOR|CUDA_EXTENSIONS|CUDA_PTX_COMPILATION|CUDA_RESOLVE_DEVICE_SYMBOLS|CUDA_SEPARABLE_COMPILATION|CUDA_STANDARD|CUDA_STANDARD_REQUIRED|CXX_EXTENSIONS|CXX_STANDARD|CXX_STANDARD_REQUIRED|C_EXTENSIONS|C_STANDARD|C_STANDARD_REQUIRED|DEBUG_CONFIGURATIONS|DEBUG_POSTFIX|DEFINE_SYMBOL|DEFINITIONS|DEPENDS|DEPLOYMENT_ADDITIONAL_FILES|DEPLOYMENT_REMOTE_DIRECTORY|DISABLED|DISABLED_FEATURES|ECLIPSE_EXTRA_CPROJECT_CONTENTS|ECLIPSE_EXTRA_NATURES|ENABLED_FEATURES|ENABLED_LANGUAGES|ENABLE_EXPORTS|ENVIRONMENT|EXCLUDE_FROM_ALL|EXCLUDE_FROM_DEFAULT_BUILD|EXPORT_NAME|EXPORT_PROPERTIES|EXTERNAL_OBJECT|EchoString|FAIL_REGULAR_EXPRESSION|FIND_LIBRARY_USE_LIB32_PATHS|FIND_LIBRARY_USE_LIB64_PATHS|FIND_LIBRARY_USE_LIBX32_PATHS|FIND_LIBRARY_USE_OPENBSD_VERSIONING|FIXTURES_CLEANUP|FIXTURES_REQUIRED|FIXTURES_SETUP|FOLDER|FRAMEWORK|Fortran_FORMAT|Fortran_MODULE_DIRECTORY|GENERATED|GENERATOR_FILE_NAME|GENERATOR_IS_MULTI_CONFIG|GHS_INTEGRITY_APP|GHS_NO_SOURCE_GROUP_FILE|GLOBAL_DEPENDS_DEBUG_MODE|GLOBAL_DEPENDS_NO_CYCLES|GNUtoMS|HAS_CXX|HEADER_FILE_ONLY|HELPSTRING|IMPLICIT_DEPENDS_INCLUDE_TRANSFORM|IMPORTED|IMPORTED_(?:COMMON_LANGUAGE_RUNTIME|CONFIGURATIONS|GLOBAL|IMPLIB|LIBNAME|LINK_DEPENDENT_LIBRARIES|LINK_INTERFACE_(?:LANGUAGES|LIBRARIES|MULTIPLICITY)|LOCATION|NO_SONAME|OBJECTS|SONAME)|IMPORT_PREFIX|IMPORT_SUFFIX|INCLUDE_DIRECTORIES|INCLUDE_REGULAR_EXPRESSION|INSTALL_NAME_DIR|INSTALL_RPATH|INSTALL_RPATH_USE_LINK_PATH|INTERFACE_(?:AUTOUIC_OPTIONS|COMPILE_DEFINITIONS|COMPILE_FEATURES|COMPILE_OPTIONS|INCLUDE_DIRECTORIES|LINK_DEPENDS|LINK_DIRECTORIES|LINK_LIBRARIES|LINK_OPTIONS|POSITION_INDEPENDENT_CODE|SOURCES|SYSTEM_INCLUDE_DIRECTORIES)|INTERPROCEDURAL_OPTIMIZATION|IN_TRY_COMPILE|IOS_INSTALL_COMBINED|JOB_POOLS|JOB_POOL_COMPILE|JOB_POOL_LINK|KEEP_EXTENSION|LABELS|LANGUAGE|LIBRARY_OUTPUT_DIRECTORY|LIBRARY_OUTPUT_NAME|LINKER_LANGUAGE|LINK_(?:DEPENDS|DEPENDS_NO_SHARED|DIRECTORIES|FLAGS|INTERFACE_LIBRARIES|INTERFACE_MULTIPLICITY|LIBRARIES|OPTIONS|SEARCH_END_STATIC|SEARCH_START_STATIC|WHAT_YOU_USE)|LISTFILE_STACK|LOCATION|MACOSX_BUNDLE|MACOSX_BUNDLE_INFO_PLIST|MACOSX_FRAMEWORK_INFO_PLIST|MACOSX_PACKAGE_LOCATION|MACOSX_RPATH|MACROS|MANUALLY_ADDED_DEPENDENCIES|MEASUREMENT|MODIFIED|NAME|NO_SONAME|NO_SYSTEM_FROM_IMPORTED|OBJECT_DEPENDS|OBJECT_OUTPUTS|OSX_ARCHITECTURES|OUTPUT_NAME|PACKAGES_FOUND|PACKAGES_NOT_FOUND|PARENT_DIRECTORY|PASS_REGULAR_EXPRESSION|PDB_NAME|PDB_OUTPUT_DIRECTORY|POSITION_INDEPENDENT_CODE|POST_INSTALL_SCRIPT|PREDEFINED_TARGETS_FOLDER|PREFIX|PRE_INSTALL_SCRIPT|PRIVATE_HEADER|PROCESSORS|PROCESSOR_AFFINITY|PROJECT_LABEL|PUBLIC_HEADER|REPORT_UNDEFINED_PROPERTIES|REQUIRED_FILES|RESOURCE|RESOURCE_LOCK|RULE_LAUNCH_COMPILE|RULE_LAUNCH_CUSTOM|RULE_LAUNCH_LINK|RULE_MESSAGES|RUNTIME_OUTPUT_DIRECTORY|RUNTIME_OUTPUT_NAME|RUN_SERIAL|SKIP_AUTOGEN|SKIP_AUTOMOC|SKIP_AUTORCC|SKIP_AUTOUIC|SKIP_BUILD_RPATH|SKIP_RETURN_CODE|SOURCES|SOURCE_DIR|SOVERSION|STATIC_LIBRARY_FLAGS|STATIC_LIBRARY_OPTIONS|STRINGS|SUBDIRECTORIES|SUFFIX|SYMBOLIC|TARGET_ARCHIVES_MAY_BE_SHARED_LIBS|TARGET_MESSAGES|TARGET_SUPPORTS_SHARED_LIBS|TESTS|TEST_INCLUDE_FILE|TEST_INCLUDE_FILES|TIMEOUT|TIMEOUT_AFTER_MATCH|TYPE|USE_FOLDERS|VALUE|VARIABLES|VERSION|VISIBILITY_INLINES_HIDDEN|VS_(?:CONFIGURATION_TYPE|COPY_TO_OUT_DIR|DEBUGGER_(?:COMMAND|COMMAND_ARGUMENTS|ENVIRONMENT|WORKING_DIRECTORY)|DEPLOYMENT_CONTENT|DEPLOYMENT_LOCATION|DOTNET_REFERENCES|DOTNET_REFERENCES_COPY_LOCAL|GLOBAL_KEYWORD|GLOBAL_PROJECT_TYPES|GLOBAL_ROOTNAMESPACE|INCLUDE_IN_VSIX|IOT_STARTUP_TASK|KEYWORD|RESOURCE_GENERATOR|SCC_AUXPATH|SCC_LOCALPATH|SCC_PROJECTNAME|SCC_PROVIDER|SDK_REFERENCES|SHADER_(?:DISABLE_OPTIMIZATIONS|ENABLE_DEBUG|ENTRYPOINT|FLAGS|MODEL|OBJECT_FILE_NAME|OUTPUT_HEADER_FILE|TYPE|VARIABLE_NAME)|STARTUP_PROJECT|TOOL_OVERRIDE|USER_PROPS|WINRT_COMPONENT|WINRT_EXTENSIONS|WINRT_REFERENCES|XAML_TYPE)|WILL_FAIL|WIN32_EXECUTABLE|WINDOWS_EXPORT_ALL_SYMBOLS|WORKING_DIRECTORY|WRAP_EXCLUDE|XCODE_(?:EMIT_EFFECTIVE_PLATFORM_NAME|EXPLICIT_FILE_TYPE|FILE_ATTRIBUTES|LAST_KNOWN_FILE_TYPE|PRODUCT_TYPE|SCHEME_(?:ADDRESS_SANITIZER|ADDRESS_SANITIZER_USE_AFTER_RETURN|ARGUMENTS|DISABLE_MAIN_THREAD_CHECKER|DYNAMIC_LIBRARY_LOADS|DYNAMIC_LINKER_API_USAGE|ENVIRONMENT|EXECUTABLE|GUARD_MALLOC|MAIN_THREAD_CHECKER_STOP|MALLOC_GUARD_EDGES|MALLOC_SCRIBBLE|MALLOC_STACK|THREAD_SANITIZER(?:_STOP)?|UNDEFINED_BEHAVIOUR_SANITIZER(?:_STOP)?|ZOMBIE_OBJECTS))|XCTEST)\b/,
18
+ 'keyword': /\b(?:add_compile_definitions|add_compile_options|add_custom_command|add_custom_target|add_definitions|add_dependencies|add_executable|add_library|add_link_options|add_subdirectory|add_test|aux_source_directory|break|build_command|build_name|cmake_host_system_information|cmake_minimum_required|cmake_parse_arguments|cmake_policy|configure_file|continue|create_test_sourcelist|ctest_build|ctest_configure|ctest_coverage|ctest_empty_binary_directory|ctest_memcheck|ctest_read_custom_files|ctest_run_script|ctest_sleep|ctest_start|ctest_submit|ctest_test|ctest_update|ctest_upload|define_property|else|elseif|enable_language|enable_testing|endforeach|endfunction|endif|endmacro|endwhile|exec_program|execute_process|export|export_library_dependencies|file|find_file|find_library|find_package|find_path|find_program|fltk_wrap_ui|foreach|function|get_cmake_property|get_directory_property|get_filename_component|get_property|get_source_file_property|get_target_property|get_test_property|if|include|include_directories|include_external_msproject|include_guard|include_regular_expression|install|install_files|install_programs|install_targets|link_directories|link_libraries|list|load_cache|load_command|macro|make_directory|mark_as_advanced|math|message|option|output_required_files|project|qt_wrap_cpp|qt_wrap_ui|remove|remove_definitions|return|separate_arguments|set|set_directory_properties|set_property|set_source_files_properties|set_target_properties|set_tests_properties|site_name|source_group|string|subdir_depends|subdirs|target_compile_definitions|target_compile_features|target_compile_options|target_include_directories|target_link_directories|target_link_libraries|target_link_options|target_sources|try_compile|try_run|unset|use_mangled_mesa|utility_source|variable_requires|variable_watch|while|write_file)(?=\s*\()\b/,
19
+ 'boolean': /\b(?:ON|OFF|TRUE|FALSE)\b/,
20
+ 'namespace': /\b(?:PROPERTIES|SHARED|PRIVATE|STATIC|PUBLIC|INTERFACE|TARGET_OBJECTS)\b/,
21
+ 'operator': /\b(?:NOT|AND|OR|MATCHES|LESS|GREATER|EQUAL|STRLESS|STRGREATER|STREQUAL|VERSION_LESS|VERSION_EQUAL|VERSION_GREATER|DEFINED)\b/,
22
+ 'inserted': {
23
+ pattern: /\b\w+::\w+\b/,
24
+ alias: 'class-name'
25
+ },
26
+ 'number': /\b\d+(?:\.\d+)*\b/,
27
+ 'function': /\b[a-z_]\w*(?=\s*\()\b/i,
28
+ 'punctuation': /[()>}]|\$[<{]/
29
+ };
@@ -13,20 +13,20 @@ Prism.languages.coffeescript = Prism.languages.extend('javascript', {
13
13
 
14
14
  // Strings are multiline
15
15
  {
16
- pattern: /'(?:\\?[^\\])*?'/,
17
- greedy: true,
16
+ pattern: /'(?:\\[\s\S]|[^\\'])*'/,
17
+ greedy: true
18
18
  },
19
19
 
20
20
  {
21
21
  // Strings are multiline
22
- pattern: /"(?:\\?[^\\])*?"/,
22
+ pattern: /"(?:\\[\s\S]|[^\\"])*"/,
23
23
  greedy: true,
24
24
  inside: {
25
25
  'interpolation': interpolation
26
26
  }
27
27
  }
28
28
  ],
29
- 'keyword': /\b(and|break|by|catch|class|continue|debugger|delete|do|each|else|extend|extends|false|finally|for|if|in|instanceof|is|isnt|let|loop|namespace|new|no|not|null|of|off|on|or|own|return|super|switch|then|this|throw|true|try|typeof|undefined|unless|until|when|while|window|with|yes|yield)\b/,
29
+ 'keyword': /\b(?:and|break|by|catch|class|continue|debugger|delete|do|each|else|extend|extends|false|finally|for|if|in|instanceof|is|isnt|let|loop|namespace|new|no|not|null|of|off|on|or|own|return|super|switch|then|this|throw|true|try|typeof|undefined|unless|until|when|while|window|with|yes|yield)\b/,
30
30
  'class-member': {
31
31
  pattern: /@(?!\d)\w+/,
32
32
  alias: 'variable'
@@ -52,7 +52,7 @@ Prism.languages.insertBefore('coffeescript', 'comment', {
52
52
 
53
53
  Prism.languages.insertBefore('coffeescript', 'string', {
54
54
  'inline-javascript': {
55
- pattern: /`(?:\\?[\s\S])*?`/,
55
+ pattern: /`(?:\\[\s\S]|[^\\`])*`/,
56
56
  inside: {
57
57
  'delimiter': {
58
58
  pattern: /^`|`$/,
@@ -88,4 +88,5 @@ Prism.languages.insertBefore('coffeescript', 'keyword', {
88
88
 
89
89
  delete Prism.languages.coffeescript['template-string'];
90
90
 
91
+ Prism.languages.coffee = Prism.languages.coffeescript;
91
92
  }(Prism));
@@ -0,0 +1,48 @@
1
+ Prism.languages.concurnas = {
2
+ 'comment': [
3
+ {
4
+ pattern: /(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,
5
+ lookbehind: true
6
+ },
7
+ {
8
+ pattern: /(^|[^\\:])\/\/.*/,
9
+ lookbehind: true,
10
+ greedy: true
11
+ }
12
+ ],
13
+ 'langext': {
14
+ pattern: /\w+\s*\|\|[\s\S]+?\|\|/,
15
+ greedy: true,
16
+ alias: 'string'
17
+ },
18
+ 'function': {
19
+ pattern: /((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/,
20
+ lookbehind: true
21
+ },
22
+ 'keyword': /\b(?:abstract|actor|also|annotation|assert|async|await|bool|boolean|break|byte|case|catch|changed|char|class|closed|constant|continue|def|default|del|double|elif|else|enum|every|extends|false|finally|float|for|from|global|gpudef|gpukernel|if|import|in|init|inject|int|lambda|local|long|loop|match|new|nodefault|null|of|onchange|open|out|override|package|parfor|parforsync|post|pre|private|protected|provide|provider|public|return|shared|short|single|size_t|sizeof|super|sync|this|throw|trait|trans|transient|true|try|typedef|unchecked|using|val|var|void|while|with)\b/,
23
+ 'boolean': /\b(?:false|true)\b/,
24
+ 'number': /\b0b[01][01_]*L?\b|\b0x[\da-f_]*\.?[\da-f_p+-]+\b|(?:\b\d[\d_]*\.?[\d_]*|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfls]?/i,
25
+ 'punctuation': /[{}[\];(),.:]/,
26
+ 'operator': /<==|>==|=>|->|<-|<>|\^|&==|&<>|!|\?|\?:|\.\?|\+\+|--|[-+*/=<>]=?|\b(?:and|as|band|bor|bxor|comp|is|isnot|mod|or)\b=?/,
27
+ 'annotation': {
28
+ pattern: /@(?:\w+:)?(?:\w*|\[[^\]]+\])/,
29
+ alias: 'builtin'
30
+ }
31
+ };
32
+
33
+ Prism.languages.insertBefore('concurnas', 'langext', {
34
+ 'string': {
35
+ pattern: /[rs]?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,
36
+ greedy: true,
37
+ inside: {
38
+ 'interpolation': {
39
+ pattern: /((?:^|[^\\])(?:\\{2})*){(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}/,
40
+ lookbehind: true,
41
+ inside: Prism.languages.concurnas
42
+ },
43
+ 'string': /[\s\S]+/
44
+ }
45
+ }
46
+ });
47
+
48
+ Prism.languages.conc = Prism.languages.concurnas;
@@ -0,0 +1,627 @@
1
+ var _self = (typeof window !== 'undefined')
2
+ ? window // if in browser
3
+ : (
4
+ (typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope)
5
+ ? self // if in worker
6
+ : {} // if in node js
7
+ );
8
+
9
+ /**
10
+ * Prism: Lightweight, robust, elegant syntax highlighting
11
+ * MIT license http://www.opensource.org/licenses/mit-license.php/
12
+ * @author Lea Verou http://lea.verou.me
13
+ */
14
+
15
+ var Prism = (function (_self){
16
+
17
+ // Private helper vars
18
+ var lang = /\blang(?:uage)?-([\w-]+)\b/i;
19
+ var uniqueId = 0;
20
+
21
+
22
+ var _ = {
23
+ manual: _self.Prism && _self.Prism.manual,
24
+ disableWorkerMessageHandler: _self.Prism && _self.Prism.disableWorkerMessageHandler,
25
+ util: {
26
+ encode: function encode(tokens) {
27
+ if (tokens instanceof Token) {
28
+ return new Token(tokens.type, encode(tokens.content), tokens.alias);
29
+ } else if (Array.isArray(tokens)) {
30
+ return tokens.map(encode);
31
+ } else {
32
+ return tokens.replace(/&/g, '&amp;').replace(/</g, '&lt;').replace(/\u00a0/g, ' ');
33
+ }
34
+ },
35
+
36
+ type: function (o) {
37
+ return Object.prototype.toString.call(o).slice(8, -1);
38
+ },
39
+
40
+ objId: function (obj) {
41
+ if (!obj['__id']) {
42
+ Object.defineProperty(obj, '__id', { value: ++uniqueId });
43
+ }
44
+ return obj['__id'];
45
+ },
46
+
47
+ // Deep clone a language definition (e.g. to extend it)
48
+ clone: function deepClone(o, visited) {
49
+ var clone, id, type = _.util.type(o);
50
+ visited = visited || {};
51
+
52
+ switch (type) {
53
+ case 'Object':
54
+ id = _.util.objId(o);
55
+ if (visited[id]) {
56
+ return visited[id];
57
+ }
58
+ clone = {};
59
+ visited[id] = clone;
60
+
61
+ for (var key in o) {
62
+ if (o.hasOwnProperty(key)) {
63
+ clone[key] = deepClone(o[key], visited);
64
+ }
65
+ }
66
+
67
+ return clone;
68
+
69
+ case 'Array':
70
+ id = _.util.objId(o);
71
+ if (visited[id]) {
72
+ return visited[id];
73
+ }
74
+ clone = [];
75
+ visited[id] = clone;
76
+
77
+ o.forEach(function (v, i) {
78
+ clone[i] = deepClone(v, visited);
79
+ });
80
+
81
+ return clone;
82
+
83
+ default:
84
+ return o;
85
+ }
86
+ },
87
+
88
+ /**
89
+ * Returns the Prism language of the given element set by a `language-xxxx` or `lang-xxxx` class.
90
+ *
91
+ * If no language is set for the element or the element is `null` or `undefined`, `none` will be returned.
92
+ *
93
+ * @param {Element} element
94
+ * @returns {string}
95
+ */
96
+ getLanguage: function (element) {
97
+ while (element && !lang.test(element.className)) {
98
+ element = element.parentElement;
99
+ }
100
+ if (element) {
101
+ return (element.className.match(lang) || [, 'none'])[1].toLowerCase();
102
+ }
103
+ return 'none';
104
+ },
105
+
106
+ /**
107
+ * Returns the script element that is currently executing.
108
+ *
109
+ * This does __not__ work for line script element.
110
+ *
111
+ * @returns {HTMLScriptElement | null}
112
+ */
113
+ currentScript: function () {
114
+ if (typeof document === 'undefined') {
115
+ return null;
116
+ }
117
+ if ('currentScript' in document) {
118
+ return document.currentScript;
119
+ }
120
+
121
+ // IE11 workaround
122
+ // we'll get the src of the current script by parsing IE11's error stack trace
123
+ // this will not work for inline scripts
124
+
125
+ try {
126
+ throw new Error();
127
+ } catch (err) {
128
+ // Get file src url from stack. Specifically works with the format of stack traces in IE.
129
+ // A stack will look like this:
130
+ //
131
+ // Error
132
+ // at _.util.currentScript (http://localhost/components/prism-core.js:119:5)
133
+ // at Global code (http://localhost/components/prism-core.js:606:1)
134
+
135
+ var src = (/at [^(\r\n]*\((.*):.+:.+\)$/i.exec(err.stack) || [])[1];
136
+ if (src) {
137
+ var scripts = document.getElementsByTagName('script');
138
+ for (var i in scripts) {
139
+ if (scripts[i].src == src) {
140
+ return scripts[i];
141
+ }
142
+ }
143
+ }
144
+ return null;
145
+ }
146
+ }
147
+ },
148
+
149
+ languages: {
150
+ extend: function (id, redef) {
151
+ var lang = _.util.clone(_.languages[id]);
152
+
153
+ for (var key in redef) {
154
+ lang[key] = redef[key];
155
+ }
156
+
157
+ return lang;
158
+ },
159
+
160
+ /**
161
+ * Insert a token before another token in a language literal
162
+ * As this needs to recreate the object (we cannot actually insert before keys in object literals),
163
+ * we cannot just provide an object, we need an object and a key.
164
+ * @param inside The key (or language id) of the parent
165
+ * @param before The key to insert before.
166
+ * @param insert Object with the key/value pairs to insert
167
+ * @param root The object that contains `inside`. If equal to Prism.languages, it can be omitted.
168
+ */
169
+ insertBefore: function (inside, before, insert, root) {
170
+ root = root || _.languages;
171
+ var grammar = root[inside];
172
+ var ret = {};
173
+
174
+ for (var token in grammar) {
175
+ if (grammar.hasOwnProperty(token)) {
176
+
177
+ if (token == before) {
178
+ for (var newToken in insert) {
179
+ if (insert.hasOwnProperty(newToken)) {
180
+ ret[newToken] = insert[newToken];
181
+ }
182
+ }
183
+ }
184
+
185
+ // Do not insert token which also occur in insert. See #1525
186
+ if (!insert.hasOwnProperty(token)) {
187
+ ret[token] = grammar[token];
188
+ }
189
+ }
190
+ }
191
+
192
+ var old = root[inside];
193
+ root[inside] = ret;
194
+
195
+ // Update references in other language definitions
196
+ _.languages.DFS(_.languages, function(key, value) {
197
+ if (value === old && key != inside) {
198
+ this[key] = ret;
199
+ }
200
+ });
201
+
202
+ return ret;
203
+ },
204
+
205
+ // Traverse a language definition with Depth First Search
206
+ DFS: function DFS(o, callback, type, visited) {
207
+ visited = visited || {};
208
+
209
+ var objId = _.util.objId;
210
+
211
+ for (var i in o) {
212
+ if (o.hasOwnProperty(i)) {
213
+ callback.call(o, i, o[i], type || i);
214
+
215
+ var property = o[i],
216
+ propertyType = _.util.type(property);
217
+
218
+ if (propertyType === 'Object' && !visited[objId(property)]) {
219
+ visited[objId(property)] = true;
220
+ DFS(property, callback, null, visited);
221
+ }
222
+ else if (propertyType === 'Array' && !visited[objId(property)]) {
223
+ visited[objId(property)] = true;
224
+ DFS(property, callback, i, visited);
225
+ }
226
+ }
227
+ }
228
+ }
229
+ },
230
+ plugins: {},
231
+
232
+ highlightAll: function(async, callback) {
233
+ _.highlightAllUnder(document, async, callback);
234
+ },
235
+
236
+ highlightAllUnder: function(container, async, callback) {
237
+ var env = {
238
+ callback: callback,
239
+ container: container,
240
+ selector: 'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'
241
+ };
242
+
243
+ _.hooks.run('before-highlightall', env);
244
+
245
+ env.elements = Array.prototype.slice.apply(env.container.querySelectorAll(env.selector));
246
+
247
+ _.hooks.run('before-all-elements-highlight', env);
248
+
249
+ for (var i = 0, element; element = env.elements[i++];) {
250
+ _.highlightElement(element, async === true, env.callback);
251
+ }
252
+ },
253
+
254
+ highlightElement: function(element, async, callback) {
255
+ // Find language
256
+ var language = _.util.getLanguage(element);
257
+ var grammar = _.languages[language];
258
+
259
+ // Set language on the element, if not present
260
+ element.className = element.className.replace(lang, '').replace(/\s+/g, ' ') + ' language-' + language;
261
+
262
+ // Set language on the parent, for styling
263
+ var parent = element.parentNode;
264
+ if (parent && parent.nodeName.toLowerCase() === 'pre') {
265
+ parent.className = parent.className.replace(lang, '').replace(/\s+/g, ' ') + ' language-' + language;
266
+ }
267
+
268
+ var code = element.textContent;
269
+
270
+ var env = {
271
+ element: element,
272
+ language: language,
273
+ grammar: grammar,
274
+ code: code
275
+ };
276
+
277
+ function insertHighlightedCode(highlightedCode) {
278
+ env.highlightedCode = highlightedCode;
279
+
280
+ _.hooks.run('before-insert', env);
281
+
282
+ env.element.innerHTML = env.highlightedCode;
283
+
284
+ _.hooks.run('after-highlight', env);
285
+ _.hooks.run('complete', env);
286
+ callback && callback.call(env.element);
287
+ }
288
+
289
+ _.hooks.run('before-sanity-check', env);
290
+
291
+ if (!env.code) {
292
+ _.hooks.run('complete', env);
293
+ callback && callback.call(env.element);
294
+ return;
295
+ }
296
+
297
+ _.hooks.run('before-highlight', env);
298
+
299
+ if (!env.grammar) {
300
+ insertHighlightedCode(_.util.encode(env.code));
301
+ return;
302
+ }
303
+
304
+ if (async && _self.Worker) {
305
+ var worker = new Worker(_.filename);
306
+
307
+ worker.onmessage = function(evt) {
308
+ insertHighlightedCode(evt.data);
309
+ };
310
+
311
+ worker.postMessage(JSON.stringify({
312
+ language: env.language,
313
+ code: env.code,
314
+ immediateClose: true
315
+ }));
316
+ }
317
+ else {
318
+ insertHighlightedCode(_.highlight(env.code, env.grammar, env.language));
319
+ }
320
+ },
321
+
322
+ highlight: function (text, grammar, language) {
323
+ var env = {
324
+ code: text,
325
+ grammar: grammar,
326
+ language: language
327
+ };
328
+ _.hooks.run('before-tokenize', env);
329
+ env.tokens = _.tokenize(env.code, env.grammar);
330
+ _.hooks.run('after-tokenize', env);
331
+ return Token.stringify(_.util.encode(env.tokens), env.language);
332
+ },
333
+
334
+ matchGrammar: function (text, strarr, grammar, index, startPos, oneshot, target) {
335
+ for (var token in grammar) {
336
+ if (!grammar.hasOwnProperty(token) || !grammar[token]) {
337
+ continue;
338
+ }
339
+
340
+ var patterns = grammar[token];
341
+ patterns = Array.isArray(patterns) ? patterns : [patterns];
342
+
343
+ for (var j = 0; j < patterns.length; ++j) {
344
+ if (target && target == token + ',' + j) {
345
+ return;
346
+ }
347
+
348
+ var pattern = patterns[j],
349
+ inside = pattern.inside,
350
+ lookbehind = !!pattern.lookbehind,
351
+ greedy = !!pattern.greedy,
352
+ lookbehindLength = 0,
353
+ alias = pattern.alias;
354
+
355
+ if (greedy && !pattern.pattern.global) {
356
+ // Without the global flag, lastIndex won't work
357
+ var flags = pattern.pattern.toString().match(/[imsuy]*$/)[0];
358
+ pattern.pattern = RegExp(pattern.pattern.source, flags + 'g');
359
+ }
360
+
361
+ pattern = pattern.pattern || pattern;
362
+
363
+ // Don’t cache length as it changes during the loop
364
+ for (var i = index, pos = startPos; i < strarr.length; pos += strarr[i].length, ++i) {
365
+
366
+ var str = strarr[i];
367
+
368
+ if (strarr.length > text.length) {
369
+ // Something went terribly wrong, ABORT, ABORT!
370
+ return;
371
+ }
372
+
373
+ if (str instanceof Token) {
374
+ continue;
375
+ }
376
+
377
+ if (greedy && i != strarr.length - 1) {
378
+ pattern.lastIndex = pos;
379
+ var match = pattern.exec(text);
380
+ if (!match) {
381
+ break;
382
+ }
383
+
384
+ var from = match.index + (lookbehind && match[1] ? match[1].length : 0),
385
+ to = match.index + match[0].length,
386
+ k = i,
387
+ p = pos;
388
+
389
+ for (var len = strarr.length; k < len && (p < to || (!strarr[k].type && !strarr[k - 1].greedy)); ++k) {
390
+ p += strarr[k].length;
391
+ // Move the index i to the element in strarr that is closest to from
392
+ if (from >= p) {
393
+ ++i;
394
+ pos = p;
395
+ }
396
+ }
397
+
398
+ // If strarr[i] is a Token, then the match starts inside another Token, which is invalid
399
+ if (strarr[i] instanceof Token) {
400
+ continue;
401
+ }
402
+
403
+ // Number of tokens to delete and replace with the new match
404
+ delNum = k - i;
405
+ str = text.slice(pos, p);
406
+ match.index -= pos;
407
+ } else {
408
+ pattern.lastIndex = 0;
409
+
410
+ var match = pattern.exec(str),
411
+ delNum = 1;
412
+ }
413
+
414
+ if (!match) {
415
+ if (oneshot) {
416
+ break;
417
+ }
418
+
419
+ continue;
420
+ }
421
+
422
+ if(lookbehind) {
423
+ lookbehindLength = match[1] ? match[1].length : 0;
424
+ }
425
+
426
+ var from = match.index + lookbehindLength,
427
+ match = match[0].slice(lookbehindLength),
428
+ to = from + match.length,
429
+ before = str.slice(0, from),
430
+ after = str.slice(to);
431
+
432
+ var args = [i, delNum];
433
+
434
+ if (before) {
435
+ ++i;
436
+ pos += before.length;
437
+ args.push(before);
438
+ }
439
+
440
+ var wrapped = new Token(token, inside? _.tokenize(match, inside) : match, alias, match, greedy);
441
+
442
+ args.push(wrapped);
443
+
444
+ if (after) {
445
+ args.push(after);
446
+ }
447
+
448
+ Array.prototype.splice.apply(strarr, args);
449
+
450
+ if (delNum != 1)
451
+ _.matchGrammar(text, strarr, grammar, i, pos, true, token + ',' + j);
452
+
453
+ if (oneshot)
454
+ break;
455
+ }
456
+ }
457
+ }
458
+ },
459
+
460
+ tokenize: function(text, grammar) {
461
+ var strarr = [text];
462
+
463
+ var rest = grammar.rest;
464
+
465
+ if (rest) {
466
+ for (var token in rest) {
467
+ grammar[token] = rest[token];
468
+ }
469
+
470
+ delete grammar.rest;
471
+ }
472
+
473
+ _.matchGrammar(text, strarr, grammar, 0, 0, false);
474
+
475
+ return strarr;
476
+ },
477
+
478
+ hooks: {
479
+ all: {},
480
+
481
+ add: function (name, callback) {
482
+ var hooks = _.hooks.all;
483
+
484
+ hooks[name] = hooks[name] || [];
485
+
486
+ hooks[name].push(callback);
487
+ },
488
+
489
+ run: function (name, env) {
490
+ var callbacks = _.hooks.all[name];
491
+
492
+ if (!callbacks || !callbacks.length) {
493
+ return;
494
+ }
495
+
496
+ for (var i=0, callback; callback = callbacks[i++];) {
497
+ callback(env);
498
+ }
499
+ }
500
+ },
501
+
502
+ Token: Token
503
+ };
504
+
505
+ _self.Prism = _;
506
+
507
+ function Token(type, content, alias, matchedStr, greedy) {
508
+ this.type = type;
509
+ this.content = content;
510
+ this.alias = alias;
511
+ // Copy of the full string this token was created from
512
+ this.length = (matchedStr || '').length|0;
513
+ this.greedy = !!greedy;
514
+ }
515
+
516
+ Token.stringify = function stringify(o, language) {
517
+ if (typeof o == 'string') {
518
+ return o;
519
+ }
520
+ if (Array.isArray(o)) {
521
+ var s = '';
522
+ o.forEach(function (e) {
523
+ s += stringify(e, language);
524
+ });
525
+ return s;
526
+ }
527
+
528
+ var env = {
529
+ type: o.type,
530
+ content: stringify(o.content, language),
531
+ tag: 'span',
532
+ classes: ['token', o.type],
533
+ attributes: {},
534
+ language: language
535
+ };
536
+
537
+ var aliases = o.alias;
538
+ if (aliases) {
539
+ if (Array.isArray(aliases)) {
540
+ Array.prototype.push.apply(env.classes, aliases);
541
+ } else {
542
+ env.classes.push(aliases);
543
+ }
544
+ }
545
+
546
+ _.hooks.run('wrap', env);
547
+
548
+ var attributes = '';
549
+ for (var name in env.attributes) {
550
+ attributes += ' ' + name + '="' + (env.attributes[name] || '').replace(/"/g, '&quot;') + '"';
551
+ }
552
+
553
+ return '<' + env.tag + ' class="' + env.classes.join(' ') + '"' + attributes + '>' + env.content + '</' + env.tag + '>';
554
+ };
555
+
556
+ if (!_self.document) {
557
+ if (!_self.addEventListener) {
558
+ // in Node.js
559
+ return _;
560
+ }
561
+
562
+ if (!_.disableWorkerMessageHandler) {
563
+ // In worker
564
+ _self.addEventListener('message', function (evt) {
565
+ var message = JSON.parse(evt.data),
566
+ lang = message.language,
567
+ code = message.code,
568
+ immediateClose = message.immediateClose;
569
+
570
+ _self.postMessage(_.highlight(code, _.languages[lang], lang));
571
+ if (immediateClose) {
572
+ _self.close();
573
+ }
574
+ }, false);
575
+ }
576
+
577
+ return _;
578
+ }
579
+
580
+ //Get current script and highlight
581
+ var script = _.util.currentScript();
582
+
583
+ if (script) {
584
+ _.filename = script.src;
585
+
586
+ if (script.hasAttribute('data-manual')) {
587
+ _.manual = true;
588
+ }
589
+ }
590
+
591
+ function highlightAutomaticallyCallback() {
592
+ if (!_.manual) {
593
+ _.highlightAll();
594
+ }
595
+ }
596
+
597
+ if (!_.manual) {
598
+ // If the document state is "loading", then we'll use DOMContentLoaded.
599
+ // If the document state is "interactive" and the prism.js script is deferred, then we'll also use the
600
+ // DOMContentLoaded event because there might be some plugins or languages which have also been deferred and they
601
+ // might take longer one animation frame to execute which can create a race condition where only some plugins have
602
+ // been loaded when Prism.highlightAll() is executed, depending on how fast resources are loaded.
603
+ // See https://github.com/PrismJS/prism/issues/2102
604
+ var readyState = document.readyState;
605
+ if (readyState === 'loading' || readyState === 'interactive' && script && script.defer) {
606
+ document.addEventListener('DOMContentLoaded', highlightAutomaticallyCallback);
607
+ } else {
608
+ if (window.requestAnimationFrame) {
609
+ window.requestAnimationFrame(highlightAutomaticallyCallback);
610
+ } else {
611
+ window.setTimeout(highlightAutomaticallyCallback, 16);
612
+ }
613
+ }
614
+ }
615
+
616
+ return _;
617
+
618
+ })(_self);
619
+
620
+ if (typeof module !== 'undefined' && module.exports) {
621
+ module.exports = Prism;
622
+ }
623
+
624
+ // hack for components to work correctly in node.js
625
+ if (typeof global !== 'undefined') {
626
+ global.Prism = Prism;
627
+ }