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,41 @@
|
|
1
|
+
Prism.languages.jolie = Prism.languages.extend('clike', {
|
2
|
+
'string': {
|
3
|
+
pattern: /(^|[^\\])"(?:\\[\s\S]|[^"\\])*"/,
|
4
|
+
lookbehind: true,
|
5
|
+
greedy: true
|
6
|
+
},
|
7
|
+
'class-name': {
|
8
|
+
pattern: /((?:\b(?:as|courier|embed|in|inputPort|outputPort|service)\b|@)[ \t]*)\w+/,
|
9
|
+
lookbehind: true
|
10
|
+
},
|
11
|
+
'keyword': /\b(?:as|cH|comp|concurrent|constants|courier|cset|csets|default|define|else|embed|embedded|execution|exit|extender|for|foreach|forward|from|global|if|import|in|include|init|inputPort|install|instanceof|interface|is_defined|linkIn|linkOut|main|new|nullProcess|outputPort|over|private|provide|public|scope|sequential|service|single|spawn|synchronized|this|throw|throws|type|undef|until|while|with)\b/,
|
12
|
+
'function': /\b[a-z_]\w*(?=[ \t]*[@(])/i,
|
13
|
+
'number': /(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?l?/i,
|
14
|
+
'operator': /-[-=>]?|\+[+=]?|<[<=]?|[>=*!]=?|&&|\|\||[?\/%^@|]/,
|
15
|
+
'punctuation': /[()[\]{},;.:]/,
|
16
|
+
'builtin': /\b(?:Byte|any|bool|char|double|enum|float|int|length|long|ranges|regex|string|undefined|void)\b/
|
17
|
+
});
|
18
|
+
|
19
|
+
Prism.languages.insertBefore('jolie', 'keyword', {
|
20
|
+
'aggregates': {
|
21
|
+
pattern: /(\bAggregates\s*:\s*)(?:\w+(?:\s+with\s+\w+)?\s*,\s*)*\w+(?:\s+with\s+\w+)?/,
|
22
|
+
lookbehind: true,
|
23
|
+
inside: {
|
24
|
+
'keyword': /\bwith\b/,
|
25
|
+
'class-name': /\w+/,
|
26
|
+
'punctuation': /,/
|
27
|
+
}
|
28
|
+
},
|
29
|
+
'redirects': {
|
30
|
+
pattern: /(\bRedirects\s*:\s*)(?:\w+\s*=>\s*\w+\s*,\s*)*(?:\w+\s*=>\s*\w+)/,
|
31
|
+
lookbehind: true,
|
32
|
+
inside: {
|
33
|
+
'punctuation': /,/,
|
34
|
+
'class-name': /\w+/,
|
35
|
+
'operator': /=>/
|
36
|
+
}
|
37
|
+
},
|
38
|
+
'property': {
|
39
|
+
pattern: /\b(?:Aggregates|[Ii]nterfaces|Java|Javascript|Jolie|[Ll]ocation|OneWay|[Pp]rotocol|Redirects|RequestResponse)\b(?=[ \t]*:)/
|
40
|
+
}
|
41
|
+
});
|
@@ -0,0 +1,69 @@
|
|
1
|
+
(function (Prism) {
|
2
|
+
|
3
|
+
var interpolation = /\\\((?:[^()]|\([^()]*\))*\)/.source;
|
4
|
+
var string = RegExp(/(^|[^\\])"(?:[^"\r\n\\]|\\[^\r\n(]|__)*"/.source.replace(/__/g, function () { return interpolation; }));
|
5
|
+
var stringInterpolation = {
|
6
|
+
'interpolation': {
|
7
|
+
pattern: RegExp(/((?:^|[^\\])(?:\\{2})*)/.source + interpolation),
|
8
|
+
lookbehind: true,
|
9
|
+
inside: {
|
10
|
+
'content': {
|
11
|
+
pattern: /^(\\\()[\s\S]+(?=\)$)/,
|
12
|
+
lookbehind: true,
|
13
|
+
inside: null // see below
|
14
|
+
},
|
15
|
+
'punctuation': /^\\\(|\)$/
|
16
|
+
}
|
17
|
+
}
|
18
|
+
};
|
19
|
+
|
20
|
+
var jq = Prism.languages.jq = {
|
21
|
+
'comment': /#.*/,
|
22
|
+
'property': {
|
23
|
+
pattern: RegExp(string.source + /(?=\s*:(?!:))/.source),
|
24
|
+
lookbehind: true,
|
25
|
+
greedy: true,
|
26
|
+
inside: stringInterpolation
|
27
|
+
},
|
28
|
+
'string': {
|
29
|
+
pattern: string,
|
30
|
+
lookbehind: true,
|
31
|
+
greedy: true,
|
32
|
+
inside: stringInterpolation
|
33
|
+
},
|
34
|
+
|
35
|
+
'function': {
|
36
|
+
pattern: /(\bdef\s+)[a-z_]\w+/i,
|
37
|
+
lookbehind: true
|
38
|
+
},
|
39
|
+
|
40
|
+
'variable': /\B\$\w+/,
|
41
|
+
'property-literal': {
|
42
|
+
pattern: /\b[a-z_]\w*(?=\s*:(?!:))/i,
|
43
|
+
alias: 'property'
|
44
|
+
},
|
45
|
+
'keyword': /\b(?:as|break|catch|def|elif|else|end|foreach|if|import|include|label|module|modulemeta|null|reduce|then|try|while)\b/,
|
46
|
+
'boolean': /\b(?:false|true)\b/,
|
47
|
+
'number': /(?:\b\d+\.|\B\.)?\b\d+(?:[eE][+-]?\d+)?\b/,
|
48
|
+
|
49
|
+
'operator': [
|
50
|
+
{
|
51
|
+
pattern: /\|=?/,
|
52
|
+
alias: 'pipe'
|
53
|
+
},
|
54
|
+
/\.\.|[!=<>]?=|\?\/\/|\/\/=?|[-+*/%]=?|[<>?]|\b(?:and|not|or)\b/
|
55
|
+
],
|
56
|
+
'c-style-function': {
|
57
|
+
pattern: /\b[a-z_]\w*(?=\s*\()/i,
|
58
|
+
alias: 'function'
|
59
|
+
},
|
60
|
+
'punctuation': /::|[()\[\]{},:;]|\.(?=\s*[\[\w$])/,
|
61
|
+
'dot': {
|
62
|
+
pattern: /\./,
|
63
|
+
alias: 'important'
|
64
|
+
}
|
65
|
+
};
|
66
|
+
|
67
|
+
stringInterpolation.interpolation.inside.content.inside = jq;
|
68
|
+
|
69
|
+
}(Prism));
|
@@ -0,0 +1,135 @@
|
|
1
|
+
(function (Prism) {
|
2
|
+
|
3
|
+
Prism.languages.insertBefore('javascript', 'function-variable', {
|
4
|
+
'method-variable': {
|
5
|
+
pattern: RegExp('(\\.\\s*)' + Prism.languages.javascript['function-variable'].pattern.source),
|
6
|
+
lookbehind: true,
|
7
|
+
alias: ['function-variable', 'method', 'function', 'property-access']
|
8
|
+
}
|
9
|
+
});
|
10
|
+
|
11
|
+
Prism.languages.insertBefore('javascript', 'function', {
|
12
|
+
'method': {
|
13
|
+
pattern: RegExp('(\\.\\s*)' + Prism.languages.javascript['function'].source),
|
14
|
+
lookbehind: true,
|
15
|
+
alias: ['function', 'property-access']
|
16
|
+
}
|
17
|
+
});
|
18
|
+
|
19
|
+
Prism.languages.insertBefore('javascript', 'constant', {
|
20
|
+
'known-class-name': [
|
21
|
+
{
|
22
|
+
// standard built-ins
|
23
|
+
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects
|
24
|
+
pattern: /\b(?:(?:Float(?:32|64)|(?:Int|Uint)(?:8|16|32)|Uint8Clamped)?Array|ArrayBuffer|BigInt|Boolean|DataView|Date|Error|Function|Intl|JSON|(?:Weak)?(?:Map|Set)|Math|Number|Object|Promise|Proxy|Reflect|RegExp|String|Symbol|WebAssembly)\b/,
|
25
|
+
alias: 'class-name'
|
26
|
+
},
|
27
|
+
{
|
28
|
+
// errors
|
29
|
+
pattern: /\b(?:[A-Z]\w*)Error\b/,
|
30
|
+
alias: 'class-name'
|
31
|
+
}
|
32
|
+
]
|
33
|
+
});
|
34
|
+
|
35
|
+
/**
|
36
|
+
* Replaces the `<ID>` placeholder in the given pattern with a pattern for general JS identifiers.
|
37
|
+
*
|
38
|
+
* @param {string} source
|
39
|
+
* @param {string} [flags]
|
40
|
+
* @returns {RegExp}
|
41
|
+
*/
|
42
|
+
function withId(source, flags) {
|
43
|
+
return RegExp(
|
44
|
+
source.replace(/<ID>/g, function () { return /(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*/.source; }),
|
45
|
+
flags);
|
46
|
+
}
|
47
|
+
Prism.languages.insertBefore('javascript', 'keyword', {
|
48
|
+
'imports': {
|
49
|
+
// https://tc39.es/ecma262/#sec-imports
|
50
|
+
pattern: withId(/(\bimport\b\s*)(?:<ID>(?:\s*,\s*(?:\*\s*as\s+<ID>|\{[^{}]*\}))?|\*\s*as\s+<ID>|\{[^{}]*\})(?=\s*\bfrom\b)/.source),
|
51
|
+
lookbehind: true,
|
52
|
+
inside: Prism.languages.javascript
|
53
|
+
},
|
54
|
+
'exports': {
|
55
|
+
// https://tc39.es/ecma262/#sec-exports
|
56
|
+
pattern: withId(/(\bexport\b\s*)(?:\*(?:\s*as\s+<ID>)?(?=\s*\bfrom\b)|\{[^{}]*\})/.source),
|
57
|
+
lookbehind: true,
|
58
|
+
inside: Prism.languages.javascript
|
59
|
+
}
|
60
|
+
});
|
61
|
+
|
62
|
+
Prism.languages.javascript['keyword'].unshift(
|
63
|
+
{
|
64
|
+
pattern: /\b(?:as|default|export|from|import)\b/,
|
65
|
+
alias: 'module'
|
66
|
+
},
|
67
|
+
{
|
68
|
+
pattern: /\b(?:await|break|catch|continue|do|else|finally|for|if|return|switch|throw|try|while|yield)\b/,
|
69
|
+
alias: 'control-flow'
|
70
|
+
},
|
71
|
+
{
|
72
|
+
pattern: /\bnull\b/,
|
73
|
+
alias: ['null', 'nil']
|
74
|
+
},
|
75
|
+
{
|
76
|
+
pattern: /\bundefined\b/,
|
77
|
+
alias: 'nil'
|
78
|
+
}
|
79
|
+
);
|
80
|
+
|
81
|
+
Prism.languages.insertBefore('javascript', 'operator', {
|
82
|
+
'spread': {
|
83
|
+
pattern: /\.{3}/,
|
84
|
+
alias: 'operator'
|
85
|
+
},
|
86
|
+
'arrow': {
|
87
|
+
pattern: /=>/,
|
88
|
+
alias: 'operator'
|
89
|
+
}
|
90
|
+
});
|
91
|
+
|
92
|
+
Prism.languages.insertBefore('javascript', 'punctuation', {
|
93
|
+
'property-access': {
|
94
|
+
pattern: withId(/(\.\s*)#?<ID>/.source),
|
95
|
+
lookbehind: true
|
96
|
+
},
|
97
|
+
'maybe-class-name': {
|
98
|
+
pattern: /(^|[^$\w\xA0-\uFFFF])[A-Z][$\w\xA0-\uFFFF]+/,
|
99
|
+
lookbehind: true
|
100
|
+
},
|
101
|
+
'dom': {
|
102
|
+
// this contains only a few commonly used DOM variables
|
103
|
+
pattern: /\b(?:document|(?:local|session)Storage|location|navigator|performance|window)\b/,
|
104
|
+
alias: 'variable'
|
105
|
+
},
|
106
|
+
'console': {
|
107
|
+
pattern: /\bconsole(?=\s*\.)/,
|
108
|
+
alias: 'class-name'
|
109
|
+
}
|
110
|
+
});
|
111
|
+
|
112
|
+
|
113
|
+
// add 'maybe-class-name' to tokens which might be a class name
|
114
|
+
var maybeClassNameTokens = ['function', 'function-variable', 'method', 'method-variable', 'property-access'];
|
115
|
+
|
116
|
+
for (var i = 0; i < maybeClassNameTokens.length; i++) {
|
117
|
+
var token = maybeClassNameTokens[i];
|
118
|
+
var value = Prism.languages.javascript[token];
|
119
|
+
|
120
|
+
// convert regex to object
|
121
|
+
if (Prism.util.type(value) === 'RegExp') {
|
122
|
+
value = Prism.languages.javascript[token] = {
|
123
|
+
pattern: value
|
124
|
+
};
|
125
|
+
}
|
126
|
+
|
127
|
+
// keep in mind that we don't support arrays
|
128
|
+
|
129
|
+
var inside = value.inside || {};
|
130
|
+
value.inside = inside;
|
131
|
+
|
132
|
+
inside['maybe-class-name'] = /^[A-Z][\s\S]*/;
|
133
|
+
}
|
134
|
+
|
135
|
+
}(Prism));
|
@@ -0,0 +1,349 @@
|
|
1
|
+
(function (Prism) {
|
2
|
+
|
3
|
+
var templateString = Prism.languages.javascript['template-string'];
|
4
|
+
|
5
|
+
// see the pattern in prism-javascript.js
|
6
|
+
var templateLiteralPattern = templateString.pattern.source;
|
7
|
+
var interpolationObject = templateString.inside['interpolation'];
|
8
|
+
var interpolationPunctuationObject = interpolationObject.inside['interpolation-punctuation'];
|
9
|
+
var interpolationPattern = interpolationObject.pattern.source;
|
10
|
+
|
11
|
+
|
12
|
+
/**
|
13
|
+
* Creates a new pattern to match a template string with a special tag.
|
14
|
+
*
|
15
|
+
* This will return `undefined` if there is no grammar with the given language id.
|
16
|
+
*
|
17
|
+
* @param {string} language The language id of the embedded language. E.g. `markdown`.
|
18
|
+
* @param {string} tag The regex pattern to match the tag.
|
19
|
+
* @returns {object | undefined}
|
20
|
+
* @example
|
21
|
+
* createTemplate('css', /\bcss/.source);
|
22
|
+
*/
|
23
|
+
function createTemplate(language, tag) {
|
24
|
+
if (!Prism.languages[language]) {
|
25
|
+
return undefined;
|
26
|
+
}
|
27
|
+
|
28
|
+
return {
|
29
|
+
pattern: RegExp('((?:' + tag + ')\\s*)' + templateLiteralPattern),
|
30
|
+
lookbehind: true,
|
31
|
+
greedy: true,
|
32
|
+
inside: {
|
33
|
+
'template-punctuation': {
|
34
|
+
pattern: /^`|`$/,
|
35
|
+
alias: 'string'
|
36
|
+
},
|
37
|
+
'embedded-code': {
|
38
|
+
pattern: /[\s\S]+/,
|
39
|
+
alias: language
|
40
|
+
}
|
41
|
+
}
|
42
|
+
};
|
43
|
+
}
|
44
|
+
|
45
|
+
|
46
|
+
Prism.languages.javascript['template-string'] = [
|
47
|
+
// styled-jsx:
|
48
|
+
// css`a { color: #25F; }`
|
49
|
+
// styled-components:
|
50
|
+
// styled.h1`color: red;`
|
51
|
+
createTemplate('css', /\b(?:styled(?:\([^)]*\))?(?:\s*\.\s*\w+(?:\([^)]*\))*)*|css(?:\s*\.\s*(?:global|resolve))?|createGlobalStyle|keyframes)/.source),
|
52
|
+
|
53
|
+
// html`<p></p>`
|
54
|
+
// div.innerHTML = `<p></p>`
|
55
|
+
createTemplate('html', /\bhtml|\.\s*(?:inner|outer)HTML\s*\+?=/.source),
|
56
|
+
|
57
|
+
// svg`<path fill="#fff" d="M55.37 ..."/>`
|
58
|
+
createTemplate('svg', /\bsvg/.source),
|
59
|
+
|
60
|
+
// md`# h1`, markdown`## h2`
|
61
|
+
createTemplate('markdown', /\b(?:markdown|md)/.source),
|
62
|
+
|
63
|
+
// gql`...`, graphql`...`, graphql.experimental`...`
|
64
|
+
createTemplate('graphql', /\b(?:gql|graphql(?:\s*\.\s*experimental)?)/.source),
|
65
|
+
|
66
|
+
// sql`...`
|
67
|
+
createTemplate('sql', /\bsql/.source),
|
68
|
+
|
69
|
+
// vanilla template string
|
70
|
+
templateString
|
71
|
+
].filter(Boolean);
|
72
|
+
|
73
|
+
|
74
|
+
/**
|
75
|
+
* Returns a specific placeholder literal for the given language.
|
76
|
+
*
|
77
|
+
* @param {number} counter
|
78
|
+
* @param {string} language
|
79
|
+
* @returns {string}
|
80
|
+
*/
|
81
|
+
function getPlaceholder(counter, language) {
|
82
|
+
return '___' + language.toUpperCase() + '_' + counter + '___';
|
83
|
+
}
|
84
|
+
|
85
|
+
/**
|
86
|
+
* Returns the tokens of `Prism.tokenize` but also runs the `before-tokenize` and `after-tokenize` hooks.
|
87
|
+
*
|
88
|
+
* @param {string} code
|
89
|
+
* @param {any} grammar
|
90
|
+
* @param {string} language
|
91
|
+
* @returns {(string|Token)[]}
|
92
|
+
*/
|
93
|
+
function tokenizeWithHooks(code, grammar, language) {
|
94
|
+
var env = {
|
95
|
+
code: code,
|
96
|
+
grammar: grammar,
|
97
|
+
language: language
|
98
|
+
};
|
99
|
+
Prism.hooks.run('before-tokenize', env);
|
100
|
+
env.tokens = Prism.tokenize(env.code, env.grammar);
|
101
|
+
Prism.hooks.run('after-tokenize', env);
|
102
|
+
return env.tokens;
|
103
|
+
}
|
104
|
+
|
105
|
+
/**
|
106
|
+
* Returns the token of the given JavaScript interpolation expression.
|
107
|
+
*
|
108
|
+
* @param {string} expression The code of the expression. E.g. `"${42}"`
|
109
|
+
* @returns {Token}
|
110
|
+
*/
|
111
|
+
function tokenizeInterpolationExpression(expression) {
|
112
|
+
var tempGrammar = {};
|
113
|
+
tempGrammar['interpolation-punctuation'] = interpolationPunctuationObject;
|
114
|
+
|
115
|
+
/** @type {Array} */
|
116
|
+
var tokens = Prism.tokenize(expression, tempGrammar);
|
117
|
+
if (tokens.length === 3) {
|
118
|
+
/**
|
119
|
+
* The token array will look like this
|
120
|
+
* [
|
121
|
+
* ["interpolation-punctuation", "${"]
|
122
|
+
* "..." // JavaScript expression of the interpolation
|
123
|
+
* ["interpolation-punctuation", "}"]
|
124
|
+
* ]
|
125
|
+
*/
|
126
|
+
|
127
|
+
var args = [1, 1];
|
128
|
+
args.push.apply(args, tokenizeWithHooks(tokens[1], Prism.languages.javascript, 'javascript'));
|
129
|
+
|
130
|
+
tokens.splice.apply(tokens, args);
|
131
|
+
}
|
132
|
+
|
133
|
+
return new Prism.Token('interpolation', tokens, interpolationObject.alias, expression);
|
134
|
+
}
|
135
|
+
|
136
|
+
/**
|
137
|
+
* Tokenizes the given code with support for JavaScript interpolation expressions mixed in.
|
138
|
+
*
|
139
|
+
* This function has 3 phases:
|
140
|
+
*
|
141
|
+
* 1. Replace all JavaScript interpolation expression with a placeholder.
|
142
|
+
* The placeholder will have the syntax of a identify of the target language.
|
143
|
+
* 2. Tokenize the code with placeholders.
|
144
|
+
* 3. Tokenize the interpolation expressions and re-insert them into the tokenize code.
|
145
|
+
* The insertion only works if a placeholder hasn't been "ripped apart" meaning that the placeholder has been
|
146
|
+
* tokenized as two tokens by the grammar of the embedded language.
|
147
|
+
*
|
148
|
+
* @param {string} code
|
149
|
+
* @param {object} grammar
|
150
|
+
* @param {string} language
|
151
|
+
* @returns {Token}
|
152
|
+
*/
|
153
|
+
function tokenizeEmbedded(code, grammar, language) {
|
154
|
+
// 1. First filter out all interpolations
|
155
|
+
|
156
|
+
// because they might be escaped, we need a lookbehind, so we use Prism
|
157
|
+
/** @type {(Token|string)[]} */
|
158
|
+
var _tokens = Prism.tokenize(code, {
|
159
|
+
'interpolation': {
|
160
|
+
pattern: RegExp(interpolationPattern),
|
161
|
+
lookbehind: true
|
162
|
+
}
|
163
|
+
});
|
164
|
+
|
165
|
+
// replace all interpolations with a placeholder which is not in the code already
|
166
|
+
var placeholderCounter = 0;
|
167
|
+
/** @type {Object<string, string>} */
|
168
|
+
var placeholderMap = {};
|
169
|
+
var embeddedCode = _tokens.map(function (token) {
|
170
|
+
if (typeof token === 'string') {
|
171
|
+
return token;
|
172
|
+
} else {
|
173
|
+
var interpolationExpression = token.content;
|
174
|
+
|
175
|
+
var placeholder;
|
176
|
+
while (code.indexOf(placeholder = getPlaceholder(placeholderCounter++, language)) !== -1) { /* noop */ }
|
177
|
+
placeholderMap[placeholder] = interpolationExpression;
|
178
|
+
return placeholder;
|
179
|
+
}
|
180
|
+
}).join('');
|
181
|
+
|
182
|
+
|
183
|
+
// 2. Tokenize the embedded code
|
184
|
+
|
185
|
+
var embeddedTokens = tokenizeWithHooks(embeddedCode, grammar, language);
|
186
|
+
|
187
|
+
|
188
|
+
// 3. Re-insert the interpolation
|
189
|
+
|
190
|
+
var placeholders = Object.keys(placeholderMap);
|
191
|
+
placeholderCounter = 0;
|
192
|
+
|
193
|
+
/**
|
194
|
+
*
|
195
|
+
* @param {(Token|string)[]} tokens
|
196
|
+
* @returns {void}
|
197
|
+
*/
|
198
|
+
function walkTokens(tokens) {
|
199
|
+
for (var i = 0; i < tokens.length; i++) {
|
200
|
+
if (placeholderCounter >= placeholders.length) {
|
201
|
+
return;
|
202
|
+
}
|
203
|
+
|
204
|
+
var token = tokens[i];
|
205
|
+
|
206
|
+
if (typeof token === 'string' || typeof token.content === 'string') {
|
207
|
+
var placeholder = placeholders[placeholderCounter];
|
208
|
+
var s = typeof token === 'string' ? token : /** @type {string} */ (token.content);
|
209
|
+
|
210
|
+
var index = s.indexOf(placeholder);
|
211
|
+
if (index !== -1) {
|
212
|
+
++placeholderCounter;
|
213
|
+
|
214
|
+
var before = s.substring(0, index);
|
215
|
+
var middle = tokenizeInterpolationExpression(placeholderMap[placeholder]);
|
216
|
+
var after = s.substring(index + placeholder.length);
|
217
|
+
|
218
|
+
var replacement = [];
|
219
|
+
if (before) {
|
220
|
+
replacement.push(before);
|
221
|
+
}
|
222
|
+
replacement.push(middle);
|
223
|
+
if (after) {
|
224
|
+
var afterTokens = [after];
|
225
|
+
walkTokens(afterTokens);
|
226
|
+
replacement.push.apply(replacement, afterTokens);
|
227
|
+
}
|
228
|
+
|
229
|
+
if (typeof token === 'string') {
|
230
|
+
tokens.splice.apply(tokens, [i, 1].concat(replacement));
|
231
|
+
i += replacement.length - 1;
|
232
|
+
} else {
|
233
|
+
token.content = replacement;
|
234
|
+
}
|
235
|
+
}
|
236
|
+
} else {
|
237
|
+
var content = token.content;
|
238
|
+
if (Array.isArray(content)) {
|
239
|
+
walkTokens(content);
|
240
|
+
} else {
|
241
|
+
walkTokens([content]);
|
242
|
+
}
|
243
|
+
}
|
244
|
+
}
|
245
|
+
}
|
246
|
+
walkTokens(embeddedTokens);
|
247
|
+
|
248
|
+
return new Prism.Token(language, embeddedTokens, 'language-' + language, code);
|
249
|
+
}
|
250
|
+
|
251
|
+
/**
|
252
|
+
* The languages for which JS templating will handle tagged template literals.
|
253
|
+
*
|
254
|
+
* JS templating isn't active for only JavaScript but also related languages like TypeScript, JSX, and TSX.
|
255
|
+
*/
|
256
|
+
var supportedLanguages = {
|
257
|
+
'javascript': true,
|
258
|
+
'js': true,
|
259
|
+
'typescript': true,
|
260
|
+
'ts': true,
|
261
|
+
'jsx': true,
|
262
|
+
'tsx': true,
|
263
|
+
};
|
264
|
+
Prism.hooks.add('after-tokenize', function (env) {
|
265
|
+
if (!(env.language in supportedLanguages)) {
|
266
|
+
return;
|
267
|
+
}
|
268
|
+
|
269
|
+
/**
|
270
|
+
* Finds and tokenizes all template strings with an embedded languages.
|
271
|
+
*
|
272
|
+
* @param {(Token | string)[]} tokens
|
273
|
+
* @returns {void}
|
274
|
+
*/
|
275
|
+
function findTemplateStrings(tokens) {
|
276
|
+
for (var i = 0, l = tokens.length; i < l; i++) {
|
277
|
+
var token = tokens[i];
|
278
|
+
|
279
|
+
if (typeof token === 'string') {
|
280
|
+
continue;
|
281
|
+
}
|
282
|
+
|
283
|
+
var content = token.content;
|
284
|
+
if (!Array.isArray(content)) {
|
285
|
+
if (typeof content !== 'string') {
|
286
|
+
findTemplateStrings([content]);
|
287
|
+
}
|
288
|
+
continue;
|
289
|
+
}
|
290
|
+
|
291
|
+
if (token.type === 'template-string') {
|
292
|
+
/**
|
293
|
+
* A JavaScript template-string token will look like this:
|
294
|
+
*
|
295
|
+
* ["template-string", [
|
296
|
+
* ["template-punctuation", "`"],
|
297
|
+
* (
|
298
|
+
* An array of "string" and "interpolation" tokens. This is the simple string case.
|
299
|
+
* or
|
300
|
+
* ["embedded-code", "..."] This is the token containing the embedded code.
|
301
|
+
* It also has an alias which is the language of the embedded code.
|
302
|
+
* ),
|
303
|
+
* ["template-punctuation", "`"]
|
304
|
+
* ]]
|
305
|
+
*/
|
306
|
+
|
307
|
+
var embedded = content[1];
|
308
|
+
if (content.length === 3 && typeof embedded !== 'string' && embedded.type === 'embedded-code') {
|
309
|
+
// get string content
|
310
|
+
var code = stringContent(embedded);
|
311
|
+
|
312
|
+
var alias = embedded.alias;
|
313
|
+
var language = Array.isArray(alias) ? alias[0] : alias;
|
314
|
+
|
315
|
+
var grammar = Prism.languages[language];
|
316
|
+
if (!grammar) {
|
317
|
+
// the embedded language isn't registered.
|
318
|
+
continue;
|
319
|
+
}
|
320
|
+
|
321
|
+
content[1] = tokenizeEmbedded(code, grammar, language);
|
322
|
+
}
|
323
|
+
} else {
|
324
|
+
findTemplateStrings(content);
|
325
|
+
}
|
326
|
+
}
|
327
|
+
}
|
328
|
+
|
329
|
+
findTemplateStrings(env.tokens);
|
330
|
+
});
|
331
|
+
|
332
|
+
|
333
|
+
/**
|
334
|
+
* Returns the string content of a token or token stream.
|
335
|
+
*
|
336
|
+
* @param {string | Token | (string | Token)[]} value
|
337
|
+
* @returns {string}
|
338
|
+
*/
|
339
|
+
function stringContent(value) {
|
340
|
+
if (typeof value === 'string') {
|
341
|
+
return value;
|
342
|
+
} else if (Array.isArray(value)) {
|
343
|
+
return value.map(stringContent).join('');
|
344
|
+
} else {
|
345
|
+
return stringContent(value.content);
|
346
|
+
}
|
347
|
+
}
|
348
|
+
|
349
|
+
}(Prism));
|
@@ -0,0 +1,78 @@
|
|
1
|
+
(function (Prism) {
|
2
|
+
|
3
|
+
var javascript = Prism.languages.javascript;
|
4
|
+
|
5
|
+
var type = /\{(?:[^{}]|\{(?:[^{}]|\{[^{}]*\})*\})+\}/.source;
|
6
|
+
var parameterPrefix = '(@(?:arg|argument|param|property)\\s+(?:' + type + '\\s+)?)';
|
7
|
+
|
8
|
+
Prism.languages.jsdoc = Prism.languages.extend('javadoclike', {
|
9
|
+
'parameter': {
|
10
|
+
// @param {string} foo - foo bar
|
11
|
+
pattern: RegExp(parameterPrefix + /(?:(?!\s)[$\w\xA0-\uFFFF.])+(?=\s|$)/.source),
|
12
|
+
lookbehind: true,
|
13
|
+
inside: {
|
14
|
+
'punctuation': /\./
|
15
|
+
}
|
16
|
+
}
|
17
|
+
});
|
18
|
+
|
19
|
+
Prism.languages.insertBefore('jsdoc', 'keyword', {
|
20
|
+
'optional-parameter': {
|
21
|
+
// @param {string} [baz.foo="bar"] foo bar
|
22
|
+
pattern: RegExp(parameterPrefix + /\[(?:(?!\s)[$\w\xA0-\uFFFF.])+(?:=[^[\]]+)?\](?=\s|$)/.source),
|
23
|
+
lookbehind: true,
|
24
|
+
inside: {
|
25
|
+
'parameter': {
|
26
|
+
pattern: /(^\[)[$\w\xA0-\uFFFF\.]+/,
|
27
|
+
lookbehind: true,
|
28
|
+
inside: {
|
29
|
+
'punctuation': /\./
|
30
|
+
}
|
31
|
+
},
|
32
|
+
'code': {
|
33
|
+
pattern: /(=)[\s\S]*(?=\]$)/,
|
34
|
+
lookbehind: true,
|
35
|
+
inside: javascript,
|
36
|
+
alias: 'language-javascript'
|
37
|
+
},
|
38
|
+
'punctuation': /[=[\]]/
|
39
|
+
}
|
40
|
+
},
|
41
|
+
'class-name': [
|
42
|
+
{
|
43
|
+
pattern: RegExp(/(@(?:augments|class|extends|interface|memberof!?|template|this|typedef)\s+(?:<TYPE>\s+)?)[A-Z]\w*(?:\.[A-Z]\w*)*/.source.replace(/<TYPE>/g, function () { return type; })),
|
44
|
+
lookbehind: true,
|
45
|
+
inside: {
|
46
|
+
'punctuation': /\./
|
47
|
+
}
|
48
|
+
},
|
49
|
+
{
|
50
|
+
pattern: RegExp('(@[a-z]+\\s+)' + type),
|
51
|
+
lookbehind: true,
|
52
|
+
inside: {
|
53
|
+
'string': javascript.string,
|
54
|
+
'number': javascript.number,
|
55
|
+
'boolean': javascript.boolean,
|
56
|
+
'keyword': Prism.languages.typescript.keyword,
|
57
|
+
'operator': /=>|\.\.\.|[&|?:*]/,
|
58
|
+
'punctuation': /[.,;=<>{}()[\]]/
|
59
|
+
}
|
60
|
+
}
|
61
|
+
],
|
62
|
+
'example': {
|
63
|
+
pattern: /(@example\s+(?!\s))(?:[^@\s]|\s+(?!\s))+?(?=\s*(?:\*\s*)?(?:@\w|\*\/))/,
|
64
|
+
lookbehind: true,
|
65
|
+
inside: {
|
66
|
+
'code': {
|
67
|
+
pattern: /^([\t ]*(?:\*\s*)?)\S.*$/m,
|
68
|
+
lookbehind: true,
|
69
|
+
inside: javascript,
|
70
|
+
alias: 'language-javascript'
|
71
|
+
}
|
72
|
+
}
|
73
|
+
}
|
74
|
+
});
|
75
|
+
|
76
|
+
Prism.languages.javadoclike.addSupport('javascript', Prism.languages.jsdoc);
|
77
|
+
|
78
|
+
}(Prism));
|
@@ -0,0 +1,27 @@
|
|
1
|
+
// https://www.json.org/json-en.html
|
2
|
+
Prism.languages.json = {
|
3
|
+
'property': {
|
4
|
+
pattern: /(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?=\s*:)/,
|
5
|
+
lookbehind: true,
|
6
|
+
greedy: true
|
7
|
+
},
|
8
|
+
'string': {
|
9
|
+
pattern: /(^|[^\\])"(?:\\.|[^\\"\r\n])*"(?!\s*:)/,
|
10
|
+
lookbehind: true,
|
11
|
+
greedy: true
|
12
|
+
},
|
13
|
+
'comment': {
|
14
|
+
pattern: /\/\/.*|\/\*[\s\S]*?(?:\*\/|$)/,
|
15
|
+
greedy: true
|
16
|
+
},
|
17
|
+
'number': /-?\b\d+(?:\.\d+)?(?:e[+-]?\d+)?\b/i,
|
18
|
+
'punctuation': /[{}[\],]/,
|
19
|
+
'operator': /:/,
|
20
|
+
'boolean': /\b(?:false|true)\b/,
|
21
|
+
'null': {
|
22
|
+
pattern: /\bnull\b/,
|
23
|
+
alias: 'keyword'
|
24
|
+
}
|
25
|
+
};
|
26
|
+
|
27
|
+
Prism.languages.webmanifest = Prism.languages.json;
|