prism-rails 1.6.0.3 → 1.19.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +5 -5
- data/CHANGELOG.md +3 -0
- data/README.md +88 -44
- data/lib/prism-rails/version.rb +1 -1
- data/vendor/assets/javascripts/languages/index.js +82 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-abap.js +2 -2
- data/vendor/assets/javascripts/languages/prism-abnf.js +54 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-actionscript.js +3 -5
- data/vendor/assets/javascripts/{prism → languages}/prism-ada.js +2 -2
- data/vendor/assets/javascripts/languages/prism-antlr4.js +65 -0
- data/vendor/assets/javascripts/languages/prism-apacheconf.js +47 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-apl.js +8 -5
- data/vendor/assets/javascripts/{prism → languages}/prism-applescript.js +3 -3
- data/vendor/assets/javascripts/languages/prism-aql.js +41 -0
- data/vendor/assets/javascripts/languages/prism-arduino.js +5 -0
- data/vendor/assets/javascripts/languages/prism-arff.js +10 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-asciidoc.js +23 -60
- data/vendor/assets/javascripts/languages/prism-asm6502.js +28 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-aspnet.js +22 -10
- data/vendor/assets/javascripts/languages/prism-autohotkey.js +27 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-autoit.js +1 -0
- data/vendor/assets/javascripts/languages/prism-bash.js +197 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-basic.js +5 -2
- data/vendor/assets/javascripts/{prism → languages}/prism-batch.js +0 -0
- data/vendor/assets/javascripts/languages/prism-bbcode.js +27 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-bison.js +0 -0
- data/vendor/assets/javascripts/languages/prism-bnf.js +21 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-brainfuck.js +0 -0
- data/vendor/assets/javascripts/languages/prism-brightscript.js +44 -0
- data/vendor/assets/javascripts/languages/prism-bro.js +48 -0
- data/vendor/assets/javascripts/languages/prism-c.js +41 -0
- data/vendor/assets/javascripts/languages/prism-cil.js +27 -0
- data/vendor/assets/javascripts/languages/prism-clike.js +30 -0
- data/vendor/assets/javascripts/languages/prism-clojure.js +16 -0
- data/vendor/assets/javascripts/languages/prism-cmake.js +29 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-coffeescript.js +6 -5
- data/vendor/assets/javascripts/languages/prism-concurnas.js +48 -0
- data/vendor/assets/javascripts/languages/prism-core.js +627 -0
- data/vendor/assets/javascripts/languages/prism-cpp.js +21 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-crystal.js +5 -7
- data/vendor/assets/javascripts/languages/prism-csharp.js +81 -0
- data/vendor/assets/javascripts/languages/prism-csp.js +25 -0
- data/vendor/assets/javascripts/languages/prism-css-extras.js +109 -0
- data/vendor/assets/javascripts/languages/prism-css.js +62 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-d.js +49 -34
- data/vendor/assets/javascripts/{prism → languages}/prism-dart.js +8 -2
- data/vendor/assets/javascripts/languages/prism-diff.js +54 -0
- data/vendor/assets/javascripts/languages/prism-django.js +60 -0
- data/vendor/assets/javascripts/languages/prism-dns-zone-file.js +33 -0
- data/vendor/assets/javascripts/languages/prism-docker.js +11 -0
- data/vendor/assets/javascripts/languages/prism-ebnf.js +22 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-eiffel.js +20 -7
- data/vendor/assets/javascripts/languages/prism-ejs.js +24 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-elixir.js +14 -15
- data/vendor/assets/javascripts/languages/prism-elm.js +44 -0
- data/vendor/assets/javascripts/languages/prism-erb.js +20 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-erlang.js +7 -4
- data/vendor/assets/javascripts/languages/prism-etlua.js +23 -0
- data/vendor/assets/javascripts/languages/prism-factor.js +403 -0
- data/vendor/assets/javascripts/languages/prism-firestore-security-rules.js +35 -0
- data/vendor/assets/javascripts/languages/prism-flow.js +35 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-fortran.js +5 -2
- data/vendor/assets/javascripts/languages/prism-fsharp.js +67 -0
- data/vendor/assets/javascripts/languages/prism-ftl.js +97 -0
- data/vendor/assets/javascripts/languages/prism-gcode.js +15 -0
- data/vendor/assets/javascripts/languages/prism-gdscript.js +27 -0
- data/vendor/assets/javascripts/languages/prism-gedcom.js +28 -0
- data/vendor/assets/javascripts/languages/prism-gherkin.js +85 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-git.js +2 -2
- data/vendor/assets/javascripts/{prism → languages}/prism-glsl.js +3 -3
- data/vendor/assets/javascripts/languages/prism-gml.js +7 -0
- data/vendor/assets/javascripts/languages/prism-go.js +12 -0
- data/vendor/assets/javascripts/languages/prism-graphql.js +31 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-groovy.js +12 -10
- data/vendor/assets/javascripts/{prism → languages}/prism-haml.js +14 -26
- data/vendor/assets/javascripts/languages/prism-handlebars.js +37 -0
- data/vendor/assets/javascripts/languages/prism-haskell.js +38 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-haxe.js +4 -2
- data/vendor/assets/javascripts/languages/prism-hcl.js +65 -0
- data/vendor/assets/javascripts/languages/prism-hpkp.js +20 -0
- data/vendor/assets/javascripts/languages/prism-hsts.js +20 -0
- data/vendor/assets/javascripts/languages/prism-http.js +77 -0
- data/vendor/assets/javascripts/languages/prism-ichigojam.js +15 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-icon.js +4 -1
- data/vendor/assets/javascripts/{prism → languages}/prism-inform7.js +6 -3
- data/vendor/assets/javascripts/{prism → languages}/prism-ini.js +2 -2
- data/vendor/assets/javascripts/languages/prism-io.js +31 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-j.js +5 -2
- data/vendor/assets/javascripts/{prism → languages}/prism-jade.js +0 -0
- data/vendor/assets/javascripts/languages/prism-java.js +63 -0
- data/vendor/assets/javascripts/languages/prism-javadoc.js +54 -0
- data/vendor/assets/javascripts/languages/prism-javadoclike.js +87 -0
- data/vendor/assets/javascripts/languages/prism-javascript.js +91 -0
- data/vendor/assets/javascripts/languages/prism-javastacktrace.js +93 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-jolie.js +9 -10
- data/vendor/assets/javascripts/languages/prism-jq.js +67 -0
- data/vendor/assets/javascripts/languages/prism-js-extras.js +104 -0
- data/vendor/assets/javascripts/languages/prism-js-templates.js +346 -0
- data/vendor/assets/javascripts/languages/prism-jsdoc.js +73 -0
- data/vendor/assets/javascripts/languages/prism-json.js +19 -0
- data/vendor/assets/javascripts/languages/prism-json5.js +23 -0
- data/vendor/assets/javascripts/languages/prism-jsonp.js +7 -0
- data/vendor/assets/javascripts/languages/prism-jsx.js +126 -0
- data/vendor/assets/javascripts/languages/prism-julia.js +13 -0
- data/vendor/assets/javascripts/languages/prism-keyman.js +14 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-kotlin.js +6 -6
- data/vendor/assets/javascripts/{prism → languages}/prism-latex.js +16 -13
- data/vendor/assets/javascripts/languages/prism-latte.js +69 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-less.js +3 -9
- data/vendor/assets/javascripts/languages/prism-lilypond.js +69 -0
- data/vendor/assets/javascripts/languages/prism-liquid.js +12 -0
- data/vendor/assets/javascripts/languages/prism-lisp.js +197 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-livescript.js +19 -18
- data/vendor/assets/javascripts/{prism → languages}/prism-lolcode.js +3 -2
- data/vendor/assets/javascripts/{prism → languages}/prism-lua.js +0 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-makefile.js +5 -2
- data/vendor/assets/javascripts/languages/prism-markdown.js +344 -0
- data/vendor/assets/javascripts/languages/prism-markup-templating.js +123 -0
- data/vendor/assets/javascripts/languages/prism-markup.js +103 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-matlab.js +5 -3
- data/vendor/assets/javascripts/{prism → languages}/prism-mel.js +7 -3
- data/vendor/assets/javascripts/{prism → languages}/prism-mizar.js +0 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-monkey.js +9 -3
- data/vendor/assets/javascripts/languages/prism-moonscript.js +57 -0
- data/vendor/assets/javascripts/languages/prism-n1ql.js +18 -0
- data/vendor/assets/javascripts/languages/prism-n4js.js +14 -0
- data/vendor/assets/javascripts/languages/prism-nand2tetris-hdl.js +9 -0
- data/vendor/assets/javascripts/languages/prism-nasm.js +24 -0
- data/vendor/assets/javascripts/languages/prism-neon.js +41 -0
- data/vendor/assets/javascripts/languages/prism-nginx.js +11 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-nim.js +4 -1
- data/vendor/assets/javascripts/{prism → languages}/prism-nix.js +2 -1
- data/vendor/assets/javascripts/languages/prism-nsis.js +29 -0
- data/vendor/assets/javascripts/languages/prism-objectivec.js +7 -0
- data/vendor/assets/javascripts/languages/prism-ocaml.js +41 -0
- data/vendor/assets/javascripts/languages/prism-opencl.js +54 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-oz.js +6 -2
- data/vendor/assets/javascripts/{prism → languages}/prism-parigp.js +4 -1
- data/vendor/assets/javascripts/languages/prism-parser.js +73 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-pascal.js +9 -4
- data/vendor/assets/javascripts/languages/prism-pascaligo.js +62 -0
- data/vendor/assets/javascripts/languages/prism-pcaxis.js +53 -0
- data/vendor/assets/javascripts/languages/prism-perl.js +191 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-php-extras.js +3 -3
- data/vendor/assets/javascripts/languages/prism-php.js +130 -0
- data/vendor/assets/javascripts/languages/prism-phpdoc.js +27 -0
- data/vendor/assets/javascripts/languages/prism-plsql.js +26 -0
- data/vendor/assets/javascripts/languages/prism-powershell.js +60 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-processing.js +2 -2
- data/vendor/assets/javascripts/{prism → languages}/prism-prolog.js +4 -1
- data/vendor/assets/javascripts/{prism → languages}/prism-properties.js +2 -2
- data/vendor/assets/javascripts/languages/prism-protobuf.js +36 -0
- data/vendor/assets/javascripts/languages/prism-pug.js +181 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-puppet.js +7 -2
- data/vendor/assets/javascripts/{prism → languages}/prism-pure.js +19 -17
- data/vendor/assets/javascripts/languages/prism-python.js +64 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-q.js +13 -6
- data/vendor/assets/javascripts/languages/prism-qml.js +58 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-qore.js +7 -4
- data/vendor/assets/javascripts/{prism → languages}/prism-r.js +5 -2
- data/vendor/assets/javascripts/{prism → languages}/prism-reason.js +4 -8
- data/vendor/assets/javascripts/languages/prism-regex.js +97 -0
- data/vendor/assets/javascripts/languages/prism-renpy.js +29 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-rest.js +4 -4
- data/vendor/assets/javascripts/{prism → languages}/prism-rip.js +7 -3
- data/vendor/assets/javascripts/{prism → languages}/prism-roboconf.js +0 -0
- data/vendor/assets/javascripts/languages/prism-robotframework.js +104 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-ruby.js +49 -15
- data/vendor/assets/javascripts/languages/prism-rust.js +68 -0
- data/vendor/assets/javascripts/languages/prism-sas.js +302 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-sass.js +1 -2
- data/vendor/assets/javascripts/{prism → languages}/prism-scala.js +10 -11
- data/vendor/assets/javascripts/languages/prism-scheme.js +33 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-scss.js +18 -16
- data/vendor/assets/javascripts/languages/prism-shell-session.js +54 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-smalltalk.js +9 -9
- data/vendor/assets/javascripts/languages/prism-smarty.js +87 -0
- data/vendor/assets/javascripts/languages/prism-solidity.js +20 -0
- data/vendor/assets/javascripts/languages/prism-solution-file.js +51 -0
- data/vendor/assets/javascripts/languages/prism-soy.js +96 -0
- data/vendor/assets/javascripts/languages/prism-sparql.js +18 -0
- data/vendor/assets/javascripts/languages/prism-splunk-spl.js +24 -0
- data/vendor/assets/javascripts/languages/prism-sqf.js +34 -0
- data/vendor/assets/javascripts/languages/prism-sql.js +24 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-stylus.js +16 -7
- data/vendor/assets/javascripts/languages/prism-swift.js +25 -0
- data/vendor/assets/javascripts/languages/prism-t4-cs.js +1 -0
- data/vendor/assets/javascripts/languages/prism-t4-templating.js +49 -0
- data/vendor/assets/javascripts/languages/prism-t4-vb.js +1 -0
- data/vendor/assets/javascripts/languages/prism-tap.js +20 -0
- data/vendor/assets/javascripts/languages/prism-tcl.js +46 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-textile.js +35 -32
- data/vendor/assets/javascripts/languages/prism-toml.js +43 -0
- data/vendor/assets/javascripts/languages/prism-tsx.js +2 -0
- data/vendor/assets/javascripts/languages/prism-tt2.js +53 -0
- data/vendor/assets/javascripts/languages/prism-turtle.js +54 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-twig.js +8 -8
- data/vendor/assets/javascripts/languages/prism-typescript.js +7 -0
- data/vendor/assets/javascripts/languages/prism-vala.js +74 -0
- data/vendor/assets/javascripts/languages/prism-vbnet.js +15 -0
- data/vendor/assets/javascripts/languages/prism-velocity.js +72 -0
- data/vendor/assets/javascripts/languages/prism-verilog.js +20 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-vhdl.js +2 -2
- data/vendor/assets/javascripts/{prism → languages}/prism-vim.js +1 -1
- data/vendor/assets/javascripts/languages/prism-visual-basic.js +34 -0
- data/vendor/assets/javascripts/languages/prism-wasm.js +31 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-wiki.js +7 -6
- data/vendor/assets/javascripts/languages/prism-xeora.js +114 -0
- data/vendor/assets/javascripts/{prism → languages}/prism-xojo.js +1 -1
- data/vendor/assets/javascripts/languages/prism-xquery.js +162 -0
- data/vendor/assets/javascripts/languages/prism-yaml.js +76 -0
- data/vendor/assets/javascripts/languages/prism-zig.js +97 -0
- data/vendor/assets/javascripts/prism-plugin/prism-autolinker.js +13 -8
- data/vendor/assets/javascripts/prism-plugin/prism-autoloader.js +306 -95
- data/vendor/assets/javascripts/prism-plugin/prism-command-line.js +96 -38
- data/vendor/assets/javascripts/prism-plugin/prism-copy-to-clipboard.js +10 -10
- data/vendor/assets/javascripts/prism-plugin/prism-custom-class.js +89 -23
- data/vendor/assets/javascripts/prism-plugin/prism-data-uri-highlight.js +2 -2
- data/vendor/assets/javascripts/prism-plugin/prism-diff-highlight.js +83 -0
- data/vendor/assets/javascripts/prism-plugin/prism-download-button.js +19 -0
- data/vendor/assets/javascripts/prism-plugin/prism-file-highlight.js +53 -41
- data/vendor/assets/javascripts/prism-plugin/prism-filter-highlight-all.js +125 -0
- data/vendor/assets/javascripts/prism-plugin/prism-inline-color.js +88 -0
- data/vendor/assets/javascripts/prism-plugin/prism-jsonp-highlight.js +124 -69
- data/vendor/assets/javascripts/prism-plugin/prism-keep-markup.js +4 -2
- data/vendor/assets/javascripts/prism-plugin/prism-line-highlight.js +195 -115
- data/vendor/assets/javascripts/prism-plugin/prism-line-numbers.js +154 -43
- data/vendor/assets/javascripts/prism-plugin/prism-match-braces.js +184 -0
- data/vendor/assets/javascripts/prism-plugin/prism-normalize-whitespace.js +29 -11
- data/vendor/assets/javascripts/prism-plugin/prism-previewers.js +703 -0
- data/vendor/assets/javascripts/prism-plugin/prism-remove-initial-line-feed.js +2 -2
- data/vendor/assets/javascripts/prism-plugin/prism-show-invisibles.js +83 -18
- data/vendor/assets/javascripts/prism-plugin/prism-show-language.js +190 -19
- data/vendor/assets/javascripts/prism-plugin/prism-toolbar.js +53 -8
- data/vendor/assets/javascripts/prism-plugin/prism-unescaped-markup.js +11 -7
- data/vendor/assets/javascripts/prism-plugin/prism-wpd.js +12 -12
- data/vendor/assets/javascripts/prism.js +210 -127
- data/vendor/assets/stylesheets/prism-plugin/prism-diff-highlight.css +13 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-inline-color.css +9 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-line-highlight.css +5 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-line-numbers.css +4 -3
- data/vendor/assets/stylesheets/prism-plugin/prism-match-braces.css +29 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-previewers.css +242 -0
- data/vendor/assets/stylesheets/prism-plugin/prism-show-invisibles.css +7 -6
- data/vendor/assets/stylesheets/prism-plugin/prism-toolbar.css +21 -15
- data/vendor/assets/stylesheets/prism-plugin/prism-unescaped-markup.css +4 -4
- data/vendor/assets/stylesheets/prism-theme/prism-a11y-dark.css +161 -0
- data/vendor/assets/stylesheets/{prism-atom-dark.css → prism-theme/prism-atom-dark.css} +10 -13
- data/vendor/assets/stylesheets/prism-theme/prism-autolinker.css +3 -0
- data/vendor/assets/stylesheets/{prism-base16-ateliersulphurpool.light.css → prism-theme/prism-base16-ateliersulphurpool.light.css} +57 -53
- data/vendor/assets/stylesheets/{prism-cb.css → prism-theme/prism-cb.css} +27 -27
- data/vendor/assets/stylesheets/prism-theme/prism-command-line.css +33 -0
- data/vendor/assets/stylesheets/{prism-coy.css → prism-theme/prism-coy.css} +14 -9
- data/vendor/assets/stylesheets/prism-theme/prism-darcula.css +159 -0
- data/vendor/assets/stylesheets/{prism-dark.css → prism-theme/prism-dark.css} +2 -1
- data/vendor/assets/stylesheets/prism-theme/prism-dracula.css +122 -0
- data/vendor/assets/stylesheets/{prism-duotone-dark.css → prism-theme/prism-duotone-dark.css} +55 -51
- data/vendor/assets/stylesheets/{prism-duotone-earth.css → prism-theme/prism-duotone-earth.css} +55 -51
- data/vendor/assets/stylesheets/{prism-duotone-forest.css → prism-theme/prism-duotone-forest.css} +55 -51
- data/vendor/assets/stylesheets/{prism-duotone-light.css → prism-theme/prism-duotone-light.css} +55 -51
- data/vendor/assets/stylesheets/{prism-duotone-sea.css → prism-theme/prism-duotone-sea.css} +55 -51
- data/vendor/assets/stylesheets/{prism-duotone-space.css → prism-theme/prism-duotone-space.css} +55 -51
- data/vendor/assets/stylesheets/{prism-funky.css → prism-theme/prism-funky.css} +16 -2
- data/vendor/assets/stylesheets/{prism-ghcolors.css → prism-theme/prism-ghcolors.css} +47 -44
- data/vendor/assets/stylesheets/prism-theme/prism-hopscotch.css +132 -0
- data/vendor/assets/stylesheets/prism-theme/prism-line-highlight.css +49 -0
- data/vendor/assets/stylesheets/prism-theme/prism-line-numbers.css +41 -0
- data/vendor/assets/stylesheets/prism-theme/prism-material-dark.css +205 -0
- data/vendor/assets/stylesheets/prism-theme/prism-material-light.css +207 -0
- data/vendor/assets/stylesheets/prism-theme/prism-material-oceanic.css +210 -0
- data/vendor/assets/stylesheets/prism-theme/prism-nord.css +124 -0
- data/vendor/assets/stylesheets/{prism-okaidia.css → prism-theme/prism-okaidia.css} +4 -2
- data/vendor/assets/stylesheets/prism-theme/prism-pojoaque.css +151 -0
- data/vendor/assets/stylesheets/prism-theme/prism-previewers.css +242 -0
- data/vendor/assets/stylesheets/prism-theme/prism-shades-of-purple.css +200 -0
- data/vendor/assets/stylesheets/prism-theme/prism-show-invisibles.css +34 -0
- data/vendor/assets/stylesheets/{prism-show-language.css → prism-theme/prism-show-language.css} +0 -0
- data/vendor/assets/stylesheets/{prism-solarizedlight.css → prism-theme/prism-solarizedlight.css} +5 -3
- data/vendor/assets/stylesheets/prism-theme/prism-synthwave84.css +140 -0
- data/vendor/assets/stylesheets/{prism-tomorrow.css → prism-theme/prism-tomorrow.css} +1 -0
- data/vendor/assets/stylesheets/{prism-toolbar.css → prism-theme/prism-toolbar.css} +15 -15
- data/vendor/assets/stylesheets/{prism-twilight.css → prism-theme/prism-twilight.css} +2 -1
- data/vendor/assets/stylesheets/prism-theme/prism-unescaped-markup.css +10 -0
- data/vendor/assets/stylesheets/{prism-vs.css → prism-theme/prism-vs.css} +62 -55
- data/vendor/assets/stylesheets/prism-theme/prism-vsc-dark-plus.css +216 -0
- data/vendor/assets/stylesheets/prism-theme/prism-wpd.css +11 -0
- data/vendor/assets/stylesheets/prism-theme/prism-xonokai.css +189 -0
- data/vendor/assets/stylesheets/prism.css +5 -3
- metadata +262 -148
- data/vendor/assets/javascripts/prism/prism-apacheconf.js +0 -47
- data/vendor/assets/javascripts/prism/prism-autohotkey.js +0 -27
- data/vendor/assets/javascripts/prism/prism-bash.js +0 -80
- data/vendor/assets/javascripts/prism/prism-bro.js +0 -50
- data/vendor/assets/javascripts/prism/prism-c.js +0 -33
- data/vendor/assets/javascripts/prism/prism-clike.js +0 -29
- data/vendor/assets/javascripts/prism/prism-core.js +0 -511
- data/vendor/assets/javascripts/prism/prism-cpp.js +0 -12
- data/vendor/assets/javascripts/prism/prism-csharp.js +0 -32
- data/vendor/assets/javascripts/prism/prism-css-extras.js +0 -16
- data/vendor/assets/javascripts/prism/prism-css.js +0 -51
- data/vendor/assets/javascripts/prism/prism-diff.js +0 -20
- data/vendor/assets/javascripts/prism/prism-docker.js +0 -9
- data/vendor/assets/javascripts/prism/prism-fsharp.js +0 -33
- data/vendor/assets/javascripts/prism/prism-gherkin.js +0 -78
- data/vendor/assets/javascripts/prism/prism-go.js +0 -9
- data/vendor/assets/javascripts/prism/prism-graphql.js +0 -24
- data/vendor/assets/javascripts/prism/prism-handlebars.js +0 -83
- data/vendor/assets/javascripts/prism/prism-haskell.js +0 -35
- data/vendor/assets/javascripts/prism/prism-http.js +0 -50
- data/vendor/assets/javascripts/prism/prism-java.js +0 -16
- data/vendor/assets/javascripts/prism/prism-javascript.js +0 -48
- data/vendor/assets/javascripts/prism/prism-json.js +0 -11
- data/vendor/assets/javascripts/prism/prism-jsx.js +0 -27
- data/vendor/assets/javascripts/prism/prism-julia.js +0 -12
- data/vendor/assets/javascripts/prism/prism-keyman.js +0 -14
- data/vendor/assets/javascripts/prism/prism-markdown.js +0 -120
- data/vendor/assets/javascripts/prism/prism-markup.js +0 -46
- data/vendor/assets/javascripts/prism/prism-nasm.js +0 -24
- data/vendor/assets/javascripts/prism/prism-nginx.js +0 -11
- data/vendor/assets/javascripts/prism/prism-nsis.js +0 -26
- data/vendor/assets/javascripts/prism/prism-objectivec.js +0 -5
- data/vendor/assets/javascripts/prism/prism-ocaml.js +0 -21
- data/vendor/assets/javascripts/prism/prism-parser.js +0 -66
- data/vendor/assets/javascripts/prism/prism-perl.js +0 -140
- data/vendor/assets/javascripts/prism/prism-php.js +0 -111
- data/vendor/assets/javascripts/prism/prism-powershell.js +0 -52
- data/vendor/assets/javascripts/prism/prism-protobuf.js +0 -8
- data/vendor/assets/javascripts/prism/prism-python.js +0 -27
- data/vendor/assets/javascripts/prism/prism-rust.js +0 -53
- data/vendor/assets/javascripts/prism/prism-sas.js +0 -31
- data/vendor/assets/javascripts/prism/prism-scheme.js +0 -26
- data/vendor/assets/javascripts/prism/prism-smarty.js +0 -127
- data/vendor/assets/javascripts/prism/prism-sql.js +0 -17
- data/vendor/assets/javascripts/prism/prism-swift.js +0 -25
- data/vendor/assets/javascripts/prism/prism-tcl.js +0 -43
- data/vendor/assets/javascripts/prism/prism-typescript.js +0 -5
- data/vendor/assets/javascripts/prism/prism-verilog.js +0 -17
- data/vendor/assets/javascripts/prism/prism-yaml.js +0 -44
- data/vendor/assets/stylesheets/prism-hopscotch.css +0 -124
- data/vendor/assets/stylesheets/prism-pojoaque.css +0 -134
- data/vendor/assets/stylesheets/prism-xonokai.css +0 -164
@@ -8,21 +8,21 @@
|
|
8
8
|
|
9
9
|
Prism.languages.less = Prism.languages.extend('css', {
|
10
10
|
'comment': [
|
11
|
-
/\/\*[\
|
11
|
+
/\/\*[\s\S]*?\*\//,
|
12
12
|
{
|
13
13
|
pattern: /(^|[^\\])\/\/.*/,
|
14
14
|
lookbehind: true
|
15
15
|
}
|
16
16
|
],
|
17
17
|
'atrule': {
|
18
|
-
pattern: /@[\w-]+?(?:\([^{}]
|
18
|
+
pattern: /@[\w-]+?(?:\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};])*?(?=\s*\{)/,
|
19
19
|
inside: {
|
20
20
|
'punctuation': /[:()]/
|
21
21
|
}
|
22
22
|
},
|
23
23
|
// selectors and mixins are considered the same
|
24
24
|
'selector': {
|
25
|
-
pattern: /(?:@\{[\w-]+\}|[^{};\s@])(?:@\{[\w-]+\}|\([^{}]*\)|[^{};@])*?(?=\s*\{)/,
|
25
|
+
pattern: /(?:@\{[\w-]+\}|[^{};\s@])(?:@\{[\w-]+\}|\((?:[^(){}]|\([^(){}]*\))*\)|[^(){};@])*?(?=\s*\{)/,
|
26
26
|
inside: {
|
27
27
|
// mixin parameters
|
28
28
|
'variable': /@+[\w-]+/
|
@@ -30,15 +30,9 @@ Prism.languages.less = Prism.languages.extend('css', {
|
|
30
30
|
},
|
31
31
|
|
32
32
|
'property': /(?:@\{[\w-]+\}|[\w-])+(?:\+_?)?(?=\s*:)/i,
|
33
|
-
'punctuation': /[{}();:,]/,
|
34
33
|
'operator': /[+\-*\/]/
|
35
34
|
});
|
36
35
|
|
37
|
-
// Invert function and punctuation positions
|
38
|
-
Prism.languages.insertBefore('less', 'punctuation', {
|
39
|
-
'function': Prism.languages.less.function
|
40
|
-
});
|
41
|
-
|
42
36
|
Prism.languages.insertBefore('less', 'property', {
|
43
37
|
'variable': [
|
44
38
|
// Variable declaration (the colon must be consumed!)
|
@@ -0,0 +1,69 @@
|
|
1
|
+
(function (Prism) {
|
2
|
+
|
3
|
+
var schemeExpression = /\((?:[^();"#\\]|\\[\s\S]|;.*|"(?:[^"\\]|\\.)*"|#(?:\{(?:(?!#\})[\s\S])*#\}|[^{])|<expr>)*\)/.source;
|
4
|
+
// allow for up to pow(2, recursivenessLog2) many levels of recursive brace expressions
|
5
|
+
// For some reason, this can't be 4
|
6
|
+
var recursivenessLog2 = 5;
|
7
|
+
for (var i = 0; i < recursivenessLog2; i++) {
|
8
|
+
schemeExpression = schemeExpression.replace(/<expr>/g, schemeExpression);
|
9
|
+
}
|
10
|
+
schemeExpression = schemeExpression.replace(/<expr>/g, /[^\s\S]/.source);
|
11
|
+
|
12
|
+
|
13
|
+
var lilypond = Prism.languages.lilypond = {
|
14
|
+
'comment': /%(?:(?!\{).*|\{[\s\S]*?%\})/,
|
15
|
+
'embedded-scheme': {
|
16
|
+
pattern: RegExp(/(^|[=\s])#(?:"(?:[^"\\]|\\.)*"|[^\s()"]*(?:[^\s()]|<expr>))/.source.replace(/<expr>/g, schemeExpression), 'm'),
|
17
|
+
lookbehind: true,
|
18
|
+
greedy: true,
|
19
|
+
inside: {
|
20
|
+
'scheme': {
|
21
|
+
pattern: /^(#)[\s\S]+$/,
|
22
|
+
lookbehind: true,
|
23
|
+
alias: 'language-scheme',
|
24
|
+
inside: {
|
25
|
+
'embedded-lilypond': {
|
26
|
+
pattern: /#\{[\s\S]*?#\}/,
|
27
|
+
greedy: true,
|
28
|
+
inside: {
|
29
|
+
'punctuation': /^#\{|#\}$/,
|
30
|
+
'lilypond': {
|
31
|
+
pattern: /[\s\S]+/,
|
32
|
+
alias: 'language-lilypond',
|
33
|
+
inside: null // see below
|
34
|
+
}
|
35
|
+
}
|
36
|
+
},
|
37
|
+
rest: Prism.languages.scheme
|
38
|
+
}
|
39
|
+
},
|
40
|
+
'punctuation': /#/
|
41
|
+
}
|
42
|
+
},
|
43
|
+
'string': {
|
44
|
+
pattern: /"(?:[^"\\]|\\.)*"/,
|
45
|
+
greedy: true
|
46
|
+
},
|
47
|
+
'class-name': {
|
48
|
+
pattern: /(\\new\s+)[\w-]+/,
|
49
|
+
lookbehind: true
|
50
|
+
},
|
51
|
+
'keyword': {
|
52
|
+
pattern: /\\[a-z][-\w]*/i,
|
53
|
+
inside: {
|
54
|
+
'punctuation': /^\\/
|
55
|
+
}
|
56
|
+
},
|
57
|
+
'operator': /[=|]|<<|>>/,
|
58
|
+
'punctuation': {
|
59
|
+
pattern: /(^|[a-z\d])(?:'+|,+|[_^]?-[_^]?(?:[-+^!>._]|(?=\d))|[_^]\.?|[.!])|[{}()[\]<>^~]|\\[()[\]<>\\!]|--|__/,
|
60
|
+
lookbehind: true
|
61
|
+
},
|
62
|
+
'number': /\b\d+(?:\/\d+)?\b/
|
63
|
+
};
|
64
|
+
|
65
|
+
lilypond['embedded-scheme'].inside['scheme'].inside['embedded-lilypond'].inside['lilypond'].inside = lilypond;
|
66
|
+
|
67
|
+
Prism.languages.ly = lilypond;
|
68
|
+
|
69
|
+
}(Prism));
|
@@ -0,0 +1,12 @@
|
|
1
|
+
Prism.languages.liquid = {
|
2
|
+
'keyword': /\b(?:comment|endcomment|if|elsif|else|endif|unless|endunless|for|endfor|case|endcase|when|in|break|assign|continue|limit|offset|range|reversed|raw|endraw|capture|endcapture|tablerow|endtablerow)\b/,
|
3
|
+
'number': /\b0b[01]+\b|\b0x[\da-f]*\.?[\da-fp-]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?[df]?/i,
|
4
|
+
'operator': {
|
5
|
+
pattern: /(^|[^.])(?:\+[+=]?|-[-=]?|!=?|<<?=?|>>?>?=?|==?|&[&=]?|\|[|=]?|\*=?|\/=?|%=?|\^=?|[?:~])/m,
|
6
|
+
lookbehind: true
|
7
|
+
},
|
8
|
+
'function': {
|
9
|
+
pattern: /(^|[\s;|&])(?:append|prepend|capitalize|cycle|cols|increment|decrement|abs|at_least|at_most|ceil|compact|concat|date|default|divided_by|downcase|escape|escape_once|first|floor|join|last|lstrip|map|minus|modulo|newline_to_br|plus|remove|remove_first|replace|replace_first|reverse|round|rstrip|size|slice|sort|sort_natural|split|strip|strip_html|strip_newlines|times|truncate|truncatewords|uniq|upcase|url_decode|url_encode|include|paginate)(?=$|[\s;|&])/,
|
10
|
+
lookbehind: true
|
11
|
+
}
|
12
|
+
};
|
@@ -0,0 +1,197 @@
|
|
1
|
+
(function (Prism) {
|
2
|
+
// Functions to construct regular expressions
|
3
|
+
// simple form
|
4
|
+
// e.g. (interactive ... or (interactive)
|
5
|
+
function simple_form(name) {
|
6
|
+
return RegExp('(\\()' + name + '(?=[\\s\\)])');
|
7
|
+
}
|
8
|
+
// booleans and numbers
|
9
|
+
function primitive(pattern) {
|
10
|
+
return RegExp('([\\s([])' + pattern + '(?=[\\s)])');
|
11
|
+
}
|
12
|
+
|
13
|
+
// Patterns in regular expressions
|
14
|
+
|
15
|
+
// Symbol name. See https://www.gnu.org/software/emacs/manual/html_node/elisp/Symbol-Type.html
|
16
|
+
// & and : are excluded as they are usually used for special purposes
|
17
|
+
var symbol = '[-+*/_~!@$%^=<>{}\\w]+';
|
18
|
+
// symbol starting with & used in function arguments
|
19
|
+
var marker = '&' + symbol;
|
20
|
+
// Open parenthesis for look-behind
|
21
|
+
var par = '(\\()';
|
22
|
+
var endpar = '(?=\\))';
|
23
|
+
// End the pattern with look-ahead space
|
24
|
+
var space = '(?=\\s)';
|
25
|
+
|
26
|
+
var language = {
|
27
|
+
// Three or four semicolons are considered a heading.
|
28
|
+
// See https://www.gnu.org/software/emacs/manual/html_node/elisp/Comment-Tips.html
|
29
|
+
heading: {
|
30
|
+
pattern: /;;;.*/,
|
31
|
+
alias: ['comment', 'title']
|
32
|
+
},
|
33
|
+
comment: /;.*/,
|
34
|
+
string: {
|
35
|
+
pattern: /"(?:[^"\\]|\\.)*"/,
|
36
|
+
greedy: true,
|
37
|
+
inside: {
|
38
|
+
argument: /[-A-Z]+(?=[.,\s])/,
|
39
|
+
symbol: RegExp('`' + symbol + "'")
|
40
|
+
}
|
41
|
+
},
|
42
|
+
'quoted-symbol': {
|
43
|
+
pattern: RegExp("#?'" + symbol),
|
44
|
+
alias: ['variable', 'symbol']
|
45
|
+
},
|
46
|
+
'lisp-property': {
|
47
|
+
pattern: RegExp(':' + symbol),
|
48
|
+
alias: 'property'
|
49
|
+
},
|
50
|
+
splice: {
|
51
|
+
pattern: RegExp(',@?' + symbol),
|
52
|
+
alias: ['symbol', 'variable']
|
53
|
+
},
|
54
|
+
keyword: [
|
55
|
+
{
|
56
|
+
pattern: RegExp(
|
57
|
+
par +
|
58
|
+
'(?:(?:lexical-)?let\\*?|(?:cl-)?letf|if|when|while|unless|cons|cl-loop|and|or|not|cond|setq|error|message|null|require|provide|use-package)' +
|
59
|
+
space
|
60
|
+
),
|
61
|
+
lookbehind: true
|
62
|
+
},
|
63
|
+
{
|
64
|
+
pattern: RegExp(
|
65
|
+
par + '(?:for|do|collect|return|finally|append|concat|in|by)' + space
|
66
|
+
),
|
67
|
+
lookbehind: true
|
68
|
+
},
|
69
|
+
],
|
70
|
+
declare: {
|
71
|
+
pattern: simple_form('declare'),
|
72
|
+
lookbehind: true,
|
73
|
+
alias: 'keyword'
|
74
|
+
},
|
75
|
+
interactive: {
|
76
|
+
pattern: simple_form('interactive'),
|
77
|
+
lookbehind: true,
|
78
|
+
alias: 'keyword'
|
79
|
+
},
|
80
|
+
boolean: {
|
81
|
+
pattern: primitive('(?:t|nil)'),
|
82
|
+
lookbehind: true
|
83
|
+
},
|
84
|
+
number: {
|
85
|
+
pattern: primitive('[-+]?\\d+(?:\\.\\d*)?'),
|
86
|
+
lookbehind: true
|
87
|
+
},
|
88
|
+
defvar: {
|
89
|
+
pattern: RegExp(par + 'def(?:var|const|custom|group)\\s+' + symbol),
|
90
|
+
lookbehind: true,
|
91
|
+
inside: {
|
92
|
+
keyword: /^def[a-z]+/,
|
93
|
+
variable: RegExp(symbol)
|
94
|
+
}
|
95
|
+
},
|
96
|
+
defun: {
|
97
|
+
pattern: RegExp(
|
98
|
+
par +
|
99
|
+
'(?:cl-)?(?:defun\\*?|defmacro)\\s+' +
|
100
|
+
symbol +
|
101
|
+
'\\s+\\([\\s\\S]*?\\)'
|
102
|
+
),
|
103
|
+
lookbehind: true,
|
104
|
+
inside: {
|
105
|
+
keyword: /^(?:cl-)?def\S+/,
|
106
|
+
// See below, this property needs to be defined later so that it can
|
107
|
+
// reference the language object.
|
108
|
+
arguments: null,
|
109
|
+
function: {
|
110
|
+
pattern: RegExp('(^\\s)' + symbol),
|
111
|
+
lookbehind: true
|
112
|
+
},
|
113
|
+
punctuation: /[()]/
|
114
|
+
}
|
115
|
+
},
|
116
|
+
lambda: {
|
117
|
+
pattern: RegExp(par + 'lambda\\s+\\((?:&?' + symbol + '\\s*)*\\)'),
|
118
|
+
lookbehind: true,
|
119
|
+
inside: {
|
120
|
+
keyword: /^lambda/,
|
121
|
+
// See below, this property needs to be defined later so that it can
|
122
|
+
// reference the language object.
|
123
|
+
arguments: null,
|
124
|
+
punctuation: /[()]/
|
125
|
+
}
|
126
|
+
},
|
127
|
+
car: {
|
128
|
+
pattern: RegExp(par + symbol),
|
129
|
+
lookbehind: true
|
130
|
+
},
|
131
|
+
punctuation: [
|
132
|
+
// open paren, brackets, and close paren
|
133
|
+
/(?:['`,]?\(|[)\[\]])/,
|
134
|
+
// cons
|
135
|
+
{
|
136
|
+
pattern: /(\s)\.(?=\s)/,
|
137
|
+
lookbehind: true
|
138
|
+
},
|
139
|
+
]
|
140
|
+
};
|
141
|
+
|
142
|
+
var arg = {
|
143
|
+
'lisp-marker': RegExp(marker),
|
144
|
+
rest: {
|
145
|
+
argument: {
|
146
|
+
pattern: RegExp(symbol),
|
147
|
+
alias: 'variable'
|
148
|
+
},
|
149
|
+
varform: {
|
150
|
+
pattern: RegExp(par + symbol + '\\s+\\S[\\s\\S]*' + endpar),
|
151
|
+
lookbehind: true,
|
152
|
+
inside: {
|
153
|
+
string: language.string,
|
154
|
+
boolean: language.boolean,
|
155
|
+
number: language.number,
|
156
|
+
symbol: language.symbol,
|
157
|
+
punctuation: /[()]/
|
158
|
+
}
|
159
|
+
}
|
160
|
+
}
|
161
|
+
};
|
162
|
+
|
163
|
+
var forms = '\\S+(?:\\s+\\S+)*';
|
164
|
+
|
165
|
+
var arglist = {
|
166
|
+
pattern: RegExp(par + '[\\s\\S]*' + endpar),
|
167
|
+
lookbehind: true,
|
168
|
+
inside: {
|
169
|
+
'rest-vars': {
|
170
|
+
pattern: RegExp('&(?:rest|body)\\s+' + forms),
|
171
|
+
inside: arg
|
172
|
+
},
|
173
|
+
'other-marker-vars': {
|
174
|
+
pattern: RegExp('&(?:optional|aux)\\s+' + forms),
|
175
|
+
inside: arg
|
176
|
+
},
|
177
|
+
keys: {
|
178
|
+
pattern: RegExp('&key\\s+' + forms + '(?:\\s+&allow-other-keys)?'),
|
179
|
+
inside: arg
|
180
|
+
},
|
181
|
+
argument: {
|
182
|
+
pattern: RegExp(symbol),
|
183
|
+
alias: 'variable'
|
184
|
+
},
|
185
|
+
punctuation: /[()]/
|
186
|
+
}
|
187
|
+
};
|
188
|
+
|
189
|
+
language['lambda'].inside.arguments = arglist;
|
190
|
+
language['defun'].inside.arguments = Prism.util.clone(arglist);
|
191
|
+
language['defun'].inside.arguments.inside.sublist = arglist;
|
192
|
+
|
193
|
+
Prism.languages.lisp = language;
|
194
|
+
Prism.languages.elisp = language;
|
195
|
+
Prism.languages.emacs = language;
|
196
|
+
Prism.languages['emacs-lisp'] = language;
|
197
|
+
}(Prism));
|
@@ -1,10 +1,23 @@
|
|
1
1
|
Prism.languages.livescript = {
|
2
|
+
'comment': [
|
3
|
+
{
|
4
|
+
pattern: /(^|[^\\])\/\*[\s\S]*?\*\//,
|
5
|
+
lookbehind: true
|
6
|
+
},
|
7
|
+
{
|
8
|
+
pattern: /(^|[^\\])#.*/,
|
9
|
+
lookbehind: true
|
10
|
+
}
|
11
|
+
],
|
2
12
|
'interpolated-string': {
|
3
|
-
pattern
|
13
|
+
/* Look-behind and look-ahead prevents wrong behavior of the greedy pattern
|
14
|
+
* forcing it to match """-quoted string when it would otherwise match "-quoted first. */
|
15
|
+
pattern: /(^|[^"])("""|")(?:\\[\s\S]|(?!\2)[^\\])*\2(?!")/,
|
16
|
+
lookbehind: true,
|
4
17
|
greedy: true,
|
5
18
|
inside: {
|
6
19
|
'variable': {
|
7
|
-
pattern: /(^|[^\\])#[a-z_](?:-?[a-z]
|
20
|
+
pattern: /(^|[^\\])#[a-z_](?:-?[a-z]|[\d_])*/m,
|
8
21
|
lookbehind: true
|
9
22
|
},
|
10
23
|
'interpolation': {
|
@@ -21,18 +34,6 @@ Prism.languages.livescript = {
|
|
21
34
|
'string': /[\s\S]+/
|
22
35
|
}
|
23
36
|
},
|
24
|
-
'comment': [
|
25
|
-
{
|
26
|
-
pattern: /(^|[^\\])\/\*[\w\W]*?\*\//,
|
27
|
-
lookbehind: true,
|
28
|
-
greedy: true
|
29
|
-
},
|
30
|
-
{
|
31
|
-
pattern: /(^|[^\\])#.*/,
|
32
|
-
lookbehind: true,
|
33
|
-
greedy: true
|
34
|
-
}
|
35
|
-
],
|
36
37
|
'string': [
|
37
38
|
{
|
38
39
|
pattern: /('''|')(?:\\[\s\S]|(?!\1)[^\\])*\1/,
|
@@ -46,7 +47,7 @@ Prism.languages.livescript = {
|
|
46
47
|
],
|
47
48
|
'regex': [
|
48
49
|
{
|
49
|
-
pattern: /\/\/(
|
50
|
+
pattern: /\/\/(?:\[.+?]|\\.|(?!\/\/)[^\\])+\/\/[gimyu]{0,5}/,
|
50
51
|
greedy: true,
|
51
52
|
inside: {
|
52
53
|
'comment': {
|
@@ -56,7 +57,7 @@ Prism.languages.livescript = {
|
|
56
57
|
}
|
57
58
|
},
|
58
59
|
{
|
59
|
-
pattern: /\/(
|
60
|
+
pattern: /\/(?:\[.+?]|\\.|[^/\\\r\n])+\/[gimyu]{0,5}/,
|
60
61
|
greedy: true
|
61
62
|
}
|
62
63
|
],
|
@@ -80,7 +81,7 @@ Prism.languages.livescript = {
|
|
80
81
|
alias: 'variable'
|
81
82
|
},
|
82
83
|
'number': /\b(?:\d+~[\da-z]+|\d[\d_]*(?:\.\d[\d_]*)?(?:[a-z]\w*)?)/i,
|
83
|
-
'identifier': /[a-z_](?:-?[a-z]
|
84
|
+
'identifier': /[a-z_](?:-?[a-z]|[\d_])*/i,
|
84
85
|
'operator': [
|
85
86
|
// Spaced .
|
86
87
|
{
|
@@ -115,4 +116,4 @@ Prism.languages.livescript = {
|
|
115
116
|
'punctuation': /[(){}\[\]|.,:;`]/
|
116
117
|
};
|
117
118
|
|
118
|
-
Prism.languages.livescript['interpolated-string'].inside['interpolation'].inside.rest = Prism.languages.livescript;
|
119
|
+
Prism.languages.livescript['interpolated-string'].inside['interpolation'].inside.rest = Prism.languages.livescript;
|
@@ -12,9 +12,10 @@ Prism.languages.lolcode = {
|
|
12
12
|
/:\[[^\]]+\]/,
|
13
13
|
/:[)>o":]/
|
14
14
|
]
|
15
|
-
}
|
15
|
+
},
|
16
|
+
greedy: true
|
16
17
|
},
|
17
|
-
'number': /(
|
18
|
+
'number': /(?:\B-)?(?:\b\d+\.?\d*|\B\.\d+)/,
|
18
19
|
'symbol': {
|
19
20
|
pattern: /(^|\s)(?:A )?(?:YARN|NUMBR|NUMBAR|TROOF|BUKKIT|NOOB)(?=\s|,|$)/,
|
20
21
|
lookbehind: true,
|
File without changes
|
@@ -1,9 +1,12 @@
|
|
1
1
|
Prism.languages.makefile = {
|
2
2
|
'comment': {
|
3
|
-
pattern: /(^|[^\\])#(?:\\(?:\r\n|[\s\S])
|
3
|
+
pattern: /(^|[^\\])#(?:\\(?:\r\n|[\s\S])|[^\\\r\n])*/,
|
4
4
|
lookbehind: true
|
5
5
|
},
|
6
|
-
'string':
|
6
|
+
'string': {
|
7
|
+
pattern: /(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,
|
8
|
+
greedy: true
|
9
|
+
},
|
7
10
|
|
8
11
|
// Built-in target names
|
9
12
|
'builtin': /\.[A-Z][^:#=\s]+(?=\s*:(?!=))/,
|
@@ -0,0 +1,344 @@
|
|
1
|
+
(function (Prism) {
|
2
|
+
|
3
|
+
// Allow only one line break
|
4
|
+
var inner = /(?:\\.|[^\\\n\r]|(?:\n|\r\n?)(?!\n|\r\n?))/.source;
|
5
|
+
|
6
|
+
/**
|
7
|
+
* This function is intended for the creation of the bold or italic pattern.
|
8
|
+
*
|
9
|
+
* This also adds a lookbehind group to the given pattern to ensure that the pattern is not backslash-escaped.
|
10
|
+
*
|
11
|
+
* _Note:_ Keep in mind that this adds a capturing group.
|
12
|
+
*
|
13
|
+
* @param {string} pattern
|
14
|
+
* @param {boolean} starAlternative Whether to also add an alternative where all `_`s are replaced with `*`s.
|
15
|
+
* @returns {RegExp}
|
16
|
+
*/
|
17
|
+
function createInline(pattern, starAlternative) {
|
18
|
+
pattern = pattern.replace(/<inner>/g, inner);
|
19
|
+
if (starAlternative) {
|
20
|
+
pattern = pattern + '|' + pattern.replace(/_/g, '\\*');
|
21
|
+
}
|
22
|
+
return RegExp(/((?:^|[^\\])(?:\\{2})*)/.source + '(?:' + pattern + ')');
|
23
|
+
}
|
24
|
+
|
25
|
+
|
26
|
+
var tableCell = /(?:\\.|``.+?``|`[^`\r\n]+`|[^\\|\r\n`])+/.source;
|
27
|
+
var tableRow = /\|?__(?:\|__)+\|?(?:(?:\n|\r\n?)|$)/.source.replace(/__/g, tableCell);
|
28
|
+
var tableLine = /\|?[ \t]*:?-{3,}:?[ \t]*(?:\|[ \t]*:?-{3,}:?[ \t]*)+\|?(?:\n|\r\n?)/.source;
|
29
|
+
|
30
|
+
|
31
|
+
Prism.languages.markdown = Prism.languages.extend('markup', {});
|
32
|
+
Prism.languages.insertBefore('markdown', 'prolog', {
|
33
|
+
'blockquote': {
|
34
|
+
// > ...
|
35
|
+
pattern: /^>(?:[\t ]*>)*/m,
|
36
|
+
alias: 'punctuation'
|
37
|
+
},
|
38
|
+
'table': {
|
39
|
+
pattern: RegExp('^' + tableRow + tableLine + '(?:' + tableRow + ')*', 'm'),
|
40
|
+
inside: {
|
41
|
+
'table-data-rows': {
|
42
|
+
pattern: RegExp('^(' + tableRow + tableLine + ')(?:' + tableRow + ')*$'),
|
43
|
+
lookbehind: true,
|
44
|
+
inside: {
|
45
|
+
'table-data': {
|
46
|
+
pattern: RegExp(tableCell),
|
47
|
+
inside: Prism.languages.markdown
|
48
|
+
},
|
49
|
+
'punctuation': /\|/
|
50
|
+
}
|
51
|
+
},
|
52
|
+
'table-line': {
|
53
|
+
pattern: RegExp('^(' + tableRow + ')' + tableLine + '$'),
|
54
|
+
lookbehind: true,
|
55
|
+
inside: {
|
56
|
+
'punctuation': /\||:?-{3,}:?/
|
57
|
+
}
|
58
|
+
},
|
59
|
+
'table-header-row': {
|
60
|
+
pattern: RegExp('^' + tableRow + '$'),
|
61
|
+
inside: {
|
62
|
+
'table-header': {
|
63
|
+
pattern: RegExp(tableCell),
|
64
|
+
alias: 'important',
|
65
|
+
inside: Prism.languages.markdown
|
66
|
+
},
|
67
|
+
'punctuation': /\|/
|
68
|
+
}
|
69
|
+
}
|
70
|
+
}
|
71
|
+
},
|
72
|
+
'code': [
|
73
|
+
{
|
74
|
+
// Prefixed by 4 spaces or 1 tab and preceded by an empty line
|
75
|
+
pattern: /((?:^|\n)[ \t]*\n|(?:^|\r\n?)[ \t]*\r\n?)(?: {4}|\t).+(?:(?:\n|\r\n?)(?: {4}|\t).+)*/,
|
76
|
+
lookbehind: true,
|
77
|
+
alias: 'keyword'
|
78
|
+
},
|
79
|
+
{
|
80
|
+
// `code`
|
81
|
+
// ``code``
|
82
|
+
pattern: /``.+?``|`[^`\r\n]+`/,
|
83
|
+
alias: 'keyword'
|
84
|
+
},
|
85
|
+
{
|
86
|
+
// ```optional language
|
87
|
+
// code block
|
88
|
+
// ```
|
89
|
+
pattern: /^```[\s\S]*?^```$/m,
|
90
|
+
greedy: true,
|
91
|
+
inside: {
|
92
|
+
'code-block': {
|
93
|
+
pattern: /^(```.*(?:\n|\r\n?))[\s\S]+?(?=(?:\n|\r\n?)^```$)/m,
|
94
|
+
lookbehind: true
|
95
|
+
},
|
96
|
+
'code-language': {
|
97
|
+
pattern: /^(```).+/,
|
98
|
+
lookbehind: true
|
99
|
+
},
|
100
|
+
'punctuation': /```/
|
101
|
+
}
|
102
|
+
}
|
103
|
+
],
|
104
|
+
'title': [
|
105
|
+
{
|
106
|
+
// title 1
|
107
|
+
// =======
|
108
|
+
|
109
|
+
// title 2
|
110
|
+
// -------
|
111
|
+
pattern: /\S.*(?:\n|\r\n?)(?:==+|--+)(?=[ \t]*$)/m,
|
112
|
+
alias: 'important',
|
113
|
+
inside: {
|
114
|
+
punctuation: /==+$|--+$/
|
115
|
+
}
|
116
|
+
},
|
117
|
+
{
|
118
|
+
// # title 1
|
119
|
+
// ###### title 6
|
120
|
+
pattern: /(^\s*)#+.+/m,
|
121
|
+
lookbehind: true,
|
122
|
+
alias: 'important',
|
123
|
+
inside: {
|
124
|
+
punctuation: /^#+|#+$/
|
125
|
+
}
|
126
|
+
}
|
127
|
+
],
|
128
|
+
'hr': {
|
129
|
+
// ***
|
130
|
+
// ---
|
131
|
+
// * * *
|
132
|
+
// -----------
|
133
|
+
pattern: /(^\s*)([*-])(?:[\t ]*\2){2,}(?=\s*$)/m,
|
134
|
+
lookbehind: true,
|
135
|
+
alias: 'punctuation'
|
136
|
+
},
|
137
|
+
'list': {
|
138
|
+
// * item
|
139
|
+
// + item
|
140
|
+
// - item
|
141
|
+
// 1. item
|
142
|
+
pattern: /(^\s*)(?:[*+-]|\d+\.)(?=[\t ].)/m,
|
143
|
+
lookbehind: true,
|
144
|
+
alias: 'punctuation'
|
145
|
+
},
|
146
|
+
'url-reference': {
|
147
|
+
// [id]: http://example.com "Optional title"
|
148
|
+
// [id]: http://example.com 'Optional title'
|
149
|
+
// [id]: http://example.com (Optional title)
|
150
|
+
// [id]: <http://example.com> "Optional title"
|
151
|
+
pattern: /!?\[[^\]]+\]:[\t ]+(?:\S+|<(?:\\.|[^>\\])+>)(?:[\t ]+(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\)))?/,
|
152
|
+
inside: {
|
153
|
+
'variable': {
|
154
|
+
pattern: /^(!?\[)[^\]]+/,
|
155
|
+
lookbehind: true
|
156
|
+
},
|
157
|
+
'string': /(?:"(?:\\.|[^"\\])*"|'(?:\\.|[^'\\])*'|\((?:\\.|[^)\\])*\))$/,
|
158
|
+
'punctuation': /^[\[\]!:]|[<>]/
|
159
|
+
},
|
160
|
+
alias: 'url'
|
161
|
+
},
|
162
|
+
'bold': {
|
163
|
+
// **strong**
|
164
|
+
// __strong__
|
165
|
+
|
166
|
+
// allow one nested instance of italic text using the same delimiter
|
167
|
+
pattern: createInline(/__(?:(?!_)<inner>|_(?:(?!_)<inner>)+_)+__/.source, true),
|
168
|
+
lookbehind: true,
|
169
|
+
greedy: true,
|
170
|
+
inside: {
|
171
|
+
'content': {
|
172
|
+
pattern: /(^..)[\s\S]+(?=..$)/,
|
173
|
+
lookbehind: true,
|
174
|
+
inside: {} // see below
|
175
|
+
},
|
176
|
+
'punctuation': /\*\*|__/
|
177
|
+
}
|
178
|
+
},
|
179
|
+
'italic': {
|
180
|
+
// *em*
|
181
|
+
// _em_
|
182
|
+
|
183
|
+
// allow one nested instance of bold text using the same delimiter
|
184
|
+
pattern: createInline(/_(?:(?!_)<inner>|__(?:(?!_)<inner>)+__)+_/.source, true),
|
185
|
+
lookbehind: true,
|
186
|
+
greedy: true,
|
187
|
+
inside: {
|
188
|
+
'content': {
|
189
|
+
pattern: /(^.)[\s\S]+(?=.$)/,
|
190
|
+
lookbehind: true,
|
191
|
+
inside: {} // see below
|
192
|
+
},
|
193
|
+
'punctuation': /[*_]/
|
194
|
+
}
|
195
|
+
},
|
196
|
+
'strike': {
|
197
|
+
// ~~strike through~~
|
198
|
+
// ~strike~
|
199
|
+
pattern: createInline(/(~~?)(?:(?!~)<inner>)+?\2/.source, false),
|
200
|
+
lookbehind: true,
|
201
|
+
greedy: true,
|
202
|
+
inside: {
|
203
|
+
'content': {
|
204
|
+
pattern: /(^~~?)[\s\S]+(?=\1$)/,
|
205
|
+
lookbehind: true,
|
206
|
+
inside: {} // see below
|
207
|
+
},
|
208
|
+
'punctuation': /~~?/
|
209
|
+
}
|
210
|
+
},
|
211
|
+
'url': {
|
212
|
+
// [example](http://example.com "Optional title")
|
213
|
+
// [example][id]
|
214
|
+
// [example] [id]
|
215
|
+
pattern: createInline(/!?\[(?:(?!\])<inner>)+\](?:\([^\s)]+(?:[\t ]+"(?:\\.|[^"\\])*")?\)| ?\[(?:(?!\])<inner>)+\])/.source, false),
|
216
|
+
lookbehind: true,
|
217
|
+
greedy: true,
|
218
|
+
inside: {
|
219
|
+
'variable': {
|
220
|
+
pattern: /(\[)[^\]]+(?=\]$)/,
|
221
|
+
lookbehind: true
|
222
|
+
},
|
223
|
+
'content': {
|
224
|
+
pattern: /(^!?\[)[^\]]+(?=\])/,
|
225
|
+
lookbehind: true,
|
226
|
+
inside: {} // see below
|
227
|
+
},
|
228
|
+
'string': {
|
229
|
+
pattern: /"(?:\\.|[^"\\])*"(?=\)$)/
|
230
|
+
}
|
231
|
+
}
|
232
|
+
}
|
233
|
+
});
|
234
|
+
|
235
|
+
['url', 'bold', 'italic', 'strike'].forEach(function (token) {
|
236
|
+
['url', 'bold', 'italic', 'strike'].forEach(function (inside) {
|
237
|
+
if (token !== inside) {
|
238
|
+
Prism.languages.markdown[token].inside.content.inside[inside] = Prism.languages.markdown[inside];
|
239
|
+
}
|
240
|
+
});
|
241
|
+
});
|
242
|
+
|
243
|
+
Prism.hooks.add('after-tokenize', function (env) {
|
244
|
+
if (env.language !== 'markdown' && env.language !== 'md') {
|
245
|
+
return;
|
246
|
+
}
|
247
|
+
|
248
|
+
function walkTokens(tokens) {
|
249
|
+
if (!tokens || typeof tokens === 'string') {
|
250
|
+
return;
|
251
|
+
}
|
252
|
+
|
253
|
+
for (var i = 0, l = tokens.length; i < l; i++) {
|
254
|
+
var token = tokens[i];
|
255
|
+
|
256
|
+
if (token.type !== 'code') {
|
257
|
+
walkTokens(token.content);
|
258
|
+
continue;
|
259
|
+
}
|
260
|
+
|
261
|
+
/*
|
262
|
+
* Add the correct `language-xxxx` class to this code block. Keep in mind that the `code-language` token
|
263
|
+
* is optional. But the grammar is defined so that there is only one case we have to handle:
|
264
|
+
*
|
265
|
+
* token.content = [
|
266
|
+
* <span class="punctuation">```</span>,
|
267
|
+
* <span class="code-language">xxxx</span>,
|
268
|
+
* '\n', // exactly one new lines (\r or \n or \r\n)
|
269
|
+
* <span class="code-block">...</span>,
|
270
|
+
* '\n', // exactly one new lines again
|
271
|
+
* <span class="punctuation">```</span>
|
272
|
+
* ];
|
273
|
+
*/
|
274
|
+
|
275
|
+
var codeLang = token.content[1];
|
276
|
+
var codeBlock = token.content[3];
|
277
|
+
|
278
|
+
if (codeLang && codeBlock &&
|
279
|
+
codeLang.type === 'code-language' && codeBlock.type === 'code-block' &&
|
280
|
+
typeof codeLang.content === 'string') {
|
281
|
+
|
282
|
+
// this might be a language that Prism does not support
|
283
|
+
|
284
|
+
// do some replacements to support C++, C#, and F#
|
285
|
+
var lang = codeLang.content.replace(/\b#/g, 'sharp').replace(/\b\+\+/g, 'pp')
|
286
|
+
// only use the first word
|
287
|
+
lang = (/[a-z][\w-]*/i.exec(lang) || [''])[0].toLowerCase();
|
288
|
+
var alias = 'language-' + lang;
|
289
|
+
|
290
|
+
// add alias
|
291
|
+
if (!codeBlock.alias) {
|
292
|
+
codeBlock.alias = [alias];
|
293
|
+
} else if (typeof codeBlock.alias === 'string') {
|
294
|
+
codeBlock.alias = [codeBlock.alias, alias];
|
295
|
+
} else {
|
296
|
+
codeBlock.alias.push(alias);
|
297
|
+
}
|
298
|
+
}
|
299
|
+
}
|
300
|
+
}
|
301
|
+
|
302
|
+
walkTokens(env.tokens);
|
303
|
+
});
|
304
|
+
|
305
|
+
Prism.hooks.add('wrap', function (env) {
|
306
|
+
if (env.type !== 'code-block') {
|
307
|
+
return;
|
308
|
+
}
|
309
|
+
|
310
|
+
var codeLang = '';
|
311
|
+
for (var i = 0, l = env.classes.length; i < l; i++) {
|
312
|
+
var cls = env.classes[i];
|
313
|
+
var match = /language-(.+)/.exec(cls);
|
314
|
+
if (match) {
|
315
|
+
codeLang = match[1];
|
316
|
+
break;
|
317
|
+
}
|
318
|
+
}
|
319
|
+
|
320
|
+
var grammar = Prism.languages[codeLang];
|
321
|
+
|
322
|
+
if (!grammar) {
|
323
|
+
if (codeLang && codeLang !== 'none' && Prism.plugins.autoloader) {
|
324
|
+
var id = 'md-' + new Date().valueOf() + '-' + Math.floor(Math.random() * 1e16);
|
325
|
+
env.attributes['id'] = id;
|
326
|
+
|
327
|
+
Prism.plugins.autoloader.loadLanguages(codeLang, function () {
|
328
|
+
var ele = document.getElementById(id);
|
329
|
+
if (ele) {
|
330
|
+
ele.innerHTML = Prism.highlight(ele.textContent, Prism.languages[codeLang], codeLang);
|
331
|
+
}
|
332
|
+
});
|
333
|
+
}
|
334
|
+
} else {
|
335
|
+
// reverse Prism.util.encode
|
336
|
+
var code = env.content.replace(/</g, '<').replace(/&/g, '&');
|
337
|
+
|
338
|
+
env.content = Prism.highlight(code, grammar, codeLang);
|
339
|
+
}
|
340
|
+
});
|
341
|
+
|
342
|
+
Prism.languages.md = Prism.languages.markdown;
|
343
|
+
|
344
|
+
}(Prism));
|