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,45 +1,78 @@
1
1
  Prism.languages.haxe = Prism.languages.extend('clike', {
2
- // Strings can be multi-line
3
2
  'string': {
4
- pattern: /(["'])(?:(?!\1)[^\\]|\\[\s\S])*\1/,
3
+ // Strings can be multi-line
4
+ pattern: /"(?:[^"\\]|\\[\s\S])*"/,
5
+ greedy: true
6
+ },
7
+ 'class-name': [
8
+ {
9
+ pattern: /(\b(?:abstract|class|enum|extends|implements|interface|new|typedef)\s+)[A-Z_]\w*/,
10
+ lookbehind: true,
11
+ },
12
+ // based on naming convention
13
+ /\b[A-Z]\w*/
14
+ ],
15
+ // The final look-ahead prevents highlighting of keywords if expressions such as "haxe.macro.Expr"
16
+ 'keyword': /\bthis\b|\b(?:abstract|as|break|case|cast|catch|class|continue|default|do|dynamic|else|enum|extends|extern|final|for|from|function|if|implements|import|in|inline|interface|macro|new|null|operator|overload|override|package|private|public|return|static|super|switch|throw|to|try|typedef|untyped|using|var|while)(?!\.)\b/,
17
+ 'function': {
18
+ pattern: /\b[a-z_]\w*(?=\s*(?:<[^<>]*>\s*)?\()/i,
19
+ greedy: true
20
+ },
21
+ 'operator': /\.{3}|\+\+|--|&&|\|\||->|=>|(?:<<?|>{1,3}|[-+*/%!=&|^])=?|[?:~]/
22
+ });
23
+
24
+ Prism.languages.insertBefore('haxe', 'string', {
25
+ 'string-interpolation': {
26
+ pattern: /'(?:[^'\\]|\\[\s\S])*'/,
5
27
  greedy: true,
6
28
  inside: {
7
29
  'interpolation': {
8
- pattern: /(^|[^\\])\$(?:\w+|\{[^}]+\})/,
30
+ pattern: /(^|[^\\])\$(?:\w+|\{[^{}]+\})/,
9
31
  lookbehind: true,
10
32
  inside: {
11
- 'interpolation': {
12
- pattern: /^\$\w*/,
13
- alias: 'variable'
14
- }
15
- // See rest below
33
+ 'interpolation-punctuation': {
34
+ pattern: /^\$\{?|\}$/,
35
+ alias: 'punctuation'
36
+ },
37
+ 'expression': {
38
+ pattern: /[\s\S]+/,
39
+ inside: Prism.languages.haxe
40
+ },
16
41
  }
17
- }
42
+ },
43
+ 'string': /[\s\S]+/
18
44
  }
19
- },
20
- // The final look-ahead prevents highlighting of keywords if expressions such as "haxe.macro.Expr"
21
- 'keyword': /\bthis\b|\b(?:abstract|as|break|case|cast|catch|class|continue|default|do|dynamic|else|enum|extends|extern|from|for|function|if|implements|import|in|inline|interface|macro|new|null|override|public|private|return|static|super|switch|throw|to|try|typedef|using|var|while)(?!\.)\b/,
22
- 'operator': /\.{3}|\+\+?|-[->]?|[=!]=?|&&?|\|\|?|<[<=]?|>[>=]?|[*\/%~^]/
45
+ }
23
46
  });
47
+
24
48
  Prism.languages.insertBefore('haxe', 'class-name', {
25
49
  'regex': {
26
- pattern: /~\/(?:[^\/\\\r\n]|\\.)+\/[igmsu]*/,
27
- greedy: true
50
+ pattern: /~\/(?:[^\/\\\r\n]|\\.)+\/[a-z]*/,
51
+ greedy: true,
52
+ inside: {
53
+ 'regex-flags': /\b[a-z]+$/,
54
+ 'regex-source': {
55
+ pattern: /^(~\/)[\s\S]+(?=\/$)/,
56
+ lookbehind: true,
57
+ alias: 'language-regex',
58
+ inside: Prism.languages.regex
59
+ },
60
+ 'regex-delimiter': /^~\/|\/$/,
61
+ }
28
62
  }
29
63
  });
64
+
30
65
  Prism.languages.insertBefore('haxe', 'keyword', {
31
66
  'preprocessor': {
32
- pattern: /#\w+/,
33
- alias: 'builtin'
67
+ pattern: /#(?:else|elseif|end|if)\b.*/,
68
+ alias: 'property'
34
69
  },
35
70
  'metadata': {
36
- pattern: /@:?\w+/,
71
+ pattern: /@:?[\w.]+/,
37
72
  alias: 'symbol'
38
73
  },
39
74
  'reification': {
40
75
  pattern: /\$(?:\w+|(?=\{))/,
41
- alias: 'variable'
76
+ alias: 'important'
42
77
  }
43
78
  });
44
- Prism.languages.haxe['string'].inside['interpolation'].inside.rest = Prism.languages.haxe;
45
- delete Prism.languages.haxe['class-name'];
@@ -1,13 +1,13 @@
1
1
  Prism.languages.hcl = {
2
2
  'comment': /(?:\/\/|#).*|\/\*[\s\S]*?(?:\*\/|$)/,
3
3
  'heredoc': {
4
- pattern: /<<-?(\w+)[\s\S]*?^\s*\1/m,
4
+ pattern: /<<-?(\w+\b)[\s\S]*?^[ \t]*\1/m,
5
5
  greedy: true,
6
6
  alias: 'string'
7
7
  },
8
8
  'keyword': [
9
9
  {
10
- pattern: /(?:resource|data)\s+(?:"(?:\\[\s\S]|[^\\"])*")(?=\s+"[\w-]+"\s+{)/i,
10
+ pattern: /(?:data|resource)\s+(?:"(?:\\[\s\S]|[^\\"])*")(?=\s+"[\w-]+"\s+\{)/i,
11
11
  inside: {
12
12
  'type': {
13
13
  pattern: /(resource|data|\s+)(?:"(?:\\[\s\S]|[^\\"])*")/i,
@@ -17,25 +17,23 @@ Prism.languages.hcl = {
17
17
  }
18
18
  },
19
19
  {
20
- pattern: /(?:provider|provisioner|variable|output|module|backend)\s+(?:[\w-]+|"(?:\\[\s\S]|[^\\"])*")\s+(?={)/i,
20
+ pattern: /(?:backend|module|output|provider|provisioner|variable)\s+(?:[\w-]+|"(?:\\[\s\S]|[^\\"])*")\s+(?=\{)/i,
21
21
  inside: {
22
22
  'type': {
23
- pattern: /(provider|provisioner|variable|output|module|backend)\s+(?:[\w-]+|"(?:\\[\s\S]|[^\\"])*")\s+/i,
23
+ pattern: /(backend|module|output|provider|provisioner|variable)\s+(?:[\w-]+|"(?:\\[\s\S]|[^\\"])*")\s+/i,
24
24
  lookbehind: true,
25
25
  alias: 'variable'
26
26
  }
27
27
  }
28
28
  },
29
- {
30
- pattern: /[\w-]+(?=\s+{)/
31
- }
29
+ /[\w-]+(?=\s+\{)/
32
30
  ],
33
31
  'property': [
34
- /[\w-\.]+(?=\s*=(?!=))/,
32
+ /[-\w\.]+(?=\s*=(?!=))/,
35
33
  /"(?:\\[\s\S]|[^\\"])+"(?=\s*[:=])/,
36
34
  ],
37
35
  'string': {
38
- pattern: /"(?:[^\\$"]|\\[\s\S]|\$(?:(?=")|\$+|[^"${])|\$\{(?:[^{}"]|"(?:[^\\"]|\\[\s\S])*")*\})*"/,
36
+ pattern: /"(?:[^\\$"]|\\[\s\S]|\$(?:(?=")|\$+(?!\$)|[^"${])|\$\{(?:[^{}"]|"(?:[^\\"]|\\[\s\S])*")*\})*"/,
39
37
  greedy: true,
40
38
  inside: {
41
39
  'interpolation': {
@@ -43,23 +41,23 @@ Prism.languages.hcl = {
43
41
  lookbehind: true,
44
42
  inside: {
45
43
  'type': {
46
- pattern: /(\b(?:terraform|var|self|count|module|path|data|local)\b\.)[\w\*]+/i,
44
+ pattern: /(\b(?:count|data|local|module|path|self|terraform|var)\b\.)[\w\*]+/i,
47
45
  lookbehind: true,
48
46
  alias: 'variable'
49
47
  },
50
- 'keyword': /\b(?:terraform|var|self|count|module|path|data|local)\b/i,
48
+ 'keyword': /\b(?:count|data|local|module|path|self|terraform|var)\b/i,
51
49
  'function': /\w+(?=\()/,
52
50
  'string': {
53
51
  pattern: /"(?:\\[\s\S]|[^\\"])*"/,
54
52
  greedy: true,
55
53
  },
56
- 'number': /\b0x[\da-f]+|\d+\.?\d*(?:e[+-]?\d+)?/i,
54
+ 'number': /\b0x[\da-f]+\b|\b\d+(?:\.\d*)?(?:e[+-]?\d+)?/i,
57
55
  'punctuation': /[!\$#%&'()*+,.\/;<=>@\[\\\]^`{|}~?:]/,
58
56
  }
59
57
  },
60
58
  }
61
59
  },
62
- 'number': /\b0x[\da-f]+|\d+\.?\d*(?:e[+-]?\d+)?/i,
63
- 'boolean': /\b(?:true|false)\b/i,
60
+ 'number': /\b0x[\da-f]+\b|\b\d+(?:\.\d*)?(?:e[+-]?\d+)?/i,
61
+ 'boolean': /\b(?:false|true)\b/i,
64
62
  'punctuation': /[=\[\]{}]/,
65
63
  };
@@ -0,0 +1,20 @@
1
+ Prism.languages.hlsl = Prism.languages.extend('c', {
2
+
3
+ // Regarding keywords and class names:
4
+ // The list of all keywords was split into 'keyword' and 'class-name' tokens based on whether they are capitalized.
5
+ // https://docs.microsoft.com/en-us/windows/win32/direct3dhlsl/dx-graphics-hlsl-appendix-keywords
6
+ // https://docs.microsoft.com/en-us/windows/win32/direct3dhlsl/dx-graphics-hlsl-appendix-reserved-words
7
+ 'class-name': [
8
+ Prism.languages.c['class-name'],
9
+ /\b(?:AppendStructuredBuffer|BlendState|Buffer|ByteAddressBuffer|CompileShader|ComputeShader|ConsumeStructuredBuffer|DepthStencilState|DepthStencilView|DomainShader|GeometryShader|Hullshader|InputPatch|LineStream|OutputPatch|PixelShader|PointStream|RWBuffer|RWByteAddressBuffer|RWStructuredBuffer|RWTexture(?:1D|1DArray|2D|2DArray|3D)|RasterizerState|RenderTargetView|SamplerComparisonState|SamplerState|StructuredBuffer|Texture(?:1D|1DArray|2D|2DArray|2DMS|2DMSArray|3D|Cube|CubeArray)|TriangleStream|VertexShader)\b/
10
+ ],
11
+ 'keyword': [
12
+ // HLSL keyword
13
+ /\b(?:asm|asm_fragment|auto|break|case|catch|cbuffer|centroid|char|class|column_major|compile|compile_fragment|const|const_cast|continue|default|delete|discard|do|dynamic_cast|else|enum|explicit|export|extern|for|friend|fxgroup|goto|groupshared|if|in|inline|inout|interface|line|lineadj|linear|long|matrix|mutable|namespace|new|nointerpolation|noperspective|operator|out|packoffset|pass|pixelfragment|point|precise|private|protected|public|register|reinterpret_cast|return|row_major|sample|sampler|shared|short|signed|sizeof|snorm|stateblock|stateblock_state|static|static_cast|string|struct|switch|tbuffer|technique|technique10|technique11|template|texture|this|throw|triangle|triangleadj|try|typedef|typename|uniform|union|unorm|unsigned|using|vector|vertexfragment|virtual|void|volatile|while)\b/,
14
+ // scalar, vector, and matrix types
15
+ /\b(?:bool|double|dword|float|half|int|min(?:10float|12int|16(?:float|int|uint))|uint)(?:[1-4](?:x[1-4])?)?\b/
16
+ ],
17
+ // https://docs.microsoft.com/en-us/windows/win32/direct3dhlsl/dx-graphics-hlsl-appendix-grammar#floating-point-numbers
18
+ 'number': /(?:(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[eE][+-]?\d+)?|\b0x[\da-fA-F]+)[fFhHlLuU]?\b/,
19
+ 'boolean': /\b(?:false|true)\b/
20
+ });
@@ -0,0 +1,14 @@
1
+ Prism.languages.hoon = {
2
+ 'comment': {
3
+ pattern: /::.*/,
4
+ greedy: true
5
+ },
6
+ 'string': {
7
+ pattern: /"(?:[^"\\]|\\.)*"|'(?:[^'\\]|\\.)*'/,
8
+ greedy: true
9
+ },
10
+ 'constant': /%(?:\.[ny]|[\w-]+)/,
11
+ 'class-name': /@(?:[a-z0-9-]*[a-z0-9])?|\*/i,
12
+ 'function': /(?:\+[-+] {2})?(?:[a-z](?:[a-z0-9-]*[a-z0-9])?)/,
13
+ 'keyword': /\.[\^\+\*=\?]|![><:\.=\?!]|=[>|:,\.\-\^<+;/~\*\?]|\?[>|:\.\-\^<\+&~=@!]|\|[\$_%:\.\-\^~\*=@\?]|\+[|\$\+\*]|:[_\-\^\+~\*]|%[_:\.\-\^\+~\*=]|\^[|:\.\-\+&~\*=\?]|\$[|_%:<>\-\^&~@=\?]|;[:<\+;\/~\*=]|~[>|\$_%<\+\/&=\?!]|--|==/
14
+ };
@@ -6,15 +6,9 @@
6
6
 
7
7
  Prism.languages.hpkp = {
8
8
  'directive': {
9
- pattern: /\b(?:(?:includeSubDomains|preload|strict)(?: |;)|pin-sha256="[a-zA-Z\d+=/]+"|(?:max-age|report-uri)=|report-to )/,
10
- alias: 'keyword'
9
+ pattern: /\b(?:includeSubDomains|max-age|pin-sha256|preload|report-to|report-uri|strict)(?=[\s;=]|$)/i,
10
+ alias: 'property'
11
11
  },
12
- 'safe': {
13
- pattern: /\d{7,}/,
14
- alias: 'selector'
15
- },
16
- 'unsafe': {
17
- pattern: /\d{1,6}/,
18
- alias: 'function'
19
- }
12
+ 'operator': /=/,
13
+ 'punctuation': /;/
20
14
  };
@@ -6,15 +6,9 @@
6
6
 
7
7
  Prism.languages.hsts = {
8
8
  'directive': {
9
- pattern: /\b(?:max-age=|includeSubDomains|preload)/,
10
- alias: 'keyword'
9
+ pattern: /\b(?:includeSubDomains|max-age|preload)(?=[\s;=]|$)/i,
10
+ alias: 'property'
11
11
  },
12
- 'safe': {
13
- pattern: /\d{8,}/,
14
- alias: 'selector'
15
- },
16
- 'unsafe': {
17
- pattern: /\d{1,7}/,
18
- alias: 'function'
19
- }
12
+ 'operator': /=/,
13
+ 'punctuation': /;/
20
14
  };
@@ -1,28 +1,92 @@
1
1
  (function (Prism) {
2
+
3
+ /**
4
+ * @param {string} name
5
+ * @returns {RegExp}
6
+ */
7
+ function headerValueOf(name) {
8
+ return RegExp('(^(?:' + name + '):[ \t]*(?![ \t]))[^]+', 'i');
9
+ }
10
+
2
11
  Prism.languages.http = {
3
12
  'request-line': {
4
- pattern: /^(?:POST|GET|PUT|DELETE|OPTIONS|PATCH|TRACE|CONNECT)\s(?:https?:\/\/|\/)\S+\sHTTP\/[0-9.]+/m,
13
+ pattern: /^(?:CONNECT|DELETE|GET|HEAD|OPTIONS|PATCH|POST|PRI|PUT|SEARCH|TRACE)\s(?:https?:\/\/|\/)\S*\sHTTP\/[\d.]+/m,
5
14
  inside: {
6
- // HTTP Verb
7
- 'property': /^(?:POST|GET|PUT|DELETE|OPTIONS|PATCH|TRACE|CONNECT)\b/,
8
- // Path or query argument
9
- 'attr-name': /:\w+/
15
+ // HTTP Method
16
+ 'method': {
17
+ pattern: /^[A-Z]+\b/,
18
+ alias: 'property'
19
+ },
20
+ // Request Target e.g. http://example.com, /path/to/file
21
+ 'request-target': {
22
+ pattern: /^(\s)(?:https?:\/\/|\/)\S*(?=\s)/,
23
+ lookbehind: true,
24
+ alias: 'url',
25
+ inside: Prism.languages.uri
26
+ },
27
+ // HTTP Version
28
+ 'http-version': {
29
+ pattern: /^(\s)HTTP\/[\d.]+/,
30
+ lookbehind: true,
31
+ alias: 'property'
32
+ },
10
33
  }
11
34
  },
12
35
  'response-status': {
13
- pattern: /^HTTP\/1.[01] \d+.*/m,
36
+ pattern: /^HTTP\/[\d.]+ \d+ .+/m,
14
37
  inside: {
15
- // Status, e.g. 200 OK
16
- 'property': {
17
- pattern: /(^HTTP\/1.[01] )\d+.*/i,
18
- lookbehind: true
38
+ // HTTP Version
39
+ 'http-version': {
40
+ pattern: /^HTTP\/[\d.]+/,
41
+ alias: 'property'
42
+ },
43
+ // Status Code
44
+ 'status-code': {
45
+ pattern: /^(\s)\d+(?=\s)/,
46
+ lookbehind: true,
47
+ alias: 'number'
48
+ },
49
+ // Reason Phrase
50
+ 'reason-phrase': {
51
+ pattern: /^(\s).+/,
52
+ lookbehind: true,
53
+ alias: 'string'
19
54
  }
20
55
  }
21
56
  },
22
- // HTTP header name
23
- 'header-name': {
24
- pattern: /^[\w-]+:(?=.)/m,
25
- alias: 'keyword'
57
+ 'header': {
58
+ pattern: /^[\w-]+:.+(?:(?:\r\n?|\n)[ \t].+)*/m,
59
+ inside: {
60
+ 'header-value': [
61
+ {
62
+ pattern: headerValueOf(/Content-Security-Policy/.source),
63
+ lookbehind: true,
64
+ alias: ['csp', 'languages-csp'],
65
+ inside: Prism.languages.csp
66
+ },
67
+ {
68
+ pattern: headerValueOf(/Public-Key-Pins(?:-Report-Only)?/.source),
69
+ lookbehind: true,
70
+ alias: ['hpkp', 'languages-hpkp'],
71
+ inside: Prism.languages.hpkp
72
+ },
73
+ {
74
+ pattern: headerValueOf(/Strict-Transport-Security/.source),
75
+ lookbehind: true,
76
+ alias: ['hsts', 'languages-hsts'],
77
+ inside: Prism.languages.hsts
78
+ },
79
+ {
80
+ pattern: headerValueOf(/[^:]+/.source),
81
+ lookbehind: true
82
+ }
83
+ ],
84
+ 'header-name': {
85
+ pattern: /^[^:]+/,
86
+ alias: 'keyword'
87
+ },
88
+ 'punctuation': /^:/
89
+ }
26
90
  }
27
91
  };
28
92
 
@@ -34,7 +98,8 @@
34
98
  'application/xml': langs.xml,
35
99
  'text/xml': langs.xml,
36
100
  'text/html': langs.html,
37
- 'text/css': langs.css
101
+ 'text/css': langs.css,
102
+ 'text/plain': langs.plain
38
103
  };
39
104
 
40
105
  // Declare which types can also be suffixes
@@ -64,14 +129,23 @@
64
129
 
65
130
  var pattern = suffixTypes[contentType] ? getSuffixPattern(contentType) : contentType;
66
131
  options[contentType.replace(/\//g, '-')] = {
67
- pattern: RegExp('(content-type:\\s*' + pattern + '[\\s\\S]*?)(?:\\r?\\n|\\r){2}[\\s\\S]*', 'i'),
132
+ pattern: RegExp(
133
+ '(' + /content-type:\s*/.source + pattern + /(?:(?:\r\n?|\n)[\w-].*)*(?:\r(?:\n|(?!\n))|\n)/.source + ')' +
134
+ // This is a little interesting:
135
+ // The HTTP format spec required 1 empty line before the body to make everything unambiguous.
136
+ // However, when writing code by hand (e.g. to display on a website) people can forget about this,
137
+ // so we want to be liberal here. We will allow the empty line to be omitted if the first line of
138
+ // the body does not start with a [\w-] character (as headers do).
139
+ /[^ \t\w-][\s\S]*/.source,
140
+ 'i'
141
+ ),
68
142
  lookbehind: true,
69
143
  inside: httpLanguages[contentType]
70
144
  };
71
145
  }
72
146
  }
73
147
  if (options) {
74
- Prism.languages.insertBefore('http', 'header-name', options);
148
+ Prism.languages.insertBefore('http', 'header', options);
75
149
  }
76
150
 
77
151
  }(Prism));
@@ -3,13 +3,13 @@
3
3
  Prism.languages.ichigojam = {
4
4
  'comment': /(?:\B'|REM)(?:[^\n\r]*)/i,
5
5
  'string': {
6
- pattern: /"(?:""|[!#$%&'()*,\/:;<=>?^_ +\-.A-Z\d])*"/i,
6
+ pattern: /"(?:""|[!#$%&'()*,\/:;<=>?^\w +\-.])*"/,
7
7
  greedy: true
8
8
  },
9
- 'number': /\B#[0-9A-F]+|\B`[01]+|(?:\b\d+\.?\d*|\B\.\d+)(?:E[+-]?\d+)?/i,
10
- 'keyword': /\b(?:BEEP|BPS|CASE|CLEAR|CLK|CLO|CLP|CLS|CLT|CLV|CONT|COPY|ELSE|END|FILE|FILES|FOR|GOSUB|GSB|GOTO|IF|INPUT|KBD|LED|LET|LIST|LOAD|LOCATE|LRUN|NEW|NEXT|OUT|RIGHT|PLAY|POKE|PRINT|PWM|REM|RENUM|RESET|RETURN|RTN|RUN|SAVE|SCROLL|SLEEP|SRND|STEP|STOP|SUB|TEMPO|THEN|TO|UART|VIDEO|WAIT)(?:\$|\b)/i,
9
+ 'number': /\B#[0-9A-F]+|\B`[01]+|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:E[+-]?\d+)?/i,
10
+ 'keyword': /\b(?:BEEP|BPS|CASE|CLEAR|CLK|CLO|CLP|CLS|CLT|CLV|CONT|COPY|ELSE|END|FILE|FILES|FOR|GOSUB|GOTO|GSB|IF|INPUT|KBD|LED|LET|LIST|LOAD|LOCATE|LRUN|NEW|NEXT|OUT|PLAY|POKE|PRINT|PWM|REM|RENUM|RESET|RETURN|RIGHT|RTN|RUN|SAVE|SCROLL|SLEEP|SRND|STEP|STOP|SUB|TEMPO|THEN|TO|UART|VIDEO|WAIT)(?:\$|\b)/i,
11
11
  'function': /\b(?:ABS|ANA|ASC|BIN|BTN|DEC|END|FREE|HELP|HEX|I2CR|I2CW|IN|INKEY|LEN|LINE|PEEK|RND|SCR|SOUND|STR|TICK|USR|VER|VPEEK|ZER)(?:\$|\b)/i,
12
- 'label': /(?:\B@[^\s]+)/i,
12
+ 'label': /(?:\B@\S+)/,
13
13
  'operator': /<[=>]?|>=?|\|\||&&|[+\-*\/=|&^~!]|\b(?:AND|NOT|OR)\b/i,
14
14
  'punctuation': /[\[,;:()\]]/
15
- };
15
+ };
@@ -14,7 +14,7 @@ Prism.languages.icon = {
14
14
  alias: 'builtin'
15
15
  },
16
16
  'keyword': /\b(?:break|by|case|create|default|do|else|end|every|fail|global|if|initial|invocable|link|local|next|not|of|procedure|record|repeat|return|static|suspend|then|to|until|while)\b/,
17
- 'function': /(?!\d)\w+(?=\s*[({]|\s*!\s*\[)/,
17
+ 'function': /\b(?!\d)\w+(?=\s*[({]|\s*!\s*\[)/,
18
18
  'operator': /[+-]:(?!=)|(?:[\/?@^%&]|\+\+?|--?|==?=?|~==?=?|\*\*?|\|\|\|?|<(?:->?|<?=?)|>>?=?)(?::=)?|:(?:=:?)?|[!.\\|~]/,
19
19
  'punctuation': /[\[\](){},;]/
20
- };
20
+ };
@@ -0,0 +1,148 @@
1
+ // https://unicode-org.github.io/icu/userguide/format_parse/messages/
2
+ // https://unicode-org.github.io/icu-docs/apidoc/released/icu4j/com/ibm/icu/text/MessageFormat.html
3
+
4
+ (function (Prism) {
5
+
6
+ /**
7
+ * @param {string} source
8
+ * @param {number} level
9
+ * @returns {string}
10
+ */
11
+ function nested(source, level) {
12
+ if (level <= 0) {
13
+ return /[]/.source;
14
+ } else {
15
+ return source.replace(/<SELF>/g, function () { return nested(source, level - 1); });
16
+ }
17
+ }
18
+
19
+ var stringPattern = /'[{}:=,](?:[^']|'')*'(?!')/;
20
+
21
+ var escape = {
22
+ pattern: /''/,
23
+ greedy: true,
24
+ alias: 'operator'
25
+ };
26
+ var string = {
27
+ pattern: stringPattern,
28
+ greedy: true,
29
+ inside: {
30
+ 'escape': escape
31
+ }
32
+ };
33
+
34
+ var argumentSource = nested(
35
+ /\{(?:[^{}']|'(?![{},'])|''|<STR>|<SELF>)*\}/.source
36
+ .replace(/<STR>/g, function () { return stringPattern.source; }),
37
+ 8
38
+ );
39
+
40
+ var nestedMessage = {
41
+ pattern: RegExp(argumentSource),
42
+ inside: {
43
+ 'message': {
44
+ pattern: /^(\{)[\s\S]+(?=\}$)/,
45
+ lookbehind: true,
46
+ inside: null // see below
47
+ },
48
+ 'message-delimiter': {
49
+ pattern: /./,
50
+ alias: 'punctuation'
51
+ }
52
+ }
53
+ };
54
+
55
+ Prism.languages['icu-message-format'] = {
56
+ 'argument': {
57
+ pattern: RegExp(argumentSource),
58
+ greedy: true,
59
+ inside: {
60
+ 'content': {
61
+ pattern: /^(\{)[\s\S]+(?=\}$)/,
62
+ lookbehind: true,
63
+ inside: {
64
+ 'argument-name': {
65
+ pattern: /^(\s*)[^{}:=,\s]+/,
66
+ lookbehind: true
67
+ },
68
+ 'choice-style': {
69
+ // https://unicode-org.github.io/icu-docs/apidoc/released/icu4c/classicu_1_1ChoiceFormat.html#details
70
+ pattern: /^(\s*,\s*choice\s*,\s*)\S(?:[\s\S]*\S)?/,
71
+ lookbehind: true,
72
+ inside: {
73
+ 'punctuation': /\|/,
74
+ 'range': {
75
+ pattern: /^(\s*)[+-]?(?:\d+(?:\.\d*)?|\u221e)\s*[<#\u2264]/,
76
+ lookbehind: true,
77
+ inside: {
78
+ 'operator': /[<#\u2264]/,
79
+ 'number': /\S+/
80
+ }
81
+ },
82
+ rest: null // see below
83
+ }
84
+ },
85
+ 'plural-style': {
86
+ // https://unicode-org.github.io/icu-docs/apidoc/released/icu4j/com/ibm/icu/text/PluralFormat.html#:~:text=Patterns%20and%20Their%20Interpretation
87
+ pattern: /^(\s*,\s*(?:plural|selectordinal)\s*,\s*)\S(?:[\s\S]*\S)?/,
88
+ lookbehind: true,
89
+ inside: {
90
+ 'offset': /^offset:\s*\d+/,
91
+ 'nested-message': nestedMessage,
92
+ 'selector': {
93
+ pattern: /=\d+|[^{}:=,\s]+/,
94
+ inside: {
95
+ 'keyword': /^(?:few|many|one|other|two|zero)$/
96
+ }
97
+ }
98
+ }
99
+ },
100
+ 'select-style': {
101
+ // https://unicode-org.github.io/icu-docs/apidoc/released/icu4j/com/ibm/icu/text/SelectFormat.html#:~:text=Patterns%20and%20Their%20Interpretation
102
+ pattern: /^(\s*,\s*select\s*,\s*)\S(?:[\s\S]*\S)?/,
103
+ lookbehind: true,
104
+ inside: {
105
+ 'nested-message': nestedMessage,
106
+ 'selector': {
107
+ pattern: /[^{}:=,\s]+/,
108
+ inside: {
109
+ 'keyword': /^other$/
110
+ }
111
+ }
112
+ }
113
+ },
114
+ 'keyword': /\b(?:choice|plural|select|selectordinal)\b/,
115
+ 'arg-type': {
116
+ pattern: /\b(?:date|duration|number|ordinal|spellout|time)\b/,
117
+ alias: 'keyword'
118
+ },
119
+ 'arg-skeleton': {
120
+ pattern: /(,\s*)::[^{}:=,\s]+/,
121
+ lookbehind: true
122
+ },
123
+ 'arg-style': {
124
+ pattern: /(,\s*)(?:currency|full|integer|long|medium|percent|short)(?=\s*$)/,
125
+ lookbehind: true
126
+ },
127
+ 'arg-style-text': {
128
+ pattern: RegExp(/(^\s*,\s*(?=\S))/.source + nested(/(?:[^{}']|'[^']*'|\{(?:<SELF>)?\})+/.source, 8) + '$'),
129
+ lookbehind: true,
130
+ alias: 'string'
131
+ },
132
+ 'punctuation': /,/
133
+ }
134
+ },
135
+ 'argument-delimiter': {
136
+ pattern: /./,
137
+ alias: 'operator'
138
+ }
139
+ }
140
+ },
141
+ 'escape': escape,
142
+ 'string': string
143
+ };
144
+
145
+ nestedMessage.inside.message.inside = Prism.languages['icu-message-format'];
146
+ Prism.languages['icu-message-format'].argument.inside.content.inside['choice-style'].inside.rest = Prism.languages['icu-message-format'];
147
+
148
+ }(Prism));
@@ -0,0 +1,19 @@
1
+ Prism.languages.idris = Prism.languages.extend('haskell', {
2
+ 'comment': {
3
+ pattern: /(?:(?:--|\|\|\|).*$|\{-[\s\S]*?-\})/m,
4
+ },
5
+ 'keyword': /\b(?:Type|case|class|codata|constructor|corecord|data|do|dsl|else|export|if|implementation|implicit|import|impossible|in|infix|infixl|infixr|instance|interface|let|module|mutual|namespace|of|parameters|partial|postulate|private|proof|public|quoteGoal|record|rewrite|syntax|then|total|using|where|with)\b/,
6
+ 'builtin': undefined
7
+ });
8
+
9
+ Prism.languages.insertBefore('idris', 'keyword', {
10
+ 'import-statement': {
11
+ pattern: /(^\s*import\s+)(?:[A-Z][\w']*)(?:\.[A-Z][\w']*)*/m,
12
+ lookbehind: true,
13
+ inside: {
14
+ 'punctuation': /\./
15
+ }
16
+ }
17
+ });
18
+
19
+ Prism.languages.idr = Prism.languages.idris;
@@ -0,0 +1,32 @@
1
+ Prism.languages.iecst = {
2
+ 'comment': [
3
+ {
4
+ pattern: /(^|[^\\])(?:\/\*[\s\S]*?(?:\*\/|$)|\(\*[\s\S]*?(?:\*\)|$)|\{[\s\S]*?(?:\}|$))/,
5
+ lookbehind: true,
6
+ greedy: true,
7
+ },
8
+ {
9
+ pattern: /(^|[^\\:])\/\/.*/,
10
+ lookbehind: true,
11
+ greedy: true,
12
+ },
13
+ ],
14
+ 'string': {
15
+ pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,
16
+ greedy: true,
17
+ },
18
+ 'keyword': [
19
+ /\b(?:END_)?(?:PROGRAM|CONFIGURATION|INTERFACE|FUNCTION_BLOCK|FUNCTION|ACTION|TRANSITION|TYPE|STRUCT|(?:INITIAL_)?STEP|NAMESPACE|LIBRARY|CHANNEL|FOLDER|RESOURCE|VAR_(?:ACCESS|CONFIG|EXTERNAL|GLOBAL|INPUT|IN_OUT|OUTPUT|TEMP)|VAR|METHOD|PROPERTY)\b/i,
20
+ /\b(?:AT|BY|(?:END_)?(?:CASE|FOR|IF|REPEAT|WHILE)|CONSTANT|CONTINUE|DO|ELSE|ELSIF|EXIT|EXTENDS|FROM|GET|GOTO|IMPLEMENTS|JMP|NON_RETAIN|OF|PRIVATE|PROTECTED|PUBLIC|RETAIN|RETURN|SET|TASK|THEN|TO|UNTIL|USING|WITH|__CATCH|__ENDTRY|__FINALLY|__TRY)\b/
21
+ ],
22
+ 'class-name': /\b(?:ANY|ARRAY|BOOL|BYTE|U?(?:D|L|S)?INT|(?:D|L)?WORD|DATE(?:_AND_TIME)?|DT|L?REAL|POINTER|STRING|TIME(?:_OF_DAY)?|TOD)\b/,
23
+ 'address': {
24
+ pattern: /%[IQM][XBWDL][\d.]*|%[IQ][\d.]*/,
25
+ alias: 'symbol'
26
+ },
27
+ 'number': /\b(?:16#[\da-f]+|2#[01_]+|0x[\da-f]+)\b|\b(?:D|DT|T|TOD)#[\d_shmd:]*|\b[A-Z]*#[\d.,_]*|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,
28
+ 'boolean': /\b(?:FALSE|NULL|TRUE)\b/,
29
+ 'operator': /S?R?:?=>?|&&?|\*\*?|<[=>]?|>=?|[-:^/+#]|\b(?:AND|EQ|EXPT|GE|GT|LE|LT|MOD|NE|NOT|OR|XOR)\b/,
30
+ 'function': /\b[a-z_]\w*(?=\s*\()/i,
31
+ 'punctuation': /[()[\].,;]/,
32
+ };
@@ -0,0 +1,23 @@
1
+ (function (Prism) {
2
+ Prism.languages.ignore = {
3
+ // https://git-scm.com/docs/gitignore
4
+ 'comment': /^#.*/m,
5
+ 'entry': {
6
+ pattern: /\S(?:.*(?:(?:\\ )|\S))?/,
7
+ alias: 'string',
8
+ inside: {
9
+ 'operator': /^!|\*\*?|\?/,
10
+ 'regex': {
11
+ pattern: /(^|[^\\])\[[^\[\]]*\]/,
12
+ lookbehind: true
13
+ },
14
+ 'punctuation': /\//
15
+ }
16
+ }
17
+ };
18
+
19
+ Prism.languages.gitignore = Prism.languages.ignore;
20
+ Prism.languages.hgignore = Prism.languages.ignore;
21
+ Prism.languages.npmignore = Prism.languages.ignore;
22
+
23
+ }(Prism));