prism-rails 1.6.0.3 → 1.19.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/CHANGELOG.md +3 -0
- data/README.md +88 -44
- data/lib/prism-rails/version.rb +1 -1
- data/vendor/assets/javascripts/languages/index.js +82 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-abap.js +2 -2
- data/vendor/assets/javascripts/languages/prism-abnf.js +54 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-actionscript.js +3 -5
- data/vendor/assets/javascripts/{prism → languages}/prism-ada.js +2 -2
- data/vendor/assets/javascripts/languages/prism-antlr4.js +65 -0
- data/vendor/assets/javascripts/languages/prism-apacheconf.js +47 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-apl.js +8 -5
- data/vendor/assets/javascripts/{prism → languages}/prism-applescript.js +3 -3
- data/vendor/assets/javascripts/languages/prism-aql.js +41 -0
- data/vendor/assets/javascripts/languages/prism-arduino.js +5 -0
- data/vendor/assets/javascripts/languages/prism-arff.js +10 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-asciidoc.js +23 -60
- data/vendor/assets/javascripts/languages/prism-asm6502.js +28 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-aspnet.js +22 -10
- data/vendor/assets/javascripts/languages/prism-autohotkey.js +27 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-autoit.js +1 -0
- data/vendor/assets/javascripts/languages/prism-bash.js +197 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-basic.js +5 -2
- data/vendor/assets/javascripts/{prism → languages}/prism-batch.js +0 -0
- data/vendor/assets/javascripts/languages/prism-bbcode.js +27 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-bison.js +0 -0
- data/vendor/assets/javascripts/languages/prism-bnf.js +21 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-brainfuck.js +0 -0
- data/vendor/assets/javascripts/languages/prism-brightscript.js +44 -0
- data/vendor/assets/javascripts/languages/prism-bro.js +48 -0
- data/vendor/assets/javascripts/languages/prism-c.js +41 -0
- data/vendor/assets/javascripts/languages/prism-cil.js +27 -0
- data/vendor/assets/javascripts/languages/prism-clike.js +30 -0
- data/vendor/assets/javascripts/languages/prism-clojure.js +16 -0
- data/vendor/assets/javascripts/languages/prism-cmake.js +29 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-coffeescript.js +6 -5
- data/vendor/assets/javascripts/languages/prism-concurnas.js +48 -0
- data/vendor/assets/javascripts/languages/prism-core.js +627 -0
- data/vendor/assets/javascripts/languages/prism-cpp.js +21 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-crystal.js +5 -7
- data/vendor/assets/javascripts/languages/prism-csharp.js +81 -0
- data/vendor/assets/javascripts/languages/prism-csp.js +25 -0
- data/vendor/assets/javascripts/languages/prism-css-extras.js +109 -0
- data/vendor/assets/javascripts/languages/prism-css.js +62 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-d.js +49 -34
- data/vendor/assets/javascripts/{prism → languages}/prism-dart.js +8 -2
- data/vendor/assets/javascripts/languages/prism-diff.js +54 -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 +11 -0
- data/vendor/assets/javascripts/languages/prism-ebnf.js +22 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-eiffel.js +20 -7
- data/vendor/assets/javascripts/languages/prism-ejs.js +24 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-elixir.js +14 -15
- data/vendor/assets/javascripts/languages/prism-elm.js +44 -0
- data/vendor/assets/javascripts/languages/prism-erb.js +20 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-erlang.js +7 -4
- data/vendor/assets/javascripts/languages/prism-etlua.js +23 -0
- data/vendor/assets/javascripts/languages/prism-factor.js +403 -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 +5 -2
- data/vendor/assets/javascripts/languages/prism-fsharp.js +67 -0
- data/vendor/assets/javascripts/languages/prism-ftl.js +97 -0
- data/vendor/assets/javascripts/languages/prism-gcode.js +15 -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-gherkin.js +85 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-git.js +2 -2
- data/vendor/assets/javascripts/{prism → languages}/prism-glsl.js +3 -3
- data/vendor/assets/javascripts/languages/prism-gml.js +7 -0
- data/vendor/assets/javascripts/languages/prism-go.js +12 -0
- data/vendor/assets/javascripts/languages/prism-graphql.js +31 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-groovy.js +12 -10
- data/vendor/assets/javascripts/{prism → languages}/prism-haml.js +14 -26
- data/vendor/assets/javascripts/languages/prism-handlebars.js +37 -0
- data/vendor/assets/javascripts/languages/prism-haskell.js +38 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-haxe.js +4 -2
- data/vendor/assets/javascripts/languages/prism-hcl.js +65 -0
- data/vendor/assets/javascripts/languages/prism-hpkp.js +20 -0
- data/vendor/assets/javascripts/languages/prism-hsts.js +20 -0
- data/vendor/assets/javascripts/languages/prism-http.js +77 -0
- data/vendor/assets/javascripts/languages/prism-ichigojam.js +15 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-icon.js +4 -1
- data/vendor/assets/javascripts/{prism → languages}/prism-inform7.js +6 -3
- data/vendor/assets/javascripts/{prism → languages}/prism-ini.js +2 -2
- data/vendor/assets/javascripts/languages/prism-io.js +31 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-j.js +5 -2
- data/vendor/assets/javascripts/{prism → languages}/prism-jade.js +0 -0
- data/vendor/assets/javascripts/languages/prism-java.js +63 -0
- data/vendor/assets/javascripts/languages/prism-javadoc.js +54 -0
- data/vendor/assets/javascripts/languages/prism-javadoclike.js +87 -0
- data/vendor/assets/javascripts/languages/prism-javascript.js +91 -0
- data/vendor/assets/javascripts/languages/prism-javastacktrace.js +93 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-jolie.js +9 -10
- data/vendor/assets/javascripts/languages/prism-jq.js +67 -0
- data/vendor/assets/javascripts/languages/prism-js-extras.js +104 -0
- data/vendor/assets/javascripts/languages/prism-js-templates.js +346 -0
- data/vendor/assets/javascripts/languages/prism-jsdoc.js +73 -0
- data/vendor/assets/javascripts/languages/prism-json.js +19 -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-jsx.js +126 -0
- data/vendor/assets/javascripts/languages/prism-julia.js +13 -0
- data/vendor/assets/javascripts/languages/prism-keyman.js +14 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-kotlin.js +6 -6
- data/vendor/assets/javascripts/{prism → languages}/prism-latex.js +16 -13
- data/vendor/assets/javascripts/languages/prism-latte.js +69 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-less.js +3 -9
- data/vendor/assets/javascripts/languages/prism-lilypond.js +69 -0
- data/vendor/assets/javascripts/languages/prism-liquid.js +12 -0
- data/vendor/assets/javascripts/languages/prism-lisp.js +197 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-livescript.js +19 -18
- data/vendor/assets/javascripts/{prism → languages}/prism-lolcode.js +3 -2
- data/vendor/assets/javascripts/{prism → languages}/prism-lua.js +0 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-makefile.js +5 -2
- data/vendor/assets/javascripts/languages/prism-markdown.js +344 -0
- data/vendor/assets/javascripts/languages/prism-markup-templating.js +123 -0
- data/vendor/assets/javascripts/languages/prism-markup.js +103 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-matlab.js +5 -3
- data/vendor/assets/javascripts/{prism → languages}/prism-mel.js +7 -3
- data/vendor/assets/javascripts/{prism → languages}/prism-mizar.js +0 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-monkey.js +9 -3
- data/vendor/assets/javascripts/languages/prism-moonscript.js +57 -0
- data/vendor/assets/javascripts/languages/prism-n1ql.js +18 -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-nasm.js +24 -0
- data/vendor/assets/javascripts/languages/prism-neon.js +41 -0
- data/vendor/assets/javascripts/languages/prism-nginx.js +11 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-nim.js +4 -1
- data/vendor/assets/javascripts/{prism → languages}/prism-nix.js +2 -1
- data/vendor/assets/javascripts/languages/prism-nsis.js +29 -0
- data/vendor/assets/javascripts/languages/prism-objectivec.js +7 -0
- data/vendor/assets/javascripts/languages/prism-ocaml.js +41 -0
- data/vendor/assets/javascripts/languages/prism-opencl.js +54 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-oz.js +6 -2
- data/vendor/assets/javascripts/{prism → languages}/prism-parigp.js +4 -1
- data/vendor/assets/javascripts/languages/prism-parser.js +73 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-pascal.js +9 -4
- 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-perl.js +191 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-php-extras.js +3 -3
- data/vendor/assets/javascripts/languages/prism-php.js +130 -0
- data/vendor/assets/javascripts/languages/prism-phpdoc.js +27 -0
- data/vendor/assets/javascripts/languages/prism-plsql.js +26 -0
- data/vendor/assets/javascripts/languages/prism-powershell.js +60 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-processing.js +2 -2
- data/vendor/assets/javascripts/{prism → languages}/prism-prolog.js +4 -1
- data/vendor/assets/javascripts/{prism → languages}/prism-properties.js +2 -2
- data/vendor/assets/javascripts/languages/prism-protobuf.js +36 -0
- data/vendor/assets/javascripts/languages/prism-pug.js +181 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-puppet.js +7 -2
- data/vendor/assets/javascripts/{prism → languages}/prism-pure.js +19 -17
- data/vendor/assets/javascripts/languages/prism-python.js +64 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-q.js +13 -6
- data/vendor/assets/javascripts/languages/prism-qml.js +58 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-qore.js +7 -4
- data/vendor/assets/javascripts/{prism → languages}/prism-r.js +5 -2
- data/vendor/assets/javascripts/{prism → languages}/prism-reason.js +4 -8
- data/vendor/assets/javascripts/languages/prism-regex.js +97 -0
- data/vendor/assets/javascripts/languages/prism-renpy.js +29 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-rest.js +4 -4
- data/vendor/assets/javascripts/{prism → languages}/prism-rip.js +7 -3
- data/vendor/assets/javascripts/{prism → languages}/prism-roboconf.js +0 -0
- data/vendor/assets/javascripts/languages/prism-robotframework.js +104 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-ruby.js +49 -15
- data/vendor/assets/javascripts/languages/prism-rust.js +68 -0
- data/vendor/assets/javascripts/languages/prism-sas.js +302 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-sass.js +1 -2
- data/vendor/assets/javascripts/{prism → languages}/prism-scala.js +10 -11
- data/vendor/assets/javascripts/languages/prism-scheme.js +33 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-scss.js +18 -16
- data/vendor/assets/javascripts/languages/prism-shell-session.js +54 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-smalltalk.js +9 -9
- data/vendor/assets/javascripts/languages/prism-smarty.js +87 -0
- data/vendor/assets/javascripts/languages/prism-solidity.js +20 -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 +24 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-stylus.js +16 -7
- data/vendor/assets/javascripts/languages/prism-swift.js +25 -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 +20 -0
- data/vendor/assets/javascripts/languages/prism-tcl.js +46 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-textile.js +35 -32
- data/vendor/assets/javascripts/languages/prism-toml.js +43 -0
- data/vendor/assets/javascripts/languages/prism-tsx.js +2 -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/{prism → languages}/prism-twig.js +8 -8
- data/vendor/assets/javascripts/languages/prism-typescript.js +7 -0
- data/vendor/assets/javascripts/languages/prism-vala.js +74 -0
- data/vendor/assets/javascripts/languages/prism-vbnet.js +15 -0
- data/vendor/assets/javascripts/languages/prism-velocity.js +72 -0
- data/vendor/assets/javascripts/languages/prism-verilog.js +20 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-vhdl.js +2 -2
- data/vendor/assets/javascripts/{prism → languages}/prism-vim.js +1 -1
- data/vendor/assets/javascripts/languages/prism-visual-basic.js +34 -0
- data/vendor/assets/javascripts/languages/prism-wasm.js +31 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-wiki.js +7 -6
- data/vendor/assets/javascripts/languages/prism-xeora.js +114 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-xojo.js +1 -1
- data/vendor/assets/javascripts/languages/prism-xquery.js +162 -0
- data/vendor/assets/javascripts/languages/prism-yaml.js +76 -0
- data/vendor/assets/javascripts/languages/prism-zig.js +97 -0
- data/vendor/assets/javascripts/prism-plugin/prism-autolinker.js +13 -8
- data/vendor/assets/javascripts/prism-plugin/prism-autoloader.js +306 -95
- data/vendor/assets/javascripts/prism-plugin/prism-command-line.js +96 -38
- data/vendor/assets/javascripts/prism-plugin/prism-copy-to-clipboard.js +10 -10
- data/vendor/assets/javascripts/prism-plugin/prism-custom-class.js +89 -23
- data/vendor/assets/javascripts/prism-plugin/prism-data-uri-highlight.js +2 -2
- data/vendor/assets/javascripts/prism-plugin/prism-diff-highlight.js +83 -0
- data/vendor/assets/javascripts/prism-plugin/prism-download-button.js +19 -0
- data/vendor/assets/javascripts/prism-plugin/prism-file-highlight.js +53 -41
- data/vendor/assets/javascripts/prism-plugin/prism-filter-highlight-all.js +125 -0
- data/vendor/assets/javascripts/prism-plugin/prism-inline-color.js +88 -0
- data/vendor/assets/javascripts/prism-plugin/prism-jsonp-highlight.js +124 -69
- data/vendor/assets/javascripts/prism-plugin/prism-keep-markup.js +4 -2
- data/vendor/assets/javascripts/prism-plugin/prism-line-highlight.js +195 -115
- data/vendor/assets/javascripts/prism-plugin/prism-line-numbers.js +154 -43
- data/vendor/assets/javascripts/prism-plugin/prism-match-braces.js +184 -0
- data/vendor/assets/javascripts/prism-plugin/prism-normalize-whitespace.js +29 -11
- data/vendor/assets/javascripts/prism-plugin/prism-previewers.js +703 -0
- data/vendor/assets/javascripts/prism-plugin/prism-remove-initial-line-feed.js +2 -2
- data/vendor/assets/javascripts/prism-plugin/prism-show-invisibles.js +83 -18
- data/vendor/assets/javascripts/prism-plugin/prism-show-language.js +190 -19
- data/vendor/assets/javascripts/prism-plugin/prism-toolbar.js +53 -8
- data/vendor/assets/javascripts/prism-plugin/prism-unescaped-markup.js +11 -7
- data/vendor/assets/javascripts/prism-plugin/prism-wpd.js +12 -12
- data/vendor/assets/javascripts/prism.js +210 -127
- data/vendor/assets/stylesheets/prism-plugin/prism-diff-highlight.css +13 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-inline-color.css +9 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-line-highlight.css +5 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-line-numbers.css +4 -3
- data/vendor/assets/stylesheets/prism-plugin/prism-match-braces.css +29 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-previewers.css +242 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-show-invisibles.css +7 -6
- data/vendor/assets/stylesheets/prism-plugin/prism-toolbar.css +21 -15
- data/vendor/assets/stylesheets/prism-plugin/prism-unescaped-markup.css +4 -4
- 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} +57 -53
- data/vendor/assets/stylesheets/{prism-cb.css → prism-theme/prism-cb.css} +27 -27
- data/vendor/assets/stylesheets/prism-theme/prism-command-line.css +33 -0
- data/vendor/assets/stylesheets/{prism-coy.css → prism-theme/prism-coy.css} +14 -9
- 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-dracula.css +122 -0
- data/vendor/assets/stylesheets/{prism-duotone-dark.css → prism-theme/prism-duotone-dark.css} +55 -51
- data/vendor/assets/stylesheets/{prism-duotone-earth.css → prism-theme/prism-duotone-earth.css} +55 -51
- data/vendor/assets/stylesheets/{prism-duotone-forest.css → prism-theme/prism-duotone-forest.css} +55 -51
- data/vendor/assets/stylesheets/{prism-duotone-light.css → prism-theme/prism-duotone-light.css} +55 -51
- data/vendor/assets/stylesheets/{prism-duotone-sea.css → prism-theme/prism-duotone-sea.css} +55 -51
- data/vendor/assets/stylesheets/{prism-duotone-space.css → prism-theme/prism-duotone-space.css} +55 -51
- data/vendor/assets/stylesheets/{prism-funky.css → prism-theme/prism-funky.css} +16 -2
- data/vendor/assets/stylesheets/{prism-ghcolors.css → prism-theme/prism-ghcolors.css} +47 -44
- data/vendor/assets/stylesheets/prism-theme/prism-hopscotch.css +132 -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-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-nord.css +124 -0
- data/vendor/assets/stylesheets/{prism-okaidia.css → prism-theme/prism-okaidia.css} +4 -2
- 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 +200 -0
- data/vendor/assets/stylesheets/prism-theme/prism-show-invisibles.css +34 -0
- data/vendor/assets/stylesheets/{prism-show-language.css → prism-theme/prism-show-language.css} +0 -0
- data/vendor/assets/stylesheets/{prism-solarizedlight.css → prism-theme/prism-solarizedlight.css} +5 -3
- 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-toolbar.css → prism-theme/prism-toolbar.css} +15 -15
- data/vendor/assets/stylesheets/{prism-twilight.css → prism-theme/prism-twilight.css} +2 -1
- data/vendor/assets/stylesheets/prism-theme/prism-unescaped-markup.css +10 -0
- data/vendor/assets/stylesheets/{prism-vs.css → prism-theme/prism-vs.css} +62 -55
- data/vendor/assets/stylesheets/prism-theme/prism-vsc-dark-plus.css +216 -0
- data/vendor/assets/stylesheets/prism-theme/prism-wpd.css +11 -0
- data/vendor/assets/stylesheets/prism-theme/prism-xonokai.css +189 -0
- data/vendor/assets/stylesheets/prism.css +5 -3
- metadata +262 -148
- data/vendor/assets/javascripts/prism/prism-apacheconf.js +0 -47
- data/vendor/assets/javascripts/prism/prism-autohotkey.js +0 -27
- 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-core.js +0 -511
- data/vendor/assets/javascripts/prism/prism-cpp.js +0 -12
- 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-diff.js +0 -20
- data/vendor/assets/javascripts/prism/prism-docker.js +0 -9
- 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-go.js +0 -9
- data/vendor/assets/javascripts/prism/prism-graphql.js +0 -24
- 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-http.js +0 -50
- 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-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-markdown.js +0 -120
- data/vendor/assets/javascripts/prism/prism-markup.js +0 -46
- 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-parser.js +0 -66
- data/vendor/assets/javascripts/prism/prism-perl.js +0 -140
- 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-protobuf.js +0 -8
- data/vendor/assets/javascripts/prism/prism-python.js +0 -27
- 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-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-swift.js +0 -25
- data/vendor/assets/javascripts/prism/prism-tcl.js +0 -43
- 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-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-xonokai.css +0 -164
@@ -1,12 +1,15 @@
|
|
1
1
|
Prism.languages.basic = {
|
2
|
-
'string': /"(?:""|[!#$%&'()*,\/:;<=>?^_ +\-.A-Z\d])*"/i,
|
3
2
|
'comment': {
|
4
3
|
pattern: /(?:!|REM\b).+/i,
|
5
4
|
inside: {
|
6
5
|
'keyword': /^REM/i
|
7
6
|
}
|
8
7
|
},
|
9
|
-
'
|
8
|
+
'string': {
|
9
|
+
pattern: /"(?:""|[!#$%&'()*,\/:;<=>?^_ +\-.A-Z\d])*"/i,
|
10
|
+
greedy: true
|
11
|
+
},
|
12
|
+
'number': /(?:\b\d+\.?\d*|\B\.\d+)(?:E[+-]?\d+)?/i,
|
10
13
|
'keyword': /\b(?:AS|BEEP|BLOAD|BSAVE|CALL(?: ABSOLUTE)?|CASE|CHAIN|CHDIR|CLEAR|CLOSE|CLS|COM|COMMON|CONST|DATA|DECLARE|DEF(?: FN| SEG|DBL|INT|LNG|SNG|STR)|DIM|DO|DOUBLE|ELSE|ELSEIF|END|ENVIRON|ERASE|ERROR|EXIT|FIELD|FILES|FOR|FUNCTION|GET|GOSUB|GOTO|IF|INPUT|INTEGER|IOCTL|KEY|KILL|LINE INPUT|LOCATE|LOCK|LONG|LOOP|LSET|MKDIR|NAME|NEXT|OFF|ON(?: COM| ERROR| KEY| TIMER)?|OPEN|OPTION BASE|OUT|POKE|PUT|READ|REDIM|REM|RESTORE|RESUME|RETURN|RMDIR|RSET|RUN|SHARED|SINGLE|SELECT CASE|SHELL|SLEEP|STATIC|STEP|STOP|STRING|SUB|SWAP|SYSTEM|THEN|TIMER|TO|TROFF|TRON|TYPE|UNLOCK|UNTIL|USING|VIEW PRINT|WAIT|WEND|WHILE|WRITE)(?:\$|\b)/i,
|
11
14
|
'function': /\b(?:ABS|ACCESS|ACOS|ANGLE|AREA|ARITHMETIC|ARRAY|ASIN|ASK|AT|ATN|BASE|BEGIN|BREAK|CAUSE|CEIL|CHR|CLIP|COLLATE|COLOR|CON|COS|COSH|COT|CSC|DATE|DATUM|DEBUG|DECIMAL|DEF|DEG|DEGREES|DELETE|DET|DEVICE|DISPLAY|DOT|ELAPSED|EPS|ERASABLE|EXLINE|EXP|EXTERNAL|EXTYPE|FILETYPE|FIXED|FP|GO|GRAPH|HANDLER|IDN|IMAGE|IN|INT|INTERNAL|IP|IS|KEYED|LBOUND|LCASE|LEFT|LEN|LENGTH|LET|LINE|LINES|LOG|LOG10|LOG2|LTRIM|MARGIN|MAT|MAX|MAXNUM|MID|MIN|MISSING|MOD|NATIVE|NUL|NUMERIC|OF|OPTION|ORD|ORGANIZATION|OUTIN|OUTPUT|PI|POINT|POINTER|POINTS|POS|PRINT|PROGRAM|PROMPT|RAD|RADIANS|RANDOMIZE|RECORD|RECSIZE|RECTYPE|RELATIVE|REMAINDER|REPEAT|REST|RETRY|REWRITE|RIGHT|RND|ROUND|RTRIM|SAME|SEC|SELECT|SEQUENTIAL|SET|SETTER|SGN|SIN|SINH|SIZE|SKIP|SQR|STANDARD|STATUS|STR|STREAM|STYLE|TAB|TAN|TANH|TEMPLATE|TEXT|THERE|TIME|TIMEOUT|TRACE|TRANSFORM|TRUNCATE|UBOUND|UCASE|USE|VAL|VARIABLE|VIEWPORT|WHEN|WINDOW|WITH|ZER|ZONEWIDTH)(?:\$|\b)/i,
|
12
15
|
'operator': /<[=>]?|>=?|[+\-*\/^=&]|\b(?:AND|EQV|IMP|NOT|OR|XOR)\b/i,
|
File without changes
|
@@ -0,0 +1,27 @@
|
|
1
|
+
Prism.languages.bbcode = {
|
2
|
+
'tag': {
|
3
|
+
pattern: /\[\/?[^\s=\]]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'"\]=]+))?(?:\s+[^\s=\]]+\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'"\]=]+))*\s*\]/,
|
4
|
+
inside: {
|
5
|
+
'tag': {
|
6
|
+
pattern: /^\[\/?[^\s=\]]+/,
|
7
|
+
inside: {
|
8
|
+
'punctuation': /^\[\/?/
|
9
|
+
}
|
10
|
+
},
|
11
|
+
'attr-value': {
|
12
|
+
pattern: /=\s*(?:"[^"]*"|'[^']*'|[^\s'"\]=]+)/i,
|
13
|
+
inside: {
|
14
|
+
'punctuation': [
|
15
|
+
/^=/,
|
16
|
+
{
|
17
|
+
pattern: /^(\s*)["']|["']$/,
|
18
|
+
lookbehind: true
|
19
|
+
}
|
20
|
+
]
|
21
|
+
}
|
22
|
+
},
|
23
|
+
'punctuation': /\]/,
|
24
|
+
'attr-name': /[^\s=\]]+/
|
25
|
+
}
|
26
|
+
}
|
27
|
+
};
|
File without changes
|
@@ -0,0 +1,21 @@
|
|
1
|
+
Prism.languages.bnf = {
|
2
|
+
'string': {
|
3
|
+
pattern: /"[^\r\n"]*"|'[^\r\n']*'/
|
4
|
+
},
|
5
|
+
'definition': {
|
6
|
+
pattern: /<[^<>\r\n\t]+>(?=\s*::=)/,
|
7
|
+
alias: ['rule', 'keyword'],
|
8
|
+
inside: {
|
9
|
+
'punctuation': /^<|>$/
|
10
|
+
}
|
11
|
+
},
|
12
|
+
'rule': {
|
13
|
+
pattern: /<[^<>\r\n\t]+>/,
|
14
|
+
inside: {
|
15
|
+
'punctuation': /^<|>$/
|
16
|
+
}
|
17
|
+
},
|
18
|
+
'operator': /::=|[|()[\]{}*+?]|\.{3}/
|
19
|
+
};
|
20
|
+
|
21
|
+
Prism.languages.rbnf = Prism.languages.bnf;
|
File without changes
|
@@ -0,0 +1,44 @@
|
|
1
|
+
Prism.languages.brightscript = {
|
2
|
+
'comment': /(?:\brem|').*/i,
|
3
|
+
'directive-statement': {
|
4
|
+
pattern: /(^[\t ]*)#(?:const|else(?:[\t ]+if)?|end[\t ]+if|error|if).*/im,
|
5
|
+
lookbehind: true,
|
6
|
+
alias: 'property',
|
7
|
+
inside: {
|
8
|
+
'error-message': {
|
9
|
+
pattern: /(^#error).+/,
|
10
|
+
lookbehind: true
|
11
|
+
},
|
12
|
+
'directive': {
|
13
|
+
pattern: /^#(?:const|else(?:[\t ]+if)?|end[\t ]+if|error|if)/,
|
14
|
+
alias: 'keyword'
|
15
|
+
},
|
16
|
+
'expression': {
|
17
|
+
pattern: /[\s\S]+/,
|
18
|
+
inside: null // see below
|
19
|
+
}
|
20
|
+
}
|
21
|
+
},
|
22
|
+
'property': {
|
23
|
+
pattern: /([\r\n{,][\t ]*)(?:(?!\d)\w+|"(?:[^"\r\n]|"")*"(?!"))(?=[ \t]*:)/,
|
24
|
+
lookbehind: true,
|
25
|
+
greedy: true
|
26
|
+
},
|
27
|
+
'string': {
|
28
|
+
pattern: /"(?:[^"\r\n]|"")*"(?!")/,
|
29
|
+
greedy: true
|
30
|
+
},
|
31
|
+
'class-name': {
|
32
|
+
pattern: /(\bAs[\t ]+)\w+/i,
|
33
|
+
lookbehind: true
|
34
|
+
},
|
35
|
+
'keyword': /\b(?:As|Dim|Each|Else|Elseif|End|Exit|For|Function|Goto|If|In|Print|Return|Step|Stop|Sub|Then|To|While)\b/i,
|
36
|
+
'boolean': /\b(?:true|false)\b/i,
|
37
|
+
'function': /\b(?!\d)\w+(?=[\t ]*\()/i,
|
38
|
+
'number': /(?:\b\d+(?:\.\d+)?(?:[ed][+-]\d+)?|&h[a-f\d]+)\b[%&!#]?/i,
|
39
|
+
'operator': /--|\+\+|>>=?|<<=?|<>|[-+*/\\<>]=?|[:^=?]|\b(?:and|mod|not|or)\b/i,
|
40
|
+
'punctuation': /[.,;()[\]{}]/,
|
41
|
+
'constant': /\b(?:LINE_NUM)\b/i
|
42
|
+
};
|
43
|
+
|
44
|
+
Prism.languages.brightscript['directive-statement'].inside.expression.inside = Prism.languages.brightscript;
|
@@ -0,0 +1,48 @@
|
|
1
|
+
Prism.languages.bro = {
|
2
|
+
|
3
|
+
'comment': {
|
4
|
+
pattern: /(^|[^\\$])#.*/,
|
5
|
+
lookbehind: true,
|
6
|
+
inside: {
|
7
|
+
'italic': /\b(?:TODO|FIXME|XXX)\b/
|
8
|
+
}
|
9
|
+
},
|
10
|
+
|
11
|
+
'string': {
|
12
|
+
pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,
|
13
|
+
greedy: true
|
14
|
+
},
|
15
|
+
|
16
|
+
'boolean': /\b[TF]\b/,
|
17
|
+
|
18
|
+
'function': {
|
19
|
+
pattern: /(?:function|hook|event) \w+(?:::\w+)?/,
|
20
|
+
inside: {
|
21
|
+
keyword: /^(?:function|hook|event)/
|
22
|
+
}
|
23
|
+
},
|
24
|
+
|
25
|
+
'variable': {
|
26
|
+
pattern: /(?:global|local) \w+/i,
|
27
|
+
inside: {
|
28
|
+
keyword: /(?:global|local)/
|
29
|
+
}
|
30
|
+
},
|
31
|
+
|
32
|
+
'builtin': /(?:@(?:load(?:-(?:sigs|plugin))?|unload|prefixes|ifn?def|else|(?:end)?if|DIR|FILENAME))|(?:&?(?:redef|priority|log|optional|default|add_func|delete_func|expire_func|read_expire|write_expire|create_expire|synchronized|persistent|rotate_interval|rotate_size|encrypt|raw_output|mergeable|group|error_handler|type_column))/,
|
33
|
+
|
34
|
+
'constant': {
|
35
|
+
pattern: /const \w+/i,
|
36
|
+
inside: {
|
37
|
+
keyword: /const/
|
38
|
+
}
|
39
|
+
},
|
40
|
+
|
41
|
+
'keyword': /\b(?:break|next|continue|alarm|using|of|add|delete|export|print|return|schedule|when|timeout|addr|any|bool|count|double|enum|file|int|interval|pattern|opaque|port|record|set|string|subnet|table|time|vector|for|if|else|in|module|function)\b/,
|
42
|
+
|
43
|
+
'operator': /--?|\+\+?|!=?=?|<=?|>=?|==?=?|&&|\|\|?|\?|\*|\/|~|\^|%/,
|
44
|
+
|
45
|
+
'number': /\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i,
|
46
|
+
|
47
|
+
'punctuation': /[{}[\];(),.:]/
|
48
|
+
};
|
@@ -0,0 +1,41 @@
|
|
1
|
+
Prism.languages.c = Prism.languages.extend('clike', {
|
2
|
+
'comment': {
|
3
|
+
pattern: /\/\/(?:[^\r\n\\]|\\(?:\r\n?|\n|(?![\r\n])))*|\/\*[\s\S]*?(?:\*\/|$)/,
|
4
|
+
greedy: true
|
5
|
+
},
|
6
|
+
'class-name': {
|
7
|
+
pattern: /(\b(?:enum|struct)\s+(?:__attribute__\s*\(\([\s\S]*?\)\)\s*)?)\w+/,
|
8
|
+
lookbehind: true
|
9
|
+
},
|
10
|
+
'keyword': /\b(?:__attribute__|_Alignas|_Alignof|_Atomic|_Bool|_Complex|_Generic|_Imaginary|_Noreturn|_Static_assert|_Thread_local|asm|typeof|inline|auto|break|case|char|const|continue|default|do|double|else|enum|extern|float|for|goto|if|int|long|register|return|short|signed|sizeof|static|struct|switch|typedef|union|unsigned|void|volatile|while)\b/,
|
11
|
+
'function': /[a-z_]\w*(?=\s*\()/i,
|
12
|
+
'operator': />>=?|<<=?|->|([-+&|:])\1|[?:~]|[-+*/%&|^!=<>]=?/,
|
13
|
+
'number': /(?:\b0x(?:[\da-f]+\.?[\da-f]*|\.[\da-f]+)(?:p[+-]?\d+)?|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?)[ful]*/i
|
14
|
+
});
|
15
|
+
|
16
|
+
Prism.languages.insertBefore('c', 'string', {
|
17
|
+
'macro': {
|
18
|
+
// allow for multiline macro definitions
|
19
|
+
// spaces after the # character compile fine with gcc
|
20
|
+
pattern: /(^\s*)#\s*[a-z]+(?:[^\r\n\\]|\\(?:\r\n|[\s\S]))*/im,
|
21
|
+
lookbehind: true,
|
22
|
+
alias: 'property',
|
23
|
+
inside: {
|
24
|
+
// highlight the path of the include statement as a string
|
25
|
+
'string': {
|
26
|
+
pattern: /(#\s*include\s*)(?:<.+?>|("|')(?:\\?.)+?\2)/,
|
27
|
+
lookbehind: true
|
28
|
+
},
|
29
|
+
// highlight macro directives as keywords
|
30
|
+
'directive': {
|
31
|
+
pattern: /(#\s*)\b(?:define|defined|elif|else|endif|error|ifdef|ifndef|if|import|include|line|pragma|undef|using)\b/,
|
32
|
+
lookbehind: true,
|
33
|
+
alias: 'keyword'
|
34
|
+
}
|
35
|
+
}
|
36
|
+
},
|
37
|
+
// highlight predefined macros as constants
|
38
|
+
'constant': /\b(?:__FILE__|__LINE__|__DATE__|__TIME__|__TIMESTAMP__|__func__|EOF|NULL|SEEK_CUR|SEEK_END|SEEK_SET|stdin|stdout|stderr)\b/
|
39
|
+
});
|
40
|
+
|
41
|
+
delete Prism.languages.c['boolean'];
|
@@ -0,0 +1,27 @@
|
|
1
|
+
Prism.languages.cil = {
|
2
|
+
'comment': /\/\/.*/,
|
3
|
+
|
4
|
+
'string': {
|
5
|
+
pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,
|
6
|
+
greedy: true
|
7
|
+
},
|
8
|
+
|
9
|
+
'directive': {
|
10
|
+
pattern: /(^|\W)\.[a-z]+(?=\s)/,
|
11
|
+
lookbehind: true,
|
12
|
+
alias: 'class-name'
|
13
|
+
},
|
14
|
+
|
15
|
+
// Actually an assembly reference
|
16
|
+
'variable': /\[[\w\.]+\]/,
|
17
|
+
|
18
|
+
|
19
|
+
'keyword': /\b(?:abstract|ansi|assembly|auto|autochar|beforefieldinit|bool|bstr|byvalstr|catch|char|cil|class|currency|date|decimal|default|enum|error|explicit|extends|extern|famandassem|family|famorassem|final(?:ly)?|float32|float64|hidebysig|iant|idispatch|implements|import|initonly|instance|u?int(?:8|16|32|64)?|interface|iunknown|literal|lpstr|lpstruct|lptstr|lpwstr|managed|method|native(?:Type)?|nested|newslot|object(?:ref)?|pinvokeimpl|private|privatescope|public|reqsecobj|rtspecialname|runtime|sealed|sequential|serializable|specialname|static|string|struct|syschar|tbstr|unicode|unmanagedexp|unsigned|value(?:type)?|variant|virtual|void)\b/,
|
20
|
+
|
21
|
+
'function': /\b(?:(?:constrained|unaligned|volatile|readonly|tail|no)\.)?(?:conv\.(?:[iu][1248]?|ovf\.[iu][1248]?(?:\.un)?|r\.un|r4|r8)|ldc\.(?:i4(?:\.[0-9]+|\.[mM]1|\.s)?|i8|r4|r8)|ldelem(?:\.[iu][1248]?|\.r[48]|\.ref|a)?|ldind\.(?:[iu][1248]?|r[48]|ref)|stelem\.?(?:i[1248]?|r[48]|ref)?|stind\.(?:i[1248]?|r[48]|ref)?|end(?:fault|filter|finally)|ldarg(?:\.[0-3s]|a(?:\.s)?)?|ldloc(?:\.[0-9]+|\.s)?|sub(?:\.ovf(?:\.un)?)?|mul(?:\.ovf(?:\.un)?)?|add(?:\.ovf(?:\.un)?)?|stloc(?:\.[0-3s])?|refany(?:type|val)|blt(?:\.un)?(?:\.s)?|ble(?:\.un)?(?:\.s)?|bgt(?:\.un)?(?:\.s)?|bge(?:\.un)?(?:\.s)?|unbox(?:\.any)?|init(?:blk|obj)|call(?:i|virt)?|brfalse(?:\.s)?|bne\.un(?:\.s)?|ldloca(?:\.s)?|brzero(?:\.s)?|brtrue(?:\.s)?|brnull(?:\.s)?|brinst(?:\.s)?|starg(?:\.s)?|leave(?:\.s)?|shr(?:\.un)?|rem(?:\.un)?|div(?:\.un)?|clt(?:\.un)?|alignment|ldvirtftn|castclass|beq(?:\.s)?|mkrefany|localloc|ckfinite|rethrow|ldtoken|ldsflda|cgt\.un|arglist|switch|stsfld|sizeof|newobj|newarr|ldsfld|ldnull|ldflda|isinst|throw|stobj|stloc|stfld|ldstr|ldobj|ldlen|ldftn|ldfld|cpobj|cpblk|break|br\.s|xor|shl|ret|pop|not|nop|neg|jmp|dup|clt|cgt|ceq|box|and|or|br)\b/,
|
22
|
+
|
23
|
+
'boolean': /\b(?:true|false)\b/,
|
24
|
+
'number': /\b-?(?:0x[0-9a-fA-F]+|[0-9]+)(?:\.[0-9a-fA-F]+)?\b/i,
|
25
|
+
|
26
|
+
'punctuation': /[{}[\];(),:=]|IL_[0-9A-Za-z]+/
|
27
|
+
}
|
@@ -0,0 +1,30 @@
|
|
1
|
+
Prism.languages.clike = {
|
2
|
+
'comment': [
|
3
|
+
{
|
4
|
+
pattern: /(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,
|
5
|
+
lookbehind: true
|
6
|
+
},
|
7
|
+
{
|
8
|
+
pattern: /(^|[^\\:])\/\/.*/,
|
9
|
+
lookbehind: true,
|
10
|
+
greedy: true
|
11
|
+
}
|
12
|
+
],
|
13
|
+
'string': {
|
14
|
+
pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,
|
15
|
+
greedy: true
|
16
|
+
},
|
17
|
+
'class-name': {
|
18
|
+
pattern: /(\b(?:class|interface|extends|implements|trait|instanceof|new)\s+|\bcatch\s+\()[\w.\\]+/i,
|
19
|
+
lookbehind: true,
|
20
|
+
inside: {
|
21
|
+
'punctuation': /[.\\]/
|
22
|
+
}
|
23
|
+
},
|
24
|
+
'keyword': /\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,
|
25
|
+
'boolean': /\b(?:true|false)\b/,
|
26
|
+
'function': /\w+(?=\()/,
|
27
|
+
'number': /\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i,
|
28
|
+
'operator': /[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,
|
29
|
+
'punctuation': /[{}[\];(),.:]/
|
30
|
+
};
|
@@ -0,0 +1,16 @@
|
|
1
|
+
// Copied from https://github.com/jeluard/prism-clojure
|
2
|
+
Prism.languages.clojure = {
|
3
|
+
'comment': /;.*/,
|
4
|
+
'string': {
|
5
|
+
pattern: /"(?:[^"\\]|\\.)*"/,
|
6
|
+
greedy: true
|
7
|
+
},
|
8
|
+
'operator': /(?:::|[:|'])\b[a-z][\w*+!?-]*\b/i, //used for symbols and keywords
|
9
|
+
'keyword': {
|
10
|
+
pattern: /([^\w+*'?-])(?:def|if|do|let|\.\.|quote|var|->>|->|fn|loop|recur|throw|try|monitor-enter|\.|new|set!|def\-|defn|defn\-|defmacro|defmulti|defmethod|defstruct|defonce|declare|definline|definterface|defprotocol|==|defrecord|>=|deftype|<=|defproject|ns|\*|\+|\-|\/|<|=|>|accessor|agent|agent-errors|aget|alength|all-ns|alter|and|append-child|apply|array-map|aset|aset-boolean|aset-byte|aset-char|aset-double|aset-float|aset-int|aset-long|aset-short|assert|assoc|await|await-for|bean|binding|bit-and|bit-not|bit-or|bit-shift-left|bit-shift-right|bit-xor|boolean|branch\?|butlast|byte|cast|char|children|class|clear-agent-errors|comment|commute|comp|comparator|complement|concat|conj|cons|constantly|cond|if-not|construct-proxy|contains\?|count|create-ns|create-struct|cycle|dec|deref|difference|disj|dissoc|distinct|doall|doc|dorun|doseq|dosync|dotimes|doto|double|down|drop|drop-while|edit|end\?|ensure|eval|every\?|false\?|ffirst|file-seq|filter|find|find-doc|find-ns|find-var|first|float|flush|for|fnseq|frest|gensym|get-proxy-class|get|hash-map|hash-set|identical\?|identity|if-let|import|in-ns|inc|index|insert-child|insert-left|insert-right|inspect-table|inspect-tree|instance\?|int|interleave|intersection|into|into-array|iterate|join|key|keys|keyword|keyword\?|last|lazy-cat|lazy-cons|left|lefts|line-seq|list\*|list|load|load-file|locking|long|loop|macroexpand|macroexpand-1|make-array|make-node|map|map-invert|map\?|mapcat|max|max-key|memfn|merge|merge-with|meta|min|min-key|name|namespace|neg\?|new|newline|next|nil\?|node|not|not-any\?|not-every\?|not=|ns-imports|ns-interns|ns-map|ns-name|ns-publics|ns-refers|ns-resolve|ns-unmap|nth|nthrest|or|parse|partial|path|peek|pop|pos\?|pr|pr-str|print|print-str|println|println-str|prn|prn-str|project|proxy|proxy-mappings|quot|rand|rand-int|range|re-find|re-groups|re-matcher|re-matches|re-pattern|re-seq|read|read-line|reduce|ref|ref-set|refer|rem|remove|remove-method|remove-ns|rename|rename-keys|repeat|replace|replicate|resolve|rest|resultset-seq|reverse|rfirst|right|rights|root|rrest|rseq|second|select|select-keys|send|send-off|seq|seq-zip|seq\?|set|short|slurp|some|sort|sort-by|sorted-map|sorted-map-by|sorted-set|special-symbol\?|split-at|split-with|str|string\?|struct|struct-map|subs|subvec|symbol|symbol\?|sync|take|take-nth|take-while|test|time|to-array|to-array-2d|tree-seq|true\?|union|up|update-proxy|val|vals|var-get|var-set|var\?|vector|vector-zip|vector\?|when|when-first|when-let|when-not|with-local-vars|with-meta|with-open|with-out-str|xml-seq|xml-zip|zero\?|zipmap|zipper)(?=[^\w+*'?-])/,
|
11
|
+
lookbehind: true
|
12
|
+
},
|
13
|
+
'boolean': /\b(?:true|false|nil)\b/,
|
14
|
+
'number': /\b[\da-f]+\b/i,
|
15
|
+
'punctuation': /[{}\[\](),]/
|
16
|
+
};
|
@@ -0,0 +1,29 @@
|
|
1
|
+
Prism.languages.cmake = {
|
2
|
+
'comment': /#.*/,
|
3
|
+
'string': {
|
4
|
+
pattern: /"(?:[^\\"]|\\.)*"/,
|
5
|
+
greedy: true,
|
6
|
+
inside: {
|
7
|
+
'interpolation': {
|
8
|
+
pattern: /\${(?:[^{}$]|\${[^{}$]*})*}/,
|
9
|
+
inside: {
|
10
|
+
'punctuation': /\${|}/,
|
11
|
+
'variable': /\w+/
|
12
|
+
}
|
13
|
+
}
|
14
|
+
}
|
15
|
+
},
|
16
|
+
'variable': /\b(?:CMAKE_\w+|\w+_(?:VERSION(?:_MAJOR|_MINOR|_PATCH|_TWEAK)?|(?:BINARY|SOURCE)_DIR|DESCRIPTION|HOMEPAGE_URL|ROOT)|(?:CTEST_CUSTOM_(?:MAXIMUM_(?:(?:FAIL|PASS)ED_TEST_OUTPUT_SIZE|NUMBER_OF_(?:ERROR|WARNING)S)|ERROR_(?:P(?:OST|RE)_CONTEXT|EXCEPTION|MATCH)|P(?:OST|RE)_MEMCHECK|WARNING_(?:EXCEPTION|MATCH)|(?:MEMCHECK|TESTS)_IGNORE|P(?:OST|RE)_TEST|COVERAGE_EXCLUDE)|ANDROID|APPLE|BORLAND|BUILD_SHARED_LIBS|CACHE|CPACK_(?:ABSOLUTE_DESTINATION_FILES|COMPONENT_INCLUDE_TOPLEVEL_DIRECTORY|ERROR_ON_ABSOLUTE_INSTALL_DESTINATION|INCLUDE_TOPLEVEL_DIRECTORY|INSTALL_DEFAULT_DIRECTORY_PERMISSIONS|INSTALL_SCRIPT|PACKAGING_INSTALL_PREFIX|SET_DESTDIR|WARN_ON_ABSOLUTE_INSTALL_DESTINATION)|CTEST_(?:BINARY_DIRECTORY|BUILD_COMMAND|BUILD_NAME|BZR_COMMAND|BZR_UPDATE_OPTIONS|CHANGE_ID|CHECKOUT_COMMAND|CONFIGURATION_TYPE|CONFIGURE_COMMAND|COVERAGE_COMMAND|COVERAGE_EXTRA_FLAGS|CURL_OPTIONS|CUSTOM_(?:COVERAGE_EXCLUDE|ERROR_EXCEPTION|ERROR_MATCH|ERROR_POST_CONTEXT|ERROR_PRE_CONTEXT|MAXIMUM_FAILED_TEST_OUTPUT_SIZE|MAXIMUM_NUMBER_OF_(?:ERRORS|WARNINGS)|MAXIMUM_PASSED_TEST_OUTPUT_SIZE|MEMCHECK_IGNORE|POST_MEMCHECK|POST_TEST|PRE_MEMCHECK|PRE_TEST|TESTS_IGNORE|WARNING_EXCEPTION|WARNING_MATCH)|CVS_CHECKOUT|CVS_COMMAND|CVS_UPDATE_OPTIONS|DROP_LOCATION|DROP_METHOD|DROP_SITE|DROP_SITE_CDASH|DROP_SITE_PASSWORD|DROP_SITE_USER|EXTRA_COVERAGE_GLOB|GIT_COMMAND|GIT_INIT_SUBMODULES|GIT_UPDATE_CUSTOM|GIT_UPDATE_OPTIONS|HG_COMMAND|HG_UPDATE_OPTIONS|LABELS_FOR_SUBPROJECTS|MEMORYCHECK_(?:COMMAND|COMMAND_OPTIONS|SANITIZER_OPTIONS|SUPPRESSIONS_FILE|TYPE)|NIGHTLY_START_TIME|P4_CLIENT|P4_COMMAND|P4_OPTIONS|P4_UPDATE_OPTIONS|RUN_CURRENT_SCRIPT|SCP_COMMAND|SITE|SOURCE_DIRECTORY|SUBMIT_URL|SVN_COMMAND|SVN_OPTIONS|SVN_UPDATE_OPTIONS|TEST_LOAD|TEST_TIMEOUT|TRIGGER_SITE|UPDATE_COMMAND|UPDATE_OPTIONS|UPDATE_VERSION_ONLY|USE_LAUNCHERS)|CYGWIN|ENV|EXECUTABLE_OUTPUT_PATH|GHS-MULTI|IOS|LIBRARY_OUTPUT_PATH|MINGW|MSVC(?:10|11|12|14|60|70|71|80|90|_IDE|_TOOLSET_VERSION|_VERSION)?|MSYS|PROJECT_(?:BINARY_DIR|DESCRIPTION|HOMEPAGE_URL|NAME|SOURCE_DIR|VERSION|VERSION_(?:MAJOR|MINOR|PATCH|TWEAK))|UNIX|WIN32|WINCE|WINDOWS_PHONE|WINDOWS_STORE|XCODE|XCODE_VERSION))\b/,
|
17
|
+
'property': /\b(?:cxx_\w+|(?:ARCHIVE_OUTPUT_(?:DIRECTORY|NAME)|COMPILE_DEFINITIONS|COMPILE_PDB_NAME|COMPILE_PDB_OUTPUT_DIRECTORY|EXCLUDE_FROM_DEFAULT_BUILD|IMPORTED_(?:IMPLIB|LIBNAME|LINK_DEPENDENT_LIBRARIES|LINK_INTERFACE_LANGUAGES|LINK_INTERFACE_LIBRARIES|LINK_INTERFACE_MULTIPLICITY|LOCATION|NO_SONAME|OBJECTS|SONAME)|INTERPROCEDURAL_OPTIMIZATION|LIBRARY_OUTPUT_DIRECTORY|LIBRARY_OUTPUT_NAME|LINK_FLAGS|LINK_INTERFACE_LIBRARIES|LINK_INTERFACE_MULTIPLICITY|LOCATION|MAP_IMPORTED_CONFIG|OSX_ARCHITECTURES|OUTPUT_NAME|PDB_NAME|PDB_OUTPUT_DIRECTORY|RUNTIME_OUTPUT_DIRECTORY|RUNTIME_OUTPUT_NAME|STATIC_LIBRARY_FLAGS|VS_CSHARP|VS_DOTNET_REFERENCEPROP|VS_DOTNET_REFERENCE|VS_GLOBAL_SECTION_POST|VS_GLOBAL_SECTION_PRE|VS_GLOBAL|XCODE_ATTRIBUTE)_\w+|\w+_(?:CLANG_TIDY|COMPILER_LAUNCHER|CPPCHECK|CPPLINT|INCLUDE_WHAT_YOU_USE|OUTPUT_NAME|POSTFIX|VISIBILITY_PRESET)|ABSTRACT|ADDITIONAL_MAKE_CLEAN_FILES|ADVANCED|ALIASED_TARGET|ALLOW_DUPLICATE_CUSTOM_TARGETS|ANDROID_(?:ANT_ADDITIONAL_OPTIONS|API|API_MIN|ARCH|ASSETS_DIRECTORIES|GUI|JAR_DEPENDENCIES|NATIVE_LIB_DEPENDENCIES|NATIVE_LIB_DIRECTORIES|PROCESS_MAX|PROGUARD|PROGUARD_CONFIG_PATH|SECURE_PROPS_PATH|SKIP_ANT_STEP|STL_TYPE)|ARCHIVE_OUTPUT_DIRECTORY|ARCHIVE_OUTPUT_NAME|ATTACHED_FILES|ATTACHED_FILES_ON_FAIL|AUTOGEN_(?:BUILD_DIR|ORIGIN_DEPENDS|PARALLEL|SOURCE_GROUP|TARGETS_FOLDER|TARGET_DEPENDS)|AUTOMOC|AUTOMOC_(?:COMPILER_PREDEFINES|DEPEND_FILTERS|EXECUTABLE|MACRO_NAMES|MOC_OPTIONS|SOURCE_GROUP|TARGETS_FOLDER)|AUTORCC|AUTORCC_EXECUTABLE|AUTORCC_OPTIONS|AUTORCC_SOURCE_GROUP|AUTOUIC|AUTOUIC_EXECUTABLE|AUTOUIC_OPTIONS|AUTOUIC_SEARCH_PATHS|BINARY_DIR|BUILDSYSTEM_TARGETS|BUILD_RPATH|BUILD_RPATH_USE_ORIGIN|BUILD_WITH_INSTALL_NAME_DIR|BUILD_WITH_INSTALL_RPATH|BUNDLE|BUNDLE_EXTENSION|CACHE_VARIABLES|CLEAN_NO_CUSTOM|COMMON_LANGUAGE_RUNTIME|COMPATIBLE_INTERFACE_(?:BOOL|NUMBER_MAX|NUMBER_MIN|STRING)|COMPILE_(?:DEFINITIONS|FEATURES|FLAGS|OPTIONS|PDB_NAME|PDB_OUTPUT_DIRECTORY)|COST|CPACK_DESKTOP_SHORTCUTS|CPACK_NEVER_OVERWRITE|CPACK_PERMANENT|CPACK_STARTUP_SHORTCUTS|CPACK_START_MENU_SHORTCUTS|CPACK_WIX_ACL|CROSSCOMPILING_EMULATOR|CUDA_EXTENSIONS|CUDA_PTX_COMPILATION|CUDA_RESOLVE_DEVICE_SYMBOLS|CUDA_SEPARABLE_COMPILATION|CUDA_STANDARD|CUDA_STANDARD_REQUIRED|CXX_EXTENSIONS|CXX_STANDARD|CXX_STANDARD_REQUIRED|C_EXTENSIONS|C_STANDARD|C_STANDARD_REQUIRED|DEBUG_CONFIGURATIONS|DEBUG_POSTFIX|DEFINE_SYMBOL|DEFINITIONS|DEPENDS|DEPLOYMENT_ADDITIONAL_FILES|DEPLOYMENT_REMOTE_DIRECTORY|DISABLED|DISABLED_FEATURES|ECLIPSE_EXTRA_CPROJECT_CONTENTS|ECLIPSE_EXTRA_NATURES|ENABLED_FEATURES|ENABLED_LANGUAGES|ENABLE_EXPORTS|ENVIRONMENT|EXCLUDE_FROM_ALL|EXCLUDE_FROM_DEFAULT_BUILD|EXPORT_NAME|EXPORT_PROPERTIES|EXTERNAL_OBJECT|EchoString|FAIL_REGULAR_EXPRESSION|FIND_LIBRARY_USE_LIB32_PATHS|FIND_LIBRARY_USE_LIB64_PATHS|FIND_LIBRARY_USE_LIBX32_PATHS|FIND_LIBRARY_USE_OPENBSD_VERSIONING|FIXTURES_CLEANUP|FIXTURES_REQUIRED|FIXTURES_SETUP|FOLDER|FRAMEWORK|Fortran_FORMAT|Fortran_MODULE_DIRECTORY|GENERATED|GENERATOR_FILE_NAME|GENERATOR_IS_MULTI_CONFIG|GHS_INTEGRITY_APP|GHS_NO_SOURCE_GROUP_FILE|GLOBAL_DEPENDS_DEBUG_MODE|GLOBAL_DEPENDS_NO_CYCLES|GNUtoMS|HAS_CXX|HEADER_FILE_ONLY|HELPSTRING|IMPLICIT_DEPENDS_INCLUDE_TRANSFORM|IMPORTED|IMPORTED_(?:COMMON_LANGUAGE_RUNTIME|CONFIGURATIONS|GLOBAL|IMPLIB|LIBNAME|LINK_DEPENDENT_LIBRARIES|LINK_INTERFACE_(?:LANGUAGES|LIBRARIES|MULTIPLICITY)|LOCATION|NO_SONAME|OBJECTS|SONAME)|IMPORT_PREFIX|IMPORT_SUFFIX|INCLUDE_DIRECTORIES|INCLUDE_REGULAR_EXPRESSION|INSTALL_NAME_DIR|INSTALL_RPATH|INSTALL_RPATH_USE_LINK_PATH|INTERFACE_(?:AUTOUIC_OPTIONS|COMPILE_DEFINITIONS|COMPILE_FEATURES|COMPILE_OPTIONS|INCLUDE_DIRECTORIES|LINK_DEPENDS|LINK_DIRECTORIES|LINK_LIBRARIES|LINK_OPTIONS|POSITION_INDEPENDENT_CODE|SOURCES|SYSTEM_INCLUDE_DIRECTORIES)|INTERPROCEDURAL_OPTIMIZATION|IN_TRY_COMPILE|IOS_INSTALL_COMBINED|JOB_POOLS|JOB_POOL_COMPILE|JOB_POOL_LINK|KEEP_EXTENSION|LABELS|LANGUAGE|LIBRARY_OUTPUT_DIRECTORY|LIBRARY_OUTPUT_NAME|LINKER_LANGUAGE|LINK_(?:DEPENDS|DEPENDS_NO_SHARED|DIRECTORIES|FLAGS|INTERFACE_LIBRARIES|INTERFACE_MULTIPLICITY|LIBRARIES|OPTIONS|SEARCH_END_STATIC|SEARCH_START_STATIC|WHAT_YOU_USE)|LISTFILE_STACK|LOCATION|MACOSX_BUNDLE|MACOSX_BUNDLE_INFO_PLIST|MACOSX_FRAMEWORK_INFO_PLIST|MACOSX_PACKAGE_LOCATION|MACOSX_RPATH|MACROS|MANUALLY_ADDED_DEPENDENCIES|MEASUREMENT|MODIFIED|NAME|NO_SONAME|NO_SYSTEM_FROM_IMPORTED|OBJECT_DEPENDS|OBJECT_OUTPUTS|OSX_ARCHITECTURES|OUTPUT_NAME|PACKAGES_FOUND|PACKAGES_NOT_FOUND|PARENT_DIRECTORY|PASS_REGULAR_EXPRESSION|PDB_NAME|PDB_OUTPUT_DIRECTORY|POSITION_INDEPENDENT_CODE|POST_INSTALL_SCRIPT|PREDEFINED_TARGETS_FOLDER|PREFIX|PRE_INSTALL_SCRIPT|PRIVATE_HEADER|PROCESSORS|PROCESSOR_AFFINITY|PROJECT_LABEL|PUBLIC_HEADER|REPORT_UNDEFINED_PROPERTIES|REQUIRED_FILES|RESOURCE|RESOURCE_LOCK|RULE_LAUNCH_COMPILE|RULE_LAUNCH_CUSTOM|RULE_LAUNCH_LINK|RULE_MESSAGES|RUNTIME_OUTPUT_DIRECTORY|RUNTIME_OUTPUT_NAME|RUN_SERIAL|SKIP_AUTOGEN|SKIP_AUTOMOC|SKIP_AUTORCC|SKIP_AUTOUIC|SKIP_BUILD_RPATH|SKIP_RETURN_CODE|SOURCES|SOURCE_DIR|SOVERSION|STATIC_LIBRARY_FLAGS|STATIC_LIBRARY_OPTIONS|STRINGS|SUBDIRECTORIES|SUFFIX|SYMBOLIC|TARGET_ARCHIVES_MAY_BE_SHARED_LIBS|TARGET_MESSAGES|TARGET_SUPPORTS_SHARED_LIBS|TESTS|TEST_INCLUDE_FILE|TEST_INCLUDE_FILES|TIMEOUT|TIMEOUT_AFTER_MATCH|TYPE|USE_FOLDERS|VALUE|VARIABLES|VERSION|VISIBILITY_INLINES_HIDDEN|VS_(?:CONFIGURATION_TYPE|COPY_TO_OUT_DIR|DEBUGGER_(?:COMMAND|COMMAND_ARGUMENTS|ENVIRONMENT|WORKING_DIRECTORY)|DEPLOYMENT_CONTENT|DEPLOYMENT_LOCATION|DOTNET_REFERENCES|DOTNET_REFERENCES_COPY_LOCAL|GLOBAL_KEYWORD|GLOBAL_PROJECT_TYPES|GLOBAL_ROOTNAMESPACE|INCLUDE_IN_VSIX|IOT_STARTUP_TASK|KEYWORD|RESOURCE_GENERATOR|SCC_AUXPATH|SCC_LOCALPATH|SCC_PROJECTNAME|SCC_PROVIDER|SDK_REFERENCES|SHADER_(?:DISABLE_OPTIMIZATIONS|ENABLE_DEBUG|ENTRYPOINT|FLAGS|MODEL|OBJECT_FILE_NAME|OUTPUT_HEADER_FILE|TYPE|VARIABLE_NAME)|STARTUP_PROJECT|TOOL_OVERRIDE|USER_PROPS|WINRT_COMPONENT|WINRT_EXTENSIONS|WINRT_REFERENCES|XAML_TYPE)|WILL_FAIL|WIN32_EXECUTABLE|WINDOWS_EXPORT_ALL_SYMBOLS|WORKING_DIRECTORY|WRAP_EXCLUDE|XCODE_(?:EMIT_EFFECTIVE_PLATFORM_NAME|EXPLICIT_FILE_TYPE|FILE_ATTRIBUTES|LAST_KNOWN_FILE_TYPE|PRODUCT_TYPE|SCHEME_(?:ADDRESS_SANITIZER|ADDRESS_SANITIZER_USE_AFTER_RETURN|ARGUMENTS|DISABLE_MAIN_THREAD_CHECKER|DYNAMIC_LIBRARY_LOADS|DYNAMIC_LINKER_API_USAGE|ENVIRONMENT|EXECUTABLE|GUARD_MALLOC|MAIN_THREAD_CHECKER_STOP|MALLOC_GUARD_EDGES|MALLOC_SCRIBBLE|MALLOC_STACK|THREAD_SANITIZER(?:_STOP)?|UNDEFINED_BEHAVIOUR_SANITIZER(?:_STOP)?|ZOMBIE_OBJECTS))|XCTEST)\b/,
|
18
|
+
'keyword': /\b(?:add_compile_definitions|add_compile_options|add_custom_command|add_custom_target|add_definitions|add_dependencies|add_executable|add_library|add_link_options|add_subdirectory|add_test|aux_source_directory|break|build_command|build_name|cmake_host_system_information|cmake_minimum_required|cmake_parse_arguments|cmake_policy|configure_file|continue|create_test_sourcelist|ctest_build|ctest_configure|ctest_coverage|ctest_empty_binary_directory|ctest_memcheck|ctest_read_custom_files|ctest_run_script|ctest_sleep|ctest_start|ctest_submit|ctest_test|ctest_update|ctest_upload|define_property|else|elseif|enable_language|enable_testing|endforeach|endfunction|endif|endmacro|endwhile|exec_program|execute_process|export|export_library_dependencies|file|find_file|find_library|find_package|find_path|find_program|fltk_wrap_ui|foreach|function|get_cmake_property|get_directory_property|get_filename_component|get_property|get_source_file_property|get_target_property|get_test_property|if|include|include_directories|include_external_msproject|include_guard|include_regular_expression|install|install_files|install_programs|install_targets|link_directories|link_libraries|list|load_cache|load_command|macro|make_directory|mark_as_advanced|math|message|option|output_required_files|project|qt_wrap_cpp|qt_wrap_ui|remove|remove_definitions|return|separate_arguments|set|set_directory_properties|set_property|set_source_files_properties|set_target_properties|set_tests_properties|site_name|source_group|string|subdir_depends|subdirs|target_compile_definitions|target_compile_features|target_compile_options|target_include_directories|target_link_directories|target_link_libraries|target_link_options|target_sources|try_compile|try_run|unset|use_mangled_mesa|utility_source|variable_requires|variable_watch|while|write_file)(?=\s*\()\b/,
|
19
|
+
'boolean': /\b(?:ON|OFF|TRUE|FALSE)\b/,
|
20
|
+
'namespace': /\b(?:PROPERTIES|SHARED|PRIVATE|STATIC|PUBLIC|INTERFACE|TARGET_OBJECTS)\b/,
|
21
|
+
'operator': /\b(?:NOT|AND|OR|MATCHES|LESS|GREATER|EQUAL|STRLESS|STRGREATER|STREQUAL|VERSION_LESS|VERSION_EQUAL|VERSION_GREATER|DEFINED)\b/,
|
22
|
+
'inserted': {
|
23
|
+
pattern: /\b\w+::\w+\b/,
|
24
|
+
alias: 'class-name'
|
25
|
+
},
|
26
|
+
'number': /\b\d+(?:\.\d+)*\b/,
|
27
|
+
'function': /\b[a-z_]\w*(?=\s*\()\b/i,
|
28
|
+
'punctuation': /[()>}]|\$[<{]/
|
29
|
+
};
|
@@ -13,20 +13,20 @@ Prism.languages.coffeescript = Prism.languages.extend('javascript', {
|
|
13
13
|
|
14
14
|
// Strings are multiline
|
15
15
|
{
|
16
|
-
pattern: /'(
|
17
|
-
greedy: true
|
16
|
+
pattern: /'(?:\\[\s\S]|[^\\'])*'/,
|
17
|
+
greedy: true
|
18
18
|
},
|
19
19
|
|
20
20
|
{
|
21
21
|
// Strings are multiline
|
22
|
-
pattern: /"(
|
22
|
+
pattern: /"(?:\\[\s\S]|[^\\"])*"/,
|
23
23
|
greedy: true,
|
24
24
|
inside: {
|
25
25
|
'interpolation': interpolation
|
26
26
|
}
|
27
27
|
}
|
28
28
|
],
|
29
|
-
'keyword': /\b(and|break|by|catch|class|continue|debugger|delete|do|each|else|extend|extends|false|finally|for|if|in|instanceof|is|isnt|let|loop|namespace|new|no|not|null|of|off|on|or|own|return|super|switch|then|this|throw|true|try|typeof|undefined|unless|until|when|while|window|with|yes|yield)\b/,
|
29
|
+
'keyword': /\b(?:and|break|by|catch|class|continue|debugger|delete|do|each|else|extend|extends|false|finally|for|if|in|instanceof|is|isnt|let|loop|namespace|new|no|not|null|of|off|on|or|own|return|super|switch|then|this|throw|true|try|typeof|undefined|unless|until|when|while|window|with|yes|yield)\b/,
|
30
30
|
'class-member': {
|
31
31
|
pattern: /@(?!\d)\w+/,
|
32
32
|
alias: 'variable'
|
@@ -52,7 +52,7 @@ Prism.languages.insertBefore('coffeescript', 'comment', {
|
|
52
52
|
|
53
53
|
Prism.languages.insertBefore('coffeescript', 'string', {
|
54
54
|
'inline-javascript': {
|
55
|
-
pattern: /`(
|
55
|
+
pattern: /`(?:\\[\s\S]|[^\\`])*`/,
|
56
56
|
inside: {
|
57
57
|
'delimiter': {
|
58
58
|
pattern: /^`|`$/,
|
@@ -88,4 +88,5 @@ Prism.languages.insertBefore('coffeescript', 'keyword', {
|
|
88
88
|
|
89
89
|
delete Prism.languages.coffeescript['template-string'];
|
90
90
|
|
91
|
+
Prism.languages.coffee = Prism.languages.coffeescript;
|
91
92
|
}(Prism));
|
@@ -0,0 +1,48 @@
|
|
1
|
+
Prism.languages.concurnas = {
|
2
|
+
'comment': [
|
3
|
+
{
|
4
|
+
pattern: /(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,
|
5
|
+
lookbehind: true
|
6
|
+
},
|
7
|
+
{
|
8
|
+
pattern: /(^|[^\\:])\/\/.*/,
|
9
|
+
lookbehind: true,
|
10
|
+
greedy: true
|
11
|
+
}
|
12
|
+
],
|
13
|
+
'langext': {
|
14
|
+
pattern: /\w+\s*\|\|[\s\S]+?\|\|/,
|
15
|
+
greedy: true,
|
16
|
+
alias: 'string'
|
17
|
+
},
|
18
|
+
'function': {
|
19
|
+
pattern: /((?:^|\s)def[ \t]+)[a-zA-Z_]\w*(?=\s*\()/,
|
20
|
+
lookbehind: true
|
21
|
+
},
|
22
|
+
'keyword': /\b(?:abstract|actor|also|annotation|assert|async|await|bool|boolean|break|byte|case|catch|changed|char|class|closed|constant|continue|def|default|del|double|elif|else|enum|every|extends|false|finally|float|for|from|global|gpudef|gpukernel|if|import|in|init|inject|int|lambda|local|long|loop|match|new|nodefault|null|of|onchange|open|out|override|package|parfor|parforsync|post|pre|private|protected|provide|provider|public|return|shared|short|single|size_t|sizeof|super|sync|this|throw|trait|trans|transient|true|try|typedef|unchecked|using|val|var|void|while|with)\b/,
|
23
|
+
'boolean': /\b(?:false|true)\b/,
|
24
|
+
'number': /\b0b[01][01_]*L?\b|\b0x[\da-f_]*\.?[\da-f_p+-]+\b|(?:\b\d[\d_]*\.?[\d_]*|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfls]?/i,
|
25
|
+
'punctuation': /[{}[\];(),.:]/,
|
26
|
+
'operator': /<==|>==|=>|->|<-|<>|\^|&==|&<>|!|\?|\?:|\.\?|\+\+|--|[-+*/=<>]=?|\b(?:and|as|band|bor|bxor|comp|is|isnot|mod|or)\b=?/,
|
27
|
+
'annotation': {
|
28
|
+
pattern: /@(?:\w+:)?(?:\w*|\[[^\]]+\])/,
|
29
|
+
alias: 'builtin'
|
30
|
+
}
|
31
|
+
};
|
32
|
+
|
33
|
+
Prism.languages.insertBefore('concurnas', 'langext', {
|
34
|
+
'string': {
|
35
|
+
pattern: /[rs]?("|')(?:\\.|(?!\1)[^\\\r\n])*\1/,
|
36
|
+
greedy: true,
|
37
|
+
inside: {
|
38
|
+
'interpolation': {
|
39
|
+
pattern: /((?:^|[^\\])(?:\\{2})*){(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}/,
|
40
|
+
lookbehind: true,
|
41
|
+
inside: Prism.languages.concurnas
|
42
|
+
},
|
43
|
+
'string': /[\s\S]+/
|
44
|
+
}
|
45
|
+
}
|
46
|
+
});
|
47
|
+
|
48
|
+
Prism.languages.conc = Prism.languages.concurnas;
|
@@ -0,0 +1,627 @@
|
|
1
|
+
var _self = (typeof window !== 'undefined')
|
2
|
+
? window // if in browser
|
3
|
+
: (
|
4
|
+
(typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope)
|
5
|
+
? self // if in worker
|
6
|
+
: {} // if in node js
|
7
|
+
);
|
8
|
+
|
9
|
+
/**
|
10
|
+
* Prism: Lightweight, robust, elegant syntax highlighting
|
11
|
+
* MIT license http://www.opensource.org/licenses/mit-license.php/
|
12
|
+
* @author Lea Verou http://lea.verou.me
|
13
|
+
*/
|
14
|
+
|
15
|
+
var Prism = (function (_self){
|
16
|
+
|
17
|
+
// Private helper vars
|
18
|
+
var lang = /\blang(?:uage)?-([\w-]+)\b/i;
|
19
|
+
var uniqueId = 0;
|
20
|
+
|
21
|
+
|
22
|
+
var _ = {
|
23
|
+
manual: _self.Prism && _self.Prism.manual,
|
24
|
+
disableWorkerMessageHandler: _self.Prism && _self.Prism.disableWorkerMessageHandler,
|
25
|
+
util: {
|
26
|
+
encode: function encode(tokens) {
|
27
|
+
if (tokens instanceof Token) {
|
28
|
+
return new Token(tokens.type, encode(tokens.content), tokens.alias);
|
29
|
+
} else if (Array.isArray(tokens)) {
|
30
|
+
return tokens.map(encode);
|
31
|
+
} else {
|
32
|
+
return tokens.replace(/&/g, '&').replace(/</g, '<').replace(/\u00a0/g, ' ');
|
33
|
+
}
|
34
|
+
},
|
35
|
+
|
36
|
+
type: function (o) {
|
37
|
+
return Object.prototype.toString.call(o).slice(8, -1);
|
38
|
+
},
|
39
|
+
|
40
|
+
objId: function (obj) {
|
41
|
+
if (!obj['__id']) {
|
42
|
+
Object.defineProperty(obj, '__id', { value: ++uniqueId });
|
43
|
+
}
|
44
|
+
return obj['__id'];
|
45
|
+
},
|
46
|
+
|
47
|
+
// Deep clone a language definition (e.g. to extend it)
|
48
|
+
clone: function deepClone(o, visited) {
|
49
|
+
var clone, id, type = _.util.type(o);
|
50
|
+
visited = visited || {};
|
51
|
+
|
52
|
+
switch (type) {
|
53
|
+
case 'Object':
|
54
|
+
id = _.util.objId(o);
|
55
|
+
if (visited[id]) {
|
56
|
+
return visited[id];
|
57
|
+
}
|
58
|
+
clone = {};
|
59
|
+
visited[id] = clone;
|
60
|
+
|
61
|
+
for (var key in o) {
|
62
|
+
if (o.hasOwnProperty(key)) {
|
63
|
+
clone[key] = deepClone(o[key], visited);
|
64
|
+
}
|
65
|
+
}
|
66
|
+
|
67
|
+
return clone;
|
68
|
+
|
69
|
+
case 'Array':
|
70
|
+
id = _.util.objId(o);
|
71
|
+
if (visited[id]) {
|
72
|
+
return visited[id];
|
73
|
+
}
|
74
|
+
clone = [];
|
75
|
+
visited[id] = clone;
|
76
|
+
|
77
|
+
o.forEach(function (v, i) {
|
78
|
+
clone[i] = deepClone(v, visited);
|
79
|
+
});
|
80
|
+
|
81
|
+
return clone;
|
82
|
+
|
83
|
+
default:
|
84
|
+
return o;
|
85
|
+
}
|
86
|
+
},
|
87
|
+
|
88
|
+
/**
|
89
|
+
* Returns the Prism language of the given element set by a `language-xxxx` or `lang-xxxx` class.
|
90
|
+
*
|
91
|
+
* If no language is set for the element or the element is `null` or `undefined`, `none` will be returned.
|
92
|
+
*
|
93
|
+
* @param {Element} element
|
94
|
+
* @returns {string}
|
95
|
+
*/
|
96
|
+
getLanguage: function (element) {
|
97
|
+
while (element && !lang.test(element.className)) {
|
98
|
+
element = element.parentElement;
|
99
|
+
}
|
100
|
+
if (element) {
|
101
|
+
return (element.className.match(lang) || [, 'none'])[1].toLowerCase();
|
102
|
+
}
|
103
|
+
return 'none';
|
104
|
+
},
|
105
|
+
|
106
|
+
/**
|
107
|
+
* Returns the script element that is currently executing.
|
108
|
+
*
|
109
|
+
* This does __not__ work for line script element.
|
110
|
+
*
|
111
|
+
* @returns {HTMLScriptElement | null}
|
112
|
+
*/
|
113
|
+
currentScript: function () {
|
114
|
+
if (typeof document === 'undefined') {
|
115
|
+
return null;
|
116
|
+
}
|
117
|
+
if ('currentScript' in document) {
|
118
|
+
return document.currentScript;
|
119
|
+
}
|
120
|
+
|
121
|
+
// IE11 workaround
|
122
|
+
// we'll get the src of the current script by parsing IE11's error stack trace
|
123
|
+
// this will not work for inline scripts
|
124
|
+
|
125
|
+
try {
|
126
|
+
throw new Error();
|
127
|
+
} catch (err) {
|
128
|
+
// Get file src url from stack. Specifically works with the format of stack traces in IE.
|
129
|
+
// A stack will look like this:
|
130
|
+
//
|
131
|
+
// Error
|
132
|
+
// at _.util.currentScript (http://localhost/components/prism-core.js:119:5)
|
133
|
+
// at Global code (http://localhost/components/prism-core.js:606:1)
|
134
|
+
|
135
|
+
var src = (/at [^(\r\n]*\((.*):.+:.+\)$/i.exec(err.stack) || [])[1];
|
136
|
+
if (src) {
|
137
|
+
var scripts = document.getElementsByTagName('script');
|
138
|
+
for (var i in scripts) {
|
139
|
+
if (scripts[i].src == src) {
|
140
|
+
return scripts[i];
|
141
|
+
}
|
142
|
+
}
|
143
|
+
}
|
144
|
+
return null;
|
145
|
+
}
|
146
|
+
}
|
147
|
+
},
|
148
|
+
|
149
|
+
languages: {
|
150
|
+
extend: function (id, redef) {
|
151
|
+
var lang = _.util.clone(_.languages[id]);
|
152
|
+
|
153
|
+
for (var key in redef) {
|
154
|
+
lang[key] = redef[key];
|
155
|
+
}
|
156
|
+
|
157
|
+
return lang;
|
158
|
+
},
|
159
|
+
|
160
|
+
/**
|
161
|
+
* Insert a token before another token in a language literal
|
162
|
+
* As this needs to recreate the object (we cannot actually insert before keys in object literals),
|
163
|
+
* we cannot just provide an object, we need an object and a key.
|
164
|
+
* @param inside The key (or language id) of the parent
|
165
|
+
* @param before The key to insert before.
|
166
|
+
* @param insert Object with the key/value pairs to insert
|
167
|
+
* @param root The object that contains `inside`. If equal to Prism.languages, it can be omitted.
|
168
|
+
*/
|
169
|
+
insertBefore: function (inside, before, insert, root) {
|
170
|
+
root = root || _.languages;
|
171
|
+
var grammar = root[inside];
|
172
|
+
var ret = {};
|
173
|
+
|
174
|
+
for (var token in grammar) {
|
175
|
+
if (grammar.hasOwnProperty(token)) {
|
176
|
+
|
177
|
+
if (token == before) {
|
178
|
+
for (var newToken in insert) {
|
179
|
+
if (insert.hasOwnProperty(newToken)) {
|
180
|
+
ret[newToken] = insert[newToken];
|
181
|
+
}
|
182
|
+
}
|
183
|
+
}
|
184
|
+
|
185
|
+
// Do not insert token which also occur in insert. See #1525
|
186
|
+
if (!insert.hasOwnProperty(token)) {
|
187
|
+
ret[token] = grammar[token];
|
188
|
+
}
|
189
|
+
}
|
190
|
+
}
|
191
|
+
|
192
|
+
var old = root[inside];
|
193
|
+
root[inside] = ret;
|
194
|
+
|
195
|
+
// Update references in other language definitions
|
196
|
+
_.languages.DFS(_.languages, function(key, value) {
|
197
|
+
if (value === old && key != inside) {
|
198
|
+
this[key] = ret;
|
199
|
+
}
|
200
|
+
});
|
201
|
+
|
202
|
+
return ret;
|
203
|
+
},
|
204
|
+
|
205
|
+
// Traverse a language definition with Depth First Search
|
206
|
+
DFS: function DFS(o, callback, type, visited) {
|
207
|
+
visited = visited || {};
|
208
|
+
|
209
|
+
var objId = _.util.objId;
|
210
|
+
|
211
|
+
for (var i in o) {
|
212
|
+
if (o.hasOwnProperty(i)) {
|
213
|
+
callback.call(o, i, o[i], type || i);
|
214
|
+
|
215
|
+
var property = o[i],
|
216
|
+
propertyType = _.util.type(property);
|
217
|
+
|
218
|
+
if (propertyType === 'Object' && !visited[objId(property)]) {
|
219
|
+
visited[objId(property)] = true;
|
220
|
+
DFS(property, callback, null, visited);
|
221
|
+
}
|
222
|
+
else if (propertyType === 'Array' && !visited[objId(property)]) {
|
223
|
+
visited[objId(property)] = true;
|
224
|
+
DFS(property, callback, i, visited);
|
225
|
+
}
|
226
|
+
}
|
227
|
+
}
|
228
|
+
}
|
229
|
+
},
|
230
|
+
plugins: {},
|
231
|
+
|
232
|
+
highlightAll: function(async, callback) {
|
233
|
+
_.highlightAllUnder(document, async, callback);
|
234
|
+
},
|
235
|
+
|
236
|
+
highlightAllUnder: function(container, async, callback) {
|
237
|
+
var env = {
|
238
|
+
callback: callback,
|
239
|
+
container: container,
|
240
|
+
selector: 'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'
|
241
|
+
};
|
242
|
+
|
243
|
+
_.hooks.run('before-highlightall', env);
|
244
|
+
|
245
|
+
env.elements = Array.prototype.slice.apply(env.container.querySelectorAll(env.selector));
|
246
|
+
|
247
|
+
_.hooks.run('before-all-elements-highlight', env);
|
248
|
+
|
249
|
+
for (var i = 0, element; element = env.elements[i++];) {
|
250
|
+
_.highlightElement(element, async === true, env.callback);
|
251
|
+
}
|
252
|
+
},
|
253
|
+
|
254
|
+
highlightElement: function(element, async, callback) {
|
255
|
+
// Find language
|
256
|
+
var language = _.util.getLanguage(element);
|
257
|
+
var grammar = _.languages[language];
|
258
|
+
|
259
|
+
// Set language on the element, if not present
|
260
|
+
element.className = element.className.replace(lang, '').replace(/\s+/g, ' ') + ' language-' + language;
|
261
|
+
|
262
|
+
// Set language on the parent, for styling
|
263
|
+
var parent = element.parentNode;
|
264
|
+
if (parent && parent.nodeName.toLowerCase() === 'pre') {
|
265
|
+
parent.className = parent.className.replace(lang, '').replace(/\s+/g, ' ') + ' language-' + language;
|
266
|
+
}
|
267
|
+
|
268
|
+
var code = element.textContent;
|
269
|
+
|
270
|
+
var env = {
|
271
|
+
element: element,
|
272
|
+
language: language,
|
273
|
+
grammar: grammar,
|
274
|
+
code: code
|
275
|
+
};
|
276
|
+
|
277
|
+
function insertHighlightedCode(highlightedCode) {
|
278
|
+
env.highlightedCode = highlightedCode;
|
279
|
+
|
280
|
+
_.hooks.run('before-insert', env);
|
281
|
+
|
282
|
+
env.element.innerHTML = env.highlightedCode;
|
283
|
+
|
284
|
+
_.hooks.run('after-highlight', env);
|
285
|
+
_.hooks.run('complete', env);
|
286
|
+
callback && callback.call(env.element);
|
287
|
+
}
|
288
|
+
|
289
|
+
_.hooks.run('before-sanity-check', env);
|
290
|
+
|
291
|
+
if (!env.code) {
|
292
|
+
_.hooks.run('complete', env);
|
293
|
+
callback && callback.call(env.element);
|
294
|
+
return;
|
295
|
+
}
|
296
|
+
|
297
|
+
_.hooks.run('before-highlight', env);
|
298
|
+
|
299
|
+
if (!env.grammar) {
|
300
|
+
insertHighlightedCode(_.util.encode(env.code));
|
301
|
+
return;
|
302
|
+
}
|
303
|
+
|
304
|
+
if (async && _self.Worker) {
|
305
|
+
var worker = new Worker(_.filename);
|
306
|
+
|
307
|
+
worker.onmessage = function(evt) {
|
308
|
+
insertHighlightedCode(evt.data);
|
309
|
+
};
|
310
|
+
|
311
|
+
worker.postMessage(JSON.stringify({
|
312
|
+
language: env.language,
|
313
|
+
code: env.code,
|
314
|
+
immediateClose: true
|
315
|
+
}));
|
316
|
+
}
|
317
|
+
else {
|
318
|
+
insertHighlightedCode(_.highlight(env.code, env.grammar, env.language));
|
319
|
+
}
|
320
|
+
},
|
321
|
+
|
322
|
+
highlight: function (text, grammar, language) {
|
323
|
+
var env = {
|
324
|
+
code: text,
|
325
|
+
grammar: grammar,
|
326
|
+
language: language
|
327
|
+
};
|
328
|
+
_.hooks.run('before-tokenize', env);
|
329
|
+
env.tokens = _.tokenize(env.code, env.grammar);
|
330
|
+
_.hooks.run('after-tokenize', env);
|
331
|
+
return Token.stringify(_.util.encode(env.tokens), env.language);
|
332
|
+
},
|
333
|
+
|
334
|
+
matchGrammar: function (text, strarr, grammar, index, startPos, oneshot, target) {
|
335
|
+
for (var token in grammar) {
|
336
|
+
if (!grammar.hasOwnProperty(token) || !grammar[token]) {
|
337
|
+
continue;
|
338
|
+
}
|
339
|
+
|
340
|
+
var patterns = grammar[token];
|
341
|
+
patterns = Array.isArray(patterns) ? patterns : [patterns];
|
342
|
+
|
343
|
+
for (var j = 0; j < patterns.length; ++j) {
|
344
|
+
if (target && target == token + ',' + j) {
|
345
|
+
return;
|
346
|
+
}
|
347
|
+
|
348
|
+
var pattern = patterns[j],
|
349
|
+
inside = pattern.inside,
|
350
|
+
lookbehind = !!pattern.lookbehind,
|
351
|
+
greedy = !!pattern.greedy,
|
352
|
+
lookbehindLength = 0,
|
353
|
+
alias = pattern.alias;
|
354
|
+
|
355
|
+
if (greedy && !pattern.pattern.global) {
|
356
|
+
// Without the global flag, lastIndex won't work
|
357
|
+
var flags = pattern.pattern.toString().match(/[imsuy]*$/)[0];
|
358
|
+
pattern.pattern = RegExp(pattern.pattern.source, flags + 'g');
|
359
|
+
}
|
360
|
+
|
361
|
+
pattern = pattern.pattern || pattern;
|
362
|
+
|
363
|
+
// Don’t cache length as it changes during the loop
|
364
|
+
for (var i = index, pos = startPos; i < strarr.length; pos += strarr[i].length, ++i) {
|
365
|
+
|
366
|
+
var str = strarr[i];
|
367
|
+
|
368
|
+
if (strarr.length > text.length) {
|
369
|
+
// Something went terribly wrong, ABORT, ABORT!
|
370
|
+
return;
|
371
|
+
}
|
372
|
+
|
373
|
+
if (str instanceof Token) {
|
374
|
+
continue;
|
375
|
+
}
|
376
|
+
|
377
|
+
if (greedy && i != strarr.length - 1) {
|
378
|
+
pattern.lastIndex = pos;
|
379
|
+
var match = pattern.exec(text);
|
380
|
+
if (!match) {
|
381
|
+
break;
|
382
|
+
}
|
383
|
+
|
384
|
+
var from = match.index + (lookbehind && match[1] ? match[1].length : 0),
|
385
|
+
to = match.index + match[0].length,
|
386
|
+
k = i,
|
387
|
+
p = pos;
|
388
|
+
|
389
|
+
for (var len = strarr.length; k < len && (p < to || (!strarr[k].type && !strarr[k - 1].greedy)); ++k) {
|
390
|
+
p += strarr[k].length;
|
391
|
+
// Move the index i to the element in strarr that is closest to from
|
392
|
+
if (from >= p) {
|
393
|
+
++i;
|
394
|
+
pos = p;
|
395
|
+
}
|
396
|
+
}
|
397
|
+
|
398
|
+
// If strarr[i] is a Token, then the match starts inside another Token, which is invalid
|
399
|
+
if (strarr[i] instanceof Token) {
|
400
|
+
continue;
|
401
|
+
}
|
402
|
+
|
403
|
+
// Number of tokens to delete and replace with the new match
|
404
|
+
delNum = k - i;
|
405
|
+
str = text.slice(pos, p);
|
406
|
+
match.index -= pos;
|
407
|
+
} else {
|
408
|
+
pattern.lastIndex = 0;
|
409
|
+
|
410
|
+
var match = pattern.exec(str),
|
411
|
+
delNum = 1;
|
412
|
+
}
|
413
|
+
|
414
|
+
if (!match) {
|
415
|
+
if (oneshot) {
|
416
|
+
break;
|
417
|
+
}
|
418
|
+
|
419
|
+
continue;
|
420
|
+
}
|
421
|
+
|
422
|
+
if(lookbehind) {
|
423
|
+
lookbehindLength = match[1] ? match[1].length : 0;
|
424
|
+
}
|
425
|
+
|
426
|
+
var from = match.index + lookbehindLength,
|
427
|
+
match = match[0].slice(lookbehindLength),
|
428
|
+
to = from + match.length,
|
429
|
+
before = str.slice(0, from),
|
430
|
+
after = str.slice(to);
|
431
|
+
|
432
|
+
var args = [i, delNum];
|
433
|
+
|
434
|
+
if (before) {
|
435
|
+
++i;
|
436
|
+
pos += before.length;
|
437
|
+
args.push(before);
|
438
|
+
}
|
439
|
+
|
440
|
+
var wrapped = new Token(token, inside? _.tokenize(match, inside) : match, alias, match, greedy);
|
441
|
+
|
442
|
+
args.push(wrapped);
|
443
|
+
|
444
|
+
if (after) {
|
445
|
+
args.push(after);
|
446
|
+
}
|
447
|
+
|
448
|
+
Array.prototype.splice.apply(strarr, args);
|
449
|
+
|
450
|
+
if (delNum != 1)
|
451
|
+
_.matchGrammar(text, strarr, grammar, i, pos, true, token + ',' + j);
|
452
|
+
|
453
|
+
if (oneshot)
|
454
|
+
break;
|
455
|
+
}
|
456
|
+
}
|
457
|
+
}
|
458
|
+
},
|
459
|
+
|
460
|
+
tokenize: function(text, grammar) {
|
461
|
+
var strarr = [text];
|
462
|
+
|
463
|
+
var rest = grammar.rest;
|
464
|
+
|
465
|
+
if (rest) {
|
466
|
+
for (var token in rest) {
|
467
|
+
grammar[token] = rest[token];
|
468
|
+
}
|
469
|
+
|
470
|
+
delete grammar.rest;
|
471
|
+
}
|
472
|
+
|
473
|
+
_.matchGrammar(text, strarr, grammar, 0, 0, false);
|
474
|
+
|
475
|
+
return strarr;
|
476
|
+
},
|
477
|
+
|
478
|
+
hooks: {
|
479
|
+
all: {},
|
480
|
+
|
481
|
+
add: function (name, callback) {
|
482
|
+
var hooks = _.hooks.all;
|
483
|
+
|
484
|
+
hooks[name] = hooks[name] || [];
|
485
|
+
|
486
|
+
hooks[name].push(callback);
|
487
|
+
},
|
488
|
+
|
489
|
+
run: function (name, env) {
|
490
|
+
var callbacks = _.hooks.all[name];
|
491
|
+
|
492
|
+
if (!callbacks || !callbacks.length) {
|
493
|
+
return;
|
494
|
+
}
|
495
|
+
|
496
|
+
for (var i=0, callback; callback = callbacks[i++];) {
|
497
|
+
callback(env);
|
498
|
+
}
|
499
|
+
}
|
500
|
+
},
|
501
|
+
|
502
|
+
Token: Token
|
503
|
+
};
|
504
|
+
|
505
|
+
_self.Prism = _;
|
506
|
+
|
507
|
+
function Token(type, content, alias, matchedStr, greedy) {
|
508
|
+
this.type = type;
|
509
|
+
this.content = content;
|
510
|
+
this.alias = alias;
|
511
|
+
// Copy of the full string this token was created from
|
512
|
+
this.length = (matchedStr || '').length|0;
|
513
|
+
this.greedy = !!greedy;
|
514
|
+
}
|
515
|
+
|
516
|
+
Token.stringify = function stringify(o, language) {
|
517
|
+
if (typeof o == 'string') {
|
518
|
+
return o;
|
519
|
+
}
|
520
|
+
if (Array.isArray(o)) {
|
521
|
+
var s = '';
|
522
|
+
o.forEach(function (e) {
|
523
|
+
s += stringify(e, language);
|
524
|
+
});
|
525
|
+
return s;
|
526
|
+
}
|
527
|
+
|
528
|
+
var env = {
|
529
|
+
type: o.type,
|
530
|
+
content: stringify(o.content, language),
|
531
|
+
tag: 'span',
|
532
|
+
classes: ['token', o.type],
|
533
|
+
attributes: {},
|
534
|
+
language: language
|
535
|
+
};
|
536
|
+
|
537
|
+
var aliases = o.alias;
|
538
|
+
if (aliases) {
|
539
|
+
if (Array.isArray(aliases)) {
|
540
|
+
Array.prototype.push.apply(env.classes, aliases);
|
541
|
+
} else {
|
542
|
+
env.classes.push(aliases);
|
543
|
+
}
|
544
|
+
}
|
545
|
+
|
546
|
+
_.hooks.run('wrap', env);
|
547
|
+
|
548
|
+
var attributes = '';
|
549
|
+
for (var name in env.attributes) {
|
550
|
+
attributes += ' ' + name + '="' + (env.attributes[name] || '').replace(/"/g, '"') + '"';
|
551
|
+
}
|
552
|
+
|
553
|
+
return '<' + env.tag + ' class="' + env.classes.join(' ') + '"' + attributes + '>' + env.content + '</' + env.tag + '>';
|
554
|
+
};
|
555
|
+
|
556
|
+
if (!_self.document) {
|
557
|
+
if (!_self.addEventListener) {
|
558
|
+
// in Node.js
|
559
|
+
return _;
|
560
|
+
}
|
561
|
+
|
562
|
+
if (!_.disableWorkerMessageHandler) {
|
563
|
+
// In worker
|
564
|
+
_self.addEventListener('message', function (evt) {
|
565
|
+
var message = JSON.parse(evt.data),
|
566
|
+
lang = message.language,
|
567
|
+
code = message.code,
|
568
|
+
immediateClose = message.immediateClose;
|
569
|
+
|
570
|
+
_self.postMessage(_.highlight(code, _.languages[lang], lang));
|
571
|
+
if (immediateClose) {
|
572
|
+
_self.close();
|
573
|
+
}
|
574
|
+
}, false);
|
575
|
+
}
|
576
|
+
|
577
|
+
return _;
|
578
|
+
}
|
579
|
+
|
580
|
+
//Get current script and highlight
|
581
|
+
var script = _.util.currentScript();
|
582
|
+
|
583
|
+
if (script) {
|
584
|
+
_.filename = script.src;
|
585
|
+
|
586
|
+
if (script.hasAttribute('data-manual')) {
|
587
|
+
_.manual = true;
|
588
|
+
}
|
589
|
+
}
|
590
|
+
|
591
|
+
function highlightAutomaticallyCallback() {
|
592
|
+
if (!_.manual) {
|
593
|
+
_.highlightAll();
|
594
|
+
}
|
595
|
+
}
|
596
|
+
|
597
|
+
if (!_.manual) {
|
598
|
+
// If the document state is "loading", then we'll use DOMContentLoaded.
|
599
|
+
// If the document state is "interactive" and the prism.js script is deferred, then we'll also use the
|
600
|
+
// DOMContentLoaded event because there might be some plugins or languages which have also been deferred and they
|
601
|
+
// might take longer one animation frame to execute which can create a race condition where only some plugins have
|
602
|
+
// been loaded when Prism.highlightAll() is executed, depending on how fast resources are loaded.
|
603
|
+
// See https://github.com/PrismJS/prism/issues/2102
|
604
|
+
var readyState = document.readyState;
|
605
|
+
if (readyState === 'loading' || readyState === 'interactive' && script && script.defer) {
|
606
|
+
document.addEventListener('DOMContentLoaded', highlightAutomaticallyCallback);
|
607
|
+
} else {
|
608
|
+
if (window.requestAnimationFrame) {
|
609
|
+
window.requestAnimationFrame(highlightAutomaticallyCallback);
|
610
|
+
} else {
|
611
|
+
window.setTimeout(highlightAutomaticallyCallback, 16);
|
612
|
+
}
|
613
|
+
}
|
614
|
+
}
|
615
|
+
|
616
|
+
return _;
|
617
|
+
|
618
|
+
})(_self);
|
619
|
+
|
620
|
+
if (typeof module !== 'undefined' && module.exports) {
|
621
|
+
module.exports = Prism;
|
622
|
+
}
|
623
|
+
|
624
|
+
// hack for components to work correctly in node.js
|
625
|
+
if (typeof global !== 'undefined') {
|
626
|
+
global.Prism = Prism;
|
627
|
+
}
|