prism-rails 1.19.0 → 1.29.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (383) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +9 -0
  3. data/README.md +22 -1
  4. data/lib/prism-rails/version.rb +1 -1
  5. data/vendor/assets/javascripts/languages/prism-abap.js +17 -17
  6. data/vendor/assets/javascripts/languages/prism-abnf.js +3 -3
  7. data/vendor/assets/javascripts/languages/prism-actionscript.js +6 -2
  8. data/vendor/assets/javascripts/languages/prism-ada.js +9 -6
  9. data/vendor/assets/javascripts/languages/prism-agda.js +24 -0
  10. data/vendor/assets/javascripts/languages/prism-al.js +25 -0
  11. data/vendor/assets/javascripts/languages/prism-antlr4.js +1 -1
  12. data/vendor/assets/javascripts/languages/prism-apacheconf.js +3 -3
  13. data/vendor/assets/javascripts/languages/prism-apex.js +65 -0
  14. data/vendor/assets/javascripts/languages/prism-apl.js +3 -3
  15. data/vendor/assets/javascripts/languages/prism-applescript.js +5 -8
  16. data/vendor/assets/javascripts/languages/prism-aql.js +14 -6
  17. data/vendor/assets/javascripts/languages/prism-arduino.js +5 -3
  18. data/vendor/assets/javascripts/languages/prism-arff.js +1 -1
  19. data/vendor/assets/javascripts/languages/prism-armasm.js +49 -0
  20. data/vendor/assets/javascripts/languages/prism-arturo.js +105 -0
  21. data/vendor/assets/javascripts/languages/prism-asciidoc.js +13 -13
  22. data/vendor/assets/javascripts/languages/prism-asm6502.js +15 -14
  23. data/vendor/assets/javascripts/languages/prism-asmatmel.js +43 -0
  24. data/vendor/assets/javascripts/languages/prism-aspnet.js +6 -6
  25. data/vendor/assets/javascripts/languages/prism-autohotkey.js +31 -14
  26. data/vendor/assets/javascripts/languages/prism-autoit.js +16 -16
  27. data/vendor/assets/javascripts/languages/prism-avisynth.js +188 -0
  28. data/vendor/assets/javascripts/languages/prism-avro-idl.js +50 -0
  29. data/vendor/assets/javascripts/languages/prism-awk.js +32 -0
  30. data/vendor/assets/javascripts/languages/prism-bash.js +60 -22
  31. data/vendor/assets/javascripts/languages/prism-basic.js +4 -4
  32. data/vendor/assets/javascripts/languages/prism-batch.js +10 -10
  33. data/vendor/assets/javascripts/languages/prism-bbcode.js +3 -1
  34. data/vendor/assets/javascripts/languages/prism-bbj.js +19 -0
  35. data/vendor/assets/javascripts/languages/prism-bicep.js +77 -0
  36. data/vendor/assets/javascripts/languages/prism-birb.js +23 -0
  37. data/vendor/assets/javascripts/languages/prism-bison.js +2 -2
  38. data/vendor/assets/javascripts/languages/prism-bqn.js +63 -0
  39. data/vendor/assets/javascripts/languages/prism-brainfuck.js +1 -1
  40. data/vendor/assets/javascripts/languages/prism-brightscript.js +2 -2
  41. data/vendor/assets/javascripts/languages/prism-bro.js +9 -20
  42. data/vendor/assets/javascripts/languages/prism-bsl.js +75 -0
  43. data/vendor/assets/javascripts/languages/prism-c.js +53 -14
  44. data/vendor/assets/javascripts/languages/prism-cfscript.js +44 -0
  45. data/vendor/assets/javascripts/languages/prism-chaiscript.js +60 -0
  46. data/vendor/assets/javascripts/languages/prism-cil.js +5 -5
  47. data/vendor/assets/javascripts/languages/prism-cilkc.js +8 -0
  48. data/vendor/assets/javascripts/languages/prism-cilkcpp.js +9 -0
  49. data/vendor/assets/javascripts/languages/prism-clike.js +7 -6
  50. data/vendor/assets/javascripts/languages/prism-clojure.js +20 -5
  51. data/vendor/assets/javascripts/languages/prism-cmake.js +7 -7
  52. data/vendor/assets/javascripts/languages/prism-cobol.js +53 -0
  53. data/vendor/assets/javascripts/languages/prism-coffeescript.js +79 -75
  54. data/vendor/assets/javascripts/languages/prism-concurnas.js +33 -20
  55. data/vendor/assets/javascripts/languages/prism-cooklang.js +146 -0
  56. data/vendor/assets/javascripts/languages/prism-coq.js +54 -0
  57. data/vendor/assets/javascripts/languages/prism-core.js +1087 -451
  58. data/vendor/assets/javascripts/languages/prism-cpp.js +99 -21
  59. data/vendor/assets/javascripts/languages/prism-crystal.js +36 -30
  60. data/vendor/assets/javascripts/languages/prism-csharp.js +343 -58
  61. data/vendor/assets/javascripts/languages/prism-cshtml.js +199 -0
  62. data/vendor/assets/javascripts/languages/prism-csp.js +67 -16
  63. data/vendor/assets/javascripts/languages/prism-css-extras.js +27 -16
  64. data/vendor/assets/javascripts/languages/prism-css.js +28 -26
  65. data/vendor/assets/javascripts/languages/prism-csv.js +6 -0
  66. data/vendor/assets/javascripts/languages/prism-cue.js +84 -0
  67. data/vendor/assets/javascripts/languages/prism-cypher.js +36 -0
  68. data/vendor/assets/javascripts/languages/prism-d.js +15 -10
  69. data/vendor/assets/javascripts/languages/prism-dart.js +76 -21
  70. data/vendor/assets/javascripts/languages/prism-dataweave.js +41 -0
  71. data/vendor/assets/javascripts/languages/prism-dax.js +27 -0
  72. data/vendor/assets/javascripts/languages/prism-dhall.js +69 -0
  73. data/vendor/assets/javascripts/languages/prism-diff.js +15 -5
  74. data/vendor/assets/javascripts/languages/prism-django.js +8 -8
  75. data/vendor/assets/javascripts/languages/prism-dns-zone-file.js +3 -3
  76. data/vendor/assets/javascripts/languages/prism-docker.js +98 -11
  77. data/vendor/assets/javascripts/languages/prism-dot.js +76 -0
  78. data/vendor/assets/javascripts/languages/prism-ebnf.js +2 -2
  79. data/vendor/assets/javascripts/languages/prism-editorconfig.js +26 -0
  80. data/vendor/assets/javascripts/languages/prism-eiffel.js +5 -8
  81. data/vendor/assets/javascripts/languages/prism-ejs.js +4 -2
  82. data/vendor/assets/javascripts/languages/prism-elixir.js +21 -12
  83. data/vendor/assets/javascripts/languages/prism-elm.js +16 -15
  84. data/vendor/assets/javascripts/languages/prism-erb.js +12 -7
  85. data/vendor/assets/javascripts/languages/prism-erlang.js +6 -6
  86. data/vendor/assets/javascripts/languages/prism-excel-formula.js +66 -0
  87. data/vendor/assets/javascripts/languages/prism-factor.js +8 -8
  88. data/vendor/assets/javascripts/languages/prism-false.js +32 -0
  89. data/vendor/assets/javascripts/languages/prism-firestore-security-rules.js +2 -2
  90. data/vendor/assets/javascripts/languages/prism-flow.js +5 -5
  91. data/vendor/assets/javascripts/languages/prism-fortran.js +6 -6
  92. data/vendor/assets/javascripts/languages/prism-fsharp.js +20 -12
  93. data/vendor/assets/javascripts/languages/prism-ftl.js +12 -11
  94. data/vendor/assets/javascripts/languages/prism-gap.js +54 -0
  95. data/vendor/assets/javascripts/languages/prism-gcode.js +4 -3
  96. data/vendor/assets/javascripts/languages/prism-gdscript.js +2 -2
  97. data/vendor/assets/javascripts/languages/prism-gedcom.js +6 -6
  98. data/vendor/assets/javascripts/languages/prism-gettext.js +43 -0
  99. data/vendor/assets/javascripts/languages/prism-gherkin.js +7 -7
  100. data/vendor/assets/javascripts/languages/prism-git.js +3 -3
  101. data/vendor/assets/javascripts/languages/prism-glsl.js +2 -15
  102. data/vendor/assets/javascripts/languages/prism-gml.js +5 -5
  103. data/vendor/assets/javascripts/languages/prism-gn.js +51 -0
  104. data/vendor/assets/javascripts/languages/prism-go-module.js +24 -0
  105. data/vendor/assets/javascripts/languages/prism-go.js +21 -5
  106. data/vendor/assets/javascripts/languages/prism-gradle.js +63 -0
  107. data/vendor/assets/javascripts/languages/prism-graphql.js +187 -7
  108. data/vendor/assets/javascripts/languages/prism-groovy.js +56 -58
  109. data/vendor/assets/javascripts/languages/prism-haml.js +23 -16
  110. data/vendor/assets/javascripts/languages/prism-handlebars.js +10 -7
  111. data/vendor/assets/javascripts/languages/prism-haskell.js +42 -14
  112. data/vendor/assets/javascripts/languages/prism-haxe.js +54 -21
  113. data/vendor/assets/javascripts/languages/prism-hcl.js +12 -14
  114. data/vendor/assets/javascripts/languages/prism-hlsl.js +20 -0
  115. data/vendor/assets/javascripts/languages/prism-hoon.js +14 -0
  116. data/vendor/assets/javascripts/languages/prism-hpkp.js +4 -10
  117. data/vendor/assets/javascripts/languages/prism-hsts.js +4 -10
  118. data/vendor/assets/javascripts/languages/prism-http.js +91 -17
  119. data/vendor/assets/javascripts/languages/prism-ichigojam.js +5 -5
  120. data/vendor/assets/javascripts/languages/prism-icon.js +2 -2
  121. data/vendor/assets/javascripts/languages/prism-icu-message-format.js +148 -0
  122. data/vendor/assets/javascripts/languages/prism-idris.js +19 -0
  123. data/vendor/assets/javascripts/languages/prism-iecst.js +32 -0
  124. data/vendor/assets/javascripts/languages/prism-ignore.js +23 -0
  125. data/vendor/assets/javascripts/languages/prism-inform7.js +10 -10
  126. data/vendor/assets/javascripts/languages/prism-ini.js +39 -8
  127. data/vendor/assets/javascripts/languages/prism-io.js +10 -19
  128. data/vendor/assets/javascripts/languages/prism-j.js +7 -4
  129. data/vendor/assets/javascripts/languages/prism-java.js +80 -19
  130. data/vendor/assets/javascripts/languages/prism-javadoc.js +59 -31
  131. data/vendor/assets/javascripts/languages/prism-javadoclike.js +2 -2
  132. data/vendor/assets/javascripts/languages/prism-javascript.js +98 -17
  133. data/vendor/assets/javascripts/languages/prism-javastacktrace.js +63 -14
  134. data/vendor/assets/javascripts/languages/prism-jexl.js +14 -0
  135. data/vendor/assets/javascripts/languages/prism-jolie.js +23 -37
  136. data/vendor/assets/javascripts/languages/prism-jq.js +8 -6
  137. data/vendor/assets/javascripts/languages/prism-js-extras.js +34 -3
  138. data/vendor/assets/javascripts/languages/prism-js-templates.js +5 -2
  139. data/vendor/assets/javascripts/languages/prism-jsdoc.js +15 -10
  140. data/vendor/assets/javascripts/languages/prism-json.js +13 -5
  141. data/vendor/assets/javascripts/languages/prism-json5.js +3 -3
  142. data/vendor/assets/javascripts/languages/prism-jsonp.js +1 -1
  143. data/vendor/assets/javascripts/languages/prism-jsstacktrace.js +49 -0
  144. data/vendor/assets/javascripts/languages/prism-jsx.js +123 -104
  145. data/vendor/assets/javascripts/languages/prism-julia.js +31 -9
  146. data/vendor/assets/javascripts/languages/prism-keepalived.js +51 -0
  147. data/vendor/assets/javascripts/languages/prism-keyman.js +43 -13
  148. data/vendor/assets/javascripts/languages/prism-kotlin.js +56 -30
  149. data/vendor/assets/javascripts/languages/prism-kumir.js +106 -0
  150. data/vendor/assets/javascripts/languages/prism-kusto.js +44 -0
  151. data/vendor/assets/javascripts/languages/prism-latex.js +6 -6
  152. data/vendor/assets/javascripts/languages/prism-latte.js +11 -17
  153. data/vendor/assets/javascripts/languages/prism-less.js +5 -5
  154. data/vendor/assets/javascripts/languages/prism-lilypond.js +3 -3
  155. data/vendor/assets/javascripts/languages/prism-linker-script.js +30 -0
  156. data/vendor/assets/javascripts/languages/prism-liquid.js +62 -8
  157. data/vendor/assets/javascripts/languages/prism-lisp.js +41 -41
  158. data/vendor/assets/javascripts/languages/prism-livescript.js +3 -3
  159. data/vendor/assets/javascripts/languages/prism-llvm.js +19 -0
  160. data/vendor/assets/javascripts/languages/prism-log.js +120 -0
  161. data/vendor/assets/javascripts/languages/prism-lolcode.js +9 -9
  162. data/vendor/assets/javascripts/languages/prism-lua.js +3 -3
  163. data/vendor/assets/javascripts/languages/prism-magma.js +35 -0
  164. data/vendor/assets/javascripts/languages/prism-makefile.js +17 -17
  165. data/vendor/assets/javascripts/languages/prism-markdown.js +103 -32
  166. data/vendor/assets/javascripts/languages/prism-markup-templating.js +2 -1
  167. data/vendor/assets/javascripts/languages/prism-markup.js +95 -12
  168. data/vendor/assets/javascripts/languages/prism-mata.js +50 -0
  169. data/vendor/assets/javascripts/languages/prism-matlab.js +4 -4
  170. data/vendor/assets/javascripts/languages/prism-maxscript.js +91 -0
  171. data/vendor/assets/javascripts/languages/prism-mel.js +24 -21
  172. data/vendor/assets/javascripts/languages/prism-mermaid.js +113 -0
  173. data/vendor/assets/javascripts/languages/prism-metafont.js +84 -0
  174. data/vendor/assets/javascripts/languages/prism-mizar.js +3 -3
  175. data/vendor/assets/javascripts/languages/prism-mongodb.js +97 -0
  176. data/vendor/assets/javascripts/languages/prism-monkey.js +16 -18
  177. data/vendor/assets/javascripts/languages/prism-moonscript.js +1 -1
  178. data/vendor/assets/javascripts/languages/prism-n1ql.js +14 -8
  179. data/vendor/assets/javascripts/languages/prism-n4js.js +2 -2
  180. data/vendor/assets/javascripts/languages/prism-nand2tetris-hdl.js +3 -3
  181. data/vendor/assets/javascripts/languages/prism-naniscript.js +170 -0
  182. data/vendor/assets/javascripts/languages/prism-nasm.js +4 -4
  183. data/vendor/assets/javascripts/languages/prism-neon.js +5 -6
  184. data/vendor/assets/javascripts/languages/prism-nevod.js +125 -0
  185. data/vendor/assets/javascripts/languages/prism-nginx.js +54 -11
  186. data/vendor/assets/javascripts/languages/prism-nim.js +23 -12
  187. data/vendor/assets/javascripts/languages/prism-nix.js +10 -13
  188. data/vendor/assets/javascripts/languages/prism-nsis.js +10 -9
  189. data/vendor/assets/javascripts/languages/prism-objectivec.js +7 -2
  190. data/vendor/assets/javascripts/languages/prism-ocaml.js +32 -15
  191. data/vendor/assets/javascripts/languages/prism-odin.js +99 -0
  192. data/vendor/assets/javascripts/languages/prism-opencl.js +19 -12
  193. data/vendor/assets/javascripts/languages/prism-openqasm.js +23 -0
  194. data/vendor/assets/javascripts/languages/prism-oz.js +11 -8
  195. data/vendor/assets/javascripts/languages/prism-parigp.js +4 -4
  196. data/vendor/assets/javascripts/languages/prism-parser.js +3 -3
  197. data/vendor/assets/javascripts/languages/prism-pascal.js +24 -8
  198. data/vendor/assets/javascripts/languages/prism-pascaligo.js +7 -7
  199. data/vendor/assets/javascripts/languages/prism-pcaxis.js +2 -2
  200. data/vendor/assets/javascripts/languages/prism-peoplecode.js +42 -0
  201. data/vendor/assets/javascripts/languages/prism-perl.js +153 -188
  202. data/vendor/assets/javascripts/languages/prism-php-extras.js +8 -5
  203. data/vendor/assets/javascripts/languages/prism-php.js +275 -63
  204. data/vendor/assets/javascripts/languages/prism-phpdoc.js +1 -1
  205. data/vendor/assets/javascripts/languages/prism-plant-uml.js +103 -0
  206. data/vendor/assets/javascripts/languages/prism-plsql.js +16 -25
  207. data/vendor/assets/javascripts/languages/prism-powerquery.js +55 -0
  208. data/vendor/assets/javascripts/languages/prism-powershell.js +16 -18
  209. data/vendor/assets/javascripts/languages/prism-processing.js +6 -9
  210. data/vendor/assets/javascripts/languages/prism-prolog.js +7 -8
  211. data/vendor/assets/javascripts/languages/prism-promql.js +99 -0
  212. data/vendor/assets/javascripts/languages/prism-properties.js +9 -5
  213. data/vendor/assets/javascripts/languages/prism-protobuf.js +16 -9
  214. data/vendor/assets/javascripts/languages/prism-psl.js +35 -0
  215. data/vendor/assets/javascripts/languages/prism-pug.js +28 -21
  216. data/vendor/assets/javascripts/languages/prism-puppet.js +6 -6
  217. data/vendor/assets/javascripts/languages/prism-pure.js +9 -6
  218. data/vendor/assets/javascripts/languages/prism-purebasic.js +70 -0
  219. data/vendor/assets/javascripts/languages/prism-purescript.js +31 -0
  220. data/vendor/assets/javascripts/languages/prism-python.js +12 -11
  221. data/vendor/assets/javascripts/languages/prism-q.js +4 -4
  222. data/vendor/assets/javascripts/languages/prism-qml.js +9 -6
  223. data/vendor/assets/javascripts/languages/prism-qore.js +5 -5
  224. data/vendor/assets/javascripts/languages/prism-qsharp.js +132 -0
  225. data/vendor/assets/javascripts/languages/prism-r.js +5 -5
  226. data/vendor/assets/javascripts/languages/prism-racket.js +18 -0
  227. data/vendor/assets/javascripts/languages/prism-reason.js +5 -8
  228. data/vendor/assets/javascripts/languages/prism-regex.js +54 -47
  229. data/vendor/assets/javascripts/languages/prism-rego.js +30 -0
  230. data/vendor/assets/javascripts/languages/prism-renpy.js +12 -12
  231. data/vendor/assets/javascripts/languages/prism-rescript.js +60 -0
  232. data/vendor/assets/javascripts/languages/prism-rest.js +16 -16
  233. data/vendor/assets/javascripts/languages/prism-rip.js +22 -16
  234. data/vendor/assets/javascripts/languages/prism-roboconf.js +3 -3
  235. data/vendor/assets/javascripts/languages/prism-robotframework.js +5 -5
  236. data/vendor/assets/javascripts/languages/prism-ruby.js +127 -88
  237. data/vendor/assets/javascripts/languages/prism-rust.js +120 -60
  238. data/vendor/assets/javascripts/languages/prism-sas.js +62 -38
  239. data/vendor/assets/javascripts/languages/prism-sass.js +15 -10
  240. data/vendor/assets/javascripts/languages/prism-scala.js +36 -3
  241. data/vendor/assets/javascripts/languages/prism-scheme.js +120 -33
  242. data/vendor/assets/javascripts/languages/prism-scss.js +11 -7
  243. data/vendor/assets/javascripts/languages/prism-shell-session.js +42 -26
  244. data/vendor/assets/javascripts/languages/prism-smali.js +87 -0
  245. data/vendor/assets/javascripts/languages/prism-smalltalk.js +12 -5
  246. data/vendor/assets/javascripts/languages/prism-smarty.js +91 -47
  247. data/vendor/assets/javascripts/languages/prism-sml.js +68 -0
  248. data/vendor/assets/javascripts/languages/prism-solidity.js +3 -1
  249. data/vendor/assets/javascripts/languages/prism-solution-file.js +2 -2
  250. data/vendor/assets/javascripts/languages/prism-soy.js +9 -9
  251. data/vendor/assets/javascripts/languages/prism-sparql.js +8 -8
  252. data/vendor/assets/javascripts/languages/prism-splunk-spl.js +3 -3
  253. data/vendor/assets/javascripts/languages/prism-sqf.js +7 -7
  254. data/vendor/assets/javascripts/languages/prism-sql.js +12 -4
  255. data/vendor/assets/javascripts/languages/prism-squirrel.js +47 -0
  256. data/vendor/assets/javascripts/languages/prism-stan.js +65 -0
  257. data/vendor/assets/javascripts/languages/prism-stata.js +76 -0
  258. data/vendor/assets/javascripts/languages/prism-stylus.js +48 -16
  259. data/vendor/assets/javascripts/languages/prism-supercollider.js +36 -0
  260. data/vendor/assets/javascripts/languages/prism-swift.js +143 -20
  261. data/vendor/assets/javascripts/languages/prism-systemd.js +74 -0
  262. data/vendor/assets/javascripts/languages/prism-t4-templating.js +2 -2
  263. data/vendor/assets/javascripts/languages/prism-t4-vb.js +1 -1
  264. data/vendor/assets/javascripts/languages/prism-tap.js +13 -11
  265. data/vendor/assets/javascripts/languages/prism-tcl.js +8 -8
  266. data/vendor/assets/javascripts/languages/prism-textile.js +55 -29
  267. data/vendor/assets/javascripts/languages/prism-toml.js +14 -8
  268. data/vendor/assets/javascripts/languages/prism-tremor.js +72 -0
  269. data/vendor/assets/javascripts/languages/prism-tsx.js +15 -2
  270. data/vendor/assets/javascripts/languages/prism-tt2.js +7 -7
  271. data/vendor/assets/javascripts/languages/prism-turtle.js +4 -4
  272. data/vendor/assets/javascripts/languages/prism-twig.js +38 -40
  273. data/vendor/assets/javascripts/languages/prism-typescript.js +59 -6
  274. data/vendor/assets/javascripts/languages/prism-typoscript.js +80 -0
  275. data/vendor/assets/javascripts/languages/prism-unrealscript.js +42 -0
  276. data/vendor/assets/javascripts/languages/prism-uorazor.js +48 -0
  277. data/vendor/assets/javascripts/languages/prism-uri.js +96 -0
  278. data/vendor/assets/javascripts/languages/prism-v.js +81 -0
  279. data/vendor/assets/javascripts/languages/prism-vala.js +20 -10
  280. data/vendor/assets/javascripts/languages/prism-vbnet.js +11 -4
  281. data/vendor/assets/javascripts/languages/prism-velocity.js +6 -6
  282. data/vendor/assets/javascripts/languages/prism-verilog.js +14 -8
  283. data/vendor/assets/javascripts/languages/prism-vhdl.js +7 -4
  284. data/vendor/assets/javascripts/languages/prism-vim.js +4 -4
  285. data/vendor/assets/javascripts/languages/prism-visual-basic.js +9 -14
  286. data/vendor/assets/javascripts/languages/prism-warpscript.js +21 -0
  287. data/vendor/assets/javascripts/languages/prism-wasm.js +3 -3
  288. data/vendor/assets/javascripts/languages/prism-web-idl.js +101 -0
  289. data/vendor/assets/javascripts/languages/prism-wgsl.js +69 -0
  290. data/vendor/assets/javascripts/languages/prism-wiki.js +4 -4
  291. data/vendor/assets/javascripts/languages/prism-wolfram.js +29 -0
  292. data/vendor/assets/javascripts/languages/prism-wren.js +100 -0
  293. data/vendor/assets/javascripts/languages/prism-xeora.js +8 -8
  294. data/vendor/assets/javascripts/languages/prism-xml-doc.js +40 -0
  295. data/vendor/assets/javascripts/languages/prism-xojo.js +9 -8
  296. data/vendor/assets/javascripts/languages/prism-xquery.js +7 -7
  297. data/vendor/assets/javascripts/languages/prism-yaml.js +19 -12
  298. data/vendor/assets/javascripts/languages/prism-yang.js +20 -0
  299. data/vendor/assets/javascripts/languages/prism-zig.js +19 -15
  300. data/vendor/assets/javascripts/prism-plugin/prism-autolinker.js +60 -65
  301. data/vendor/assets/javascripts/prism-plugin/prism-autoloader.js +199 -67
  302. data/vendor/assets/javascripts/prism-plugin/prism-command-line.js +212 -112
  303. data/vendor/assets/javascripts/prism-plugin/prism-copy-to-clipboard.js +128 -43
  304. data/vendor/assets/javascripts/prism-plugin/prism-custom-class.js +23 -8
  305. data/vendor/assets/javascripts/prism-plugin/prism-data-uri-highlight.js +2 -6
  306. data/vendor/assets/javascripts/prism-plugin/prism-diff-highlight.js +19 -12
  307. data/vendor/assets/javascripts/prism-plugin/prism-download-button.js +3 -2
  308. data/vendor/assets/javascripts/prism-plugin/prism-file-highlight.js +169 -63
  309. data/vendor/assets/javascripts/prism-plugin/prism-filter-highlight-all.js +5 -3
  310. data/vendor/assets/javascripts/prism-plugin/prism-highlight-keywords.js +10 -13
  311. data/vendor/assets/javascripts/prism-plugin/prism-inline-color.js +29 -12
  312. data/vendor/assets/javascripts/prism-plugin/prism-jsonp-highlight.js +179 -82
  313. data/vendor/assets/javascripts/prism-plugin/prism-keep-markup.js +53 -26
  314. data/vendor/assets/javascripts/prism-plugin/prism-line-highlight.js +217 -84
  315. data/vendor/assets/javascripts/prism-plugin/prism-line-numbers.js +152 -68
  316. data/vendor/assets/javascripts/prism-plugin/prism-match-braces.js +53 -47
  317. data/vendor/assets/javascripts/prism-plugin/prism-normalize-whitespace.js +203 -164
  318. data/vendor/assets/javascripts/prism-plugin/prism-previewers.js +61 -52
  319. data/vendor/assets/javascripts/prism-plugin/prism-remove-initial-line-feed.js +16 -16
  320. data/vendor/assets/javascripts/prism-plugin/prism-show-invisibles.js +4 -5
  321. data/vendor/assets/javascripts/prism-plugin/prism-show-language.js +147 -21
  322. data/vendor/assets/javascripts/prism-plugin/prism-toolbar.js +9 -8
  323. data/vendor/assets/javascripts/prism-plugin/prism-treeview.js +70 -0
  324. data/vendor/assets/javascripts/prism-plugin/prism-unescaped-markup.js +41 -23
  325. data/vendor/assets/javascripts/prism-plugin/prism-wpd.js +133 -148
  326. data/vendor/assets/javascripts/prism.js +96 -4
  327. data/vendor/assets/stylesheets/prism-plugin/prism-autolinker.min.css +1 -0
  328. data/vendor/assets/stylesheets/prism-plugin/prism-command-line.css +11 -1
  329. data/vendor/assets/stylesheets/prism-plugin/prism-command-line.min.css +1 -0
  330. data/vendor/assets/stylesheets/prism-plugin/prism-diff-highlight.min.css +1 -0
  331. data/vendor/assets/stylesheets/prism-plugin/prism-inline-color.css +26 -2
  332. data/vendor/assets/stylesheets/prism-plugin/prism-inline-color.min.css +1 -0
  333. data/vendor/assets/stylesheets/prism-plugin/prism-line-highlight.css +21 -0
  334. data/vendor/assets/stylesheets/prism-plugin/prism-line-highlight.min.css +1 -0
  335. data/vendor/assets/stylesheets/prism-plugin/prism-line-numbers.css +0 -1
  336. data/vendor/assets/stylesheets/prism-plugin/prism-line-numbers.min.css +1 -0
  337. data/vendor/assets/stylesheets/prism-plugin/prism-match-braces.min.css +1 -0
  338. data/vendor/assets/stylesheets/prism-plugin/prism-previewers.css +1 -0
  339. data/vendor/assets/stylesheets/prism-plugin/prism-previewers.min.css +1 -0
  340. data/vendor/assets/stylesheets/prism-plugin/prism-show-invisibles.min.css +1 -0
  341. data/vendor/assets/stylesheets/prism-plugin/prism-toolbar.css +13 -12
  342. data/vendor/assets/stylesheets/prism-plugin/prism-toolbar.min.css +1 -0
  343. data/vendor/assets/stylesheets/prism-plugin/prism-treeview.css +168 -0
  344. data/vendor/assets/stylesheets/prism-plugin/prism-treeview.min.css +1 -0
  345. data/vendor/assets/stylesheets/prism-plugin/prism-unescaped-markup.min.css +1 -0
  346. data/vendor/assets/stylesheets/prism-plugin/prism-wpd.min.css +1 -0
  347. data/vendor/assets/stylesheets/prism-theme/prism-base16-ateliersulphurpool.light.css +3 -3
  348. data/vendor/assets/stylesheets/prism-theme/prism-cb.css +5 -35
  349. data/vendor/assets/stylesheets/prism-theme/prism-coldark-cold.css +317 -0
  350. data/vendor/assets/stylesheets/prism-theme/prism-coldark-dark.css +317 -0
  351. data/vendor/assets/stylesheets/prism-theme/prism-coy-without-shadows.css +140 -0
  352. data/vendor/assets/stylesheets/prism-theme/prism-coy.css +5 -12
  353. data/vendor/assets/stylesheets/prism-theme/prism-coy.min.css +1 -0
  354. data/vendor/assets/stylesheets/prism-theme/prism-dark.min.css +1 -0
  355. data/vendor/assets/stylesheets/prism-theme/prism-duotone-dark.css +3 -3
  356. data/vendor/assets/stylesheets/prism-theme/prism-duotone-earth.css +3 -3
  357. data/vendor/assets/stylesheets/prism-theme/prism-duotone-forest.css +3 -3
  358. data/vendor/assets/stylesheets/prism-theme/prism-duotone-light.css +3 -3
  359. data/vendor/assets/stylesheets/prism-theme/prism-duotone-sea.css +3 -3
  360. data/vendor/assets/stylesheets/prism-theme/prism-duotone-space.css +3 -3
  361. data/vendor/assets/stylesheets/prism-theme/prism-funky.min.css +1 -0
  362. data/vendor/assets/stylesheets/prism-theme/prism-gruvbox-dark.css +143 -0
  363. data/vendor/assets/stylesheets/prism-theme/prism-gruvbox-light.css +143 -0
  364. data/vendor/assets/stylesheets/prism-theme/prism-holi-theme.css +119 -0
  365. data/vendor/assets/stylesheets/prism-theme/prism-laserwave.css +133 -0
  366. data/vendor/assets/stylesheets/prism-theme/prism-lucario.css +122 -0
  367. data/vendor/assets/stylesheets/prism-theme/prism-night-owl.css +158 -0
  368. data/vendor/assets/stylesheets/prism-theme/prism-okaidia.css +1 -1
  369. data/vendor/assets/stylesheets/prism-theme/prism-okaidia.min.css +1 -0
  370. data/vendor/assets/stylesheets/prism-theme/prism-one-dark.css +440 -0
  371. data/vendor/assets/stylesheets/prism-theme/prism-one-light.css +428 -0
  372. data/vendor/assets/stylesheets/prism-theme/prism-shades-of-purple.css +3 -7
  373. data/vendor/assets/stylesheets/prism-theme/prism-solarized-dark-atom.css +143 -0
  374. data/vendor/assets/stylesheets/prism-theme/prism-solarizedlight.min.css +1 -0
  375. data/vendor/assets/stylesheets/prism-theme/prism-tomorrow.min.css +1 -0
  376. data/vendor/assets/stylesheets/prism-theme/prism-twilight.css +3 -33
  377. data/vendor/assets/stylesheets/prism-theme/prism-twilight.min.css +1 -0
  378. data/vendor/assets/stylesheets/prism-theme/prism-vs.css +7 -3
  379. data/vendor/assets/stylesheets/prism-theme/prism-vsc-dark-plus.css +108 -49
  380. data/vendor/assets/stylesheets/prism-theme/prism-xonokai.css +3 -30
  381. data/vendor/assets/stylesheets/prism-theme/prism-z-touch.css +160 -0
  382. data/vendor/assets/stylesheets/prism.css +1 -0
  383. metadata +133 -6
@@ -1,6 +1,6 @@
1
1
  (function () {
2
2
 
3
- if (typeof self === 'undefined' || !self.Prism || !self.document) {
3
+ if (typeof Prism === 'undefined' || typeof document === 'undefined') {
4
4
  return;
5
5
  }
6
6
 
@@ -10,69 +10,129 @@
10
10
  return;
11
11
  }
12
12
 
13
+ /* eslint-disable */
14
+
13
15
  // The languages map is built automatically with gulp
14
16
  var Languages = /*languages_placeholder[*/{
17
+ "none": "Plain text",
18
+ "plain": "Plain text",
19
+ "plaintext": "Plain text",
20
+ "text": "Plain text",
21
+ "txt": "Plain text",
15
22
  "html": "HTML",
16
23
  "xml": "XML",
17
24
  "svg": "SVG",
18
25
  "mathml": "MathML",
26
+ "ssml": "SSML",
27
+ "rss": "RSS",
19
28
  "css": "CSS",
20
29
  "clike": "C-like",
21
30
  "js": "JavaScript",
22
31
  "abap": "ABAP",
23
- "abnf": "Augmented Backus–Naur form",
32
+ "abnf": "ABNF",
33
+ "al": "AL",
24
34
  "antlr4": "ANTLR4",
25
35
  "g4": "ANTLR4",
26
36
  "apacheconf": "Apache Configuration",
27
37
  "apl": "APL",
28
38
  "aql": "AQL",
39
+ "ino": "Arduino",
29
40
  "arff": "ARFF",
41
+ "armasm": "ARM Assembly",
42
+ "arm-asm": "ARM Assembly",
43
+ "art": "Arturo",
30
44
  "asciidoc": "AsciiDoc",
31
45
  "adoc": "AsciiDoc",
32
- "asm6502": "6502 Assembly",
33
46
  "aspnet": "ASP.NET (C#)",
47
+ "asm6502": "6502 Assembly",
48
+ "asmatmel": "Atmel AVR Assembly",
34
49
  "autohotkey": "AutoHotkey",
35
50
  "autoit": "AutoIt",
36
- "shell": "Bash",
51
+ "avisynth": "AviSynth",
52
+ "avs": "AviSynth",
53
+ "avro-idl": "Avro IDL",
54
+ "avdl": "Avro IDL",
55
+ "awk": "AWK",
56
+ "gawk": "GAWK",
57
+ "sh": "Shell",
37
58
  "basic": "BASIC",
38
59
  "bbcode": "BBcode",
39
- "bnf": "Backus–Naur form",
40
- "rbnf": "Routing Backus–Naur form",
41
- "conc": "Concurnas",
60
+ "bbj": "BBj",
61
+ "bnf": "BNF",
62
+ "rbnf": "RBNF",
63
+ "bqn": "BQN",
64
+ "bsl": "BSL (1C:Enterprise)",
65
+ "oscript": "OneScript",
42
66
  "csharp": "C#",
43
67
  "cs": "C#",
44
68
  "dotnet": "C#",
45
69
  "cpp": "C++",
70
+ "cfscript": "CFScript",
71
+ "cfc": "CFScript",
46
72
  "cil": "CIL",
47
- "coffee": "CoffeeScript",
73
+ "cilkc": "Cilk/C",
74
+ "cilk-c": "Cilk/C",
75
+ "cilkcpp": "Cilk/C++",
76
+ "cilk-cpp": "Cilk/C++",
77
+ "cilk": "Cilk/C++",
48
78
  "cmake": "CMake",
79
+ "cobol": "COBOL",
80
+ "coffee": "CoffeeScript",
81
+ "conc": "Concurnas",
49
82
  "csp": "Content-Security-Policy",
50
83
  "css-extras": "CSS Extras",
84
+ "csv": "CSV",
85
+ "cue": "CUE",
86
+ "dataweave": "DataWeave",
87
+ "dax": "DAX",
51
88
  "django": "Django/Jinja2",
52
89
  "jinja2": "Django/Jinja2",
53
90
  "dns-zone-file": "DNS zone file",
54
91
  "dns-zone": "DNS zone file",
55
92
  "dockerfile": "Docker",
56
- "ebnf": "Extended Backus–Naur form",
93
+ "dot": "DOT (Graphviz)",
94
+ "gv": "DOT (Graphviz)",
95
+ "ebnf": "EBNF",
96
+ "editorconfig": "EditorConfig",
57
97
  "ejs": "EJS",
58
98
  "etlua": "Embedded Lua templating",
59
99
  "erb": "ERB",
100
+ "excel-formula": "Excel Formula",
101
+ "xlsx": "Excel Formula",
102
+ "xls": "Excel Formula",
60
103
  "fsharp": "F#",
61
104
  "firestore-security-rules": "Firestore security rules",
62
105
  "ftl": "FreeMarker Template Language",
106
+ "gml": "GameMaker Language",
107
+ "gamemakerlanguage": "GameMaker Language",
108
+ "gap": "GAP (CAS)",
63
109
  "gcode": "G-code",
64
110
  "gdscript": "GDScript",
65
111
  "gedcom": "GEDCOM",
112
+ "gettext": "gettext",
113
+ "po": "gettext",
66
114
  "glsl": "GLSL",
67
- "gml": "GameMaker Language",
68
- "gamemakerlanguage": "GameMaker Language",
115
+ "gn": "GN",
116
+ "gni": "GN",
117
+ "linker-script": "GNU Linker Script",
118
+ "ld": "GNU Linker Script",
119
+ "go-module": "Go module",
120
+ "go-mod": "Go module",
69
121
  "graphql": "GraphQL",
122
+ "hbs": "Handlebars",
70
123
  "hs": "Haskell",
71
124
  "hcl": "HCL",
125
+ "hlsl": "HLSL",
72
126
  "http": "HTTP",
73
127
  "hpkp": "HTTP Public-Key-Pins",
74
128
  "hsts": "HTTP Strict-Transport-Security",
75
129
  "ichigojam": "IchigoJam",
130
+ "icu-message-format": "ICU Message Format",
131
+ "idr": "Idris",
132
+ "ignore": ".ignore",
133
+ "gitignore": ".gitignore",
134
+ "hgignore": ".hgignore",
135
+ "npmignore": ".npmignore",
76
136
  "inform7": "Inform 7",
77
137
  "javadoc": "JavaDoc",
78
138
  "javadoclike": "JavaDoc-like",
@@ -80,10 +140,17 @@
80
140
  "jq": "JQ",
81
141
  "jsdoc": "JSDoc",
82
142
  "js-extras": "JS Extras",
83
- "js-templates": "JS Templates",
84
143
  "json": "JSON",
85
- "jsonp": "JSONP",
144
+ "webmanifest": "Web App Manifest",
86
145
  "json5": "JSON5",
146
+ "jsonp": "JSONP",
147
+ "jsstacktrace": "JS stack trace",
148
+ "js-templates": "JS Templates",
149
+ "keepalived": "Keepalived Configure",
150
+ "kts": "Kotlin Script",
151
+ "kt": "Kotlin",
152
+ "kumir": "KuMir (КуМир)",
153
+ "kum": "KuMir (КуМир)",
87
154
  "latex": "LaTeX",
88
155
  "tex": "TeX",
89
156
  "context": "ConTeXt",
@@ -92,49 +159,84 @@
92
159
  "emacs": "Lisp",
93
160
  "elisp": "Lisp",
94
161
  "emacs-lisp": "Lisp",
162
+ "llvm": "LLVM IR",
163
+ "log": "Log file",
95
164
  "lolcode": "LOLCODE",
165
+ "magma": "Magma (CAS)",
96
166
  "md": "Markdown",
97
167
  "markup-templating": "Markup templating",
98
168
  "matlab": "MATLAB",
169
+ "maxscript": "MAXScript",
99
170
  "mel": "MEL",
171
+ "metafont": "METAFONT",
172
+ "mongodb": "MongoDB",
100
173
  "moon": "MoonScript",
101
174
  "n1ql": "N1QL",
102
175
  "n4js": "N4JS",
103
176
  "n4jsd": "N4JS",
104
177
  "nand2tetris-hdl": "Nand To Tetris HDL",
178
+ "naniscript": "Naninovel Script",
179
+ "nani": "Naninovel Script",
105
180
  "nasm": "NASM",
106
181
  "neon": "NEON",
107
182
  "nginx": "nginx",
108
183
  "nsis": "NSIS",
109
184
  "objectivec": "Objective-C",
185
+ "objc": "Objective-C",
110
186
  "ocaml": "OCaml",
111
187
  "opencl": "OpenCL",
188
+ "openqasm": "OpenQasm",
189
+ "qasm": "OpenQasm",
112
190
  "parigp": "PARI/GP",
113
191
  "objectpascal": "Object Pascal",
192
+ "psl": "PATROL Scripting Language",
114
193
  "pcaxis": "PC-Axis",
115
194
  "px": "PC-Axis",
195
+ "peoplecode": "PeopleCode",
196
+ "pcode": "PeopleCode",
116
197
  "php": "PHP",
117
198
  "phpdoc": "PHPDoc",
118
199
  "php-extras": "PHP Extras",
200
+ "plant-uml": "PlantUML",
201
+ "plantuml": "PlantUML",
119
202
  "plsql": "PL/SQL",
203
+ "powerquery": "PowerQuery",
204
+ "pq": "PowerQuery",
205
+ "mscript": "PowerQuery",
120
206
  "powershell": "PowerShell",
207
+ "promql": "PromQL",
121
208
  "properties": ".properties",
122
209
  "protobuf": "Protocol Buffers",
210
+ "purebasic": "PureBasic",
211
+ "pbfasm": "PureBasic",
212
+ "purs": "PureScript",
123
213
  "py": "Python",
214
+ "qsharp": "Q#",
215
+ "qs": "Q#",
124
216
  "q": "Q (kdb+ database)",
125
217
  "qml": "QML",
218
+ "rkt": "Racket",
219
+ "cshtml": "Razor C#",
220
+ "razor": "Razor C#",
126
221
  "jsx": "React JSX",
127
222
  "tsx": "React TSX",
128
223
  "renpy": "Ren'py",
224
+ "rpy": "Ren'py",
225
+ "res": "ReScript",
129
226
  "rest": "reST (reStructuredText)",
130
227
  "robotframework": "Robot Framework",
131
228
  "robot": "Robot Framework",
132
229
  "rb": "Ruby",
133
230
  "sas": "SAS",
134
231
  "sass": "Sass (Sass)",
135
- "scss": "Sass (Scss)",
232
+ "scss": "Sass (SCSS)",
136
233
  "shell-session": "Shell session",
234
+ "sh-session": "Shell session",
235
+ "shellsession": "Shell session",
236
+ "sml": "SML",
237
+ "smlnj": "SML/NJ",
137
238
  "solidity": "Solidity (Ethereum)",
239
+ "sol": "Solidity (Ethereum)",
138
240
  "solution-file": "Solution file",
139
241
  "sln": "Solution file",
140
242
  "soy": "Soy (Closure Template)",
@@ -143,29 +245,53 @@
143
245
  "splunk-spl": "Splunk SPL",
144
246
  "sqf": "SQF: Status Quo Function (Arma 3)",
145
247
  "sql": "SQL",
248
+ "stata": "Stata Ado",
249
+ "iecst": "Structured Text (IEC 61131-3)",
250
+ "supercollider": "SuperCollider",
251
+ "sclang": "SuperCollider",
252
+ "systemd": "Systemd configuration file",
253
+ "t4-templating": "T4 templating",
254
+ "t4-cs": "T4 Text Templates (C#)",
255
+ "t4": "T4 Text Templates (C#)",
256
+ "t4-vb": "T4 Text Templates (VB)",
146
257
  "tap": "TAP",
147
- "toml": "TOML",
148
258
  "tt2": "Template Toolkit 2",
259
+ "toml": "TOML",
260
+ "trickle": "trickle",
261
+ "troy": "troy",
149
262
  "trig": "TriG",
150
263
  "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",
264
+ "tsconfig": "TSConfig",
265
+ "uscript": "UnrealScript",
266
+ "uc": "UnrealScript",
267
+ "uorazor": "UO Razor Script",
268
+ "uri": "URI",
269
+ "url": "URL",
155
270
  "vbnet": "VB.Net",
156
271
  "vhdl": "VHDL",
157
272
  "vim": "vim",
158
273
  "visual-basic": "Visual Basic",
274
+ "vba": "VBA",
159
275
  "vb": "Visual Basic",
160
276
  "wasm": "WebAssembly",
277
+ "web-idl": "Web IDL",
278
+ "webidl": "Web IDL",
279
+ "wgsl": "WGSL",
161
280
  "wiki": "Wiki markup",
281
+ "wolfram": "Wolfram language",
282
+ "nb": "Mathematica Notebook",
283
+ "wl": "Wolfram language",
162
284
  "xeoracube": "XeoraCube",
285
+ "xml-doc": "XML doc (.net)",
163
286
  "xojo": "Xojo (REALbasic)",
164
287
  "xquery": "XQuery",
165
288
  "yaml": "YAML",
166
- "yml": "YAML"
289
+ "yml": "YAML",
290
+ "yang": "YANG"
167
291
  }/*]*/;
168
292
 
293
+ /* eslint-enable */
294
+
169
295
  Prism.plugins.toolbar.registerButton('show-language', function (env) {
170
296
  var pre = env.element.parentNode;
171
297
  if (!pre || !/pre/i.test(pre.nodeName)) {
@@ -196,4 +322,4 @@
196
322
  return element;
197
323
  });
198
324
 
199
- })();
325
+ }());
@@ -1,11 +1,12 @@
1
- (function(){
2
- if (typeof self === 'undefined' || !self.Prism || !self.document) {
1
+ (function () {
2
+
3
+ if (typeof Prism === 'undefined' || typeof document === 'undefined') {
3
4
  return;
4
5
  }
5
6
 
6
7
  var callbacks = [];
7
8
  var map = {};
8
- var noop = function() {};
9
+ var noop = function () {};
9
10
 
10
11
  Prism.plugins.toolbar = {};
11
12
 
@@ -120,7 +121,7 @@
120
121
  });
121
122
  }
122
123
 
123
- elementCallbacks.forEach(function(callback) {
124
+ elementCallbacks.forEach(function (callback) {
124
125
  var element = callback(env);
125
126
 
126
127
  if (!element) {
@@ -138,7 +139,7 @@
138
139
  wrapper.appendChild(toolbar);
139
140
  };
140
141
 
141
- registerButton('label', function(env) {
142
+ registerButton('label', function (env) {
142
143
  var pre = env.element.parentNode;
143
144
  if (!pre || !/pre/i.test(pre.nodeName)) {
144
145
  return;
@@ -148,12 +149,12 @@
148
149
  return;
149
150
  }
150
151
 
151
- var element, template;
152
+ var element; var template;
152
153
  var text = pre.getAttribute('data-label');
153
154
  try {
154
155
  // Any normal text will blow up this selector.
155
156
  template = document.querySelector('template#' + text);
156
- } catch (e) {}
157
+ } catch (e) { /* noop */ }
157
158
 
158
159
  if (template) {
159
160
  element = template.content;
@@ -175,4 +176,4 @@
175
176
  * Register the toolbar with Prism.
176
177
  */
177
178
  Prism.hooks.add('complete', hook);
178
- })();
179
+ }());
@@ -0,0 +1,70 @@
1
+ (function () {
2
+
3
+ if (typeof Prism === 'undefined') {
4
+ return;
5
+ }
6
+
7
+ Prism.languages.treeview = {
8
+ 'treeview-part': {
9
+ pattern: /^.+/m,
10
+ inside: {
11
+ 'entry-line': [
12
+ {
13
+ pattern: /\|-- |├── /,
14
+ alias: 'line-h'
15
+ },
16
+ {
17
+ pattern: /\| {3}|│ {3}/,
18
+ alias: 'line-v'
19
+ },
20
+ {
21
+ pattern: /`-- |└── /,
22
+ alias: 'line-v-last'
23
+ },
24
+ {
25
+ pattern: / {4}/,
26
+ alias: 'line-v-gap'
27
+ }
28
+ ],
29
+ 'entry-name': {
30
+ pattern: /.*\S.*/,
31
+ inside: {
32
+ // symlink
33
+ 'operator': / -> /,
34
+ }
35
+ }
36
+ }
37
+ }
38
+ };
39
+
40
+ Prism.hooks.add('wrap', function (env) {
41
+ if (env.language === 'treeview' && env.type === 'entry-name') {
42
+ var classes = env.classes;
43
+
44
+ var folderPattern = /(^|[^\\])\/\s*$/;
45
+ if (folderPattern.test(env.content)) {
46
+ // folder
47
+
48
+ // remove trailing /
49
+ env.content = env.content.replace(folderPattern, '$1');
50
+ classes.push('dir');
51
+ } else {
52
+ // file
53
+
54
+ // remove trailing file marker
55
+ env.content = env.content.replace(/(^|[^\\])[=*|]\s*$/, '$1');
56
+
57
+ var parts = env.content.toLowerCase().replace(/\s+/g, '').split('.');
58
+ while (parts.length > 1) {
59
+ parts.shift();
60
+ // Ex. 'foo.min.js' would become '<span class="token keyword ext-min-js ext-js">foo.min.js</span>'
61
+ classes.push('ext-' + parts.join('-'));
62
+ }
63
+ }
64
+
65
+ if (env.content[0] === '.') {
66
+ classes.push('dotfile');
67
+ }
68
+ }
69
+ });
70
+ }());
@@ -1,44 +1,62 @@
1
1
  (function () {
2
2
 
3
- if (typeof self === 'undefined' || !self.Prism || !self.document || !Prism.languages.markup) {
3
+ if (typeof Prism === 'undefined' || typeof document === 'undefined') {
4
4
  return;
5
5
  }
6
6
 
7
+ // https://developer.mozilla.org/en-US/docs/Web/API/Element/matches#Polyfill
8
+ if (!Element.prototype.matches) {
9
+ Element.prototype.matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector;
10
+ }
11
+
12
+
7
13
  Prism.plugins.UnescapedMarkup = true;
8
14
 
9
15
  Prism.hooks.add('before-highlightall', function (env) {
10
- env.selector += ", [class*='lang-'] script[type='text/plain'], [class*='language-'] script[type='text/plain']" +
11
- ", script[type='text/plain'][class*='lang-'], script[type='text/plain'][class*='language-']";
16
+ env.selector += ', [class*="lang-"] script[type="text/plain"]'
17
+ + ', [class*="language-"] script[type="text/plain"]'
18
+ + ', script[type="text/plain"][class*="lang-"]'
19
+ + ', script[type="text/plain"][class*="language-"]';
12
20
  });
13
21
 
14
22
  Prism.hooks.add('before-sanity-check', function (env) {
15
- if ((env.element.matches || env.element.msMatchesSelector).call(env.element, "script[type='text/plain']")) {
16
- var code = document.createElement("code");
17
- var pre = document.createElement("pre");
18
-
19
- pre.className = code.className = env.element.className;
20
-
21
- if (env.element.dataset) {
22
- Object.keys(env.element.dataset).forEach(function (key) {
23
- if (Object.prototype.hasOwnProperty.call(env.element.dataset, key)) {
24
- pre.dataset[key] = env.element.dataset[key];
25
- }
26
- });
27
- }
23
+ /** @type {HTMLElement} */
24
+ var element = env.element;
25
+
26
+ if (element.matches('script[type="text/plain"]')) {
27
+ // found a <script type="text/plain" ...> element
28
+ // we convert this element to a regular <pre><code> code block
28
29
 
29
- env.code = env.code.replace(/&lt;\/script(>|&gt;)/gi, "</scri" + "pt>");
30
- code.textContent = env.code;
30
+ var code = document.createElement('code');
31
+ var pre = document.createElement('pre');
31
32
 
33
+ // copy class name
34
+ pre.className = code.className = element.className;
35
+
36
+ // copy all "data-" attributes
37
+ var dataset = element.dataset;
38
+ Object.keys(dataset || {}).forEach(function (key) {
39
+ if (Object.prototype.hasOwnProperty.call(dataset, key)) {
40
+ pre.dataset[key] = dataset[key];
41
+ }
42
+ });
43
+
44
+ code.textContent = env.code = env.code.replace(/&lt;\/script(?:>|&gt;)/gi, '</scri' + 'pt>');
45
+
46
+ // change DOM
32
47
  pre.appendChild(code);
33
- env.element.parentNode.replaceChild(pre, env.element);
48
+ element.parentNode.replaceChild(pre, element);
34
49
  env.element = code;
35
50
  return;
36
51
  }
37
52
 
38
- var pre = env.element.parentNode;
39
- if (!env.code && pre && pre.nodeName.toLowerCase() == 'pre' &&
40
- env.element.childNodes.length && env.element.childNodes[0].nodeName == "#comment") {
41
- env.element.textContent = env.code = env.element.childNodes[0].textContent;
53
+ if (!env.code) {
54
+ // no code
55
+ var childNodes = element.childNodes;
56
+ if (childNodes.length === 1 && childNodes[0].nodeName == '#comment') {
57
+ // the only child is a comment -> use the comment's text
58
+ element.textContent = env.code = childNodes[0].textContent;
59
+ }
42
60
  }
43
61
  });
44
62
  }());