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
@@ -7,7 +7,7 @@ if (typeof self === 'undefined' || !self.Prism || !self.document) {
7
7
  Prism.hooks.add('before-sanity-check', function (env) {
8
8
  if (env.code) {
9
9
  var pre = env.element.parentNode;
10
- var clsReg = /\s*\bkeep-initial-line-feed\b\s*/;
10
+ var clsReg = /(?:^|\s)keep-initial-line-feed(?:\s|$)/;
11
11
  if (
12
12
  pre && pre.nodeName.toLowerCase() === 'pre' &&
13
13
  // Apply only if nor the <pre> or the <code> have the class
@@ -18,4 +18,4 @@ Prism.hooks.add('before-sanity-check', function (env) {
18
18
  }
19
19
  });
20
20
 
21
- }());
21
+ }());
@@ -1,19 +1,84 @@
1
- (function(){
2
-
3
- if (
4
- typeof self !== 'undefined' && !self.Prism ||
5
- typeof global !== 'undefined' && !global.Prism
6
- ) {
7
- return;
8
- }
9
-
10
- Prism.hooks.add('before-highlight', function(env) {
11
- var tokens = env.grammar;
12
-
13
- tokens.tab = /\t/g;
14
- tokens.crlf = /\r\n/g;
15
- tokens.lf = /\n/g;
16
- tokens.cr = /\r/g;
17
- tokens.space = / /g;
18
- });
1
+ (function () {
2
+
3
+ if (
4
+ typeof self !== 'undefined' && !self.Prism ||
5
+ typeof global !== 'undefined' && !global.Prism
6
+ ) {
7
+ return;
8
+ }
9
+
10
+
11
+ var invisibles = {
12
+ 'tab': /\t/,
13
+ 'crlf': /\r\n/,
14
+ 'lf': /\n/,
15
+ 'cr': /\r/,
16
+ 'space': / /
17
+ };
18
+
19
+
20
+ /**
21
+ * Handles the recursive calling of `addInvisibles` for one token.
22
+ *
23
+ * @param {Object|Array} tokens The grammar or array which contains the token.
24
+ * @param {string|number} name The name or index of the token in `tokens`.
25
+ */
26
+ function handleToken(tokens, name) {
27
+ var value = tokens[name];
28
+
29
+ var type = Prism.util.type(value);
30
+ switch (type) {
31
+ case 'RegExp':
32
+ var inside = {};
33
+ tokens[name] = {
34
+ pattern: value,
35
+ inside: inside
36
+ };
37
+ addInvisibles(inside);
38
+ break;
39
+
40
+ case 'Array':
41
+ for (var i = 0, l = value.length; i < l; i++) {
42
+ handleToken(value, i);
43
+ }
44
+ break;
45
+
46
+ default: // 'Object'
47
+ var inside = value.inside || (value.inside = {});
48
+ addInvisibles(inside);
49
+ break;
50
+ }
51
+ }
52
+
53
+ /**
54
+ * Recursively adds patterns to match invisible characters to the given grammar (if not added already).
55
+ *
56
+ * @param {Object} grammar
57
+ */
58
+ function addInvisibles(grammar) {
59
+ if (!grammar || grammar['tab']) {
60
+ return;
61
+ }
62
+
63
+ // assign invisibles here to "mark" the grammar in case of self references
64
+ for (var name in invisibles) {
65
+ if (invisibles.hasOwnProperty(name)) {
66
+ grammar[name] = invisibles[name];
67
+ }
68
+ }
69
+
70
+ for (var name in grammar) {
71
+ if (grammar.hasOwnProperty(name) && !invisibles[name]) {
72
+ if (name === 'rest') {
73
+ addInvisibles(grammar['rest']);
74
+ } else {
75
+ handleToken(grammar, name);
76
+ }
77
+ }
78
+ }
79
+ }
80
+
81
+ Prism.hooks.add('before-highlight', function (env) {
82
+ addInvisibles(env.grammar);
83
+ });
19
84
  })();
@@ -1,28 +1,199 @@
1
- (function(){
1
+ (function () {
2
2
 
3
- if (typeof self === 'undefined' || !self.Prism || !self.document) {
4
- return;
5
- }
6
-
7
- if (!Prism.plugins.toolbar) {
8
- console.warn('Show Languages plugin loaded before Toolbar plugin.');
3
+ if (typeof self === 'undefined' || !self.Prism || !self.document) {
4
+ return;
5
+ }
9
6
 
10
- return;
11
- }
7
+ if (!Prism.plugins.toolbar) {
8
+ console.warn('Show Languages plugin loaded before Toolbar plugin.');
12
9
 
13
- // The languages map is built automatically with gulp
14
- var Languages = /*languages_placeholder[*/{"html":"HTML","xml":"XML","svg":"SVG","mathml":"MathML","css":"CSS","clike":"C-like","javascript":"JavaScript","abap":"ABAP","actionscript":"ActionScript","apacheconf":"Apache Configuration","apl":"APL","applescript":"AppleScript","asciidoc":"AsciiDoc","aspnet":"ASP.NET (C#)","autoit":"AutoIt","autohotkey":"AutoHotkey","basic":"BASIC","csharp":"C#","cpp":"C++","coffeescript":"CoffeeScript","css-extras":"CSS Extras","fsharp":"F#","glsl":"GLSL","graphql":"GraphQL","http":"HTTP","inform7":"Inform 7","json":"JSON","latex":"LaTeX","livescript":"LiveScript","lolcode":"LOLCODE","matlab":"MATLAB","mel":"MEL","nasm":"NASM","nginx":"nginx","nsis":"NSIS","objectivec":"Objective-C","ocaml":"OCaml","parigp":"PARI/GP","php":"PHP","php-extras":"PHP Extras","powershell":"PowerShell","properties":".properties","protobuf":"Protocol Buffers","jsx":"React JSX","rest":"reST (reStructuredText)","sas":"SAS","sass":"Sass (Sass)","scss":"Sass (Scss)","sql":"SQL","typescript":"TypeScript","vhdl":"VHDL","vim":"vim","wiki":"Wiki markup","xojo":"Xojo (REALbasic)","yaml":"YAML"}/*]*/;
15
- Prism.plugins.toolbar.registerButton('show-language', function(env) {
16
- var pre = env.element.parentNode;
17
- if (!pre || !/pre/i.test(pre.nodeName)) {
18
10
  return;
19
11
  }
20
- var language = pre.getAttribute('data-language') || Languages[env.language] || (env.language.substring(0, 1).toUpperCase() + env.language.substring(1));
21
12
 
22
- var element = document.createElement('span');
23
- element.textContent = language;
13
+ // The languages map is built automatically with gulp
14
+ var Languages = /*languages_placeholder[*/{
15
+ "html": "HTML",
16
+ "xml": "XML",
17
+ "svg": "SVG",
18
+ "mathml": "MathML",
19
+ "css": "CSS",
20
+ "clike": "C-like",
21
+ "js": "JavaScript",
22
+ "abap": "ABAP",
23
+ "abnf": "Augmented Backus–Naur form",
24
+ "antlr4": "ANTLR4",
25
+ "g4": "ANTLR4",
26
+ "apacheconf": "Apache Configuration",
27
+ "apl": "APL",
28
+ "aql": "AQL",
29
+ "arff": "ARFF",
30
+ "asciidoc": "AsciiDoc",
31
+ "adoc": "AsciiDoc",
32
+ "asm6502": "6502 Assembly",
33
+ "aspnet": "ASP.NET (C#)",
34
+ "autohotkey": "AutoHotkey",
35
+ "autoit": "AutoIt",
36
+ "shell": "Bash",
37
+ "basic": "BASIC",
38
+ "bbcode": "BBcode",
39
+ "bnf": "Backus–Naur form",
40
+ "rbnf": "Routing Backus–Naur form",
41
+ "conc": "Concurnas",
42
+ "csharp": "C#",
43
+ "cs": "C#",
44
+ "dotnet": "C#",
45
+ "cpp": "C++",
46
+ "cil": "CIL",
47
+ "coffee": "CoffeeScript",
48
+ "cmake": "CMake",
49
+ "csp": "Content-Security-Policy",
50
+ "css-extras": "CSS Extras",
51
+ "django": "Django/Jinja2",
52
+ "jinja2": "Django/Jinja2",
53
+ "dns-zone-file": "DNS zone file",
54
+ "dns-zone": "DNS zone file",
55
+ "dockerfile": "Docker",
56
+ "ebnf": "Extended Backus–Naur form",
57
+ "ejs": "EJS",
58
+ "etlua": "Embedded Lua templating",
59
+ "erb": "ERB",
60
+ "fsharp": "F#",
61
+ "firestore-security-rules": "Firestore security rules",
62
+ "ftl": "FreeMarker Template Language",
63
+ "gcode": "G-code",
64
+ "gdscript": "GDScript",
65
+ "gedcom": "GEDCOM",
66
+ "glsl": "GLSL",
67
+ "gml": "GameMaker Language",
68
+ "gamemakerlanguage": "GameMaker Language",
69
+ "graphql": "GraphQL",
70
+ "hs": "Haskell",
71
+ "hcl": "HCL",
72
+ "http": "HTTP",
73
+ "hpkp": "HTTP Public-Key-Pins",
74
+ "hsts": "HTTP Strict-Transport-Security",
75
+ "ichigojam": "IchigoJam",
76
+ "inform7": "Inform 7",
77
+ "javadoc": "JavaDoc",
78
+ "javadoclike": "JavaDoc-like",
79
+ "javastacktrace": "Java stack trace",
80
+ "jq": "JQ",
81
+ "jsdoc": "JSDoc",
82
+ "js-extras": "JS Extras",
83
+ "js-templates": "JS Templates",
84
+ "json": "JSON",
85
+ "jsonp": "JSONP",
86
+ "json5": "JSON5",
87
+ "latex": "LaTeX",
88
+ "tex": "TeX",
89
+ "context": "ConTeXt",
90
+ "lilypond": "LilyPond",
91
+ "ly": "LilyPond",
92
+ "emacs": "Lisp",
93
+ "elisp": "Lisp",
94
+ "emacs-lisp": "Lisp",
95
+ "lolcode": "LOLCODE",
96
+ "md": "Markdown",
97
+ "markup-templating": "Markup templating",
98
+ "matlab": "MATLAB",
99
+ "mel": "MEL",
100
+ "moon": "MoonScript",
101
+ "n1ql": "N1QL",
102
+ "n4js": "N4JS",
103
+ "n4jsd": "N4JS",
104
+ "nand2tetris-hdl": "Nand To Tetris HDL",
105
+ "nasm": "NASM",
106
+ "neon": "NEON",
107
+ "nginx": "nginx",
108
+ "nsis": "NSIS",
109
+ "objectivec": "Objective-C",
110
+ "ocaml": "OCaml",
111
+ "opencl": "OpenCL",
112
+ "parigp": "PARI/GP",
113
+ "objectpascal": "Object Pascal",
114
+ "pcaxis": "PC-Axis",
115
+ "px": "PC-Axis",
116
+ "php": "PHP",
117
+ "phpdoc": "PHPDoc",
118
+ "php-extras": "PHP Extras",
119
+ "plsql": "PL/SQL",
120
+ "powershell": "PowerShell",
121
+ "properties": ".properties",
122
+ "protobuf": "Protocol Buffers",
123
+ "py": "Python",
124
+ "q": "Q (kdb+ database)",
125
+ "qml": "QML",
126
+ "jsx": "React JSX",
127
+ "tsx": "React TSX",
128
+ "renpy": "Ren'py",
129
+ "rest": "reST (reStructuredText)",
130
+ "robotframework": "Robot Framework",
131
+ "robot": "Robot Framework",
132
+ "rb": "Ruby",
133
+ "sas": "SAS",
134
+ "sass": "Sass (Sass)",
135
+ "scss": "Sass (Scss)",
136
+ "shell-session": "Shell session",
137
+ "solidity": "Solidity (Ethereum)",
138
+ "solution-file": "Solution file",
139
+ "sln": "Solution file",
140
+ "soy": "Soy (Closure Template)",
141
+ "sparql": "SPARQL",
142
+ "rq": "SPARQL",
143
+ "splunk-spl": "Splunk SPL",
144
+ "sqf": "SQF: Status Quo Function (Arma 3)",
145
+ "sql": "SQL",
146
+ "tap": "TAP",
147
+ "toml": "TOML",
148
+ "tt2": "Template Toolkit 2",
149
+ "trig": "TriG",
150
+ "ts": "TypeScript",
151
+ "t4-cs": "T4 Text Templates (C#)",
152
+ "t4": "T4 Text Templates (C#)",
153
+ "t4-vb": "T4 Text Templates (VB)",
154
+ "t4-templating": "T4 templating",
155
+ "vbnet": "VB.Net",
156
+ "vhdl": "VHDL",
157
+ "vim": "vim",
158
+ "visual-basic": "Visual Basic",
159
+ "vb": "Visual Basic",
160
+ "wasm": "WebAssembly",
161
+ "wiki": "Wiki markup",
162
+ "xeoracube": "XeoraCube",
163
+ "xojo": "Xojo (REALbasic)",
164
+ "xquery": "XQuery",
165
+ "yaml": "YAML",
166
+ "yml": "YAML"
167
+ }/*]*/;
168
+
169
+ Prism.plugins.toolbar.registerButton('show-language', function (env) {
170
+ var pre = env.element.parentNode;
171
+ if (!pre || !/pre/i.test(pre.nodeName)) {
172
+ return;
173
+ }
174
+
175
+ /**
176
+ * Tries to guess the name of a language given its id.
177
+ *
178
+ * @param {string} id The language id.
179
+ * @returns {string}
180
+ */
181
+ function guessTitle(id) {
182
+ if (!id) {
183
+ return id;
184
+ }
185
+ return (id.substring(0, 1).toUpperCase() + id.substring(1)).replace(/s(?=cript)/, 'S');
186
+ }
187
+
188
+ var language = pre.getAttribute('data-language') || Languages[env.language] || guessTitle(env.language);
189
+
190
+ if (!language) {
191
+ return;
192
+ }
193
+ var element = document.createElement('span');
194
+ element.textContent = language;
24
195
 
25
- return element;
26
- });
196
+ return element;
197
+ });
27
198
 
28
199
  })();
@@ -9,11 +9,19 @@
9
9
 
10
10
  Prism.plugins.toolbar = {};
11
11
 
12
+ /**
13
+ * @typedef ButtonOptions
14
+ * @property {string} text The text displayed.
15
+ * @property {string} [url] The URL of the link which will be created.
16
+ * @property {Function} [onClick] The event listener for the `click` event of the created button.
17
+ * @property {string} [className] The class attribute to include with element.
18
+ */
19
+
12
20
  /**
13
21
  * Register a button callback with the toolbar.
14
22
  *
15
23
  * @param {string} key
16
- * @param {Object|Function} opts
24
+ * @param {ButtonOptions|Function} opts
17
25
  */
18
26
  var registerButton = Prism.plugins.toolbar.registerButton = function (key, opts) {
19
27
  var callback;
@@ -37,15 +45,45 @@
37
45
  element = document.createElement('span');
38
46
  }
39
47
 
48
+ if (opts.className) {
49
+ element.classList.add(opts.className);
50
+ }
51
+
40
52
  element.textContent = opts.text;
41
53
 
42
54
  return element;
43
55
  };
44
56
  }
45
57
 
58
+ if (key in map) {
59
+ console.warn('There is a button with the key "' + key + '" registered already.');
60
+ return;
61
+ }
62
+
46
63
  callbacks.push(map[key] = callback);
47
64
  };
48
65
 
66
+ /**
67
+ * Returns the callback order of the given element.
68
+ *
69
+ * @param {HTMLElement} element
70
+ * @returns {string[] | undefined}
71
+ */
72
+ function getOrder(element) {
73
+ while (element) {
74
+ var order = element.getAttribute('data-toolbar-order');
75
+ if (order != null) {
76
+ order = order.trim();
77
+ if (order.length) {
78
+ return order.split(/\s*,\s*/g);
79
+ } else {
80
+ return [];
81
+ }
82
+ }
83
+ element = element.parentElement;
84
+ }
85
+ }
86
+
49
87
  /**
50
88
  * Post-highlight Prism hook callback.
51
89
  *
@@ -59,23 +97,30 @@
59
97
  }
60
98
 
61
99
  // Autoloader rehighlights, so only do this once.
62
- if (pre.classList.contains('code-toolbar')) {
100
+ if (pre.parentNode.classList.contains('code-toolbar')) {
63
101
  return;
64
102
  }
65
103
 
66
- pre.classList.add('code-toolbar');
104
+ // Create wrapper for <pre> to prevent scrolling toolbar with content
105
+ var wrapper = document.createElement('div');
106
+ wrapper.classList.add('code-toolbar');
107
+ pre.parentNode.insertBefore(wrapper, pre);
108
+ wrapper.appendChild(pre);
67
109
 
68
110
  // Setup the toolbar
69
111
  var toolbar = document.createElement('div');
70
112
  toolbar.classList.add('toolbar');
71
113
 
72
- if (document.body.hasAttribute('data-toolbar-order')) {
73
- callbacks = document.body.getAttribute('data-toolbar-order').split(',').map(function(key) {
114
+ // order callbacks
115
+ var elementCallbacks = callbacks;
116
+ var order = getOrder(env.element);
117
+ if (order) {
118
+ elementCallbacks = order.map(function (key) {
74
119
  return map[key] || noop;
75
120
  });
76
121
  }
77
122
 
78
- callbacks.forEach(function(callback) {
123
+ elementCallbacks.forEach(function(callback) {
79
124
  var element = callback(env);
80
125
 
81
126
  if (!element) {
@@ -89,8 +134,8 @@
89
134
  toolbar.appendChild(item);
90
135
  });
91
136
 
92
- // Add our toolbar to the <pre> tag
93
- pre.appendChild(toolbar);
137
+ // Add our toolbar to the currently created wrapper of <pre> tag
138
+ wrapper.appendChild(toolbar);
94
139
  };
95
140
 
96
141
  registerButton('label', function(env) {