prism-rails 1.6.0.3 → 1.29.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (508) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +12 -0
  3. data/README.md +109 -44
  4. data/lib/prism-rails/version.rb +1 -1
  5. data/vendor/assets/javascripts/languages/index.js +82 -0
  6. data/vendor/assets/javascripts/languages/prism-abap.js +48 -0
  7. data/vendor/assets/javascripts/languages/prism-abnf.js +54 -0
  8. data/vendor/assets/javascripts/languages/prism-actionscript.js +19 -0
  9. data/vendor/assets/javascripts/languages/prism-ada.js +22 -0
  10. data/vendor/assets/javascripts/languages/prism-agda.js +24 -0
  11. data/vendor/assets/javascripts/languages/prism-al.js +25 -0
  12. data/vendor/assets/javascripts/languages/prism-antlr4.js +65 -0
  13. data/vendor/assets/javascripts/languages/prism-apacheconf.js +47 -0
  14. data/vendor/assets/javascripts/languages/prism-apex.js +65 -0
  15. data/vendor/assets/javascripts/{prism → languages}/prism-apl.js +7 -4
  16. data/vendor/assets/javascripts/languages/prism-applescript.js +17 -0
  17. data/vendor/assets/javascripts/languages/prism-aql.js +49 -0
  18. data/vendor/assets/javascripts/languages/prism-arduino.js +7 -0
  19. data/vendor/assets/javascripts/languages/prism-arff.js +10 -0
  20. data/vendor/assets/javascripts/languages/prism-armasm.js +49 -0
  21. data/vendor/assets/javascripts/languages/prism-arturo.js +105 -0
  22. data/vendor/assets/javascripts/{prism → languages}/prism-asciidoc.js +36 -73
  23. data/vendor/assets/javascripts/languages/prism-asm6502.js +29 -0
  24. data/vendor/assets/javascripts/languages/prism-asmatmel.js +43 -0
  25. data/vendor/assets/javascripts/languages/prism-aspnet.js +48 -0
  26. data/vendor/assets/javascripts/languages/prism-autohotkey.js +44 -0
  27. data/vendor/assets/javascripts/languages/prism-autoit.js +34 -0
  28. data/vendor/assets/javascripts/languages/prism-avisynth.js +188 -0
  29. data/vendor/assets/javascripts/languages/prism-avro-idl.js +50 -0
  30. data/vendor/assets/javascripts/languages/prism-awk.js +32 -0
  31. data/vendor/assets/javascripts/languages/prism-bash.js +235 -0
  32. data/vendor/assets/javascripts/{prism → languages}/prism-basic.js +7 -4
  33. data/vendor/assets/javascripts/{prism → languages}/prism-batch.js +10 -10
  34. data/vendor/assets/javascripts/languages/prism-bbcode.js +29 -0
  35. data/vendor/assets/javascripts/languages/prism-bbj.js +19 -0
  36. data/vendor/assets/javascripts/languages/prism-bicep.js +77 -0
  37. data/vendor/assets/javascripts/languages/prism-birb.js +23 -0
  38. data/vendor/assets/javascripts/{prism → languages}/prism-bison.js +2 -2
  39. data/vendor/assets/javascripts/languages/prism-bnf.js +21 -0
  40. data/vendor/assets/javascripts/languages/prism-bqn.js +63 -0
  41. data/vendor/assets/javascripts/{prism → languages}/prism-brainfuck.js +1 -1
  42. data/vendor/assets/javascripts/languages/prism-brightscript.js +44 -0
  43. data/vendor/assets/javascripts/languages/prism-bro.js +37 -0
  44. data/vendor/assets/javascripts/languages/prism-bsl.js +75 -0
  45. data/vendor/assets/javascripts/languages/prism-c.js +80 -0
  46. data/vendor/assets/javascripts/languages/prism-cfscript.js +44 -0
  47. data/vendor/assets/javascripts/languages/prism-chaiscript.js +60 -0
  48. data/vendor/assets/javascripts/languages/prism-cil.js +27 -0
  49. data/vendor/assets/javascripts/languages/prism-cilkc.js +8 -0
  50. data/vendor/assets/javascripts/languages/prism-cilkcpp.js +9 -0
  51. data/vendor/assets/javascripts/languages/prism-clike.js +31 -0
  52. data/vendor/assets/javascripts/languages/prism-clojure.js +31 -0
  53. data/vendor/assets/javascripts/languages/prism-cmake.js +29 -0
  54. data/vendor/assets/javascripts/languages/prism-cobol.js +53 -0
  55. data/vendor/assets/javascripts/languages/prism-coffeescript.js +96 -0
  56. data/vendor/assets/javascripts/languages/prism-concurnas.js +61 -0
  57. data/vendor/assets/javascripts/languages/prism-cooklang.js +146 -0
  58. data/vendor/assets/javascripts/languages/prism-coq.js +54 -0
  59. data/vendor/assets/javascripts/languages/prism-core.js +1263 -0
  60. data/vendor/assets/javascripts/languages/prism-cpp.js +99 -0
  61. data/vendor/assets/javascripts/languages/prism-crystal.js +57 -0
  62. data/vendor/assets/javascripts/languages/prism-csharp.js +366 -0
  63. data/vendor/assets/javascripts/languages/prism-cshtml.js +199 -0
  64. data/vendor/assets/javascripts/languages/prism-csp.js +76 -0
  65. data/vendor/assets/javascripts/languages/prism-css-extras.js +120 -0
  66. data/vendor/assets/javascripts/languages/prism-css.js +64 -0
  67. data/vendor/assets/javascripts/languages/prism-csv.js +6 -0
  68. data/vendor/assets/javascripts/languages/prism-cue.js +84 -0
  69. data/vendor/assets/javascripts/languages/prism-cypher.js +36 -0
  70. data/vendor/assets/javascripts/languages/prism-d.js +84 -0
  71. data/vendor/assets/javascripts/languages/prism-dart.js +79 -0
  72. data/vendor/assets/javascripts/languages/prism-dataweave.js +41 -0
  73. data/vendor/assets/javascripts/languages/prism-dax.js +27 -0
  74. data/vendor/assets/javascripts/languages/prism-dhall.js +69 -0
  75. data/vendor/assets/javascripts/languages/prism-diff.js +64 -0
  76. data/vendor/assets/javascripts/languages/prism-django.js +60 -0
  77. data/vendor/assets/javascripts/languages/prism-dns-zone-file.js +33 -0
  78. data/vendor/assets/javascripts/languages/prism-docker.js +98 -0
  79. data/vendor/assets/javascripts/languages/prism-dot.js +76 -0
  80. data/vendor/assets/javascripts/languages/prism-ebnf.js +22 -0
  81. data/vendor/assets/javascripts/languages/prism-editorconfig.js +26 -0
  82. data/vendor/assets/javascripts/{prism → languages}/prism-eiffel.js +19 -9
  83. data/vendor/assets/javascripts/languages/prism-ejs.js +26 -0
  84. data/vendor/assets/javascripts/languages/prism-elixir.js +98 -0
  85. data/vendor/assets/javascripts/languages/prism-elm.js +45 -0
  86. data/vendor/assets/javascripts/languages/prism-erb.js +25 -0
  87. data/vendor/assets/javascripts/{prism → languages}/prism-erlang.js +12 -9
  88. data/vendor/assets/javascripts/languages/prism-etlua.js +23 -0
  89. data/vendor/assets/javascripts/languages/prism-excel-formula.js +66 -0
  90. data/vendor/assets/javascripts/languages/prism-factor.js +403 -0
  91. data/vendor/assets/javascripts/languages/prism-false.js +32 -0
  92. data/vendor/assets/javascripts/languages/prism-firestore-security-rules.js +35 -0
  93. data/vendor/assets/javascripts/languages/prism-flow.js +35 -0
  94. data/vendor/assets/javascripts/{prism → languages}/prism-fortran.js +11 -8
  95. data/vendor/assets/javascripts/languages/prism-fsharp.js +75 -0
  96. data/vendor/assets/javascripts/languages/prism-ftl.js +98 -0
  97. data/vendor/assets/javascripts/languages/prism-gap.js +54 -0
  98. data/vendor/assets/javascripts/languages/prism-gcode.js +16 -0
  99. data/vendor/assets/javascripts/languages/prism-gdscript.js +27 -0
  100. data/vendor/assets/javascripts/languages/prism-gedcom.js +28 -0
  101. data/vendor/assets/javascripts/languages/prism-gettext.js +43 -0
  102. data/vendor/assets/javascripts/languages/prism-gherkin.js +85 -0
  103. data/vendor/assets/javascripts/{prism → languages}/prism-git.js +3 -3
  104. data/vendor/assets/javascripts/languages/prism-glsl.js +3 -0
  105. data/vendor/assets/javascripts/languages/prism-gml.js +7 -0
  106. data/vendor/assets/javascripts/languages/prism-gn.js +51 -0
  107. data/vendor/assets/javascripts/languages/prism-go-module.js +24 -0
  108. data/vendor/assets/javascripts/languages/prism-go.js +28 -0
  109. data/vendor/assets/javascripts/languages/prism-gradle.js +63 -0
  110. data/vendor/assets/javascripts/languages/prism-graphql.js +211 -0
  111. data/vendor/assets/javascripts/languages/prism-groovy.js +65 -0
  112. data/vendor/assets/javascripts/{prism → languages}/prism-haml.js +32 -37
  113. data/vendor/assets/javascripts/languages/prism-handlebars.js +40 -0
  114. data/vendor/assets/javascripts/languages/prism-haskell.js +66 -0
  115. data/vendor/assets/javascripts/languages/prism-haxe.js +78 -0
  116. data/vendor/assets/javascripts/languages/prism-hcl.js +63 -0
  117. data/vendor/assets/javascripts/languages/prism-hlsl.js +20 -0
  118. data/vendor/assets/javascripts/languages/prism-hoon.js +14 -0
  119. data/vendor/assets/javascripts/languages/prism-hpkp.js +14 -0
  120. data/vendor/assets/javascripts/languages/prism-hsts.js +14 -0
  121. data/vendor/assets/javascripts/languages/prism-http.js +151 -0
  122. data/vendor/assets/javascripts/languages/prism-ichigojam.js +15 -0
  123. data/vendor/assets/javascripts/{prism → languages}/prism-icon.js +6 -3
  124. data/vendor/assets/javascripts/languages/prism-icu-message-format.js +148 -0
  125. data/vendor/assets/javascripts/languages/prism-idris.js +19 -0
  126. data/vendor/assets/javascripts/languages/prism-iecst.js +32 -0
  127. data/vendor/assets/javascripts/languages/prism-ignore.js +23 -0
  128. data/vendor/assets/javascripts/{prism → languages}/prism-inform7.js +14 -11
  129. data/vendor/assets/javascripts/languages/prism-ini.js +42 -0
  130. data/vendor/assets/javascripts/languages/prism-io.js +22 -0
  131. data/vendor/assets/javascripts/{prism → languages}/prism-j.js +12 -6
  132. data/vendor/assets/javascripts/languages/prism-java.js +124 -0
  133. data/vendor/assets/javascripts/languages/prism-javadoc.js +82 -0
  134. data/vendor/assets/javascripts/languages/prism-javadoclike.js +87 -0
  135. data/vendor/assets/javascripts/languages/prism-javascript.js +172 -0
  136. data/vendor/assets/javascripts/languages/prism-javastacktrace.js +142 -0
  137. data/vendor/assets/javascripts/languages/prism-jexl.js +14 -0
  138. data/vendor/assets/javascripts/languages/prism-jolie.js +41 -0
  139. data/vendor/assets/javascripts/languages/prism-jq.js +69 -0
  140. data/vendor/assets/javascripts/languages/prism-js-extras.js +135 -0
  141. data/vendor/assets/javascripts/languages/prism-js-templates.js +349 -0
  142. data/vendor/assets/javascripts/languages/prism-jsdoc.js +78 -0
  143. data/vendor/assets/javascripts/languages/prism-json.js +27 -0
  144. data/vendor/assets/javascripts/languages/prism-json5.js +23 -0
  145. data/vendor/assets/javascripts/languages/prism-jsonp.js +7 -0
  146. data/vendor/assets/javascripts/languages/prism-jsstacktrace.js +49 -0
  147. data/vendor/assets/javascripts/languages/prism-jsx.js +145 -0
  148. data/vendor/assets/javascripts/languages/prism-julia.js +35 -0
  149. data/vendor/assets/javascripts/languages/prism-keepalived.js +51 -0
  150. data/vendor/assets/javascripts/languages/prism-keyman.js +44 -0
  151. data/vendor/assets/javascripts/languages/prism-kotlin.js +88 -0
  152. data/vendor/assets/javascripts/languages/prism-kumir.js +106 -0
  153. data/vendor/assets/javascripts/languages/prism-kusto.js +44 -0
  154. data/vendor/assets/javascripts/languages/prism-latex.js +64 -0
  155. data/vendor/assets/javascripts/languages/prism-latte.js +63 -0
  156. data/vendor/assets/javascripts/{prism → languages}/prism-less.js +6 -12
  157. data/vendor/assets/javascripts/languages/prism-lilypond.js +69 -0
  158. data/vendor/assets/javascripts/languages/prism-linker-script.js +30 -0
  159. data/vendor/assets/javascripts/languages/prism-liquid.js +66 -0
  160. data/vendor/assets/javascripts/languages/prism-lisp.js +197 -0
  161. data/vendor/assets/javascripts/{prism → languages}/prism-livescript.js +20 -19
  162. data/vendor/assets/javascripts/languages/prism-llvm.js +19 -0
  163. data/vendor/assets/javascripts/languages/prism-log.js +120 -0
  164. data/vendor/assets/javascripts/languages/prism-lolcode.js +55 -0
  165. data/vendor/assets/javascripts/{prism → languages}/prism-lua.js +3 -3
  166. data/vendor/assets/javascripts/languages/prism-magma.js +35 -0
  167. data/vendor/assets/javascripts/languages/prism-makefile.js +34 -0
  168. data/vendor/assets/javascripts/languages/prism-markdown.js +415 -0
  169. data/vendor/assets/javascripts/languages/prism-markup-templating.js +124 -0
  170. data/vendor/assets/javascripts/languages/prism-markup.js +186 -0
  171. data/vendor/assets/javascripts/languages/prism-mata.js +50 -0
  172. data/vendor/assets/javascripts/languages/prism-matlab.js +16 -0
  173. data/vendor/assets/javascripts/languages/prism-maxscript.js +91 -0
  174. data/vendor/assets/javascripts/languages/prism-mel.js +46 -0
  175. data/vendor/assets/javascripts/languages/prism-mermaid.js +113 -0
  176. data/vendor/assets/javascripts/languages/prism-metafont.js +84 -0
  177. data/vendor/assets/javascripts/{prism → languages}/prism-mizar.js +3 -3
  178. data/vendor/assets/javascripts/languages/prism-mongodb.js +97 -0
  179. data/vendor/assets/javascripts/languages/prism-monkey.js +29 -0
  180. data/vendor/assets/javascripts/languages/prism-moonscript.js +57 -0
  181. data/vendor/assets/javascripts/languages/prism-n1ql.js +24 -0
  182. data/vendor/assets/javascripts/languages/prism-n4js.js +14 -0
  183. data/vendor/assets/javascripts/languages/prism-nand2tetris-hdl.js +9 -0
  184. data/vendor/assets/javascripts/languages/prism-naniscript.js +170 -0
  185. data/vendor/assets/javascripts/languages/prism-nasm.js +24 -0
  186. data/vendor/assets/javascripts/languages/prism-neon.js +40 -0
  187. data/vendor/assets/javascripts/languages/prism-nevod.js +125 -0
  188. data/vendor/assets/javascripts/languages/prism-nginx.js +54 -0
  189. data/vendor/assets/javascripts/{prism → languages}/prism-nim.js +26 -12
  190. data/vendor/assets/javascripts/{prism → languages}/prism-nix.js +11 -13
  191. data/vendor/assets/javascripts/languages/prism-nsis.js +30 -0
  192. data/vendor/assets/javascripts/languages/prism-objectivec.js +12 -0
  193. data/vendor/assets/javascripts/languages/prism-ocaml.js +58 -0
  194. data/vendor/assets/javascripts/languages/prism-odin.js +99 -0
  195. data/vendor/assets/javascripts/languages/prism-opencl.js +61 -0
  196. data/vendor/assets/javascripts/languages/prism-openqasm.js +23 -0
  197. data/vendor/assets/javascripts/languages/prism-oz.js +28 -0
  198. data/vendor/assets/javascripts/{prism → languages}/prism-parigp.js +8 -5
  199. data/vendor/assets/javascripts/languages/prism-parser.js +73 -0
  200. data/vendor/assets/javascripts/{prism → languages}/prism-pascal.js +31 -10
  201. data/vendor/assets/javascripts/languages/prism-pascaligo.js +62 -0
  202. data/vendor/assets/javascripts/languages/prism-pcaxis.js +53 -0
  203. data/vendor/assets/javascripts/languages/prism-peoplecode.js +42 -0
  204. data/vendor/assets/javascripts/languages/prism-perl.js +156 -0
  205. data/vendor/assets/javascripts/languages/prism-php-extras.js +14 -0
  206. data/vendor/assets/javascripts/languages/prism-php.js +342 -0
  207. data/vendor/assets/javascripts/languages/prism-phpdoc.js +27 -0
  208. data/vendor/assets/javascripts/languages/prism-plant-uml.js +103 -0
  209. data/vendor/assets/javascripts/languages/prism-plsql.js +17 -0
  210. data/vendor/assets/javascripts/languages/prism-powerquery.js +55 -0
  211. data/vendor/assets/javascripts/languages/prism-powershell.js +58 -0
  212. data/vendor/assets/javascripts/languages/prism-processing.js +15 -0
  213. data/vendor/assets/javascripts/{prism → languages}/prism-prolog.js +10 -8
  214. data/vendor/assets/javascripts/languages/prism-promql.js +99 -0
  215. data/vendor/assets/javascripts/languages/prism-properties.js +13 -0
  216. data/vendor/assets/javascripts/languages/prism-protobuf.js +43 -0
  217. data/vendor/assets/javascripts/languages/prism-psl.js +35 -0
  218. data/vendor/assets/javascripts/languages/prism-pug.js +188 -0
  219. data/vendor/assets/javascripts/{prism → languages}/prism-puppet.js +13 -8
  220. data/vendor/assets/javascripts/{prism → languages}/prism-pure.js +27 -22
  221. data/vendor/assets/javascripts/languages/prism-purebasic.js +70 -0
  222. data/vendor/assets/javascripts/languages/prism-purescript.js +31 -0
  223. data/vendor/assets/javascripts/languages/prism-python.js +65 -0
  224. data/vendor/assets/javascripts/{prism → languages}/prism-q.js +16 -9
  225. data/vendor/assets/javascripts/languages/prism-qml.js +61 -0
  226. data/vendor/assets/javascripts/{prism → languages}/prism-qore.js +12 -9
  227. data/vendor/assets/javascripts/languages/prism-qsharp.js +132 -0
  228. data/vendor/assets/javascripts/languages/prism-r.js +22 -0
  229. data/vendor/assets/javascripts/languages/prism-racket.js +18 -0
  230. data/vendor/assets/javascripts/{prism → languages}/prism-reason.js +8 -15
  231. data/vendor/assets/javascripts/languages/prism-regex.js +104 -0
  232. data/vendor/assets/javascripts/languages/prism-rego.js +30 -0
  233. data/vendor/assets/javascripts/languages/prism-renpy.js +29 -0
  234. data/vendor/assets/javascripts/languages/prism-rescript.js +60 -0
  235. data/vendor/assets/javascripts/{prism → languages}/prism-rest.js +18 -18
  236. data/vendor/assets/javascripts/languages/prism-rip.js +38 -0
  237. data/vendor/assets/javascripts/{prism → languages}/prism-roboconf.js +3 -3
  238. data/vendor/assets/javascripts/languages/prism-robotframework.js +104 -0
  239. data/vendor/assets/javascripts/languages/prism-ruby.js +189 -0
  240. data/vendor/assets/javascripts/languages/prism-rust.js +128 -0
  241. data/vendor/assets/javascripts/languages/prism-sas.js +326 -0
  242. data/vendor/assets/javascripts/{prism → languages}/prism-sass.js +16 -12
  243. data/vendor/assets/javascripts/languages/prism-scala.js +50 -0
  244. data/vendor/assets/javascripts/languages/prism-scheme.js +120 -0
  245. data/vendor/assets/javascripts/{prism → languages}/prism-scss.js +27 -21
  246. data/vendor/assets/javascripts/languages/prism-shell-session.js +70 -0
  247. data/vendor/assets/javascripts/languages/prism-smali.js +87 -0
  248. data/vendor/assets/javascripts/{prism → languages}/prism-smalltalk.js +17 -10
  249. data/vendor/assets/javascripts/languages/prism-smarty.js +131 -0
  250. data/vendor/assets/javascripts/languages/prism-sml.js +68 -0
  251. data/vendor/assets/javascripts/languages/prism-solidity.js +22 -0
  252. data/vendor/assets/javascripts/languages/prism-solution-file.js +51 -0
  253. data/vendor/assets/javascripts/languages/prism-soy.js +96 -0
  254. data/vendor/assets/javascripts/languages/prism-sparql.js +18 -0
  255. data/vendor/assets/javascripts/languages/prism-splunk-spl.js +24 -0
  256. data/vendor/assets/javascripts/languages/prism-sqf.js +34 -0
  257. data/vendor/assets/javascripts/languages/prism-sql.js +32 -0
  258. data/vendor/assets/javascripts/languages/prism-squirrel.js +47 -0
  259. data/vendor/assets/javascripts/languages/prism-stan.js +65 -0
  260. data/vendor/assets/javascripts/languages/prism-stata.js +76 -0
  261. data/vendor/assets/javascripts/languages/prism-stylus.js +143 -0
  262. data/vendor/assets/javascripts/languages/prism-supercollider.js +36 -0
  263. data/vendor/assets/javascripts/languages/prism-swift.js +148 -0
  264. data/vendor/assets/javascripts/languages/prism-systemd.js +74 -0
  265. data/vendor/assets/javascripts/languages/prism-t4-cs.js +1 -0
  266. data/vendor/assets/javascripts/languages/prism-t4-templating.js +49 -0
  267. data/vendor/assets/javascripts/languages/prism-t4-vb.js +1 -0
  268. data/vendor/assets/javascripts/languages/prism-tap.js +22 -0
  269. data/vendor/assets/javascripts/languages/prism-tcl.js +46 -0
  270. data/vendor/assets/javascripts/languages/prism-textile.js +286 -0
  271. data/vendor/assets/javascripts/languages/prism-toml.js +49 -0
  272. data/vendor/assets/javascripts/languages/prism-tremor.js +72 -0
  273. data/vendor/assets/javascripts/languages/prism-tsx.js +15 -0
  274. data/vendor/assets/javascripts/languages/prism-tt2.js +53 -0
  275. data/vendor/assets/javascripts/languages/prism-turtle.js +54 -0
  276. data/vendor/assets/javascripts/languages/prism-twig.js +44 -0
  277. data/vendor/assets/javascripts/languages/prism-typescript.js +60 -0
  278. data/vendor/assets/javascripts/languages/prism-typoscript.js +80 -0
  279. data/vendor/assets/javascripts/languages/prism-unrealscript.js +42 -0
  280. data/vendor/assets/javascripts/languages/prism-uorazor.js +48 -0
  281. data/vendor/assets/javascripts/languages/prism-uri.js +96 -0
  282. data/vendor/assets/javascripts/languages/prism-v.js +81 -0
  283. data/vendor/assets/javascripts/languages/prism-vala.js +84 -0
  284. data/vendor/assets/javascripts/languages/prism-vbnet.js +22 -0
  285. data/vendor/assets/javascripts/languages/prism-velocity.js +72 -0
  286. data/vendor/assets/javascripts/languages/prism-verilog.js +26 -0
  287. data/vendor/assets/javascripts/languages/prism-vhdl.js +26 -0
  288. data/vendor/assets/javascripts/languages/prism-vim.js +10 -0
  289. data/vendor/assets/javascripts/languages/prism-visual-basic.js +29 -0
  290. data/vendor/assets/javascripts/languages/prism-warpscript.js +21 -0
  291. data/vendor/assets/javascripts/languages/prism-wasm.js +31 -0
  292. data/vendor/assets/javascripts/languages/prism-web-idl.js +101 -0
  293. data/vendor/assets/javascripts/languages/prism-wgsl.js +69 -0
  294. data/vendor/assets/javascripts/{prism → languages}/prism-wiki.js +9 -8
  295. data/vendor/assets/javascripts/languages/prism-wolfram.js +29 -0
  296. data/vendor/assets/javascripts/languages/prism-wren.js +100 -0
  297. data/vendor/assets/javascripts/languages/prism-xeora.js +114 -0
  298. data/vendor/assets/javascripts/languages/prism-xml-doc.js +40 -0
  299. data/vendor/assets/javascripts/languages/prism-xojo.js +21 -0
  300. data/vendor/assets/javascripts/languages/prism-xquery.js +162 -0
  301. data/vendor/assets/javascripts/languages/prism-yaml.js +83 -0
  302. data/vendor/assets/javascripts/languages/prism-yang.js +20 -0
  303. data/vendor/assets/javascripts/languages/prism-zig.js +101 -0
  304. data/vendor/assets/javascripts/prism-plugin/prism-autolinker.js +63 -63
  305. data/vendor/assets/javascripts/prism-plugin/prism-autoloader.js +465 -122
  306. data/vendor/assets/javascripts/prism-plugin/prism-command-line.js +221 -63
  307. data/vendor/assets/javascripts/prism-plugin/prism-copy-to-clipboard.js +128 -43
  308. data/vendor/assets/javascripts/prism-plugin/prism-custom-class.js +105 -24
  309. data/vendor/assets/javascripts/prism-plugin/prism-data-uri-highlight.js +4 -8
  310. data/vendor/assets/javascripts/prism-plugin/prism-diff-highlight.js +90 -0
  311. data/vendor/assets/javascripts/prism-plugin/prism-download-button.js +20 -0
  312. data/vendor/assets/javascripts/prism-plugin/prism-file-highlight.js +179 -61
  313. data/vendor/assets/javascripts/prism-plugin/prism-filter-highlight-all.js +127 -0
  314. data/vendor/assets/javascripts/prism-plugin/prism-highlight-keywords.js +10 -13
  315. data/vendor/assets/javascripts/prism-plugin/prism-inline-color.js +105 -0
  316. data/vendor/assets/javascripts/prism-plugin/prism-jsonp-highlight.js +264 -112
  317. data/vendor/assets/javascripts/prism-plugin/prism-keep-markup.js +53 -24
  318. data/vendor/assets/javascripts/prism-plugin/prism-line-highlight.js +328 -115
  319. data/vendor/assets/javascripts/prism-plugin/prism-line-numbers.js +237 -42
  320. data/vendor/assets/javascripts/prism-plugin/prism-match-braces.js +190 -0
  321. data/vendor/assets/javascripts/prism-plugin/prism-normalize-whitespace.js +206 -149
  322. data/vendor/assets/javascripts/prism-plugin/prism-previewers.js +712 -0
  323. data/vendor/assets/javascripts/prism-plugin/prism-remove-initial-line-feed.js +17 -17
  324. data/vendor/assets/javascripts/prism-plugin/prism-show-invisibles.js +83 -19
  325. data/vendor/assets/javascripts/prism-plugin/prism-show-language.js +317 -20
  326. data/vendor/assets/javascripts/prism-plugin/prism-toolbar.js +61 -15
  327. data/vendor/assets/javascripts/prism-plugin/prism-treeview.js +70 -0
  328. data/vendor/assets/javascripts/prism-plugin/prism-unescaped-markup.js +39 -17
  329. data/vendor/assets/javascripts/prism-plugin/prism-wpd.js +132 -147
  330. data/vendor/assets/javascripts/prism.js +302 -127
  331. data/vendor/assets/stylesheets/prism-plugin/prism-autolinker.min.css +1 -0
  332. data/vendor/assets/stylesheets/prism-plugin/prism-command-line.css +11 -1
  333. data/vendor/assets/stylesheets/prism-plugin/prism-command-line.min.css +1 -0
  334. data/vendor/assets/stylesheets/prism-plugin/prism-diff-highlight.css +13 -0
  335. data/vendor/assets/stylesheets/prism-plugin/prism-diff-highlight.min.css +1 -0
  336. data/vendor/assets/stylesheets/prism-plugin/prism-inline-color.css +33 -0
  337. data/vendor/assets/stylesheets/prism-plugin/prism-inline-color.min.css +1 -0
  338. data/vendor/assets/stylesheets/prism-plugin/prism-line-highlight.css +26 -0
  339. data/vendor/assets/stylesheets/prism-plugin/prism-line-highlight.min.css +1 -0
  340. data/vendor/assets/stylesheets/prism-plugin/prism-line-numbers.css +4 -4
  341. data/vendor/assets/stylesheets/prism-plugin/prism-line-numbers.min.css +1 -0
  342. data/vendor/assets/stylesheets/prism-plugin/prism-match-braces.css +29 -0
  343. data/vendor/assets/stylesheets/prism-plugin/prism-match-braces.min.css +1 -0
  344. data/vendor/assets/stylesheets/prism-plugin/prism-previewers.css +243 -0
  345. data/vendor/assets/stylesheets/prism-plugin/prism-previewers.min.css +1 -0
  346. data/vendor/assets/stylesheets/prism-plugin/prism-show-invisibles.css +7 -6
  347. data/vendor/assets/stylesheets/prism-plugin/prism-show-invisibles.min.css +1 -0
  348. data/vendor/assets/stylesheets/prism-plugin/prism-toolbar.css +22 -15
  349. data/vendor/assets/stylesheets/prism-plugin/prism-toolbar.min.css +1 -0
  350. data/vendor/assets/stylesheets/prism-plugin/prism-treeview.css +168 -0
  351. data/vendor/assets/stylesheets/prism-plugin/prism-treeview.min.css +1 -0
  352. data/vendor/assets/stylesheets/prism-plugin/prism-unescaped-markup.css +4 -4
  353. data/vendor/assets/stylesheets/prism-plugin/prism-unescaped-markup.min.css +1 -0
  354. data/vendor/assets/stylesheets/prism-plugin/prism-wpd.min.css +1 -0
  355. data/vendor/assets/stylesheets/prism-theme/prism-a11y-dark.css +161 -0
  356. data/vendor/assets/stylesheets/{prism-atom-dark.css → prism-theme/prism-atom-dark.css} +10 -13
  357. data/vendor/assets/stylesheets/prism-theme/prism-autolinker.css +3 -0
  358. data/vendor/assets/stylesheets/{prism-base16-ateliersulphurpool.light.css → prism-theme/prism-base16-ateliersulphurpool.light.css} +60 -56
  359. data/vendor/assets/stylesheets/{prism-cb.css → prism-theme/prism-cb.css} +20 -50
  360. data/vendor/assets/stylesheets/prism-theme/prism-coldark-cold.css +317 -0
  361. data/vendor/assets/stylesheets/prism-theme/prism-coldark-dark.css +317 -0
  362. data/vendor/assets/stylesheets/prism-theme/prism-command-line.css +33 -0
  363. data/vendor/assets/stylesheets/prism-theme/prism-coy-without-shadows.css +140 -0
  364. data/vendor/assets/stylesheets/{prism-coy.css → prism-theme/prism-coy.css} +17 -19
  365. data/vendor/assets/stylesheets/prism-theme/prism-coy.min.css +1 -0
  366. data/vendor/assets/stylesheets/prism-theme/prism-darcula.css +159 -0
  367. data/vendor/assets/stylesheets/{prism-dark.css → prism-theme/prism-dark.css} +2 -1
  368. data/vendor/assets/stylesheets/prism-theme/prism-dark.min.css +1 -0
  369. data/vendor/assets/stylesheets/prism-theme/prism-dracula.css +122 -0
  370. data/vendor/assets/stylesheets/{prism-duotone-dark.css → prism-theme/prism-duotone-dark.css} +58 -54
  371. data/vendor/assets/stylesheets/{prism-duotone-earth.css → prism-theme/prism-duotone-earth.css} +58 -54
  372. data/vendor/assets/stylesheets/{prism-duotone-forest.css → prism-theme/prism-duotone-forest.css} +58 -54
  373. data/vendor/assets/stylesheets/{prism-duotone-light.css → prism-theme/prism-duotone-light.css} +58 -54
  374. data/vendor/assets/stylesheets/{prism-duotone-sea.css → prism-theme/prism-duotone-sea.css} +58 -54
  375. data/vendor/assets/stylesheets/{prism-duotone-space.css → prism-theme/prism-duotone-space.css} +58 -54
  376. data/vendor/assets/stylesheets/{prism-funky.css → prism-theme/prism-funky.css} +16 -2
  377. data/vendor/assets/stylesheets/prism-theme/prism-funky.min.css +1 -0
  378. data/vendor/assets/stylesheets/{prism-ghcolors.css → prism-theme/prism-ghcolors.css} +47 -44
  379. data/vendor/assets/stylesheets/prism-theme/prism-gruvbox-dark.css +143 -0
  380. data/vendor/assets/stylesheets/prism-theme/prism-gruvbox-light.css +143 -0
  381. data/vendor/assets/stylesheets/prism-theme/prism-holi-theme.css +119 -0
  382. data/vendor/assets/stylesheets/prism-theme/prism-hopscotch.css +132 -0
  383. data/vendor/assets/stylesheets/prism-theme/prism-laserwave.css +133 -0
  384. data/vendor/assets/stylesheets/prism-theme/prism-line-highlight.css +49 -0
  385. data/vendor/assets/stylesheets/prism-theme/prism-line-numbers.css +41 -0
  386. data/vendor/assets/stylesheets/prism-theme/prism-lucario.css +122 -0
  387. data/vendor/assets/stylesheets/prism-theme/prism-material-dark.css +205 -0
  388. data/vendor/assets/stylesheets/prism-theme/prism-material-light.css +207 -0
  389. data/vendor/assets/stylesheets/prism-theme/prism-material-oceanic.css +210 -0
  390. data/vendor/assets/stylesheets/prism-theme/prism-night-owl.css +158 -0
  391. data/vendor/assets/stylesheets/prism-theme/prism-nord.css +124 -0
  392. data/vendor/assets/stylesheets/{prism-okaidia.css → prism-theme/prism-okaidia.css} +5 -3
  393. data/vendor/assets/stylesheets/prism-theme/prism-okaidia.min.css +1 -0
  394. data/vendor/assets/stylesheets/prism-theme/prism-one-dark.css +440 -0
  395. data/vendor/assets/stylesheets/prism-theme/prism-one-light.css +428 -0
  396. data/vendor/assets/stylesheets/prism-theme/prism-pojoaque.css +151 -0
  397. data/vendor/assets/stylesheets/prism-theme/prism-previewers.css +242 -0
  398. data/vendor/assets/stylesheets/prism-theme/prism-shades-of-purple.css +196 -0
  399. data/vendor/assets/stylesheets/prism-theme/prism-show-invisibles.css +34 -0
  400. data/vendor/assets/stylesheets/prism-theme/prism-solarized-dark-atom.css +143 -0
  401. data/vendor/assets/stylesheets/{prism-solarizedlight.css → prism-theme/prism-solarizedlight.css} +5 -3
  402. data/vendor/assets/stylesheets/prism-theme/prism-solarizedlight.min.css +1 -0
  403. data/vendor/assets/stylesheets/prism-theme/prism-synthwave84.css +140 -0
  404. data/vendor/assets/stylesheets/{prism-tomorrow.css → prism-theme/prism-tomorrow.css} +1 -0
  405. data/vendor/assets/stylesheets/prism-theme/prism-tomorrow.min.css +1 -0
  406. data/vendor/assets/stylesheets/{prism-toolbar.css → prism-theme/prism-toolbar.css} +15 -15
  407. data/vendor/assets/stylesheets/{prism-twilight.css → prism-theme/prism-twilight.css} +5 -34
  408. data/vendor/assets/stylesheets/prism-theme/prism-twilight.min.css +1 -0
  409. data/vendor/assets/stylesheets/prism-theme/prism-unescaped-markup.css +10 -0
  410. data/vendor/assets/stylesheets/prism-theme/prism-vs.css +168 -0
  411. data/vendor/assets/stylesheets/prism-theme/prism-vsc-dark-plus.css +275 -0
  412. data/vendor/assets/stylesheets/prism-theme/prism-wpd.css +11 -0
  413. data/vendor/assets/stylesheets/prism-theme/prism-xonokai.css +162 -0
  414. data/vendor/assets/stylesheets/prism-theme/prism-z-touch.css +160 -0
  415. data/vendor/assets/stylesheets/prism.css +6 -3
  416. metadata +392 -151
  417. data/vendor/assets/javascripts/prism/prism-abap.js +0 -48
  418. data/vendor/assets/javascripts/prism/prism-actionscript.js +0 -17
  419. data/vendor/assets/javascripts/prism/prism-ada.js +0 -19
  420. data/vendor/assets/javascripts/prism/prism-apacheconf.js +0 -47
  421. data/vendor/assets/javascripts/prism/prism-applescript.js +0 -20
  422. data/vendor/assets/javascripts/prism/prism-aspnet.js +0 -36
  423. data/vendor/assets/javascripts/prism/prism-autohotkey.js +0 -27
  424. data/vendor/assets/javascripts/prism/prism-autoit.js +0 -33
  425. data/vendor/assets/javascripts/prism/prism-bash.js +0 -80
  426. data/vendor/assets/javascripts/prism/prism-bro.js +0 -50
  427. data/vendor/assets/javascripts/prism/prism-c.js +0 -33
  428. data/vendor/assets/javascripts/prism/prism-clike.js +0 -29
  429. data/vendor/assets/javascripts/prism/prism-coffeescript.js +0 -91
  430. data/vendor/assets/javascripts/prism/prism-core.js +0 -511
  431. data/vendor/assets/javascripts/prism/prism-cpp.js +0 -12
  432. data/vendor/assets/javascripts/prism/prism-crystal.js +0 -53
  433. data/vendor/assets/javascripts/prism/prism-csharp.js +0 -32
  434. data/vendor/assets/javascripts/prism/prism-css-extras.js +0 -16
  435. data/vendor/assets/javascripts/prism/prism-css.js +0 -51
  436. data/vendor/assets/javascripts/prism/prism-d.js +0 -64
  437. data/vendor/assets/javascripts/prism/prism-dart.js +0 -18
  438. data/vendor/assets/javascripts/prism/prism-diff.js +0 -20
  439. data/vendor/assets/javascripts/prism/prism-docker.js +0 -9
  440. data/vendor/assets/javascripts/prism/prism-elixir.js +0 -90
  441. data/vendor/assets/javascripts/prism/prism-fsharp.js +0 -33
  442. data/vendor/assets/javascripts/prism/prism-gherkin.js +0 -78
  443. data/vendor/assets/javascripts/prism/prism-glsl.js +0 -16
  444. data/vendor/assets/javascripts/prism/prism-go.js +0 -9
  445. data/vendor/assets/javascripts/prism/prism-graphql.js +0 -24
  446. data/vendor/assets/javascripts/prism/prism-groovy.js +0 -65
  447. data/vendor/assets/javascripts/prism/prism-handlebars.js +0 -83
  448. data/vendor/assets/javascripts/prism/prism-haskell.js +0 -35
  449. data/vendor/assets/javascripts/prism/prism-haxe.js +0 -43
  450. data/vendor/assets/javascripts/prism/prism-http.js +0 -50
  451. data/vendor/assets/javascripts/prism/prism-ini.js +0 -11
  452. data/vendor/assets/javascripts/prism/prism-java.js +0 -16
  453. data/vendor/assets/javascripts/prism/prism-javascript.js +0 -48
  454. data/vendor/assets/javascripts/prism/prism-jolie.js +0 -56
  455. data/vendor/assets/javascripts/prism/prism-json.js +0 -11
  456. data/vendor/assets/javascripts/prism/prism-jsx.js +0 -27
  457. data/vendor/assets/javascripts/prism/prism-julia.js +0 -12
  458. data/vendor/assets/javascripts/prism/prism-keyman.js +0 -14
  459. data/vendor/assets/javascripts/prism/prism-kotlin.js +0 -62
  460. data/vendor/assets/javascripts/prism/prism-latex.js +0 -61
  461. data/vendor/assets/javascripts/prism/prism-lolcode.js +0 -54
  462. data/vendor/assets/javascripts/prism/prism-makefile.js +0 -31
  463. data/vendor/assets/javascripts/prism/prism-markdown.js +0 -120
  464. data/vendor/assets/javascripts/prism/prism-markup.js +0 -46
  465. data/vendor/assets/javascripts/prism/prism-matlab.js +0 -14
  466. data/vendor/assets/javascripts/prism/prism-mel.js +0 -39
  467. data/vendor/assets/javascripts/prism/prism-monkey.js +0 -25
  468. data/vendor/assets/javascripts/prism/prism-nasm.js +0 -24
  469. data/vendor/assets/javascripts/prism/prism-nginx.js +0 -11
  470. data/vendor/assets/javascripts/prism/prism-nsis.js +0 -26
  471. data/vendor/assets/javascripts/prism/prism-objectivec.js +0 -5
  472. data/vendor/assets/javascripts/prism/prism-ocaml.js +0 -21
  473. data/vendor/assets/javascripts/prism/prism-oz.js +0 -21
  474. data/vendor/assets/javascripts/prism/prism-parser.js +0 -66
  475. data/vendor/assets/javascripts/prism/prism-perl.js +0 -140
  476. data/vendor/assets/javascripts/prism/prism-php-extras.js +0 -11
  477. data/vendor/assets/javascripts/prism/prism-php.js +0 -111
  478. data/vendor/assets/javascripts/prism/prism-powershell.js +0 -52
  479. data/vendor/assets/javascripts/prism/prism-processing.js +0 -18
  480. data/vendor/assets/javascripts/prism/prism-properties.js +0 -9
  481. data/vendor/assets/javascripts/prism/prism-protobuf.js +0 -8
  482. data/vendor/assets/javascripts/prism/prism-python.js +0 -27
  483. data/vendor/assets/javascripts/prism/prism-r.js +0 -19
  484. data/vendor/assets/javascripts/prism/prism-rip.js +0 -28
  485. data/vendor/assets/javascripts/prism/prism-ruby.js +0 -116
  486. data/vendor/assets/javascripts/prism/prism-rust.js +0 -53
  487. data/vendor/assets/javascripts/prism/prism-sas.js +0 -31
  488. data/vendor/assets/javascripts/prism/prism-scala.js +0 -18
  489. data/vendor/assets/javascripts/prism/prism-scheme.js +0 -26
  490. data/vendor/assets/javascripts/prism/prism-smarty.js +0 -127
  491. data/vendor/assets/javascripts/prism/prism-sql.js +0 -17
  492. data/vendor/assets/javascripts/prism/prism-stylus.js +0 -102
  493. data/vendor/assets/javascripts/prism/prism-swift.js +0 -25
  494. data/vendor/assets/javascripts/prism/prism-tcl.js +0 -43
  495. data/vendor/assets/javascripts/prism/prism-textile.js +0 -257
  496. data/vendor/assets/javascripts/prism/prism-twig.js +0 -46
  497. data/vendor/assets/javascripts/prism/prism-typescript.js +0 -5
  498. data/vendor/assets/javascripts/prism/prism-verilog.js +0 -17
  499. data/vendor/assets/javascripts/prism/prism-vhdl.js +0 -23
  500. data/vendor/assets/javascripts/prism/prism-vim.js +0 -10
  501. data/vendor/assets/javascripts/prism/prism-xojo.js +0 -20
  502. data/vendor/assets/javascripts/prism/prism-yaml.js +0 -44
  503. data/vendor/assets/stylesheets/prism-hopscotch.css +0 -124
  504. data/vendor/assets/stylesheets/prism-pojoaque.css +0 -134
  505. data/vendor/assets/stylesheets/prism-vs.css +0 -157
  506. data/vendor/assets/stylesheets/prism-xonokai.css +0 -164
  507. /data/vendor/assets/javascripts/{prism → languages}/prism-jade.js +0 -0
  508. /data/vendor/assets/stylesheets/{prism-show-language.css → prism-theme/prism-show-language.css} +0 -0
@@ -0,0 +1,326 @@
1
+ (function (Prism) {
2
+
3
+ var stringPattern = /(?:"(?:""|[^"])*"(?!")|'(?:''|[^'])*'(?!'))/.source;
4
+
5
+ var number = /\b(?:\d[\da-f]*x|\d+(?:\.\d+)?(?:e[+-]?\d+)?)\b/i;
6
+ var numericConstant = {
7
+ pattern: RegExp(stringPattern + '[bx]'),
8
+ alias: 'number'
9
+ };
10
+
11
+ var macroVariable = {
12
+ pattern: /&[a-z_]\w*/i
13
+ };
14
+
15
+ var macroKeyword = {
16
+ pattern: /((?:^|\s|=|\())%(?:ABORT|BY|CMS|COPY|DISPLAY|DO|ELSE|END|EVAL|GLOBAL|GO|GOTO|IF|INC|INCLUDE|INDEX|INPUT|KTRIM|LENGTH|LET|LIST|LOCAL|PUT|QKTRIM|QSCAN|QSUBSTR|QSYSFUNC|QUPCASE|RETURN|RUN|SCAN|SUBSTR|SUPERQ|SYMDEL|SYMEXIST|SYMGLOBL|SYMLOCAL|SYSCALL|SYSEVALF|SYSEXEC|SYSFUNC|SYSGET|SYSRPUT|THEN|TO|TSO|UNQUOTE|UNTIL|UPCASE|WHILE|WINDOW)\b/i,
17
+ lookbehind: true,
18
+ alias: 'keyword'
19
+ };
20
+
21
+ var step = {
22
+ pattern: /(^|\s)(?:proc\s+\w+|data(?!=)|quit|run)\b/i,
23
+ alias: 'keyword',
24
+ lookbehind: true
25
+ };
26
+
27
+ var comment = [
28
+ /\/\*[\s\S]*?\*\//,
29
+ {
30
+ pattern: /(^[ \t]*|;\s*)\*[^;]*;/m,
31
+ lookbehind: true
32
+ }
33
+ ];
34
+
35
+ var string = {
36
+ pattern: RegExp(stringPattern),
37
+ greedy: true
38
+ };
39
+
40
+ var punctuation = /[$%@.(){}\[\];,\\]/;
41
+
42
+ var func = {
43
+ pattern: /%?\b\w+(?=\()/,
44
+ alias: 'keyword'
45
+ };
46
+
47
+ var args = {
48
+ 'function': func,
49
+ 'arg-value': {
50
+ pattern: /(=\s*)[A-Z\.]+/i,
51
+ lookbehind: true
52
+ },
53
+ 'operator': /=/,
54
+ 'macro-variable': macroVariable,
55
+ 'arg': {
56
+ pattern: /[A-Z]+/i,
57
+ alias: 'keyword'
58
+ },
59
+ 'number': number,
60
+ 'numeric-constant': numericConstant,
61
+ 'punctuation': punctuation,
62
+ 'string': string
63
+ };
64
+
65
+ var format = {
66
+ pattern: /\b(?:format|put)\b=?[\w'$.]+/i,
67
+ inside: {
68
+ 'keyword': /^(?:format|put)(?==)/i,
69
+ 'equals': /=/,
70
+ 'format': {
71
+ pattern: /(?:\w|\$\d)+\.\d?/,
72
+ alias: 'number'
73
+ }
74
+ }
75
+ };
76
+
77
+ var altformat = {
78
+ pattern: /\b(?:format|put)\s+[\w']+(?:\s+[$.\w]+)+(?=;)/i,
79
+ inside: {
80
+ 'keyword': /^(?:format|put)/i,
81
+ 'format': {
82
+ pattern: /[\w$]+\.\d?/,
83
+ alias: 'number'
84
+ }
85
+ }
86
+ };
87
+
88
+ var globalStatements = {
89
+ pattern: /((?:^|\s)=?)(?:catname|checkpoint execute_always|dm|endsas|filename|footnote|%include|libname|%list|lock|missing|options|page|resetline|%run|sasfile|skip|sysecho|title\d?)\b/i,
90
+ lookbehind: true,
91
+ alias: 'keyword'
92
+ };
93
+
94
+ var submitStatement = {
95
+ pattern: /(^|\s)(?:submit(?:\s+(?:load|norun|parseonly))?|endsubmit)\b/i,
96
+ lookbehind: true,
97
+ alias: 'keyword'
98
+ };
99
+
100
+ var actionSets = /aStore|accessControl|aggregation|audio|autotune|bayesianNetClassifier|bioMedImage|boolRule|builtins|cardinality|cdm|clustering|conditionalRandomFields|configuration|copula|countreg|dataDiscovery|dataPreprocess|dataSciencePilot|dataStep|decisionTree|deduplication|deepLearn|deepNeural|deepRnn|ds2|ecm|entityRes|espCluster|explainModel|factmac|fastKnn|fcmpact|fedSql|freqTab|gVarCluster|gam|gleam|graphSemiSupLearn|hiddenMarkovModel|hyperGroup|ica|image|iml|kernalPca|langModel|ldaTopic|loadStreams|mbc|mixed|mlTools|modelPublishing|network|neuralNet|nmf|nonParametricBayes|nonlinear|optNetwork|optimization|panel|pca|percentile|phreg|pls|qkb|qlim|quantreg|recommend|regression|reinforcementLearn|robustPca|ruleMining|sampling|sandwich|sccasl|search(?:Analytics)?|sentimentAnalysis|sequence|session(?:Prop)?|severity|simSystem|simple|smartData|sparkEmbeddedProcess|sparseML|spatialreg|spc|stabilityMonitoring|svDataDescription|svm|table|text(?:Filters|Frequency|Mining|Parse|Rule(?:Develop|Score)|Topic|Util)|timeData|transpose|tsInfo|tsReconcile|uniTimeSeries|varReduce/.source;
101
+
102
+ var casActions = {
103
+ pattern: RegExp(/(^|\s)(?:action\s+)?(?:<act>)\.[a-z]+\b[^;]+/.source.replace(/<act>/g, function () { return actionSets; }), 'i'),
104
+ lookbehind: true,
105
+ inside: {
106
+ 'keyword': RegExp(/(?:<act>)\.[a-z]+\b/.source.replace(/<act>/g, function () { return actionSets; }), 'i'),
107
+ 'action': {
108
+ pattern: /(?:action)/i,
109
+ alias: 'keyword'
110
+ },
111
+ 'comment': comment,
112
+ 'function': func,
113
+ 'arg-value': args['arg-value'],
114
+ 'operator': args.operator,
115
+ 'argument': args.arg,
116
+ 'number': number,
117
+ 'numeric-constant': numericConstant,
118
+ 'punctuation': punctuation,
119
+ 'string': string
120
+ }
121
+ };
122
+
123
+ var keywords = {
124
+ pattern: /((?:^|\s)=?)(?:after|analysis|and|array|barchart|barwidth|begingraph|by|call|cas|cbarline|cfill|class(?:lev)?|close|column|computed?|contains|continue|data(?==)|define|delete|describe|document|do\s+over|do|dol|drop|dul|else|end(?:comp|source)?|entryTitle|eval(?:uate)?|exec(?:ute)?|exit|file(?:name)?|fill(?:attrs)?|flist|fnc|function(?:list)?|global|goto|group(?:by)?|headline|headskip|histogram|if|infile|keep|keylabel|keyword|label|layout|leave|legendlabel|length|libname|loadactionset|merge|midpoints|_?null_|name|noobs|nowd|ods|options|or|otherwise|out(?:put)?|over(?:lay)?|plot|print|put|raise|ranexp|rannor|rbreak|retain|return|select|session|sessref|set|source|statgraph|sum|summarize|table|temp|terminate|then\s+do|then|title\d?|to|var|when|where|xaxisopts|y2axisopts|yaxisopts)\b/i,
125
+ lookbehind: true,
126
+ };
127
+
128
+ Prism.languages.sas = {
129
+ 'datalines': {
130
+ pattern: /^([ \t]*)(?:cards|(?:data)?lines);[\s\S]+?^[ \t]*;/im,
131
+ lookbehind: true,
132
+ alias: 'string',
133
+ inside: {
134
+ 'keyword': {
135
+ pattern: /^(?:cards|(?:data)?lines)/i
136
+ },
137
+ 'punctuation': /;/
138
+ }
139
+ },
140
+
141
+ 'proc-sql': {
142
+ pattern: /(^proc\s+(?:fed)?sql(?:\s+[\w|=]+)?;)[\s\S]+?(?=^(?:proc\s+\w+|data|quit|run);|(?![\s\S]))/im,
143
+ lookbehind: true,
144
+ inside: {
145
+ 'sql': {
146
+ pattern: RegExp(/^[ \t]*(?:select|alter\s+table|(?:create|describe|drop)\s+(?:index|table(?:\s+constraints)?|view)|create\s+unique\s+index|insert\s+into|update)(?:<str>|[^;"'])+;/.source.replace(/<str>/g, function () { return stringPattern; }), 'im'),
147
+ alias: 'language-sql',
148
+ inside: Prism.languages.sql
149
+ },
150
+ 'global-statements': globalStatements,
151
+ 'sql-statements': {
152
+ pattern: /(^|\s)(?:disconnect\s+from|begin|commit|exec(?:ute)?|reset|rollback|validate)\b/i,
153
+ lookbehind: true,
154
+ alias: 'keyword'
155
+ },
156
+ 'number': number,
157
+ 'numeric-constant': numericConstant,
158
+ 'punctuation': punctuation,
159
+ 'string': string
160
+ }
161
+ },
162
+
163
+ 'proc-groovy': {
164
+ pattern: /(^proc\s+groovy(?:\s+[\w|=]+)?;)[\s\S]+?(?=^(?:proc\s+\w+|data|quit|run);|(?![\s\S]))/im,
165
+ lookbehind: true,
166
+ inside: {
167
+ 'comment': comment,
168
+ 'groovy': {
169
+ pattern: RegExp(/(^[ \t]*submit(?:\s+(?:load|norun|parseonly))?)(?:<str>|[^"'])+?(?=endsubmit;)/.source.replace(/<str>/g, function () { return stringPattern; }), 'im'),
170
+ lookbehind: true,
171
+ alias: 'language-groovy',
172
+ inside: Prism.languages.groovy
173
+ },
174
+ 'keyword': keywords,
175
+ 'submit-statement': submitStatement,
176
+ 'global-statements': globalStatements,
177
+ 'number': number,
178
+ 'numeric-constant': numericConstant,
179
+ 'punctuation': punctuation,
180
+ 'string': string
181
+ }
182
+ },
183
+
184
+ 'proc-lua': {
185
+ pattern: /(^proc\s+lua(?:\s+[\w|=]+)?;)[\s\S]+?(?=^(?:proc\s+\w+|data|quit|run);|(?![\s\S]))/im,
186
+ lookbehind: true,
187
+ inside: {
188
+ 'comment': comment,
189
+ 'lua': {
190
+ pattern: RegExp(/(^[ \t]*submit(?:\s+(?:load|norun|parseonly))?)(?:<str>|[^"'])+?(?=endsubmit;)/.source.replace(/<str>/g, function () { return stringPattern; }), 'im'),
191
+ lookbehind: true,
192
+ alias: 'language-lua',
193
+ inside: Prism.languages.lua
194
+ },
195
+ 'keyword': keywords,
196
+ 'submit-statement': submitStatement,
197
+ 'global-statements': globalStatements,
198
+ 'number': number,
199
+ 'numeric-constant': numericConstant,
200
+ 'punctuation': punctuation,
201
+ 'string': string
202
+ }
203
+ },
204
+
205
+ 'proc-cas': {
206
+ pattern: /(^proc\s+cas(?:\s+[\w|=]+)?;)[\s\S]+?(?=^(?:proc\s+\w+|quit|data);|(?![\s\S]))/im,
207
+ lookbehind: true,
208
+ inside: {
209
+ 'comment': comment,
210
+ 'statement-var': {
211
+ pattern: /((?:^|\s)=?)saveresult\s[^;]+/im,
212
+ lookbehind: true,
213
+ inside: {
214
+
215
+ 'statement': {
216
+ pattern: /^saveresult\s+\S+/i,
217
+ inside: {
218
+ keyword: /^(?:saveresult)/i
219
+ }
220
+ },
221
+ rest: args
222
+ }
223
+ },
224
+ 'cas-actions': casActions,
225
+ 'statement': {
226
+ pattern: /((?:^|\s)=?)(?:default|(?:un)?set|on|output|upload)[^;]+/im,
227
+ lookbehind: true,
228
+ inside: args
229
+ },
230
+ 'step': step,
231
+ 'keyword': keywords,
232
+ 'function': func,
233
+ 'format': format,
234
+ 'altformat': altformat,
235
+ 'global-statements': globalStatements,
236
+ 'number': number,
237
+ 'numeric-constant': numericConstant,
238
+ 'punctuation': punctuation,
239
+ 'string': string
240
+ }
241
+ },
242
+
243
+ 'proc-args': {
244
+ pattern: RegExp(/(^proc\s+\w+\s+)(?!\s)(?:[^;"']|<str>)+;/.source.replace(/<str>/g, function () { return stringPattern; }), 'im'),
245
+ lookbehind: true,
246
+ inside: args
247
+ },
248
+ /*Special keywords within macros*/
249
+ 'macro-keyword': macroKeyword,
250
+ 'macro-variable': macroVariable,
251
+ 'macro-string-functions': {
252
+ pattern: /((?:^|\s|=))%(?:BQUOTE|NRBQUOTE|NRQUOTE|NRSTR|QUOTE|STR)\(.*?(?:[^%]\))/i,
253
+ lookbehind: true,
254
+ inside: {
255
+ 'function': {
256
+ pattern: /%(?:BQUOTE|NRBQUOTE|NRQUOTE|NRSTR|QUOTE|STR)/i,
257
+ alias: 'keyword'
258
+ },
259
+ 'macro-keyword': macroKeyword,
260
+ 'macro-variable': macroVariable,
261
+ 'escaped-char': {
262
+ pattern: /%['"()<>=¬^~;,#]/,
263
+ },
264
+ 'punctuation': punctuation
265
+ }
266
+ },
267
+ 'macro-declaration': {
268
+ pattern: /^%macro[^;]+(?=;)/im,
269
+ inside: {
270
+ 'keyword': /%macro/i,
271
+ }
272
+ },
273
+ 'macro-end': {
274
+ pattern: /^%mend[^;]+(?=;)/im,
275
+ inside: {
276
+ 'keyword': /%mend/i,
277
+ }
278
+ },
279
+ /*%_zscore(headcir, _lhc, _mhc, _shc, headcz, headcpct, _Fheadcz); */
280
+ 'macro': {
281
+ pattern: /%_\w+(?=\()/,
282
+ alias: 'keyword'
283
+ },
284
+ 'input': {
285
+ pattern: /\binput\s[-\w\s/*.$&]+;/i,
286
+ inside: {
287
+ 'input': {
288
+ alias: 'keyword',
289
+ pattern: /^input/i,
290
+ },
291
+ 'comment': comment,
292
+ 'number': number,
293
+ 'numeric-constant': numericConstant
294
+ }
295
+ },
296
+ 'options-args': {
297
+ pattern: /(^options)[-'"|/\\<>*+=:()\w\s]*(?=;)/im,
298
+ lookbehind: true,
299
+ inside: args
300
+ },
301
+ 'cas-actions': casActions,
302
+ 'comment': comment,
303
+ 'function': func,
304
+ 'format': format,
305
+ 'altformat': altformat,
306
+ 'numeric-constant': numericConstant,
307
+ 'datetime': {
308
+ // '1jan2013'd, '9:25:19pm't, '18jan2003:9:27:05am'dt
309
+ pattern: RegExp(stringPattern + '(?:dt?|t)'),
310
+ alias: 'number'
311
+ },
312
+ 'string': string,
313
+ 'step': step,
314
+ 'keyword': keywords,
315
+ // In SAS Studio syntax highlighting, these operators are styled like keywords
316
+ 'operator-keyword': {
317
+ pattern: /\b(?:eq|ge|gt|in|le|lt|ne|not)\b/i,
318
+ alias: 'operator'
319
+ },
320
+ // Decimal (1.2e23), hexadecimal (0c1x)
321
+ 'number': number,
322
+ 'operator': /\*\*?|\|\|?|!!?|¦¦?|<[>=]?|>[<=]?|[-+\/=&]|[~¬^]=?/,
323
+ 'punctuation': punctuation
324
+ };
325
+
326
+ }(Prism));
@@ -1,9 +1,10 @@
1
- (function(Prism) {
1
+ (function (Prism) {
2
2
  Prism.languages.sass = Prism.languages.extend('css', {
3
3
  // Sass comments don't need to be closed, only indented
4
4
  'comment': {
5
- pattern: /^([ \t]*)\/[\/*].*(?:(?:\r?\n|\r)\1[ \t]+.+)*/m,
6
- lookbehind: true
5
+ pattern: /^([ \t]*)\/[\/*].*(?:(?:\r?\n|\r)\1[ \t].+)*/m,
6
+ lookbehind: true,
7
+ greedy: true
7
8
  }
8
9
  });
9
10
 
@@ -12,19 +13,20 @@
12
13
  'atrule-line': {
13
14
  // Includes support for = and + shortcuts
14
15
  pattern: /^(?:[ \t]*)[@+=].+/m,
16
+ greedy: true,
15
17
  inside: {
16
- 'atrule': /(?:@[\w-]+|[+=])/m
18
+ 'atrule': /(?:@[\w-]+|[+=])/
17
19
  }
18
20
  }
19
21
  });
20
22
  delete Prism.languages.sass.atrule;
21
23
 
22
24
 
23
- var variable = /((\$[-_\w]+)|(#\{\$[-_\w]+\}))/i;
25
+ var variable = /\$[-\w]+|#\{\$[-\w]+\}/;
24
26
  var operator = [
25
- /[+*\/%]|[=!]=|<=?|>=?|\b(?:and|or|not)\b/,
27
+ /[+*\/%]|[=!]=|<=?|>=?|\b(?:and|not|or)\b/,
26
28
  {
27
- pattern: /(\s+)-(?=\s)/,
29
+ pattern: /(\s)-(?=\s)/,
28
30
  lookbehind: true
29
31
  }
30
32
  ];
@@ -33,6 +35,7 @@
33
35
  // We want to consume the whole line
34
36
  'variable-line': {
35
37
  pattern: /^[ \t]*\$.+/m,
38
+ greedy: true,
36
39
  inside: {
37
40
  'punctuation': /:/,
38
41
  'variable': variable,
@@ -41,7 +44,8 @@
41
44
  },
42
45
  // We want to consume the whole line
43
46
  'property-line': {
44
- pattern: /^[ \t]*(?:[^:\s]+ *:.*|:[^:\s]+.*)/m,
47
+ pattern: /^[ \t]*(?:[^:\s]+ *:.*|:[^:\s].*)/m,
48
+ greedy: true,
45
49
  inside: {
46
50
  'property': [
47
51
  /[^:\s]+(?=\s*:)/,
@@ -62,12 +66,12 @@
62
66
 
63
67
  // Now that whole lines for other patterns are consumed,
64
68
  // what's left should be selectors
65
- delete Prism.languages.sass.selector;
66
69
  Prism.languages.insertBefore('sass', 'punctuation', {
67
70
  'selector': {
68
- pattern: /([ \t]*)\S(?:,?[^,\r\n]+)*(?:,(?:\r?\n|\r)\1[ \t]+\S(?:,?[^,\r\n]+)*)*/,
69
- lookbehind: true
71
+ pattern: /^([ \t]*)\S(?:,[^,\r\n]+|[^,\r\n]*)(?:,[^,\r\n]+)*(?:,(?:\r?\n|\r)\1[ \t]+\S(?:,[^,\r\n]+|[^,\r\n]*)(?:,[^,\r\n]+)*)*/m,
72
+ lookbehind: true,
73
+ greedy: true
70
74
  }
71
75
  });
72
76
 
73
- }(Prism));
77
+ }(Prism));
@@ -0,0 +1,50 @@
1
+ Prism.languages.scala = Prism.languages.extend('java', {
2
+ 'triple-quoted-string': {
3
+ pattern: /"""[\s\S]*?"""/,
4
+ greedy: true,
5
+ alias: 'string'
6
+ },
7
+ 'string': {
8
+ pattern: /("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,
9
+ greedy: true
10
+ },
11
+ 'keyword': /<-|=>|\b(?:abstract|case|catch|class|def|derives|do|else|enum|extends|extension|final|finally|for|forSome|given|if|implicit|import|infix|inline|lazy|match|new|null|object|opaque|open|override|package|private|protected|return|sealed|self|super|this|throw|trait|transparent|try|type|using|val|var|while|with|yield)\b/,
12
+ 'number': /\b0x(?:[\da-f]*\.)?[\da-f]+|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e\d+)?[dfl]?/i,
13
+ 'builtin': /\b(?:Any|AnyRef|AnyVal|Boolean|Byte|Char|Double|Float|Int|Long|Nothing|Short|String|Unit)\b/,
14
+ 'symbol': /'[^\d\s\\]\w*/
15
+ });
16
+
17
+ Prism.languages.insertBefore('scala', 'triple-quoted-string', {
18
+ 'string-interpolation': {
19
+ pattern: /\b[a-z]\w*(?:"""(?:[^$]|\$(?:[^{]|\{(?:[^{}]|\{[^{}]*\})*\}))*?"""|"(?:[^$"\r\n]|\$(?:[^{]|\{(?:[^{}]|\{[^{}]*\})*\}))*")/i,
20
+ greedy: true,
21
+ inside: {
22
+ 'id': {
23
+ pattern: /^\w+/,
24
+ greedy: true,
25
+ alias: 'function'
26
+ },
27
+ 'escape': {
28
+ pattern: /\\\$"|\$[$"]/,
29
+ greedy: true,
30
+ alias: 'symbol'
31
+ },
32
+ 'interpolation': {
33
+ pattern: /\$(?:\w+|\{(?:[^{}]|\{[^{}]*\})*\})/,
34
+ greedy: true,
35
+ inside: {
36
+ 'punctuation': /^\$\{?|\}$/,
37
+ 'expression': {
38
+ pattern: /[\s\S]+/,
39
+ inside: Prism.languages.scala
40
+ }
41
+ }
42
+ },
43
+ 'string': /[\s\S]+/
44
+ }
45
+ }
46
+ });
47
+
48
+ delete Prism.languages.scala['class-name'];
49
+ delete Prism.languages.scala['function'];
50
+ delete Prism.languages.scala['constant'];
@@ -0,0 +1,120 @@
1
+ (function (Prism) {
2
+ Prism.languages.scheme = {
3
+ // this supports "normal" single-line comments:
4
+ // ; comment
5
+ // and (potentially nested) multiline comments:
6
+ // #| comment #| nested |# still comment |#
7
+ // (only 1 level of nesting is supported)
8
+ 'comment': /;.*|#;\s*(?:\((?:[^()]|\([^()]*\))*\)|\[(?:[^\[\]]|\[[^\[\]]*\])*\])|#\|(?:[^#|]|#(?!\|)|\|(?!#)|#\|(?:[^#|]|#(?!\|)|\|(?!#))*\|#)*\|#/,
9
+ 'string': {
10
+ pattern: /"(?:[^"\\]|\\.)*"/,
11
+ greedy: true
12
+ },
13
+ 'symbol': {
14
+ pattern: /'[^()\[\]#'\s]+/,
15
+ greedy: true
16
+ },
17
+ 'char': {
18
+ pattern: /#\\(?:[ux][a-fA-F\d]+\b|[-a-zA-Z]+\b|[\uD800-\uDBFF][\uDC00-\uDFFF]|\S)/,
19
+ greedy: true
20
+ },
21
+ 'lambda-parameter': [
22
+ // https://www.cs.cmu.edu/Groups/AI/html/r4rs/r4rs_6.html#SEC30
23
+ {
24
+ pattern: /((?:^|[^'`#])[(\[]lambda\s+)(?:[^|()\[\]'\s]+|\|(?:[^\\|]|\\.)*\|)/,
25
+ lookbehind: true
26
+ },
27
+ {
28
+ pattern: /((?:^|[^'`#])[(\[]lambda\s+[(\[])[^()\[\]']+/,
29
+ lookbehind: true
30
+ }
31
+ ],
32
+ 'keyword': {
33
+ pattern: /((?:^|[^'`#])[(\[])(?:begin|case(?:-lambda)?|cond(?:-expand)?|define(?:-library|-macro|-record-type|-syntax|-values)?|defmacro|delay(?:-force)?|do|else|except|export|guard|if|import|include(?:-ci|-library-declarations)?|lambda|let(?:rec)?(?:-syntax|-values|\*)?|let\*-values|only|parameterize|prefix|(?:quasi-?)?quote|rename|set!|syntax-(?:case|rules)|unless|unquote(?:-splicing)?|when)(?=[()\[\]\s]|$)/,
34
+ lookbehind: true
35
+ },
36
+ 'builtin': {
37
+ // all functions of the base library of R7RS plus some of built-ins of R5Rs
38
+ pattern: /((?:^|[^'`#])[(\[])(?:abs|and|append|apply|assoc|ass[qv]|binary-port\?|boolean=?\?|bytevector(?:-append|-copy|-copy!|-length|-u8-ref|-u8-set!|\?)?|caar|cadr|call-with-(?:current-continuation|port|values)|call\/cc|car|cdar|cddr|cdr|ceiling|char(?:->integer|-ready\?|\?|<\?|<=\?|=\?|>\?|>=\?)|close-(?:input-port|output-port|port)|complex\?|cons|current-(?:error|input|output)-port|denominator|dynamic-wind|eof-object\??|eq\?|equal\?|eqv\?|error|error-object(?:-irritants|-message|\?)|eval|even\?|exact(?:-integer-sqrt|-integer\?|\?)?|expt|features|file-error\?|floor(?:-quotient|-remainder|\/)?|flush-output-port|for-each|gcd|get-output-(?:bytevector|string)|inexact\??|input-port(?:-open\?|\?)|integer(?:->char|\?)|lcm|length|list(?:->string|->vector|-copy|-ref|-set!|-tail|\?)?|make-(?:bytevector|list|parameter|string|vector)|map|max|member|memq|memv|min|modulo|negative\?|newline|not|null\?|number(?:->string|\?)|numerator|odd\?|open-(?:input|output)-(?:bytevector|string)|or|output-port(?:-open\?|\?)|pair\?|peek-char|peek-u8|port\?|positive\?|procedure\?|quotient|raise|raise-continuable|rational\?|rationalize|read-(?:bytevector|bytevector!|char|error\?|line|string|u8)|real\?|remainder|reverse|round|set-c[ad]r!|square|string(?:->list|->number|->symbol|->utf8|->vector|-append|-copy|-copy!|-fill!|-for-each|-length|-map|-ref|-set!|\?|<\?|<=\?|=\?|>\?|>=\?)?|substring|symbol(?:->string|\?|=\?)|syntax-error|textual-port\?|truncate(?:-quotient|-remainder|\/)?|u8-ready\?|utf8->string|values|vector(?:->list|->string|-append|-copy|-copy!|-fill!|-for-each|-length|-map|-ref|-set!|\?)?|with-exception-handler|write-(?:bytevector|char|string|u8)|zero\?)(?=[()\[\]\s]|$)/,
39
+ lookbehind: true
40
+ },
41
+ 'operator': {
42
+ pattern: /((?:^|[^'`#])[(\[])(?:[-+*%/]|[<>]=?|=>?)(?=[()\[\]\s]|$)/,
43
+ lookbehind: true
44
+ },
45
+ 'number': {
46
+ // The number pattern from [the R7RS spec](https://small.r7rs.org/attachment/r7rs.pdf).
47
+ //
48
+ // <number> := <num 2>|<num 8>|<num 10>|<num 16>
49
+ // <num R> := <prefix R><complex R>
50
+ // <complex R> := <real R>(?:@<real R>|<imaginary R>)?|<imaginary R>
51
+ // <imaginary R> := [+-](?:<ureal R>|(?:inf|nan)\.0)?i
52
+ // <real R> := [+-]?<ureal R>|[+-](?:inf|nan)\.0
53
+ // <ureal R> := <uint R>(?:\/<uint R>)?
54
+ // | <decimal R>
55
+ //
56
+ // <decimal 10> := (?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?
57
+ // <uint R> := <digit R>+
58
+ // <prefix R> := <radix R>(?:#[ei])?|(?:#[ei])?<radix R>
59
+ // <radix 2> := #b
60
+ // <radix 8> := #o
61
+ // <radix 10> := (?:#d)?
62
+ // <radix 16> := #x
63
+ // <digit 2> := [01]
64
+ // <digit 8> := [0-7]
65
+ // <digit 10> := \d
66
+ // <digit 16> := [0-9a-f]
67
+ //
68
+ // The problem with this grammar is that the resulting regex is way to complex, so we simplify by grouping all
69
+ // non-decimal bases together. This results in a decimal (dec) and combined binary, octal, and hexadecimal (box)
70
+ // pattern:
71
+ pattern: RegExp(SortedBNF({
72
+ '<ureal dec>': /\d+(?:\/\d+)|(?:\d+(?:\.\d*)?|\.\d+)(?:[esfdl][+-]?\d+)?/.source,
73
+ '<real dec>': /[+-]?<ureal dec>|[+-](?:inf|nan)\.0/.source,
74
+ '<imaginary dec>': /[+-](?:<ureal dec>|(?:inf|nan)\.0)?i/.source,
75
+ '<complex dec>': /<real dec>(?:@<real dec>|<imaginary dec>)?|<imaginary dec>/.source,
76
+ '<num dec>': /(?:#d(?:#[ei])?|#[ei](?:#d)?)?<complex dec>/.source,
77
+
78
+ '<ureal box>': /[0-9a-f]+(?:\/[0-9a-f]+)?/.source,
79
+ '<real box>': /[+-]?<ureal box>|[+-](?:inf|nan)\.0/.source,
80
+ '<imaginary box>': /[+-](?:<ureal box>|(?:inf|nan)\.0)?i/.source,
81
+ '<complex box>': /<real box>(?:@<real box>|<imaginary box>)?|<imaginary box>/.source,
82
+ '<num box>': /#[box](?:#[ei])?|(?:#[ei])?#[box]<complex box>/.source,
83
+
84
+ '<number>': /(^|[()\[\]\s])(?:<num dec>|<num box>)(?=[()\[\]\s]|$)/.source,
85
+ }), 'i'),
86
+ lookbehind: true
87
+ },
88
+ 'boolean': {
89
+ pattern: /(^|[()\[\]\s])#(?:[ft]|false|true)(?=[()\[\]\s]|$)/,
90
+ lookbehind: true
91
+ },
92
+ 'function': {
93
+ pattern: /((?:^|[^'`#])[(\[])(?:[^|()\[\]'\s]+|\|(?:[^\\|]|\\.)*\|)(?=[()\[\]\s]|$)/,
94
+ lookbehind: true
95
+ },
96
+ 'identifier': {
97
+ pattern: /(^|[()\[\]\s])\|(?:[^\\|]|\\.)*\|(?=[()\[\]\s]|$)/,
98
+ lookbehind: true,
99
+ greedy: true
100
+ },
101
+ 'punctuation': /[()\[\]']/
102
+ };
103
+
104
+ /**
105
+ * Given a topologically sorted BNF grammar, this will return the RegExp source of last rule of the grammar.
106
+ *
107
+ * @param {Record<string, string>} grammar
108
+ * @returns {string}
109
+ */
110
+ function SortedBNF(grammar) {
111
+ for (var key in grammar) {
112
+ grammar[key] = grammar[key].replace(/<[\w\s]+>/g, function (key) {
113
+ return '(?:' + grammar[key].trim() + ')';
114
+ });
115
+ }
116
+ // return the last item
117
+ return grammar[key];
118
+ }
119
+
120
+ }(Prism));
@@ -1,17 +1,17 @@
1
1
  Prism.languages.scss = Prism.languages.extend('css', {
2
2
  'comment': {
3
- pattern: /(^|[^\\])(?:\/\*[\w\W]*?\*\/|\/\/.*)/,
3
+ pattern: /(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,
4
4
  lookbehind: true
5
5
  },
6
6
  'atrule': {
7
- pattern: /@[\w-]+(?:\([^()]+\)|[^(])*?(?=\s+[{;])/,
7
+ pattern: /@[\w-](?:\([^()]+\)|[^()\s]|\s+(?!\s))*?(?=\s+[{;])/,
8
8
  inside: {
9
9
  'rule': /@[\w-]+/
10
10
  // See rest below
11
11
  }
12
12
  },
13
13
  // url, compassified
14
- 'url': /(?:[-a-z]+-)*url(?=\()/i,
14
+ 'url': /(?:[-a-z]+-)?url(?=\()/i,
15
15
  // CSS selector regex is not appropriate for Sass
16
16
  // since there can be lot more things (var, @ directive, nesting..)
17
17
  // a selector must start at the end of a property or after a brace (end of other rules or nesting)
@@ -21,55 +21,61 @@ Prism.languages.scss = Prism.languages.extend('css', {
21
21
  // this one was hard to do, so please be careful if you edit this one :)
22
22
  'selector': {
23
23
  // Initial look-ahead is used to prevent matching of blank selectors
24
- pattern: /(?=\S)[^@;\{\}\(\)]?([^@;\{\}\(\)]|&|#\{\$[-_\w]+\})+(?=\s*\{(\}|\s|[^\}]+(:|\{)[^\}]+))/m,
24
+ pattern: /(?=\S)[^@;{}()]?(?:[^@;{}()\s]|\s+(?!\s)|#\{\$[-\w]+\})+(?=\s*\{(?:\}|\s|[^}][^:{}]*[:{][^}]))/,
25
25
  inside: {
26
26
  'parent': {
27
27
  pattern: /&/,
28
28
  alias: 'important'
29
29
  },
30
- 'placeholder': /%[-_\w]+/,
31
- 'variable': /\$[-_\w]+|#\{\$[-_\w]+\}/
30
+ 'placeholder': /%[-\w]+/,
31
+ 'variable': /\$[-\w]+|#\{\$[-\w]+\}/
32
+ }
33
+ },
34
+ 'property': {
35
+ pattern: /(?:[-\w]|\$[-\w]|#\{\$[-\w]+\})+(?=\s*:)/,
36
+ inside: {
37
+ 'variable': /\$[-\w]+|#\{\$[-\w]+\}/
32
38
  }
33
39
  }
34
40
  });
35
41
 
36
42
  Prism.languages.insertBefore('scss', 'atrule', {
37
43
  'keyword': [
38
- /@(?:if|else(?: if)?|for|each|while|import|extend|debug|warn|mixin|include|function|return|content)/i,
44
+ /@(?:content|debug|each|else(?: if)?|extend|for|forward|function|if|import|include|mixin|return|use|warn|while)\b/i,
39
45
  {
40
- pattern: /( +)(?:from|through)(?= )/,
46
+ pattern: /( )(?:from|through)(?= )/,
41
47
  lookbehind: true
42
48
  }
43
49
  ]
44
50
  });
45
51
 
46
- Prism.languages.scss.property = {
47
- pattern: /(?:[\w-]|\$[-_\w]+|#\{\$[-_\w]+\})+(?=\s*:)/i,
48
- inside: {
49
- 'variable': /\$[-_\w]+|#\{\$[-_\w]+\}/
50
- }
51
- };
52
-
53
52
  Prism.languages.insertBefore('scss', 'important', {
54
53
  // var and interpolated vars
55
- 'variable': /\$[-_\w]+|#\{\$[-_\w]+\}/
54
+ 'variable': /\$[-\w]+|#\{\$[-\w]+\}/
56
55
  });
57
56
 
58
57
  Prism.languages.insertBefore('scss', 'function', {
58
+ 'module-modifier': {
59
+ pattern: /\b(?:as|hide|show|with)\b/i,
60
+ alias: 'keyword'
61
+ },
59
62
  'placeholder': {
60
- pattern: /%[-_\w]+/,
63
+ pattern: /%[-\w]+/,
61
64
  alias: 'selector'
62
65
  },
63
66
  'statement': {
64
67
  pattern: /\B!(?:default|optional)\b/i,
65
68
  alias: 'keyword'
66
69
  },
67
- 'boolean': /\b(?:true|false)\b/,
68
- 'null': /\bnull\b/,
70
+ 'boolean': /\b(?:false|true)\b/,
71
+ 'null': {
72
+ pattern: /\bnull\b/,
73
+ alias: 'keyword'
74
+ },
69
75
  'operator': {
70
- pattern: /(\s)(?:[-+*\/%]|[=!]=|<=?|>=?|and|or|not)(?=\s)/,
76
+ pattern: /(\s)(?:[-+*\/%]|[=!]=|<=?|>=?|and|not|or)(?=\s)/,
71
77
  lookbehind: true
72
78
  }
73
79
  });
74
80
 
75
- Prism.languages.scss['atrule'].inside.rest = Prism.util.clone(Prism.languages.scss);
81
+ Prism.languages.scss['atrule'].inside.rest = Prism.languages.scss;