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.
- checksums.yaml +5 -5
- data/CHANGELOG.md +12 -0
- data/README.md +109 -44
- data/lib/prism-rails/version.rb +1 -1
- data/vendor/assets/javascripts/languages/index.js +82 -0
- data/vendor/assets/javascripts/languages/prism-abap.js +48 -0
- data/vendor/assets/javascripts/languages/prism-abnf.js +54 -0
- data/vendor/assets/javascripts/languages/prism-actionscript.js +19 -0
- data/vendor/assets/javascripts/languages/prism-ada.js +22 -0
- data/vendor/assets/javascripts/languages/prism-agda.js +24 -0
- data/vendor/assets/javascripts/languages/prism-al.js +25 -0
- data/vendor/assets/javascripts/languages/prism-antlr4.js +65 -0
- data/vendor/assets/javascripts/languages/prism-apacheconf.js +47 -0
- data/vendor/assets/javascripts/languages/prism-apex.js +65 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-apl.js +7 -4
- data/vendor/assets/javascripts/languages/prism-applescript.js +17 -0
- data/vendor/assets/javascripts/languages/prism-aql.js +49 -0
- data/vendor/assets/javascripts/languages/prism-arduino.js +7 -0
- data/vendor/assets/javascripts/languages/prism-arff.js +10 -0
- data/vendor/assets/javascripts/languages/prism-armasm.js +49 -0
- data/vendor/assets/javascripts/languages/prism-arturo.js +105 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-asciidoc.js +36 -73
- data/vendor/assets/javascripts/languages/prism-asm6502.js +29 -0
- data/vendor/assets/javascripts/languages/prism-asmatmel.js +43 -0
- data/vendor/assets/javascripts/languages/prism-aspnet.js +48 -0
- data/vendor/assets/javascripts/languages/prism-autohotkey.js +44 -0
- data/vendor/assets/javascripts/languages/prism-autoit.js +34 -0
- data/vendor/assets/javascripts/languages/prism-avisynth.js +188 -0
- data/vendor/assets/javascripts/languages/prism-avro-idl.js +50 -0
- data/vendor/assets/javascripts/languages/prism-awk.js +32 -0
- data/vendor/assets/javascripts/languages/prism-bash.js +235 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-basic.js +7 -4
- data/vendor/assets/javascripts/{prism → languages}/prism-batch.js +10 -10
- data/vendor/assets/javascripts/languages/prism-bbcode.js +29 -0
- data/vendor/assets/javascripts/languages/prism-bbj.js +19 -0
- data/vendor/assets/javascripts/languages/prism-bicep.js +77 -0
- data/vendor/assets/javascripts/languages/prism-birb.js +23 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-bison.js +2 -2
- data/vendor/assets/javascripts/languages/prism-bnf.js +21 -0
- data/vendor/assets/javascripts/languages/prism-bqn.js +63 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-brainfuck.js +1 -1
- data/vendor/assets/javascripts/languages/prism-brightscript.js +44 -0
- data/vendor/assets/javascripts/languages/prism-bro.js +37 -0
- data/vendor/assets/javascripts/languages/prism-bsl.js +75 -0
- data/vendor/assets/javascripts/languages/prism-c.js +80 -0
- data/vendor/assets/javascripts/languages/prism-cfscript.js +44 -0
- data/vendor/assets/javascripts/languages/prism-chaiscript.js +60 -0
- data/vendor/assets/javascripts/languages/prism-cil.js +27 -0
- data/vendor/assets/javascripts/languages/prism-cilkc.js +8 -0
- data/vendor/assets/javascripts/languages/prism-cilkcpp.js +9 -0
- data/vendor/assets/javascripts/languages/prism-clike.js +31 -0
- data/vendor/assets/javascripts/languages/prism-clojure.js +31 -0
- data/vendor/assets/javascripts/languages/prism-cmake.js +29 -0
- data/vendor/assets/javascripts/languages/prism-cobol.js +53 -0
- data/vendor/assets/javascripts/languages/prism-coffeescript.js +96 -0
- data/vendor/assets/javascripts/languages/prism-concurnas.js +61 -0
- data/vendor/assets/javascripts/languages/prism-cooklang.js +146 -0
- data/vendor/assets/javascripts/languages/prism-coq.js +54 -0
- data/vendor/assets/javascripts/languages/prism-core.js +1263 -0
- data/vendor/assets/javascripts/languages/prism-cpp.js +99 -0
- data/vendor/assets/javascripts/languages/prism-crystal.js +57 -0
- data/vendor/assets/javascripts/languages/prism-csharp.js +366 -0
- data/vendor/assets/javascripts/languages/prism-cshtml.js +199 -0
- data/vendor/assets/javascripts/languages/prism-csp.js +76 -0
- data/vendor/assets/javascripts/languages/prism-css-extras.js +120 -0
- data/vendor/assets/javascripts/languages/prism-css.js +64 -0
- data/vendor/assets/javascripts/languages/prism-csv.js +6 -0
- data/vendor/assets/javascripts/languages/prism-cue.js +84 -0
- data/vendor/assets/javascripts/languages/prism-cypher.js +36 -0
- data/vendor/assets/javascripts/languages/prism-d.js +84 -0
- data/vendor/assets/javascripts/languages/prism-dart.js +79 -0
- data/vendor/assets/javascripts/languages/prism-dataweave.js +41 -0
- data/vendor/assets/javascripts/languages/prism-dax.js +27 -0
- data/vendor/assets/javascripts/languages/prism-dhall.js +69 -0
- data/vendor/assets/javascripts/languages/prism-diff.js +64 -0
- data/vendor/assets/javascripts/languages/prism-django.js +60 -0
- data/vendor/assets/javascripts/languages/prism-dns-zone-file.js +33 -0
- data/vendor/assets/javascripts/languages/prism-docker.js +98 -0
- data/vendor/assets/javascripts/languages/prism-dot.js +76 -0
- data/vendor/assets/javascripts/languages/prism-ebnf.js +22 -0
- data/vendor/assets/javascripts/languages/prism-editorconfig.js +26 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-eiffel.js +19 -9
- data/vendor/assets/javascripts/languages/prism-ejs.js +26 -0
- data/vendor/assets/javascripts/languages/prism-elixir.js +98 -0
- data/vendor/assets/javascripts/languages/prism-elm.js +45 -0
- data/vendor/assets/javascripts/languages/prism-erb.js +25 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-erlang.js +12 -9
- data/vendor/assets/javascripts/languages/prism-etlua.js +23 -0
- data/vendor/assets/javascripts/languages/prism-excel-formula.js +66 -0
- data/vendor/assets/javascripts/languages/prism-factor.js +403 -0
- data/vendor/assets/javascripts/languages/prism-false.js +32 -0
- data/vendor/assets/javascripts/languages/prism-firestore-security-rules.js +35 -0
- data/vendor/assets/javascripts/languages/prism-flow.js +35 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-fortran.js +11 -8
- data/vendor/assets/javascripts/languages/prism-fsharp.js +75 -0
- data/vendor/assets/javascripts/languages/prism-ftl.js +98 -0
- data/vendor/assets/javascripts/languages/prism-gap.js +54 -0
- data/vendor/assets/javascripts/languages/prism-gcode.js +16 -0
- data/vendor/assets/javascripts/languages/prism-gdscript.js +27 -0
- data/vendor/assets/javascripts/languages/prism-gedcom.js +28 -0
- data/vendor/assets/javascripts/languages/prism-gettext.js +43 -0
- data/vendor/assets/javascripts/languages/prism-gherkin.js +85 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-git.js +3 -3
- data/vendor/assets/javascripts/languages/prism-glsl.js +3 -0
- data/vendor/assets/javascripts/languages/prism-gml.js +7 -0
- data/vendor/assets/javascripts/languages/prism-gn.js +51 -0
- data/vendor/assets/javascripts/languages/prism-go-module.js +24 -0
- data/vendor/assets/javascripts/languages/prism-go.js +28 -0
- data/vendor/assets/javascripts/languages/prism-gradle.js +63 -0
- data/vendor/assets/javascripts/languages/prism-graphql.js +211 -0
- data/vendor/assets/javascripts/languages/prism-groovy.js +65 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-haml.js +32 -37
- data/vendor/assets/javascripts/languages/prism-handlebars.js +40 -0
- data/vendor/assets/javascripts/languages/prism-haskell.js +66 -0
- data/vendor/assets/javascripts/languages/prism-haxe.js +78 -0
- data/vendor/assets/javascripts/languages/prism-hcl.js +63 -0
- data/vendor/assets/javascripts/languages/prism-hlsl.js +20 -0
- data/vendor/assets/javascripts/languages/prism-hoon.js +14 -0
- data/vendor/assets/javascripts/languages/prism-hpkp.js +14 -0
- data/vendor/assets/javascripts/languages/prism-hsts.js +14 -0
- data/vendor/assets/javascripts/languages/prism-http.js +151 -0
- data/vendor/assets/javascripts/languages/prism-ichigojam.js +15 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-icon.js +6 -3
- data/vendor/assets/javascripts/languages/prism-icu-message-format.js +148 -0
- data/vendor/assets/javascripts/languages/prism-idris.js +19 -0
- data/vendor/assets/javascripts/languages/prism-iecst.js +32 -0
- data/vendor/assets/javascripts/languages/prism-ignore.js +23 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-inform7.js +14 -11
- data/vendor/assets/javascripts/languages/prism-ini.js +42 -0
- data/vendor/assets/javascripts/languages/prism-io.js +22 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-j.js +12 -6
- data/vendor/assets/javascripts/languages/prism-java.js +124 -0
- data/vendor/assets/javascripts/languages/prism-javadoc.js +82 -0
- data/vendor/assets/javascripts/languages/prism-javadoclike.js +87 -0
- data/vendor/assets/javascripts/languages/prism-javascript.js +172 -0
- data/vendor/assets/javascripts/languages/prism-javastacktrace.js +142 -0
- data/vendor/assets/javascripts/languages/prism-jexl.js +14 -0
- data/vendor/assets/javascripts/languages/prism-jolie.js +41 -0
- data/vendor/assets/javascripts/languages/prism-jq.js +69 -0
- data/vendor/assets/javascripts/languages/prism-js-extras.js +135 -0
- data/vendor/assets/javascripts/languages/prism-js-templates.js +349 -0
- data/vendor/assets/javascripts/languages/prism-jsdoc.js +78 -0
- data/vendor/assets/javascripts/languages/prism-json.js +27 -0
- data/vendor/assets/javascripts/languages/prism-json5.js +23 -0
- data/vendor/assets/javascripts/languages/prism-jsonp.js +7 -0
- data/vendor/assets/javascripts/languages/prism-jsstacktrace.js +49 -0
- data/vendor/assets/javascripts/languages/prism-jsx.js +145 -0
- data/vendor/assets/javascripts/languages/prism-julia.js +35 -0
- data/vendor/assets/javascripts/languages/prism-keepalived.js +51 -0
- data/vendor/assets/javascripts/languages/prism-keyman.js +44 -0
- data/vendor/assets/javascripts/languages/prism-kotlin.js +88 -0
- data/vendor/assets/javascripts/languages/prism-kumir.js +106 -0
- data/vendor/assets/javascripts/languages/prism-kusto.js +44 -0
- data/vendor/assets/javascripts/languages/prism-latex.js +64 -0
- data/vendor/assets/javascripts/languages/prism-latte.js +63 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-less.js +6 -12
- data/vendor/assets/javascripts/languages/prism-lilypond.js +69 -0
- data/vendor/assets/javascripts/languages/prism-linker-script.js +30 -0
- data/vendor/assets/javascripts/languages/prism-liquid.js +66 -0
- data/vendor/assets/javascripts/languages/prism-lisp.js +197 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-livescript.js +20 -19
- data/vendor/assets/javascripts/languages/prism-llvm.js +19 -0
- data/vendor/assets/javascripts/languages/prism-log.js +120 -0
- data/vendor/assets/javascripts/languages/prism-lolcode.js +55 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-lua.js +3 -3
- data/vendor/assets/javascripts/languages/prism-magma.js +35 -0
- data/vendor/assets/javascripts/languages/prism-makefile.js +34 -0
- data/vendor/assets/javascripts/languages/prism-markdown.js +415 -0
- data/vendor/assets/javascripts/languages/prism-markup-templating.js +124 -0
- data/vendor/assets/javascripts/languages/prism-markup.js +186 -0
- data/vendor/assets/javascripts/languages/prism-mata.js +50 -0
- data/vendor/assets/javascripts/languages/prism-matlab.js +16 -0
- data/vendor/assets/javascripts/languages/prism-maxscript.js +91 -0
- data/vendor/assets/javascripts/languages/prism-mel.js +46 -0
- data/vendor/assets/javascripts/languages/prism-mermaid.js +113 -0
- data/vendor/assets/javascripts/languages/prism-metafont.js +84 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-mizar.js +3 -3
- data/vendor/assets/javascripts/languages/prism-mongodb.js +97 -0
- data/vendor/assets/javascripts/languages/prism-monkey.js +29 -0
- data/vendor/assets/javascripts/languages/prism-moonscript.js +57 -0
- data/vendor/assets/javascripts/languages/prism-n1ql.js +24 -0
- data/vendor/assets/javascripts/languages/prism-n4js.js +14 -0
- data/vendor/assets/javascripts/languages/prism-nand2tetris-hdl.js +9 -0
- data/vendor/assets/javascripts/languages/prism-naniscript.js +170 -0
- data/vendor/assets/javascripts/languages/prism-nasm.js +24 -0
- data/vendor/assets/javascripts/languages/prism-neon.js +40 -0
- data/vendor/assets/javascripts/languages/prism-nevod.js +125 -0
- data/vendor/assets/javascripts/languages/prism-nginx.js +54 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-nim.js +26 -12
- data/vendor/assets/javascripts/{prism → languages}/prism-nix.js +11 -13
- data/vendor/assets/javascripts/languages/prism-nsis.js +30 -0
- data/vendor/assets/javascripts/languages/prism-objectivec.js +12 -0
- data/vendor/assets/javascripts/languages/prism-ocaml.js +58 -0
- data/vendor/assets/javascripts/languages/prism-odin.js +99 -0
- data/vendor/assets/javascripts/languages/prism-opencl.js +61 -0
- data/vendor/assets/javascripts/languages/prism-openqasm.js +23 -0
- data/vendor/assets/javascripts/languages/prism-oz.js +28 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-parigp.js +8 -5
- data/vendor/assets/javascripts/languages/prism-parser.js +73 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-pascal.js +31 -10
- data/vendor/assets/javascripts/languages/prism-pascaligo.js +62 -0
- data/vendor/assets/javascripts/languages/prism-pcaxis.js +53 -0
- data/vendor/assets/javascripts/languages/prism-peoplecode.js +42 -0
- data/vendor/assets/javascripts/languages/prism-perl.js +156 -0
- data/vendor/assets/javascripts/languages/prism-php-extras.js +14 -0
- data/vendor/assets/javascripts/languages/prism-php.js +342 -0
- data/vendor/assets/javascripts/languages/prism-phpdoc.js +27 -0
- data/vendor/assets/javascripts/languages/prism-plant-uml.js +103 -0
- data/vendor/assets/javascripts/languages/prism-plsql.js +17 -0
- data/vendor/assets/javascripts/languages/prism-powerquery.js +55 -0
- data/vendor/assets/javascripts/languages/prism-powershell.js +58 -0
- data/vendor/assets/javascripts/languages/prism-processing.js +15 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-prolog.js +10 -8
- data/vendor/assets/javascripts/languages/prism-promql.js +99 -0
- data/vendor/assets/javascripts/languages/prism-properties.js +13 -0
- data/vendor/assets/javascripts/languages/prism-protobuf.js +43 -0
- data/vendor/assets/javascripts/languages/prism-psl.js +35 -0
- data/vendor/assets/javascripts/languages/prism-pug.js +188 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-puppet.js +13 -8
- data/vendor/assets/javascripts/{prism → languages}/prism-pure.js +27 -22
- data/vendor/assets/javascripts/languages/prism-purebasic.js +70 -0
- data/vendor/assets/javascripts/languages/prism-purescript.js +31 -0
- data/vendor/assets/javascripts/languages/prism-python.js +65 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-q.js +16 -9
- data/vendor/assets/javascripts/languages/prism-qml.js +61 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-qore.js +12 -9
- data/vendor/assets/javascripts/languages/prism-qsharp.js +132 -0
- data/vendor/assets/javascripts/languages/prism-r.js +22 -0
- data/vendor/assets/javascripts/languages/prism-racket.js +18 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-reason.js +8 -15
- data/vendor/assets/javascripts/languages/prism-regex.js +104 -0
- data/vendor/assets/javascripts/languages/prism-rego.js +30 -0
- data/vendor/assets/javascripts/languages/prism-renpy.js +29 -0
- data/vendor/assets/javascripts/languages/prism-rescript.js +60 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-rest.js +18 -18
- data/vendor/assets/javascripts/languages/prism-rip.js +38 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-roboconf.js +3 -3
- data/vendor/assets/javascripts/languages/prism-robotframework.js +104 -0
- data/vendor/assets/javascripts/languages/prism-ruby.js +189 -0
- data/vendor/assets/javascripts/languages/prism-rust.js +128 -0
- data/vendor/assets/javascripts/languages/prism-sas.js +326 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-sass.js +16 -12
- data/vendor/assets/javascripts/languages/prism-scala.js +50 -0
- data/vendor/assets/javascripts/languages/prism-scheme.js +120 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-scss.js +27 -21
- data/vendor/assets/javascripts/languages/prism-shell-session.js +70 -0
- data/vendor/assets/javascripts/languages/prism-smali.js +87 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-smalltalk.js +17 -10
- data/vendor/assets/javascripts/languages/prism-smarty.js +131 -0
- data/vendor/assets/javascripts/languages/prism-sml.js +68 -0
- data/vendor/assets/javascripts/languages/prism-solidity.js +22 -0
- data/vendor/assets/javascripts/languages/prism-solution-file.js +51 -0
- data/vendor/assets/javascripts/languages/prism-soy.js +96 -0
- data/vendor/assets/javascripts/languages/prism-sparql.js +18 -0
- data/vendor/assets/javascripts/languages/prism-splunk-spl.js +24 -0
- data/vendor/assets/javascripts/languages/prism-sqf.js +34 -0
- data/vendor/assets/javascripts/languages/prism-sql.js +32 -0
- data/vendor/assets/javascripts/languages/prism-squirrel.js +47 -0
- data/vendor/assets/javascripts/languages/prism-stan.js +65 -0
- data/vendor/assets/javascripts/languages/prism-stata.js +76 -0
- data/vendor/assets/javascripts/languages/prism-stylus.js +143 -0
- data/vendor/assets/javascripts/languages/prism-supercollider.js +36 -0
- data/vendor/assets/javascripts/languages/prism-swift.js +148 -0
- data/vendor/assets/javascripts/languages/prism-systemd.js +74 -0
- data/vendor/assets/javascripts/languages/prism-t4-cs.js +1 -0
- data/vendor/assets/javascripts/languages/prism-t4-templating.js +49 -0
- data/vendor/assets/javascripts/languages/prism-t4-vb.js +1 -0
- data/vendor/assets/javascripts/languages/prism-tap.js +22 -0
- data/vendor/assets/javascripts/languages/prism-tcl.js +46 -0
- data/vendor/assets/javascripts/languages/prism-textile.js +286 -0
- data/vendor/assets/javascripts/languages/prism-toml.js +49 -0
- data/vendor/assets/javascripts/languages/prism-tremor.js +72 -0
- data/vendor/assets/javascripts/languages/prism-tsx.js +15 -0
- data/vendor/assets/javascripts/languages/prism-tt2.js +53 -0
- data/vendor/assets/javascripts/languages/prism-turtle.js +54 -0
- data/vendor/assets/javascripts/languages/prism-twig.js +44 -0
- data/vendor/assets/javascripts/languages/prism-typescript.js +60 -0
- data/vendor/assets/javascripts/languages/prism-typoscript.js +80 -0
- data/vendor/assets/javascripts/languages/prism-unrealscript.js +42 -0
- data/vendor/assets/javascripts/languages/prism-uorazor.js +48 -0
- data/vendor/assets/javascripts/languages/prism-uri.js +96 -0
- data/vendor/assets/javascripts/languages/prism-v.js +81 -0
- data/vendor/assets/javascripts/languages/prism-vala.js +84 -0
- data/vendor/assets/javascripts/languages/prism-vbnet.js +22 -0
- data/vendor/assets/javascripts/languages/prism-velocity.js +72 -0
- data/vendor/assets/javascripts/languages/prism-verilog.js +26 -0
- data/vendor/assets/javascripts/languages/prism-vhdl.js +26 -0
- data/vendor/assets/javascripts/languages/prism-vim.js +10 -0
- data/vendor/assets/javascripts/languages/prism-visual-basic.js +29 -0
- data/vendor/assets/javascripts/languages/prism-warpscript.js +21 -0
- data/vendor/assets/javascripts/languages/prism-wasm.js +31 -0
- data/vendor/assets/javascripts/languages/prism-web-idl.js +101 -0
- data/vendor/assets/javascripts/languages/prism-wgsl.js +69 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-wiki.js +9 -8
- data/vendor/assets/javascripts/languages/prism-wolfram.js +29 -0
- data/vendor/assets/javascripts/languages/prism-wren.js +100 -0
- data/vendor/assets/javascripts/languages/prism-xeora.js +114 -0
- data/vendor/assets/javascripts/languages/prism-xml-doc.js +40 -0
- data/vendor/assets/javascripts/languages/prism-xojo.js +21 -0
- data/vendor/assets/javascripts/languages/prism-xquery.js +162 -0
- data/vendor/assets/javascripts/languages/prism-yaml.js +83 -0
- data/vendor/assets/javascripts/languages/prism-yang.js +20 -0
- data/vendor/assets/javascripts/languages/prism-zig.js +101 -0
- data/vendor/assets/javascripts/prism-plugin/prism-autolinker.js +63 -63
- data/vendor/assets/javascripts/prism-plugin/prism-autoloader.js +465 -122
- data/vendor/assets/javascripts/prism-plugin/prism-command-line.js +221 -63
- data/vendor/assets/javascripts/prism-plugin/prism-copy-to-clipboard.js +128 -43
- data/vendor/assets/javascripts/prism-plugin/prism-custom-class.js +105 -24
- data/vendor/assets/javascripts/prism-plugin/prism-data-uri-highlight.js +4 -8
- data/vendor/assets/javascripts/prism-plugin/prism-diff-highlight.js +90 -0
- data/vendor/assets/javascripts/prism-plugin/prism-download-button.js +20 -0
- data/vendor/assets/javascripts/prism-plugin/prism-file-highlight.js +179 -61
- data/vendor/assets/javascripts/prism-plugin/prism-filter-highlight-all.js +127 -0
- data/vendor/assets/javascripts/prism-plugin/prism-highlight-keywords.js +10 -13
- data/vendor/assets/javascripts/prism-plugin/prism-inline-color.js +105 -0
- data/vendor/assets/javascripts/prism-plugin/prism-jsonp-highlight.js +264 -112
- data/vendor/assets/javascripts/prism-plugin/prism-keep-markup.js +53 -24
- data/vendor/assets/javascripts/prism-plugin/prism-line-highlight.js +328 -115
- data/vendor/assets/javascripts/prism-plugin/prism-line-numbers.js +237 -42
- data/vendor/assets/javascripts/prism-plugin/prism-match-braces.js +190 -0
- data/vendor/assets/javascripts/prism-plugin/prism-normalize-whitespace.js +206 -149
- data/vendor/assets/javascripts/prism-plugin/prism-previewers.js +712 -0
- data/vendor/assets/javascripts/prism-plugin/prism-remove-initial-line-feed.js +17 -17
- data/vendor/assets/javascripts/prism-plugin/prism-show-invisibles.js +83 -19
- data/vendor/assets/javascripts/prism-plugin/prism-show-language.js +317 -20
- data/vendor/assets/javascripts/prism-plugin/prism-toolbar.js +61 -15
- data/vendor/assets/javascripts/prism-plugin/prism-treeview.js +70 -0
- data/vendor/assets/javascripts/prism-plugin/prism-unescaped-markup.js +39 -17
- data/vendor/assets/javascripts/prism-plugin/prism-wpd.js +132 -147
- data/vendor/assets/javascripts/prism.js +302 -127
- data/vendor/assets/stylesheets/prism-plugin/prism-autolinker.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-command-line.css +11 -1
- data/vendor/assets/stylesheets/prism-plugin/prism-command-line.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-diff-highlight.css +13 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-diff-highlight.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-inline-color.css +33 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-inline-color.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-line-highlight.css +26 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-line-highlight.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-line-numbers.css +4 -4
- data/vendor/assets/stylesheets/prism-plugin/prism-line-numbers.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-match-braces.css +29 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-match-braces.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-previewers.css +243 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-previewers.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-show-invisibles.css +7 -6
- data/vendor/assets/stylesheets/prism-plugin/prism-show-invisibles.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-toolbar.css +22 -15
- data/vendor/assets/stylesheets/prism-plugin/prism-toolbar.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-treeview.css +168 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-treeview.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-unescaped-markup.css +4 -4
- data/vendor/assets/stylesheets/prism-plugin/prism-unescaped-markup.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-wpd.min.css +1 -0
- data/vendor/assets/stylesheets/prism-theme/prism-a11y-dark.css +161 -0
- data/vendor/assets/stylesheets/{prism-atom-dark.css → prism-theme/prism-atom-dark.css} +10 -13
- data/vendor/assets/stylesheets/prism-theme/prism-autolinker.css +3 -0
- data/vendor/assets/stylesheets/{prism-base16-ateliersulphurpool.light.css → prism-theme/prism-base16-ateliersulphurpool.light.css} +60 -56
- data/vendor/assets/stylesheets/{prism-cb.css → prism-theme/prism-cb.css} +20 -50
- data/vendor/assets/stylesheets/prism-theme/prism-coldark-cold.css +317 -0
- data/vendor/assets/stylesheets/prism-theme/prism-coldark-dark.css +317 -0
- data/vendor/assets/stylesheets/prism-theme/prism-command-line.css +33 -0
- data/vendor/assets/stylesheets/prism-theme/prism-coy-without-shadows.css +140 -0
- data/vendor/assets/stylesheets/{prism-coy.css → prism-theme/prism-coy.css} +17 -19
- data/vendor/assets/stylesheets/prism-theme/prism-coy.min.css +1 -0
- data/vendor/assets/stylesheets/prism-theme/prism-darcula.css +159 -0
- data/vendor/assets/stylesheets/{prism-dark.css → prism-theme/prism-dark.css} +2 -1
- data/vendor/assets/stylesheets/prism-theme/prism-dark.min.css +1 -0
- data/vendor/assets/stylesheets/prism-theme/prism-dracula.css +122 -0
- data/vendor/assets/stylesheets/{prism-duotone-dark.css → prism-theme/prism-duotone-dark.css} +58 -54
- data/vendor/assets/stylesheets/{prism-duotone-earth.css → prism-theme/prism-duotone-earth.css} +58 -54
- data/vendor/assets/stylesheets/{prism-duotone-forest.css → prism-theme/prism-duotone-forest.css} +58 -54
- data/vendor/assets/stylesheets/{prism-duotone-light.css → prism-theme/prism-duotone-light.css} +58 -54
- data/vendor/assets/stylesheets/{prism-duotone-sea.css → prism-theme/prism-duotone-sea.css} +58 -54
- data/vendor/assets/stylesheets/{prism-duotone-space.css → prism-theme/prism-duotone-space.css} +58 -54
- data/vendor/assets/stylesheets/{prism-funky.css → prism-theme/prism-funky.css} +16 -2
- data/vendor/assets/stylesheets/prism-theme/prism-funky.min.css +1 -0
- data/vendor/assets/stylesheets/{prism-ghcolors.css → prism-theme/prism-ghcolors.css} +47 -44
- data/vendor/assets/stylesheets/prism-theme/prism-gruvbox-dark.css +143 -0
- data/vendor/assets/stylesheets/prism-theme/prism-gruvbox-light.css +143 -0
- data/vendor/assets/stylesheets/prism-theme/prism-holi-theme.css +119 -0
- data/vendor/assets/stylesheets/prism-theme/prism-hopscotch.css +132 -0
- data/vendor/assets/stylesheets/prism-theme/prism-laserwave.css +133 -0
- data/vendor/assets/stylesheets/prism-theme/prism-line-highlight.css +49 -0
- data/vendor/assets/stylesheets/prism-theme/prism-line-numbers.css +41 -0
- data/vendor/assets/stylesheets/prism-theme/prism-lucario.css +122 -0
- data/vendor/assets/stylesheets/prism-theme/prism-material-dark.css +205 -0
- data/vendor/assets/stylesheets/prism-theme/prism-material-light.css +207 -0
- data/vendor/assets/stylesheets/prism-theme/prism-material-oceanic.css +210 -0
- data/vendor/assets/stylesheets/prism-theme/prism-night-owl.css +158 -0
- data/vendor/assets/stylesheets/prism-theme/prism-nord.css +124 -0
- data/vendor/assets/stylesheets/{prism-okaidia.css → prism-theme/prism-okaidia.css} +5 -3
- data/vendor/assets/stylesheets/prism-theme/prism-okaidia.min.css +1 -0
- data/vendor/assets/stylesheets/prism-theme/prism-one-dark.css +440 -0
- data/vendor/assets/stylesheets/prism-theme/prism-one-light.css +428 -0
- data/vendor/assets/stylesheets/prism-theme/prism-pojoaque.css +151 -0
- data/vendor/assets/stylesheets/prism-theme/prism-previewers.css +242 -0
- data/vendor/assets/stylesheets/prism-theme/prism-shades-of-purple.css +196 -0
- data/vendor/assets/stylesheets/prism-theme/prism-show-invisibles.css +34 -0
- data/vendor/assets/stylesheets/prism-theme/prism-solarized-dark-atom.css +143 -0
- data/vendor/assets/stylesheets/{prism-solarizedlight.css → prism-theme/prism-solarizedlight.css} +5 -3
- data/vendor/assets/stylesheets/prism-theme/prism-solarizedlight.min.css +1 -0
- data/vendor/assets/stylesheets/prism-theme/prism-synthwave84.css +140 -0
- data/vendor/assets/stylesheets/{prism-tomorrow.css → prism-theme/prism-tomorrow.css} +1 -0
- data/vendor/assets/stylesheets/prism-theme/prism-tomorrow.min.css +1 -0
- data/vendor/assets/stylesheets/{prism-toolbar.css → prism-theme/prism-toolbar.css} +15 -15
- data/vendor/assets/stylesheets/{prism-twilight.css → prism-theme/prism-twilight.css} +5 -34
- data/vendor/assets/stylesheets/prism-theme/prism-twilight.min.css +1 -0
- data/vendor/assets/stylesheets/prism-theme/prism-unescaped-markup.css +10 -0
- data/vendor/assets/stylesheets/prism-theme/prism-vs.css +168 -0
- data/vendor/assets/stylesheets/prism-theme/prism-vsc-dark-plus.css +275 -0
- data/vendor/assets/stylesheets/prism-theme/prism-wpd.css +11 -0
- data/vendor/assets/stylesheets/prism-theme/prism-xonokai.css +162 -0
- data/vendor/assets/stylesheets/prism-theme/prism-z-touch.css +160 -0
- data/vendor/assets/stylesheets/prism.css +6 -3
- metadata +392 -151
- data/vendor/assets/javascripts/prism/prism-abap.js +0 -48
- data/vendor/assets/javascripts/prism/prism-actionscript.js +0 -17
- data/vendor/assets/javascripts/prism/prism-ada.js +0 -19
- data/vendor/assets/javascripts/prism/prism-apacheconf.js +0 -47
- data/vendor/assets/javascripts/prism/prism-applescript.js +0 -20
- data/vendor/assets/javascripts/prism/prism-aspnet.js +0 -36
- data/vendor/assets/javascripts/prism/prism-autohotkey.js +0 -27
- data/vendor/assets/javascripts/prism/prism-autoit.js +0 -33
- data/vendor/assets/javascripts/prism/prism-bash.js +0 -80
- data/vendor/assets/javascripts/prism/prism-bro.js +0 -50
- data/vendor/assets/javascripts/prism/prism-c.js +0 -33
- data/vendor/assets/javascripts/prism/prism-clike.js +0 -29
- data/vendor/assets/javascripts/prism/prism-coffeescript.js +0 -91
- data/vendor/assets/javascripts/prism/prism-core.js +0 -511
- data/vendor/assets/javascripts/prism/prism-cpp.js +0 -12
- data/vendor/assets/javascripts/prism/prism-crystal.js +0 -53
- data/vendor/assets/javascripts/prism/prism-csharp.js +0 -32
- data/vendor/assets/javascripts/prism/prism-css-extras.js +0 -16
- data/vendor/assets/javascripts/prism/prism-css.js +0 -51
- data/vendor/assets/javascripts/prism/prism-d.js +0 -64
- data/vendor/assets/javascripts/prism/prism-dart.js +0 -18
- data/vendor/assets/javascripts/prism/prism-diff.js +0 -20
- data/vendor/assets/javascripts/prism/prism-docker.js +0 -9
- data/vendor/assets/javascripts/prism/prism-elixir.js +0 -90
- data/vendor/assets/javascripts/prism/prism-fsharp.js +0 -33
- data/vendor/assets/javascripts/prism/prism-gherkin.js +0 -78
- data/vendor/assets/javascripts/prism/prism-glsl.js +0 -16
- data/vendor/assets/javascripts/prism/prism-go.js +0 -9
- data/vendor/assets/javascripts/prism/prism-graphql.js +0 -24
- data/vendor/assets/javascripts/prism/prism-groovy.js +0 -65
- data/vendor/assets/javascripts/prism/prism-handlebars.js +0 -83
- data/vendor/assets/javascripts/prism/prism-haskell.js +0 -35
- data/vendor/assets/javascripts/prism/prism-haxe.js +0 -43
- data/vendor/assets/javascripts/prism/prism-http.js +0 -50
- data/vendor/assets/javascripts/prism/prism-ini.js +0 -11
- data/vendor/assets/javascripts/prism/prism-java.js +0 -16
- data/vendor/assets/javascripts/prism/prism-javascript.js +0 -48
- data/vendor/assets/javascripts/prism/prism-jolie.js +0 -56
- data/vendor/assets/javascripts/prism/prism-json.js +0 -11
- data/vendor/assets/javascripts/prism/prism-jsx.js +0 -27
- data/vendor/assets/javascripts/prism/prism-julia.js +0 -12
- data/vendor/assets/javascripts/prism/prism-keyman.js +0 -14
- data/vendor/assets/javascripts/prism/prism-kotlin.js +0 -62
- data/vendor/assets/javascripts/prism/prism-latex.js +0 -61
- data/vendor/assets/javascripts/prism/prism-lolcode.js +0 -54
- data/vendor/assets/javascripts/prism/prism-makefile.js +0 -31
- data/vendor/assets/javascripts/prism/prism-markdown.js +0 -120
- data/vendor/assets/javascripts/prism/prism-markup.js +0 -46
- data/vendor/assets/javascripts/prism/prism-matlab.js +0 -14
- data/vendor/assets/javascripts/prism/prism-mel.js +0 -39
- data/vendor/assets/javascripts/prism/prism-monkey.js +0 -25
- data/vendor/assets/javascripts/prism/prism-nasm.js +0 -24
- data/vendor/assets/javascripts/prism/prism-nginx.js +0 -11
- data/vendor/assets/javascripts/prism/prism-nsis.js +0 -26
- data/vendor/assets/javascripts/prism/prism-objectivec.js +0 -5
- data/vendor/assets/javascripts/prism/prism-ocaml.js +0 -21
- data/vendor/assets/javascripts/prism/prism-oz.js +0 -21
- data/vendor/assets/javascripts/prism/prism-parser.js +0 -66
- data/vendor/assets/javascripts/prism/prism-perl.js +0 -140
- data/vendor/assets/javascripts/prism/prism-php-extras.js +0 -11
- data/vendor/assets/javascripts/prism/prism-php.js +0 -111
- data/vendor/assets/javascripts/prism/prism-powershell.js +0 -52
- data/vendor/assets/javascripts/prism/prism-processing.js +0 -18
- data/vendor/assets/javascripts/prism/prism-properties.js +0 -9
- data/vendor/assets/javascripts/prism/prism-protobuf.js +0 -8
- data/vendor/assets/javascripts/prism/prism-python.js +0 -27
- data/vendor/assets/javascripts/prism/prism-r.js +0 -19
- data/vendor/assets/javascripts/prism/prism-rip.js +0 -28
- data/vendor/assets/javascripts/prism/prism-ruby.js +0 -116
- data/vendor/assets/javascripts/prism/prism-rust.js +0 -53
- data/vendor/assets/javascripts/prism/prism-sas.js +0 -31
- data/vendor/assets/javascripts/prism/prism-scala.js +0 -18
- data/vendor/assets/javascripts/prism/prism-scheme.js +0 -26
- data/vendor/assets/javascripts/prism/prism-smarty.js +0 -127
- data/vendor/assets/javascripts/prism/prism-sql.js +0 -17
- data/vendor/assets/javascripts/prism/prism-stylus.js +0 -102
- data/vendor/assets/javascripts/prism/prism-swift.js +0 -25
- data/vendor/assets/javascripts/prism/prism-tcl.js +0 -43
- data/vendor/assets/javascripts/prism/prism-textile.js +0 -257
- data/vendor/assets/javascripts/prism/prism-twig.js +0 -46
- data/vendor/assets/javascripts/prism/prism-typescript.js +0 -5
- data/vendor/assets/javascripts/prism/prism-verilog.js +0 -17
- data/vendor/assets/javascripts/prism/prism-vhdl.js +0 -23
- data/vendor/assets/javascripts/prism/prism-vim.js +0 -10
- data/vendor/assets/javascripts/prism/prism-xojo.js +0 -20
- data/vendor/assets/javascripts/prism/prism-yaml.js +0 -44
- data/vendor/assets/stylesheets/prism-hopscotch.css +0 -124
- data/vendor/assets/stylesheets/prism-pojoaque.css +0 -134
- data/vendor/assets/stylesheets/prism-vs.css +0 -157
- data/vendor/assets/stylesheets/prism-xonokai.css +0 -164
- /data/vendor/assets/javascripts/{prism → languages}/prism-jade.js +0 -0
- /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]
|
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-]+|[+=])/
|
18
|
+
'atrule': /(?:@[\w-]+|[+=])/
|
17
19
|
}
|
18
20
|
}
|
19
21
|
});
|
20
22
|
delete Prism.languages.sass.atrule;
|
21
23
|
|
22
24
|
|
23
|
-
var variable =
|
25
|
+
var variable = /\$[-\w]+|#\{\$[-\w]+\}/;
|
24
26
|
var operator = [
|
25
|
-
/[+*\/%]|[=!]=|<=?|>=?|\b(?:and|or
|
27
|
+
/[+*\/%]|[=!]=|<=?|>=?|\b(?:and|not|or)\b/,
|
26
28
|
{
|
27
|
-
pattern: /(\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]
|
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:
|
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: /(^|[^\\])(?:\/\*[\
|
3
|
+
pattern: /(^|[^\\])(?:\/\*[\s\S]*?\*\/|\/\/.*)/,
|
4
4
|
lookbehind: true
|
5
5
|
},
|
6
6
|
'atrule': {
|
7
|
-
pattern: /@[\w-]
|
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]+-)
|
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)[
|
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': /%[
|
31
|
-
'variable': /\$[
|
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
|
-
/@(?:
|
44
|
+
/@(?:content|debug|each|else(?: if)?|extend|for|forward|function|if|import|include|mixin|return|use|warn|while)\b/i,
|
39
45
|
{
|
40
|
-
pattern: /(
|
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': /\$[
|
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: /%[
|
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
|
68
|
-
'null':
|
70
|
+
'boolean': /\b(?:false|true)\b/,
|
71
|
+
'null': {
|
72
|
+
pattern: /\bnull\b/,
|
73
|
+
alias: 'keyword'
|
74
|
+
},
|
69
75
|
'operator': {
|
70
|
-
pattern: /(\s)(?:[-+*\/%]|[=!]=|<=?|>=?|and|or
|
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.
|
81
|
+
Prism.languages.scss['atrule'].inside.rest = Prism.languages.scss;
|