prism-rails 1.19.0 → 1.29.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +9 -0
- data/README.md +22 -1
- data/lib/prism-rails/version.rb +1 -1
- data/vendor/assets/javascripts/languages/prism-abap.js +17 -17
- data/vendor/assets/javascripts/languages/prism-abnf.js +3 -3
- data/vendor/assets/javascripts/languages/prism-actionscript.js +6 -2
- data/vendor/assets/javascripts/languages/prism-ada.js +9 -6
- 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 +1 -1
- data/vendor/assets/javascripts/languages/prism-apacheconf.js +3 -3
- data/vendor/assets/javascripts/languages/prism-apex.js +65 -0
- data/vendor/assets/javascripts/languages/prism-apl.js +3 -3
- data/vendor/assets/javascripts/languages/prism-applescript.js +5 -8
- data/vendor/assets/javascripts/languages/prism-aql.js +14 -6
- data/vendor/assets/javascripts/languages/prism-arduino.js +5 -3
- data/vendor/assets/javascripts/languages/prism-arff.js +1 -1
- data/vendor/assets/javascripts/languages/prism-armasm.js +49 -0
- data/vendor/assets/javascripts/languages/prism-arturo.js +105 -0
- data/vendor/assets/javascripts/languages/prism-asciidoc.js +13 -13
- data/vendor/assets/javascripts/languages/prism-asm6502.js +15 -14
- data/vendor/assets/javascripts/languages/prism-asmatmel.js +43 -0
- data/vendor/assets/javascripts/languages/prism-aspnet.js +6 -6
- data/vendor/assets/javascripts/languages/prism-autohotkey.js +31 -14
- data/vendor/assets/javascripts/languages/prism-autoit.js +16 -16
- 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 +60 -22
- data/vendor/assets/javascripts/languages/prism-basic.js +4 -4
- data/vendor/assets/javascripts/languages/prism-batch.js +10 -10
- data/vendor/assets/javascripts/languages/prism-bbcode.js +3 -1
- 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/languages/prism-bison.js +2 -2
- data/vendor/assets/javascripts/languages/prism-bqn.js +63 -0
- data/vendor/assets/javascripts/languages/prism-brainfuck.js +1 -1
- data/vendor/assets/javascripts/languages/prism-brightscript.js +2 -2
- data/vendor/assets/javascripts/languages/prism-bro.js +9 -20
- data/vendor/assets/javascripts/languages/prism-bsl.js +75 -0
- data/vendor/assets/javascripts/languages/prism-c.js +53 -14
- 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 +5 -5
- 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 +7 -6
- data/vendor/assets/javascripts/languages/prism-clojure.js +20 -5
- data/vendor/assets/javascripts/languages/prism-cmake.js +7 -7
- data/vendor/assets/javascripts/languages/prism-cobol.js +53 -0
- data/vendor/assets/javascripts/languages/prism-coffeescript.js +79 -75
- data/vendor/assets/javascripts/languages/prism-concurnas.js +33 -20
- 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 +1087 -451
- data/vendor/assets/javascripts/languages/prism-cpp.js +99 -21
- data/vendor/assets/javascripts/languages/prism-crystal.js +36 -30
- data/vendor/assets/javascripts/languages/prism-csharp.js +343 -58
- data/vendor/assets/javascripts/languages/prism-cshtml.js +199 -0
- data/vendor/assets/javascripts/languages/prism-csp.js +67 -16
- data/vendor/assets/javascripts/languages/prism-css-extras.js +27 -16
- data/vendor/assets/javascripts/languages/prism-css.js +28 -26
- 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 +15 -10
- data/vendor/assets/javascripts/languages/prism-dart.js +76 -21
- 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 +15 -5
- data/vendor/assets/javascripts/languages/prism-django.js +8 -8
- data/vendor/assets/javascripts/languages/prism-dns-zone-file.js +3 -3
- data/vendor/assets/javascripts/languages/prism-docker.js +98 -11
- data/vendor/assets/javascripts/languages/prism-dot.js +76 -0
- data/vendor/assets/javascripts/languages/prism-ebnf.js +2 -2
- data/vendor/assets/javascripts/languages/prism-editorconfig.js +26 -0
- data/vendor/assets/javascripts/languages/prism-eiffel.js +5 -8
- data/vendor/assets/javascripts/languages/prism-ejs.js +4 -2
- data/vendor/assets/javascripts/languages/prism-elixir.js +21 -12
- data/vendor/assets/javascripts/languages/prism-elm.js +16 -15
- data/vendor/assets/javascripts/languages/prism-erb.js +12 -7
- data/vendor/assets/javascripts/languages/prism-erlang.js +6 -6
- data/vendor/assets/javascripts/languages/prism-excel-formula.js +66 -0
- data/vendor/assets/javascripts/languages/prism-factor.js +8 -8
- data/vendor/assets/javascripts/languages/prism-false.js +32 -0
- data/vendor/assets/javascripts/languages/prism-firestore-security-rules.js +2 -2
- data/vendor/assets/javascripts/languages/prism-flow.js +5 -5
- data/vendor/assets/javascripts/languages/prism-fortran.js +6 -6
- data/vendor/assets/javascripts/languages/prism-fsharp.js +20 -12
- data/vendor/assets/javascripts/languages/prism-ftl.js +12 -11
- data/vendor/assets/javascripts/languages/prism-gap.js +54 -0
- data/vendor/assets/javascripts/languages/prism-gcode.js +4 -3
- data/vendor/assets/javascripts/languages/prism-gdscript.js +2 -2
- data/vendor/assets/javascripts/languages/prism-gedcom.js +6 -6
- data/vendor/assets/javascripts/languages/prism-gettext.js +43 -0
- data/vendor/assets/javascripts/languages/prism-gherkin.js +7 -7
- data/vendor/assets/javascripts/languages/prism-git.js +3 -3
- data/vendor/assets/javascripts/languages/prism-glsl.js +2 -15
- data/vendor/assets/javascripts/languages/prism-gml.js +5 -5
- 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 +21 -5
- data/vendor/assets/javascripts/languages/prism-gradle.js +63 -0
- data/vendor/assets/javascripts/languages/prism-graphql.js +187 -7
- data/vendor/assets/javascripts/languages/prism-groovy.js +56 -58
- data/vendor/assets/javascripts/languages/prism-haml.js +23 -16
- data/vendor/assets/javascripts/languages/prism-handlebars.js +10 -7
- data/vendor/assets/javascripts/languages/prism-haskell.js +42 -14
- data/vendor/assets/javascripts/languages/prism-haxe.js +54 -21
- data/vendor/assets/javascripts/languages/prism-hcl.js +12 -14
- 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 +4 -10
- data/vendor/assets/javascripts/languages/prism-hsts.js +4 -10
- data/vendor/assets/javascripts/languages/prism-http.js +91 -17
- data/vendor/assets/javascripts/languages/prism-ichigojam.js +5 -5
- data/vendor/assets/javascripts/languages/prism-icon.js +2 -2
- 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/languages/prism-inform7.js +10 -10
- data/vendor/assets/javascripts/languages/prism-ini.js +39 -8
- data/vendor/assets/javascripts/languages/prism-io.js +10 -19
- data/vendor/assets/javascripts/languages/prism-j.js +7 -4
- data/vendor/assets/javascripts/languages/prism-java.js +80 -19
- data/vendor/assets/javascripts/languages/prism-javadoc.js +59 -31
- data/vendor/assets/javascripts/languages/prism-javadoclike.js +2 -2
- data/vendor/assets/javascripts/languages/prism-javascript.js +98 -17
- data/vendor/assets/javascripts/languages/prism-javastacktrace.js +63 -14
- data/vendor/assets/javascripts/languages/prism-jexl.js +14 -0
- data/vendor/assets/javascripts/languages/prism-jolie.js +23 -37
- data/vendor/assets/javascripts/languages/prism-jq.js +8 -6
- data/vendor/assets/javascripts/languages/prism-js-extras.js +34 -3
- data/vendor/assets/javascripts/languages/prism-js-templates.js +5 -2
- data/vendor/assets/javascripts/languages/prism-jsdoc.js +15 -10
- data/vendor/assets/javascripts/languages/prism-json.js +13 -5
- data/vendor/assets/javascripts/languages/prism-json5.js +3 -3
- data/vendor/assets/javascripts/languages/prism-jsonp.js +1 -1
- data/vendor/assets/javascripts/languages/prism-jsstacktrace.js +49 -0
- data/vendor/assets/javascripts/languages/prism-jsx.js +123 -104
- data/vendor/assets/javascripts/languages/prism-julia.js +31 -9
- data/vendor/assets/javascripts/languages/prism-keepalived.js +51 -0
- data/vendor/assets/javascripts/languages/prism-keyman.js +43 -13
- data/vendor/assets/javascripts/languages/prism-kotlin.js +56 -30
- 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 +6 -6
- data/vendor/assets/javascripts/languages/prism-latte.js +11 -17
- data/vendor/assets/javascripts/languages/prism-less.js +5 -5
- data/vendor/assets/javascripts/languages/prism-lilypond.js +3 -3
- data/vendor/assets/javascripts/languages/prism-linker-script.js +30 -0
- data/vendor/assets/javascripts/languages/prism-liquid.js +62 -8
- data/vendor/assets/javascripts/languages/prism-lisp.js +41 -41
- data/vendor/assets/javascripts/languages/prism-livescript.js +3 -3
- 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 +9 -9
- data/vendor/assets/javascripts/languages/prism-lua.js +3 -3
- data/vendor/assets/javascripts/languages/prism-magma.js +35 -0
- data/vendor/assets/javascripts/languages/prism-makefile.js +17 -17
- data/vendor/assets/javascripts/languages/prism-markdown.js +103 -32
- data/vendor/assets/javascripts/languages/prism-markup-templating.js +2 -1
- data/vendor/assets/javascripts/languages/prism-markup.js +95 -12
- data/vendor/assets/javascripts/languages/prism-mata.js +50 -0
- data/vendor/assets/javascripts/languages/prism-matlab.js +4 -4
- data/vendor/assets/javascripts/languages/prism-maxscript.js +91 -0
- data/vendor/assets/javascripts/languages/prism-mel.js +24 -21
- data/vendor/assets/javascripts/languages/prism-mermaid.js +113 -0
- data/vendor/assets/javascripts/languages/prism-metafont.js +84 -0
- data/vendor/assets/javascripts/languages/prism-mizar.js +3 -3
- data/vendor/assets/javascripts/languages/prism-mongodb.js +97 -0
- data/vendor/assets/javascripts/languages/prism-monkey.js +16 -18
- data/vendor/assets/javascripts/languages/prism-moonscript.js +1 -1
- data/vendor/assets/javascripts/languages/prism-n1ql.js +14 -8
- data/vendor/assets/javascripts/languages/prism-n4js.js +2 -2
- data/vendor/assets/javascripts/languages/prism-nand2tetris-hdl.js +3 -3
- data/vendor/assets/javascripts/languages/prism-naniscript.js +170 -0
- data/vendor/assets/javascripts/languages/prism-nasm.js +4 -4
- data/vendor/assets/javascripts/languages/prism-neon.js +5 -6
- data/vendor/assets/javascripts/languages/prism-nevod.js +125 -0
- data/vendor/assets/javascripts/languages/prism-nginx.js +54 -11
- data/vendor/assets/javascripts/languages/prism-nim.js +23 -12
- data/vendor/assets/javascripts/languages/prism-nix.js +10 -13
- data/vendor/assets/javascripts/languages/prism-nsis.js +10 -9
- data/vendor/assets/javascripts/languages/prism-objectivec.js +7 -2
- data/vendor/assets/javascripts/languages/prism-ocaml.js +32 -15
- data/vendor/assets/javascripts/languages/prism-odin.js +99 -0
- data/vendor/assets/javascripts/languages/prism-opencl.js +19 -12
- data/vendor/assets/javascripts/languages/prism-openqasm.js +23 -0
- data/vendor/assets/javascripts/languages/prism-oz.js +11 -8
- data/vendor/assets/javascripts/languages/prism-parigp.js +4 -4
- data/vendor/assets/javascripts/languages/prism-parser.js +3 -3
- data/vendor/assets/javascripts/languages/prism-pascal.js +24 -8
- data/vendor/assets/javascripts/languages/prism-pascaligo.js +7 -7
- data/vendor/assets/javascripts/languages/prism-pcaxis.js +2 -2
- data/vendor/assets/javascripts/languages/prism-peoplecode.js +42 -0
- data/vendor/assets/javascripts/languages/prism-perl.js +153 -188
- data/vendor/assets/javascripts/languages/prism-php-extras.js +8 -5
- data/vendor/assets/javascripts/languages/prism-php.js +275 -63
- data/vendor/assets/javascripts/languages/prism-phpdoc.js +1 -1
- data/vendor/assets/javascripts/languages/prism-plant-uml.js +103 -0
- data/vendor/assets/javascripts/languages/prism-plsql.js +16 -25
- data/vendor/assets/javascripts/languages/prism-powerquery.js +55 -0
- data/vendor/assets/javascripts/languages/prism-powershell.js +16 -18
- data/vendor/assets/javascripts/languages/prism-processing.js +6 -9
- data/vendor/assets/javascripts/languages/prism-prolog.js +7 -8
- data/vendor/assets/javascripts/languages/prism-promql.js +99 -0
- data/vendor/assets/javascripts/languages/prism-properties.js +9 -5
- data/vendor/assets/javascripts/languages/prism-protobuf.js +16 -9
- data/vendor/assets/javascripts/languages/prism-psl.js +35 -0
- data/vendor/assets/javascripts/languages/prism-pug.js +28 -21
- data/vendor/assets/javascripts/languages/prism-puppet.js +6 -6
- data/vendor/assets/javascripts/languages/prism-pure.js +9 -6
- 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 +12 -11
- data/vendor/assets/javascripts/languages/prism-q.js +4 -4
- data/vendor/assets/javascripts/languages/prism-qml.js +9 -6
- data/vendor/assets/javascripts/languages/prism-qore.js +5 -5
- data/vendor/assets/javascripts/languages/prism-qsharp.js +132 -0
- data/vendor/assets/javascripts/languages/prism-r.js +5 -5
- data/vendor/assets/javascripts/languages/prism-racket.js +18 -0
- data/vendor/assets/javascripts/languages/prism-reason.js +5 -8
- data/vendor/assets/javascripts/languages/prism-regex.js +54 -47
- data/vendor/assets/javascripts/languages/prism-rego.js +30 -0
- data/vendor/assets/javascripts/languages/prism-renpy.js +12 -12
- data/vendor/assets/javascripts/languages/prism-rescript.js +60 -0
- data/vendor/assets/javascripts/languages/prism-rest.js +16 -16
- data/vendor/assets/javascripts/languages/prism-rip.js +22 -16
- data/vendor/assets/javascripts/languages/prism-roboconf.js +3 -3
- data/vendor/assets/javascripts/languages/prism-robotframework.js +5 -5
- data/vendor/assets/javascripts/languages/prism-ruby.js +127 -88
- data/vendor/assets/javascripts/languages/prism-rust.js +120 -60
- data/vendor/assets/javascripts/languages/prism-sas.js +62 -38
- data/vendor/assets/javascripts/languages/prism-sass.js +15 -10
- data/vendor/assets/javascripts/languages/prism-scala.js +36 -3
- data/vendor/assets/javascripts/languages/prism-scheme.js +120 -33
- data/vendor/assets/javascripts/languages/prism-scss.js +11 -7
- data/vendor/assets/javascripts/languages/prism-shell-session.js +42 -26
- data/vendor/assets/javascripts/languages/prism-smali.js +87 -0
- data/vendor/assets/javascripts/languages/prism-smalltalk.js +12 -5
- data/vendor/assets/javascripts/languages/prism-smarty.js +91 -47
- data/vendor/assets/javascripts/languages/prism-sml.js +68 -0
- data/vendor/assets/javascripts/languages/prism-solidity.js +3 -1
- data/vendor/assets/javascripts/languages/prism-solution-file.js +2 -2
- data/vendor/assets/javascripts/languages/prism-soy.js +9 -9
- data/vendor/assets/javascripts/languages/prism-sparql.js +8 -8
- data/vendor/assets/javascripts/languages/prism-splunk-spl.js +3 -3
- data/vendor/assets/javascripts/languages/prism-sqf.js +7 -7
- data/vendor/assets/javascripts/languages/prism-sql.js +12 -4
- 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 +48 -16
- data/vendor/assets/javascripts/languages/prism-supercollider.js +36 -0
- data/vendor/assets/javascripts/languages/prism-swift.js +143 -20
- data/vendor/assets/javascripts/languages/prism-systemd.js +74 -0
- data/vendor/assets/javascripts/languages/prism-t4-templating.js +2 -2
- data/vendor/assets/javascripts/languages/prism-t4-vb.js +1 -1
- data/vendor/assets/javascripts/languages/prism-tap.js +13 -11
- data/vendor/assets/javascripts/languages/prism-tcl.js +8 -8
- data/vendor/assets/javascripts/languages/prism-textile.js +55 -29
- data/vendor/assets/javascripts/languages/prism-toml.js +14 -8
- data/vendor/assets/javascripts/languages/prism-tremor.js +72 -0
- data/vendor/assets/javascripts/languages/prism-tsx.js +15 -2
- data/vendor/assets/javascripts/languages/prism-tt2.js +7 -7
- data/vendor/assets/javascripts/languages/prism-turtle.js +4 -4
- data/vendor/assets/javascripts/languages/prism-twig.js +38 -40
- data/vendor/assets/javascripts/languages/prism-typescript.js +59 -6
- 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 +20 -10
- data/vendor/assets/javascripts/languages/prism-vbnet.js +11 -4
- data/vendor/assets/javascripts/languages/prism-velocity.js +6 -6
- data/vendor/assets/javascripts/languages/prism-verilog.js +14 -8
- data/vendor/assets/javascripts/languages/prism-vhdl.js +7 -4
- data/vendor/assets/javascripts/languages/prism-vim.js +4 -4
- data/vendor/assets/javascripts/languages/prism-visual-basic.js +9 -14
- data/vendor/assets/javascripts/languages/prism-warpscript.js +21 -0
- data/vendor/assets/javascripts/languages/prism-wasm.js +3 -3
- 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/languages/prism-wiki.js +4 -4
- 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 +8 -8
- data/vendor/assets/javascripts/languages/prism-xml-doc.js +40 -0
- data/vendor/assets/javascripts/languages/prism-xojo.js +9 -8
- data/vendor/assets/javascripts/languages/prism-xquery.js +7 -7
- data/vendor/assets/javascripts/languages/prism-yaml.js +19 -12
- data/vendor/assets/javascripts/languages/prism-yang.js +20 -0
- data/vendor/assets/javascripts/languages/prism-zig.js +19 -15
- data/vendor/assets/javascripts/prism-plugin/prism-autolinker.js +60 -65
- data/vendor/assets/javascripts/prism-plugin/prism-autoloader.js +199 -67
- data/vendor/assets/javascripts/prism-plugin/prism-command-line.js +212 -112
- data/vendor/assets/javascripts/prism-plugin/prism-copy-to-clipboard.js +128 -43
- data/vendor/assets/javascripts/prism-plugin/prism-custom-class.js +23 -8
- data/vendor/assets/javascripts/prism-plugin/prism-data-uri-highlight.js +2 -6
- data/vendor/assets/javascripts/prism-plugin/prism-diff-highlight.js +19 -12
- data/vendor/assets/javascripts/prism-plugin/prism-download-button.js +3 -2
- data/vendor/assets/javascripts/prism-plugin/prism-file-highlight.js +169 -63
- data/vendor/assets/javascripts/prism-plugin/prism-filter-highlight-all.js +5 -3
- data/vendor/assets/javascripts/prism-plugin/prism-highlight-keywords.js +10 -13
- data/vendor/assets/javascripts/prism-plugin/prism-inline-color.js +29 -12
- data/vendor/assets/javascripts/prism-plugin/prism-jsonp-highlight.js +179 -82
- data/vendor/assets/javascripts/prism-plugin/prism-keep-markup.js +53 -26
- data/vendor/assets/javascripts/prism-plugin/prism-line-highlight.js +217 -84
- data/vendor/assets/javascripts/prism-plugin/prism-line-numbers.js +152 -68
- data/vendor/assets/javascripts/prism-plugin/prism-match-braces.js +53 -47
- data/vendor/assets/javascripts/prism-plugin/prism-normalize-whitespace.js +203 -164
- data/vendor/assets/javascripts/prism-plugin/prism-previewers.js +61 -52
- data/vendor/assets/javascripts/prism-plugin/prism-remove-initial-line-feed.js +16 -16
- data/vendor/assets/javascripts/prism-plugin/prism-show-invisibles.js +4 -5
- data/vendor/assets/javascripts/prism-plugin/prism-show-language.js +147 -21
- data/vendor/assets/javascripts/prism-plugin/prism-toolbar.js +9 -8
- data/vendor/assets/javascripts/prism-plugin/prism-treeview.js +70 -0
- data/vendor/assets/javascripts/prism-plugin/prism-unescaped-markup.js +41 -23
- data/vendor/assets/javascripts/prism-plugin/prism-wpd.js +133 -148
- data/vendor/assets/javascripts/prism.js +96 -4
- 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.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-inline-color.css +26 -2
- data/vendor/assets/stylesheets/prism-plugin/prism-inline-color.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-line-highlight.css +21 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-line-highlight.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-line-numbers.css +0 -1
- data/vendor/assets/stylesheets/prism-plugin/prism-line-numbers.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-match-braces.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-previewers.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-previewers.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-show-invisibles.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-toolbar.css +13 -12
- 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.min.css +1 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-wpd.min.css +1 -0
- data/vendor/assets/stylesheets/prism-theme/prism-base16-ateliersulphurpool.light.css +3 -3
- data/vendor/assets/stylesheets/prism-theme/prism-cb.css +5 -35
- 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-coy-without-shadows.css +140 -0
- data/vendor/assets/stylesheets/prism-theme/prism-coy.css +5 -12
- data/vendor/assets/stylesheets/prism-theme/prism-coy.min.css +1 -0
- data/vendor/assets/stylesheets/prism-theme/prism-dark.min.css +1 -0
- data/vendor/assets/stylesheets/prism-theme/prism-duotone-dark.css +3 -3
- data/vendor/assets/stylesheets/prism-theme/prism-duotone-earth.css +3 -3
- data/vendor/assets/stylesheets/prism-theme/prism-duotone-forest.css +3 -3
- data/vendor/assets/stylesheets/prism-theme/prism-duotone-light.css +3 -3
- data/vendor/assets/stylesheets/prism-theme/prism-duotone-sea.css +3 -3
- data/vendor/assets/stylesheets/prism-theme/prism-duotone-space.css +3 -3
- data/vendor/assets/stylesheets/prism-theme/prism-funky.min.css +1 -0
- 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-laserwave.css +133 -0
- data/vendor/assets/stylesheets/prism-theme/prism-lucario.css +122 -0
- data/vendor/assets/stylesheets/prism-theme/prism-night-owl.css +158 -0
- data/vendor/assets/stylesheets/prism-theme/prism-okaidia.css +1 -1
- 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-shades-of-purple.css +3 -7
- data/vendor/assets/stylesheets/prism-theme/prism-solarized-dark-atom.css +143 -0
- data/vendor/assets/stylesheets/prism-theme/prism-solarizedlight.min.css +1 -0
- data/vendor/assets/stylesheets/prism-theme/prism-tomorrow.min.css +1 -0
- data/vendor/assets/stylesheets/prism-theme/prism-twilight.css +3 -33
- data/vendor/assets/stylesheets/prism-theme/prism-twilight.min.css +1 -0
- data/vendor/assets/stylesheets/prism-theme/prism-vs.css +7 -3
- data/vendor/assets/stylesheets/prism-theme/prism-vsc-dark-plus.css +108 -49
- data/vendor/assets/stylesheets/prism-theme/prism-xonokai.css +3 -30
- data/vendor/assets/stylesheets/prism-theme/prism-z-touch.css +160 -0
- data/vendor/assets/stylesheets/prism.css +1 -0
- metadata +133 -6
@@ -1,25 +1,148 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
pattern: /(
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
1
|
+
Prism.languages.swift = {
|
2
|
+
'comment': {
|
3
|
+
// Nested comments are supported up to 2 levels
|
4
|
+
pattern: /(^|[^\\:])(?:\/\/.*|\/\*(?:[^/*]|\/(?!\*)|\*(?!\/)|\/\*(?:[^*]|\*(?!\/))*\*\/)*\*\/)/,
|
5
|
+
lookbehind: true,
|
6
|
+
greedy: true
|
7
|
+
},
|
8
|
+
'string-literal': [
|
9
|
+
// https://docs.swift.org/swift-book/LanguageGuide/StringsAndCharacters.html
|
10
|
+
{
|
11
|
+
pattern: RegExp(
|
12
|
+
/(^|[^"#])/.source
|
13
|
+
+ '(?:'
|
14
|
+
// single-line string
|
15
|
+
+ /"(?:\\(?:\((?:[^()]|\([^()]*\))*\)|\r\n|[^(])|[^\\\r\n"])*"/.source
|
16
|
+
+ '|'
|
17
|
+
// multi-line string
|
18
|
+
+ /"""(?:\\(?:\((?:[^()]|\([^()]*\))*\)|[^(])|[^\\"]|"(?!""))*"""/.source
|
19
|
+
+ ')'
|
20
|
+
+ /(?!["#])/.source
|
21
|
+
),
|
22
|
+
lookbehind: true,
|
23
|
+
greedy: true,
|
24
|
+
inside: {
|
25
|
+
'interpolation': {
|
26
|
+
pattern: /(\\\()(?:[^()]|\([^()]*\))*(?=\))/,
|
27
|
+
lookbehind: true,
|
28
|
+
inside: null // see below
|
29
|
+
},
|
30
|
+
'interpolation-punctuation': {
|
31
|
+
pattern: /^\)|\\\($/,
|
32
|
+
alias: 'punctuation'
|
33
|
+
},
|
34
|
+
'punctuation': /\\(?=[\r\n])/,
|
35
|
+
'string': /[\s\S]+/
|
36
|
+
}
|
37
|
+
},
|
38
|
+
{
|
39
|
+
pattern: RegExp(
|
40
|
+
/(^|[^"#])(#+)/.source
|
41
|
+
+ '(?:'
|
42
|
+
// single-line string
|
43
|
+
+ /"(?:\\(?:#+\((?:[^()]|\([^()]*\))*\)|\r\n|[^#])|[^\\\r\n])*?"/.source
|
44
|
+
+ '|'
|
45
|
+
// multi-line string
|
46
|
+
+ /"""(?:\\(?:#+\((?:[^()]|\([^()]*\))*\)|[^#])|[^\\])*?"""/.source
|
47
|
+
+ ')'
|
48
|
+
+ '\\2'
|
49
|
+
),
|
50
|
+
lookbehind: true,
|
51
|
+
greedy: true,
|
52
|
+
inside: {
|
53
|
+
'interpolation': {
|
54
|
+
pattern: /(\\#+\()(?:[^()]|\([^()]*\))*(?=\))/,
|
55
|
+
lookbehind: true,
|
56
|
+
inside: null // see below
|
57
|
+
},
|
58
|
+
'interpolation-punctuation': {
|
59
|
+
pattern: /^\)|\\#+\($/,
|
60
|
+
alias: 'punctuation'
|
61
|
+
},
|
62
|
+
'string': /[\s\S]+/
|
16
63
|
}
|
64
|
+
},
|
65
|
+
],
|
66
|
+
|
67
|
+
'directive': {
|
68
|
+
// directives with conditions
|
69
|
+
pattern: RegExp(
|
70
|
+
/#/.source
|
71
|
+
+ '(?:'
|
72
|
+
+ (
|
73
|
+
/(?:elseif|if)\b/.source
|
74
|
+
+ '(?:[ \t]*'
|
75
|
+
// This regex is a little complex. It's equivalent to this:
|
76
|
+
// (?:![ \t]*)?(?:\b\w+\b(?:[ \t]*<round>)?|<round>)(?:[ \t]*(?:&&|\|\|))?
|
77
|
+
// where <round> is a general parentheses expression.
|
78
|
+
+ /(?:![ \t]*)?(?:\b\w+\b(?:[ \t]*\((?:[^()]|\([^()]*\))*\))?|\((?:[^()]|\([^()]*\))*\))(?:[ \t]*(?:&&|\|\|))?/.source
|
79
|
+
+ ')+'
|
80
|
+
)
|
81
|
+
+ '|'
|
82
|
+
+ /(?:else|endif)\b/.source
|
83
|
+
+ ')'
|
84
|
+
),
|
85
|
+
alias: 'property',
|
86
|
+
inside: {
|
87
|
+
'directive-name': /^#\w+/,
|
88
|
+
'boolean': /\b(?:false|true)\b/,
|
89
|
+
'number': /\b\d+(?:\.\d+)*\b/,
|
90
|
+
'operator': /!|&&|\|\||[<>]=?/,
|
91
|
+
'punctuation': /[(),]/
|
17
92
|
}
|
18
93
|
},
|
19
|
-
'
|
94
|
+
'literal': {
|
95
|
+
pattern: /#(?:colorLiteral|column|dsohandle|file(?:ID|Literal|Path)?|function|imageLiteral|line)\b/,
|
96
|
+
alias: 'constant'
|
97
|
+
},
|
98
|
+
'other-directive': {
|
99
|
+
pattern: /#\w+\b/,
|
100
|
+
alias: 'property'
|
101
|
+
},
|
102
|
+
|
103
|
+
'attribute': {
|
104
|
+
pattern: /@\w+/,
|
105
|
+
alias: 'atrule'
|
106
|
+
},
|
107
|
+
|
108
|
+
'function-definition': {
|
109
|
+
pattern: /(\bfunc\s+)\w+/,
|
110
|
+
lookbehind: true,
|
111
|
+
alias: 'function'
|
112
|
+
},
|
113
|
+
'label': {
|
114
|
+
// https://docs.swift.org/swift-book/LanguageGuide/ControlFlow.html#ID141
|
115
|
+
pattern: /\b(break|continue)\s+\w+|\b[a-zA-Z_]\w*(?=\s*:\s*(?:for|repeat|while)\b)/,
|
116
|
+
lookbehind: true,
|
117
|
+
alias: 'important'
|
118
|
+
},
|
119
|
+
|
120
|
+
'keyword': /\b(?:Any|Protocol|Self|Type|actor|as|assignment|associatedtype|associativity|async|await|break|case|catch|class|continue|convenience|default|defer|deinit|didSet|do|dynamic|else|enum|extension|fallthrough|fileprivate|final|for|func|get|guard|higherThan|if|import|in|indirect|infix|init|inout|internal|is|isolated|lazy|left|let|lowerThan|mutating|none|nonisolated|nonmutating|open|operator|optional|override|postfix|precedencegroup|prefix|private|protocol|public|repeat|required|rethrows|return|right|safe|self|set|some|static|struct|subscript|super|switch|throw|throws|try|typealias|unowned|unsafe|var|weak|where|while|willSet)\b/,
|
121
|
+
'boolean': /\b(?:false|true)\b/,
|
122
|
+
'nil': {
|
123
|
+
pattern: /\bnil\b/,
|
124
|
+
alias: 'constant'
|
125
|
+
},
|
126
|
+
|
127
|
+
'short-argument': /\$\d+\b/,
|
128
|
+
'omit': {
|
129
|
+
pattern: /\b_\b/,
|
130
|
+
alias: 'keyword'
|
131
|
+
},
|
20
132
|
'number': /\b(?:[\d_]+(?:\.[\de_]+)?|0x[a-f0-9_]+(?:\.[a-f0-9p_]+)?|0b[01_]+|0o[0-7_]+)\b/i,
|
21
|
-
|
22
|
-
|
23
|
-
'
|
133
|
+
|
134
|
+
// A class name must start with an upper-case letter and be either 1 letter long or contain a lower-case letter.
|
135
|
+
'class-name': /\b[A-Z](?:[A-Z_\d]*[a-z]\w*)?\b/,
|
136
|
+
'function': /\b[a-z_]\w*(?=\s*\()/i,
|
137
|
+
'constant': /\b(?:[A-Z_]{2,}|k[A-Z][A-Za-z_]+)\b/,
|
138
|
+
|
139
|
+
// Operators are generic in Swift. Developers can even create new operators (e.g. +++).
|
140
|
+
// https://docs.swift.org/swift-book/ReferenceManual/zzSummaryOfTheGrammar.html#ID481
|
141
|
+
// This regex only supports ASCII operators.
|
142
|
+
'operator': /[-+*/%=!<>&|^~?]+|\.[.\-+*/%=!<>&|^~?]+/,
|
143
|
+
'punctuation': /[{}[\]();,.:\\]/
|
144
|
+
};
|
145
|
+
|
146
|
+
Prism.languages.swift['string-literal'].forEach(function (rule) {
|
147
|
+
rule.inside['interpolation'].inside = Prism.languages.swift;
|
24
148
|
});
|
25
|
-
Prism.languages.swift['string'].inside['interpolation'].inside.rest = Prism.languages.swift;
|
@@ -0,0 +1,74 @@
|
|
1
|
+
// https://www.freedesktop.org/software/systemd/man/systemd.syntax.html
|
2
|
+
|
3
|
+
(function (Prism) {
|
4
|
+
|
5
|
+
var comment = {
|
6
|
+
pattern: /^[;#].*/m,
|
7
|
+
greedy: true
|
8
|
+
};
|
9
|
+
|
10
|
+
var quotesSource = /"(?:[^\r\n"\\]|\\(?:[^\r]|\r\n?))*"(?!\S)/.source;
|
11
|
+
|
12
|
+
Prism.languages.systemd = {
|
13
|
+
'comment': comment,
|
14
|
+
|
15
|
+
'section': {
|
16
|
+
pattern: /^\[[^\n\r\[\]]*\](?=[ \t]*$)/m,
|
17
|
+
greedy: true,
|
18
|
+
inside: {
|
19
|
+
'punctuation': /^\[|\]$/,
|
20
|
+
'section-name': {
|
21
|
+
pattern: /[\s\S]+/,
|
22
|
+
alias: 'selector'
|
23
|
+
},
|
24
|
+
}
|
25
|
+
},
|
26
|
+
|
27
|
+
'key': {
|
28
|
+
pattern: /^[^\s=]+(?=[ \t]*=)/m,
|
29
|
+
greedy: true,
|
30
|
+
alias: 'attr-name'
|
31
|
+
},
|
32
|
+
'value': {
|
33
|
+
// This pattern is quite complex because of two properties:
|
34
|
+
// 1) Quotes (strings) must be preceded by a space. Since we can't use lookbehinds, we have to "resolve"
|
35
|
+
// the lookbehind. You will see this in the main loop where spaces are handled separately.
|
36
|
+
// 2) Line continuations.
|
37
|
+
// After line continuations, empty lines and comments are ignored so we have to consume them.
|
38
|
+
pattern: RegExp(
|
39
|
+
/(=[ \t]*(?!\s))/.source +
|
40
|
+
// the value either starts with quotes or not
|
41
|
+
'(?:' + quotesSource + '|(?=[^"\r\n]))' +
|
42
|
+
// main loop
|
43
|
+
'(?:' + (
|
44
|
+
/[^\s\\]/.source +
|
45
|
+
// handle spaces separately because of quotes
|
46
|
+
'|' + '[ \t]+(?:(?![ \t"])|' + quotesSource + ')' +
|
47
|
+
// line continuation
|
48
|
+
'|' + /\\[\r\n]+(?:[#;].*[\r\n]+)*(?![#;])/.source
|
49
|
+
) +
|
50
|
+
')*'
|
51
|
+
),
|
52
|
+
lookbehind: true,
|
53
|
+
greedy: true,
|
54
|
+
alias: 'attr-value',
|
55
|
+
inside: {
|
56
|
+
'comment': comment,
|
57
|
+
'quoted': {
|
58
|
+
pattern: RegExp(/(^|\s)/.source + quotesSource),
|
59
|
+
lookbehind: true,
|
60
|
+
greedy: true,
|
61
|
+
},
|
62
|
+
'punctuation': /\\$/m,
|
63
|
+
|
64
|
+
'boolean': {
|
65
|
+
pattern: /^(?:false|no|off|on|true|yes)$/,
|
66
|
+
greedy: true
|
67
|
+
}
|
68
|
+
}
|
69
|
+
},
|
70
|
+
|
71
|
+
'punctuation': /=/
|
72
|
+
};
|
73
|
+
|
74
|
+
}(Prism));
|
@@ -33,8 +33,8 @@
|
|
33
33
|
'punctuation': /^=|^["']|["']$/
|
34
34
|
}
|
35
35
|
},
|
36
|
-
'keyword': /\w+(?=\s)/,
|
37
|
-
'attr-name': /\w+/
|
36
|
+
'keyword': /\b\w+(?=\s)/,
|
37
|
+
'attr-name': /\b\w+/
|
38
38
|
}),
|
39
39
|
'expression': createBlock('=', grammar, className),
|
40
40
|
'class-feature': createBlock('\\+', grammar, className),
|
@@ -1 +1 @@
|
|
1
|
-
Prism.languages['t4-vb'] = Prism.languages['t4-templating'].createT4('
|
1
|
+
Prism.languages['t4-vb'] = Prism.languages['t4-templating'].createT4('vbnet');
|
@@ -1,18 +1,20 @@
|
|
1
|
+
// https://en.wikipedia.org/wiki/Test_Anything_Protocol
|
2
|
+
|
1
3
|
Prism.languages.tap = {
|
2
|
-
fail: /not ok[^#{\n\r]*/,
|
3
|
-
pass: /ok[^#{\n\r]*/,
|
4
|
-
pragma: /pragma [+-][a-z]+/,
|
5
|
-
bailout: /bail out!.*/i,
|
6
|
-
version: /TAP version \d+/i,
|
7
|
-
plan: /\d+\.\.\d+(?: +#.*)?/,
|
8
|
-
subtest: {
|
4
|
+
'fail': /not ok[^#{\n\r]*/,
|
5
|
+
'pass': /ok[^#{\n\r]*/,
|
6
|
+
'pragma': /pragma [+-][a-z]+/,
|
7
|
+
'bailout': /bail out!.*/i,
|
8
|
+
'version': /TAP version \d+/i,
|
9
|
+
'plan': /\b\d+\.\.\d+(?: +#.*)?/,
|
10
|
+
'subtest': {
|
9
11
|
pattern: /# Subtest(?:: .*)?/,
|
10
12
|
greedy: true
|
11
13
|
},
|
12
|
-
punctuation: /[{}]/,
|
13
|
-
directive: /#.*/,
|
14
|
-
yamlish: {
|
15
|
-
pattern: /(^[
|
14
|
+
'punctuation': /[{}]/,
|
15
|
+
'directive': /#.*/,
|
16
|
+
'yamlish': {
|
17
|
+
pattern: /(^[ \t]*)---[\s\S]*?[\r\n][ \t]*\.\.\.$/m,
|
16
18
|
lookbehind: true,
|
17
19
|
inside: Prism.languages.yaml,
|
18
20
|
alias: 'language-yaml'
|
@@ -13,34 +13,34 @@ Prism.languages.tcl = {
|
|
13
13
|
lookbehind: true
|
14
14
|
},
|
15
15
|
{
|
16
|
-
pattern: /(\$){[^}]
|
16
|
+
pattern: /(\$)\{[^}]+\}/,
|
17
17
|
lookbehind: true
|
18
18
|
},
|
19
19
|
{
|
20
|
-
pattern: /(
|
20
|
+
pattern: /(^[\t ]*set[ \t]+)(?:::)?(?:[a-zA-Z0-9]+::)*\w+/m,
|
21
21
|
lookbehind: true
|
22
22
|
}
|
23
23
|
],
|
24
24
|
'function': {
|
25
|
-
pattern: /(
|
25
|
+
pattern: /(^[\t ]*proc[ \t]+)\S+/m,
|
26
26
|
lookbehind: true
|
27
27
|
},
|
28
28
|
'builtin': [
|
29
29
|
{
|
30
|
-
pattern: /(
|
30
|
+
pattern: /(^[\t ]*)(?:break|class|continue|error|eval|exit|for|foreach|if|proc|return|switch|while)\b/m,
|
31
31
|
lookbehind: true
|
32
32
|
},
|
33
|
-
/\b(?:elseif
|
33
|
+
/\b(?:else|elseif)\b/
|
34
34
|
],
|
35
35
|
'scope': {
|
36
|
-
pattern: /(
|
36
|
+
pattern: /(^[\t ]*)(?:global|upvar|variable)\b/m,
|
37
37
|
lookbehind: true,
|
38
38
|
alias: 'constant'
|
39
39
|
},
|
40
40
|
'keyword': {
|
41
|
-
pattern: /(
|
41
|
+
pattern: /(^[\t ]*|\[)(?:Safe_Base|Tcl|after|append|apply|array|auto_(?:execok|import|load|mkindex|qualify|reset)|automkindex_old|bgerror|binary|catch|cd|chan|clock|close|concat|dde|dict|encoding|eof|exec|expr|fblocked|fconfigure|fcopy|file(?:event|name)?|flush|gets|glob|history|http|incr|info|interp|join|lappend|lassign|lindex|linsert|list|llength|load|lrange|lrepeat|lreplace|lreverse|lsearch|lset|lsort|math(?:func|op)|memory|msgcat|namespace|open|package|parray|pid|pkg_mkIndex|platform|puts|pwd|re_syntax|read|refchan|regexp|registry|regsub|rename|scan|seek|set|socket|source|split|string|subst|tcl(?:_endOfWord|_findLibrary|startOf(?:Next|Previous)Word|test|vars|wordBreak(?:After|Before))|tell|time|tm|trace|unknown|unload|unset|update|uplevel|vwait)\b/m,
|
42
42
|
lookbehind: true
|
43
43
|
},
|
44
|
-
'operator': /!=?|\*\*?|==|&&?|\|\|?|<[=<]?|>[=>]?|[-+~\/%?^]|\b(?:eq|ne|
|
44
|
+
'operator': /!=?|\*\*?|==|&&?|\|\|?|<[=<]?|>[=>]?|[-+~\/%?^]|\b(?:eq|in|ne|ni)\b/,
|
45
45
|
'punctuation': /[{}()\[\]]/
|
46
46
|
};
|
@@ -1,21 +1,36 @@
|
|
1
1
|
(function (Prism) {
|
2
2
|
// We don't allow for pipes inside parentheses
|
3
3
|
// to not break table pattern |(. foo |). bar |
|
4
|
-
var modifierRegex =
|
4
|
+
var modifierRegex = /\([^|()\n]+\)|\[[^\]\n]+\]|\{[^}\n]+\}/.source;
|
5
|
+
// Opening and closing parentheses which are not a modifier
|
6
|
+
// This pattern is necessary to prevent exponential backtracking
|
7
|
+
var parenthesesRegex = /\)|\((?![^|()\n]+\))/.source;
|
8
|
+
/**
|
9
|
+
* @param {string} source
|
10
|
+
* @param {string} [flags]
|
11
|
+
*/
|
12
|
+
function withModifier(source, flags) {
|
13
|
+
return RegExp(
|
14
|
+
source
|
15
|
+
.replace(/<MOD>/g, function () { return '(?:' + modifierRegex + ')'; })
|
16
|
+
.replace(/<PAR>/g, function () { return '(?:' + parenthesesRegex + ')'; }),
|
17
|
+
flags || '');
|
18
|
+
}
|
19
|
+
|
5
20
|
var modifierTokens = {
|
6
21
|
'css': {
|
7
|
-
pattern: /\{[^}]+\}/,
|
22
|
+
pattern: /\{[^{}]+\}/,
|
8
23
|
inside: {
|
9
24
|
rest: Prism.languages.css
|
10
25
|
}
|
11
26
|
},
|
12
27
|
'class-id': {
|
13
|
-
pattern: /(\()[^)]+(?=\))/,
|
28
|
+
pattern: /(\()[^()]+(?=\))/,
|
14
29
|
lookbehind: true,
|
15
30
|
alias: 'attr-value'
|
16
31
|
},
|
17
32
|
'lang': {
|
18
|
-
pattern: /(\[)[^\]]+(?=\])/,
|
33
|
+
pattern: /(\[)[^\[\]]+(?=\])/,
|
19
34
|
lookbehind: true,
|
20
35
|
alias: 'attr-value'
|
21
36
|
},
|
@@ -32,10 +47,10 @@
|
|
32
47
|
|
33
48
|
// h1. Header 1
|
34
49
|
'block-tag': {
|
35
|
-
pattern:
|
50
|
+
pattern: withModifier(/^[a-z]\w*(?:<MOD>|<PAR>|[<>=])*\./.source),
|
36
51
|
inside: {
|
37
52
|
'modifier': {
|
38
|
-
pattern:
|
53
|
+
pattern: withModifier(/(^[a-z]\w*)(?:<MOD>|<PAR>|[<>=])+(?=\.)/.source),
|
39
54
|
lookbehind: true,
|
40
55
|
inside: modifierTokens
|
41
56
|
},
|
@@ -47,10 +62,10 @@
|
|
47
62
|
// # List item
|
48
63
|
// * List item
|
49
64
|
'list': {
|
50
|
-
pattern:
|
65
|
+
pattern: withModifier(/^[*#]+<MOD>*\s+\S.*/.source, 'm'),
|
51
66
|
inside: {
|
52
67
|
'modifier': {
|
53
|
-
pattern:
|
68
|
+
pattern: withModifier(/(^[*#]+)<MOD>+/.source),
|
54
69
|
lookbehind: true,
|
55
70
|
inside: modifierTokens
|
56
71
|
},
|
@@ -62,12 +77,12 @@
|
|
62
77
|
'table': {
|
63
78
|
// Modifiers can be applied to the row: {color:red}.|1|2|3|
|
64
79
|
// or the cell: |{color:red}.1|2|3|
|
65
|
-
pattern:
|
80
|
+
pattern: withModifier(/^(?:(?:<MOD>|<PAR>|[<>=^~])+\.\s*)?(?:\|(?:(?:<MOD>|<PAR>|[<>=^~_]|[\\/]\d+)+\.|(?!(?:<MOD>|<PAR>|[<>=^~_]|[\\/]\d+)+\.))[^|]*)+\|/.source, 'm'),
|
66
81
|
inside: {
|
67
82
|
'modifier': {
|
68
83
|
// Modifiers for rows after the first one are
|
69
84
|
// preceded by a pipe and a line feed
|
70
|
-
pattern:
|
85
|
+
pattern: withModifier(/(^|\|(?:\r?\n|\r)?)(?:<MOD>|<PAR>|[<>=^~_]|[\\/]\d+)+(?=\.)/.source),
|
71
86
|
lookbehind: true,
|
72
87
|
inside: modifierTokens
|
73
88
|
},
|
@@ -76,56 +91,65 @@
|
|
76
91
|
},
|
77
92
|
|
78
93
|
'inline': {
|
79
|
-
|
94
|
+
// eslint-disable-next-line regexp/no-super-linear-backtracking
|
95
|
+
pattern: withModifier(/(^|[^a-zA-Z\d])(\*\*|__|\?\?|[*_%@+\-^~])<MOD>*.+?\2(?![a-zA-Z\d])/.source),
|
96
|
+
lookbehind: true,
|
80
97
|
inside: {
|
81
98
|
// Note: superscripts and subscripts are not handled specifically
|
82
99
|
|
83
100
|
// *bold*, **bold**
|
84
101
|
'bold': {
|
85
|
-
|
102
|
+
// eslint-disable-next-line regexp/no-super-linear-backtracking
|
103
|
+
pattern: withModifier(/(^(\*\*?)<MOD>*).+?(?=\2)/.source),
|
86
104
|
lookbehind: true
|
87
105
|
},
|
88
106
|
|
89
107
|
// _italic_, __italic__
|
90
108
|
'italic': {
|
91
|
-
|
109
|
+
// eslint-disable-next-line regexp/no-super-linear-backtracking
|
110
|
+
pattern: withModifier(/(^(__?)<MOD>*).+?(?=\2)/.source),
|
92
111
|
lookbehind: true
|
93
112
|
},
|
94
113
|
|
95
114
|
// ??cite??
|
96
115
|
'cite': {
|
97
|
-
|
116
|
+
// eslint-disable-next-line regexp/no-super-linear-backtracking
|
117
|
+
pattern: withModifier(/(^\?\?<MOD>*).+?(?=\?\?)/.source),
|
98
118
|
lookbehind: true,
|
99
119
|
alias: 'string'
|
100
120
|
},
|
101
121
|
|
102
122
|
// @code@
|
103
123
|
'code': {
|
104
|
-
|
124
|
+
// eslint-disable-next-line regexp/no-super-linear-backtracking
|
125
|
+
pattern: withModifier(/(^@<MOD>*).+?(?=@)/.source),
|
105
126
|
lookbehind: true,
|
106
127
|
alias: 'keyword'
|
107
128
|
},
|
108
129
|
|
109
130
|
// +inserted+
|
110
131
|
'inserted': {
|
111
|
-
|
132
|
+
// eslint-disable-next-line regexp/no-super-linear-backtracking
|
133
|
+
pattern: withModifier(/(^\+<MOD>*).+?(?=\+)/.source),
|
112
134
|
lookbehind: true
|
113
135
|
},
|
114
136
|
|
115
137
|
// -deleted-
|
116
138
|
'deleted': {
|
117
|
-
|
139
|
+
// eslint-disable-next-line regexp/no-super-linear-backtracking
|
140
|
+
pattern: withModifier(/(^-<MOD>*).+?(?=-)/.source),
|
118
141
|
lookbehind: true
|
119
142
|
},
|
120
143
|
|
121
144
|
// %span%
|
122
145
|
'span': {
|
123
|
-
|
146
|
+
// eslint-disable-next-line regexp/no-super-linear-backtracking
|
147
|
+
pattern: withModifier(/(^%<MOD>*).+?(?=%)/.source),
|
124
148
|
lookbehind: true
|
125
149
|
},
|
126
150
|
|
127
151
|
'modifier': {
|
128
|
-
pattern:
|
152
|
+
pattern: withModifier(/(^\*\*|__|\?\?|[*_%@+\-^~])<MOD>+/.source),
|
129
153
|
lookbehind: true,
|
130
154
|
inside: modifierTokens
|
131
155
|
},
|
@@ -138,11 +162,11 @@
|
|
138
162
|
pattern: /^\[[^\]]+\]\S+$/m,
|
139
163
|
inside: {
|
140
164
|
'string': {
|
141
|
-
pattern: /(
|
165
|
+
pattern: /(^\[)[^\]]+(?=\])/,
|
142
166
|
lookbehind: true
|
143
167
|
},
|
144
168
|
'url': {
|
145
|
-
pattern: /(
|
169
|
+
pattern: /(^\])\S+$/,
|
146
170
|
lookbehind: true
|
147
171
|
},
|
148
172
|
'punctuation': /[\[\]]/
|
@@ -152,14 +176,16 @@
|
|
152
176
|
// "text":http://example.com
|
153
177
|
// "text":link-ref
|
154
178
|
'link': {
|
155
|
-
|
179
|
+
// eslint-disable-next-line regexp/no-super-linear-backtracking
|
180
|
+
pattern: withModifier(/"<MOD>*[^"]+":.+?(?=[^\w/]?(?:\s|$))/.source),
|
156
181
|
inside: {
|
157
182
|
'text': {
|
158
|
-
|
183
|
+
// eslint-disable-next-line regexp/no-super-linear-backtracking
|
184
|
+
pattern: withModifier(/(^"<MOD>*)[^"]+(?=")/.source),
|
159
185
|
lookbehind: true
|
160
186
|
},
|
161
187
|
'modifier': {
|
162
|
-
pattern:
|
188
|
+
pattern: withModifier(/(^")<MOD>+/.source),
|
163
189
|
lookbehind: true,
|
164
190
|
inside: modifierTokens
|
165
191
|
},
|
@@ -174,15 +200,15 @@
|
|
174
200
|
// !image.jpg!
|
175
201
|
// !image.jpg(Title)!:http://example.com
|
176
202
|
'image': {
|
177
|
-
pattern:
|
203
|
+
pattern: withModifier(/!(?:<MOD>|<PAR>|[<>=])*(?![<>=])[^!\s()]+(?:\([^)]+\))?!(?::.+?(?=[^\w/]?(?:\s|$)))?/.source),
|
178
204
|
inside: {
|
179
205
|
'source': {
|
180
|
-
pattern:
|
206
|
+
pattern: withModifier(/(^!(?:<MOD>|<PAR>|[<>=])*)(?![<>=])[^!\s()]+(?:\([^)]+\))?(?=!)/.source),
|
181
207
|
lookbehind: true,
|
182
208
|
alias: 'url'
|
183
209
|
},
|
184
210
|
'modifier': {
|
185
|
-
pattern:
|
211
|
+
pattern: withModifier(/(^!)(?:<MOD>|<PAR>|[<>=])+/.source),
|
186
212
|
lookbehind: true,
|
187
213
|
inside: modifierTokens
|
188
214
|
},
|
@@ -208,7 +234,7 @@
|
|
208
234
|
pattern: /\b[A-Z\d]+\([^)]+\)/,
|
209
235
|
inside: {
|
210
236
|
'comment': {
|
211
|
-
pattern: /(\()[^)]+(?=\))/,
|
237
|
+
pattern: /(\()[^()]+(?=\))/,
|
212
238
|
lookbehind: true
|
213
239
|
},
|
214
240
|
'punctuation': /[()]/
|
@@ -217,7 +243,7 @@
|
|
217
243
|
|
218
244
|
// Prism(C)
|
219
245
|
'mark': {
|
220
|
-
pattern: /\b\((?:
|
246
|
+
pattern: /\b\((?:C|R|TM)\)/,
|
221
247
|
alias: 'comment',
|
222
248
|
inside: {
|
223
249
|
'punctuation': /[()]/
|
@@ -1,7 +1,13 @@
|
|
1
1
|
(function (Prism) {
|
2
2
|
|
3
|
-
|
4
|
-
|
3
|
+
var key = /(?:[\w-]+|'[^'\n\r]*'|"(?:\\.|[^\\"\r\n])*")/.source;
|
4
|
+
|
5
|
+
/**
|
6
|
+
* @param {string} pattern
|
7
|
+
*/
|
8
|
+
function insertKey(pattern) {
|
9
|
+
return pattern.replace(/__/g, function () { return key; });
|
10
|
+
}
|
5
11
|
|
6
12
|
Prism.languages.toml = {
|
7
13
|
'comment': {
|
@@ -9,13 +15,13 @@
|
|
9
15
|
greedy: true
|
10
16
|
},
|
11
17
|
'table': {
|
12
|
-
pattern: RegExp(
|
18
|
+
pattern: RegExp(insertKey(/(^[\t ]*\[\s*(?:\[\s*)?)__(?:\s*\.\s*__)*(?=\s*\])/.source), 'm'),
|
13
19
|
lookbehind: true,
|
14
20
|
greedy: true,
|
15
21
|
alias: 'class-name'
|
16
22
|
},
|
17
23
|
'key': {
|
18
|
-
pattern: RegExp(
|
24
|
+
pattern: RegExp(insertKey(/(^[\t ]*|[{,]\s*)__(?:\s*\.\s*__)*(?=\s*=)/.source), 'm'),
|
19
25
|
lookbehind: true,
|
20
26
|
greedy: true,
|
21
27
|
alias: 'property'
|
@@ -27,17 +33,17 @@
|
|
27
33
|
'date': [
|
28
34
|
{
|
29
35
|
// Offset Date-Time, Local Date-Time, Local Date
|
30
|
-
pattern: /\d{4}-\d{2}-\d{2}(?:[T\s]\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:\d{2})?)
|
36
|
+
pattern: /\b\d{4}-\d{2}-\d{2}(?:[T\s]\d{2}:\d{2}:\d{2}(?:\.\d+)?(?:Z|[+-]\d{2}:\d{2})?)?\b/i,
|
31
37
|
alias: 'number'
|
32
38
|
},
|
33
39
|
{
|
34
40
|
// Local Time
|
35
|
-
pattern: /\d{2}:\d{2}:\d{2}(?:\.\d+)
|
41
|
+
pattern: /\b\d{2}:\d{2}:\d{2}(?:\.\d+)?\b/,
|
36
42
|
alias: 'number'
|
37
43
|
}
|
38
44
|
],
|
39
|
-
'number': /(?:\b0(?:x[\da-zA-Z]+(?:_[\da-zA-Z]+)*|o[0-7]+(?:_[0-7]+)*|b[10]+(?:_[10]+)*))\b|[-+]?\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?(?:[eE][+-]?\d+(?:_\d+)*)?\b|[-+]
|
40
|
-
'boolean': /\b(?:true
|
45
|
+
'number': /(?:\b0(?:x[\da-zA-Z]+(?:_[\da-zA-Z]+)*|o[0-7]+(?:_[0-7]+)*|b[10]+(?:_[10]+)*))\b|[-+]?\b\d+(?:_\d+)*(?:\.\d+(?:_\d+)*)?(?:[eE][+-]?\d+(?:_\d+)*)?\b|[-+]?\b(?:inf|nan)\b/,
|
46
|
+
'boolean': /\b(?:false|true)\b/,
|
41
47
|
'punctuation': /[.,=[\]{}]/
|
42
48
|
};
|
43
49
|
}(Prism));
|