pygments.rb 2.4.0 → 3.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/ci.yml +8 -8
- data/.github/workflows/release.yml +5 -5
- data/.gitignore +2 -0
- data/.rubocop.yml +1 -1
- data/CHANGELOG.adoc +12 -0
- data/README.adoc +2 -2
- data/lib/pygments/popen.rb +2 -2
- data/lib/pygments/version.rb +1 -1
- data/pygments.rb.gemspec +3 -3
- data/vendor/pygments-main/bin/pygmentize +1 -1
- data/vendor/pygments-main/pygments/__init__.py +2 -2
- data/vendor/pygments-main/pygments/__main__.py +1 -1
- data/vendor/pygments-main/pygments/cmdline.py +12 -12
- data/vendor/pygments-main/pygments/console.py +5 -5
- data/vendor/pygments-main/pygments/filter.py +2 -3
- data/vendor/pygments-main/pygments/filters/__init__.py +4 -4
- data/vendor/pygments-main/pygments/formatter.py +6 -1
- data/vendor/pygments-main/pygments/formatters/__init__.py +7 -8
- data/vendor/pygments-main/pygments/formatters/_mapping.py +0 -0
- data/vendor/pygments-main/pygments/formatters/bbcode.py +2 -2
- data/vendor/pygments-main/pygments/formatters/groff.py +3 -3
- data/vendor/pygments-main/pygments/formatters/html.py +38 -40
- data/vendor/pygments-main/pygments/formatters/img.py +51 -11
- data/vendor/pygments-main/pygments/formatters/irc.py +1 -1
- data/vendor/pygments-main/pygments/formatters/latex.py +24 -27
- data/vendor/pygments-main/pygments/formatters/other.py +3 -4
- data/vendor/pygments-main/pygments/formatters/pangomarkup.py +2 -2
- data/vendor/pygments-main/pygments/formatters/rtf.py +228 -25
- data/vendor/pygments-main/pygments/formatters/svg.py +17 -20
- data/vendor/pygments-main/pygments/formatters/terminal.py +1 -1
- data/vendor/pygments-main/pygments/formatters/terminal256.py +1 -1
- data/vendor/pygments-main/pygments/lexer.py +51 -33
- data/vendor/pygments-main/pygments/lexers/__init__.py +12 -12
- data/vendor/pygments-main/pygments/lexers/_ada_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_asy_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_cl_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_cocoa_builtins.py +2 -2
- data/vendor/pygments-main/pygments/lexers/_csound_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_css_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_julia_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_lasso_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_lilypond_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_lua_builtins.py +5 -5
- data/vendor/pygments-main/pygments/lexers/_luau_builtins.py +62 -0
- data/vendor/pygments-main/pygments/lexers/_mapping.py +41 -11
- data/vendor/pygments-main/pygments/lexers/_mql_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_mysql_builtins.py +3 -3
- data/vendor/pygments-main/pygments/lexers/_openedge_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_php_builtins.py +3 -3
- data/vendor/pygments-main/pygments/lexers/_postgres_builtins.py +5 -5
- data/vendor/pygments-main/pygments/lexers/_qlik_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_scheme_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_scilab_builtins.py +4 -4
- data/vendor/pygments-main/pygments/lexers/_sourcemod_builtins.py +3 -3
- data/vendor/pygments-main/pygments/lexers/_stan_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_stata_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_tsql_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_usd_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_vbscript_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_vim_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/actionscript.py +6 -8
- data/vendor/pygments-main/pygments/lexers/ada.py +3 -3
- data/vendor/pygments-main/pygments/lexers/agile.py +3 -1
- data/vendor/pygments-main/pygments/lexers/algebra.py +9 -13
- data/vendor/pygments-main/pygments/lexers/ambient.py +2 -3
- data/vendor/pygments-main/pygments/lexers/amdgpu.py +3 -3
- data/vendor/pygments-main/pygments/lexers/ampl.py +2 -3
- data/vendor/pygments-main/pygments/lexers/apdlexer.py +4 -3
- data/vendor/pygments-main/pygments/lexers/apl.py +2 -3
- data/vendor/pygments-main/pygments/lexers/archetype.py +8 -12
- data/vendor/pygments-main/pygments/lexers/arrow.py +2 -3
- data/vendor/pygments-main/pygments/lexers/arturo.py +2 -3
- data/vendor/pygments-main/pygments/lexers/asc.py +4 -4
- data/vendor/pygments-main/pygments/lexers/asm.py +28 -15
- data/vendor/pygments-main/pygments/lexers/asn1.py +178 -0
- data/vendor/pygments-main/pygments/lexers/automation.py +6 -8
- data/vendor/pygments-main/pygments/lexers/bare.py +2 -3
- data/vendor/pygments-main/pygments/lexers/basic.py +48 -57
- data/vendor/pygments-main/pygments/lexers/bdd.py +3 -4
- data/vendor/pygments-main/pygments/lexers/berry.py +4 -4
- data/vendor/pygments-main/pygments/lexers/bibtex.py +5 -5
- data/vendor/pygments-main/pygments/lexers/blueprint.py +173 -0
- data/vendor/pygments-main/pygments/lexers/boa.py +4 -4
- data/vendor/pygments-main/pygments/lexers/bqn.py +109 -0
- data/vendor/pygments-main/pygments/lexers/business.py +21 -22
- data/vendor/pygments-main/pygments/lexers/c_cpp.py +9 -4
- data/vendor/pygments-main/pygments/lexers/c_like.py +99 -27
- data/vendor/pygments-main/pygments/lexers/capnproto.py +2 -3
- data/vendor/pygments-main/pygments/lexers/carbon.py +10 -11
- data/vendor/pygments-main/pygments/lexers/cddl.py +8 -9
- data/vendor/pygments-main/pygments/lexers/chapel.py +2 -3
- data/vendor/pygments-main/pygments/lexers/clean.py +2 -1
- data/vendor/pygments-main/pygments/lexers/comal.py +2 -1
- data/vendor/pygments-main/pygments/lexers/compiled.py +2 -1
- data/vendor/pygments-main/pygments/lexers/configs.py +342 -108
- data/vendor/pygments-main/pygments/lexers/console.py +5 -5
- data/vendor/pygments-main/pygments/lexers/cplint.py +2 -3
- data/vendor/pygments-main/pygments/lexers/crystal.py +4 -5
- data/vendor/pygments-main/pygments/lexers/csound.py +6 -8
- data/vendor/pygments-main/pygments/lexers/css.py +5 -5
- data/vendor/pygments-main/pygments/lexers/d.py +4 -3
- data/vendor/pygments-main/pygments/lexers/dalvik.py +2 -3
- data/vendor/pygments-main/pygments/lexers/data.py +8 -12
- data/vendor/pygments-main/pygments/lexers/dax.py +2 -3
- data/vendor/pygments-main/pygments/lexers/devicetree.py +2 -3
- data/vendor/pygments-main/pygments/lexers/diff.py +7 -6
- data/vendor/pygments-main/pygments/lexers/dns.py +109 -0
- data/vendor/pygments-main/pygments/lexers/dotnet.py +19 -14
- data/vendor/pygments-main/pygments/lexers/dsls.py +24 -35
- data/vendor/pygments-main/pygments/lexers/dylan.py +8 -16
- data/vendor/pygments-main/pygments/lexers/ecl.py +2 -3
- data/vendor/pygments-main/pygments/lexers/eiffel.py +3 -4
- data/vendor/pygments-main/pygments/lexers/elm.py +3 -4
- data/vendor/pygments-main/pygments/lexers/elpi.py +28 -21
- data/vendor/pygments-main/pygments/lexers/email.py +3 -3
- data/vendor/pygments-main/pygments/lexers/erlang.py +22 -24
- data/vendor/pygments-main/pygments/lexers/esoteric.py +11 -12
- data/vendor/pygments-main/pygments/lexers/ezhil.py +2 -3
- data/vendor/pygments-main/pygments/lexers/factor.py +2 -3
- data/vendor/pygments-main/pygments/lexers/fantom.py +3 -3
- data/vendor/pygments-main/pygments/lexers/felix.py +9 -10
- data/vendor/pygments-main/pygments/lexers/fift.py +2 -1
- data/vendor/pygments-main/pygments/lexers/floscript.py +2 -3
- data/vendor/pygments-main/pygments/lexers/forth.py +2 -3
- data/vendor/pygments-main/pygments/lexers/fortran.py +6 -7
- data/vendor/pygments-main/pygments/lexers/foxpro.py +3 -3
- data/vendor/pygments-main/pygments/lexers/freefem.py +2 -3
- data/vendor/pygments-main/pygments/lexers/func.py +3 -1
- data/vendor/pygments-main/pygments/lexers/functional.py +2 -1
- data/vendor/pygments-main/pygments/lexers/futhark.py +6 -7
- data/vendor/pygments-main/pygments/lexers/gcodelexer.py +3 -3
- data/vendor/pygments-main/pygments/lexers/gdscript.py +2 -1
- data/vendor/pygments-main/pygments/lexers/go.py +3 -4
- data/vendor/pygments-main/pygments/lexers/grammar_notation.py +6 -9
- data/vendor/pygments-main/pygments/lexers/graph.py +12 -9
- data/vendor/pygments-main/pygments/lexers/graphics.py +13 -17
- data/vendor/pygments-main/pygments/lexers/graphql.py +176 -0
- data/vendor/pygments-main/pygments/lexers/graphviz.py +2 -3
- data/vendor/pygments-main/pygments/lexers/gsql.py +2 -3
- data/vendor/pygments-main/pygments/lexers/haskell.py +27 -32
- data/vendor/pygments-main/pygments/lexers/haxe.py +3 -5
- data/vendor/pygments-main/pygments/lexers/hdl.py +8 -7
- data/vendor/pygments-main/pygments/lexers/hexdump.py +3 -3
- data/vendor/pygments-main/pygments/lexers/html.py +34 -13
- data/vendor/pygments-main/pygments/lexers/idl.py +2 -3
- data/vendor/pygments-main/pygments/lexers/igor.py +305 -290
- data/vendor/pygments-main/pygments/lexers/inferno.py +2 -3
- data/vendor/pygments-main/pygments/lexers/installers.py +7 -9
- data/vendor/pygments-main/pygments/lexers/int_fiction.py +150 -162
- data/vendor/pygments-main/pygments/lexers/iolang.py +2 -3
- data/vendor/pygments-main/pygments/lexers/j.py +2 -3
- data/vendor/pygments-main/pygments/lexers/javascript.py +18 -19
- data/vendor/pygments-main/pygments/lexers/jmespath.py +2 -1
- data/vendor/pygments-main/pygments/lexers/jslt.py +2 -3
- data/vendor/pygments-main/pygments/lexers/jsonnet.py +4 -3
- data/vendor/pygments-main/pygments/lexers/jsx.py +75 -0
- data/vendor/pygments-main/pygments/lexers/julia.py +4 -5
- data/vendor/pygments-main/pygments/lexers/jvm.py +98 -116
- data/vendor/pygments-main/pygments/lexers/kuin.py +2 -3
- data/vendor/pygments-main/pygments/lexers/kusto.py +93 -0
- data/vendor/pygments-main/pygments/lexers/ldap.py +155 -0
- data/vendor/pygments-main/pygments/lexers/lean.py +241 -0
- data/vendor/pygments-main/pygments/lexers/lilypond.py +2 -3
- data/vendor/pygments-main/pygments/lexers/lisp.py +373 -65
- data/vendor/pygments-main/pygments/lexers/macaulay2.py +53 -4
- data/vendor/pygments-main/pygments/lexers/make.py +7 -5
- data/vendor/pygments-main/pygments/lexers/markup.py +242 -91
- data/vendor/pygments-main/pygments/lexers/math.py +2 -1
- data/vendor/pygments-main/pygments/lexers/matlab.py +10 -12
- data/vendor/pygments-main/pygments/lexers/maxima.py +2 -3
- data/vendor/pygments-main/pygments/lexers/meson.py +2 -3
- data/vendor/pygments-main/pygments/lexers/mime.py +4 -4
- data/vendor/pygments-main/pygments/lexers/minecraft.py +24 -27
- data/vendor/pygments-main/pygments/lexers/mips.py +3 -1
- data/vendor/pygments-main/pygments/lexers/ml.py +59 -61
- data/vendor/pygments-main/pygments/lexers/modeling.py +19 -22
- data/vendor/pygments-main/pygments/lexers/modula2.py +2 -3
- data/vendor/pygments-main/pygments/lexers/mojo.py +704 -0
- data/vendor/pygments-main/pygments/lexers/monte.py +2 -3
- data/vendor/pygments-main/pygments/lexers/mosel.py +3 -3
- data/vendor/pygments-main/pygments/lexers/ncl.py +4 -3
- data/vendor/pygments-main/pygments/lexers/nimrod.py +7 -8
- data/vendor/pygments-main/pygments/lexers/nit.py +2 -3
- data/vendor/pygments-main/pygments/lexers/nix.py +40 -31
- data/vendor/pygments-main/pygments/lexers/oberon.py +3 -3
- data/vendor/pygments-main/pygments/lexers/objective.py +14 -6
- data/vendor/pygments-main/pygments/lexers/ooc.py +2 -3
- data/vendor/pygments-main/pygments/lexers/openscad.py +96 -0
- data/vendor/pygments-main/pygments/lexers/other.py +2 -1
- data/vendor/pygments-main/pygments/lexers/parasail.py +2 -3
- data/vendor/pygments-main/pygments/lexers/parsers.py +41 -44
- data/vendor/pygments-main/pygments/lexers/pascal.py +6 -3
- data/vendor/pygments-main/pygments/lexers/pawn.py +5 -5
- data/vendor/pygments-main/pygments/lexers/perl.py +3 -3
- data/vendor/pygments-main/pygments/lexers/phix.py +2 -3
- data/vendor/pygments-main/pygments/lexers/php.py +4 -5
- data/vendor/pygments-main/pygments/lexers/pointless.py +2 -3
- data/vendor/pygments-main/pygments/lexers/pony.py +3 -3
- data/vendor/pygments-main/pygments/lexers/praat.py +2 -3
- data/vendor/pygments-main/pygments/lexers/procfile.py +2 -3
- data/vendor/pygments-main/pygments/lexers/prolog.py +23 -9
- data/vendor/pygments-main/pygments/lexers/promql.py +2 -1
- data/vendor/pygments-main/pygments/lexers/prql.py +251 -0
- data/vendor/pygments-main/pygments/lexers/ptx.py +119 -0
- data/vendor/pygments-main/pygments/lexers/python.py +24 -24
- data/vendor/pygments-main/pygments/lexers/q.py +5 -6
- data/vendor/pygments-main/pygments/lexers/qlik.py +3 -3
- data/vendor/pygments-main/pygments/lexers/qvt.py +5 -3
- data/vendor/pygments-main/pygments/lexers/r.py +8 -6
- data/vendor/pygments-main/pygments/lexers/rdf.py +19 -13
- data/vendor/pygments-main/pygments/lexers/rebol.py +7 -7
- data/vendor/pygments-main/pygments/lexers/resource.py +5 -6
- data/vendor/pygments-main/pygments/lexers/ride.py +4 -5
- data/vendor/pygments-main/pygments/lexers/rita.py +2 -3
- data/vendor/pygments-main/pygments/lexers/rnc.py +2 -3
- data/vendor/pygments-main/pygments/lexers/roboconf.py +5 -5
- data/vendor/pygments-main/pygments/lexers/robotframework.py +2 -3
- data/vendor/pygments-main/pygments/lexers/ruby.py +8 -13
- data/vendor/pygments-main/pygments/lexers/rust.py +9 -10
- data/vendor/pygments-main/pygments/lexers/sas.py +3 -3
- data/vendor/pygments-main/pygments/lexers/savi.py +131 -130
- data/vendor/pygments-main/pygments/lexers/scdoc.py +13 -7
- data/vendor/pygments-main/pygments/lexers/scripting.py +354 -42
- data/vendor/pygments-main/pygments/lexers/sgf.py +2 -3
- data/vendor/pygments-main/pygments/lexers/shell.py +107 -129
- data/vendor/pygments-main/pygments/lexers/sieve.py +3 -3
- data/vendor/pygments-main/pygments/lexers/slash.py +4 -5
- data/vendor/pygments-main/pygments/lexers/smalltalk.py +3 -5
- data/vendor/pygments-main/pygments/lexers/smithy.py +2 -3
- data/vendor/pygments-main/pygments/lexers/smv.py +3 -3
- data/vendor/pygments-main/pygments/lexers/snobol.py +3 -3
- data/vendor/pygments-main/pygments/lexers/solidity.py +3 -3
- data/vendor/pygments-main/pygments/lexers/soong.py +78 -0
- data/vendor/pygments-main/pygments/lexers/sophia.py +3 -4
- data/vendor/pygments-main/pygments/lexers/special.py +8 -3
- data/vendor/pygments-main/pygments/lexers/spice.py +15 -16
- data/vendor/pygments-main/pygments/lexers/sql.py +24 -18
- data/vendor/pygments-main/pygments/lexers/srcinfo.py +3 -3
- data/vendor/pygments-main/pygments/lexers/stata.py +2 -3
- data/vendor/pygments-main/pygments/lexers/supercollider.py +2 -3
- data/vendor/pygments-main/pygments/lexers/tact.py +303 -0
- data/vendor/pygments-main/pygments/lexers/tal.py +13 -10
- data/vendor/pygments-main/pygments/lexers/tcl.py +2 -3
- data/vendor/pygments-main/pygments/lexers/teal.py +2 -3
- data/vendor/pygments-main/pygments/lexers/templates.py +131 -72
- data/vendor/pygments-main/pygments/lexers/teraterm.py +2 -3
- data/vendor/pygments-main/pygments/lexers/testing.py +4 -5
- data/vendor/pygments-main/pygments/lexers/text.py +2 -1
- data/vendor/pygments-main/pygments/lexers/textedit.py +9 -6
- data/vendor/pygments-main/pygments/lexers/textfmts.py +20 -15
- data/vendor/pygments-main/pygments/lexers/theorem.py +41 -115
- data/vendor/pygments-main/pygments/lexers/thingsdb.py +50 -26
- data/vendor/pygments-main/pygments/lexers/tlb.py +3 -1
- data/vendor/pygments-main/pygments/lexers/tls.py +54 -0
- data/vendor/pygments-main/pygments/lexers/tnt.py +2 -3
- data/vendor/pygments-main/pygments/lexers/trafficscript.py +3 -3
- data/vendor/pygments-main/pygments/lexers/typoscript.py +6 -7
- data/vendor/pygments-main/pygments/lexers/typst.py +104 -0
- data/vendor/pygments-main/pygments/lexers/ul4.py +47 -5
- data/vendor/pygments-main/pygments/lexers/unicon.py +9 -7
- data/vendor/pygments-main/pygments/lexers/urbi.py +3 -3
- data/vendor/pygments-main/pygments/lexers/usd.py +6 -11
- data/vendor/pygments-main/pygments/lexers/varnish.py +5 -5
- data/vendor/pygments-main/pygments/lexers/verification.py +4 -5
- data/vendor/pygments-main/pygments/lexers/verifpal.py +65 -0
- data/vendor/pygments-main/pygments/lexers/vip.py +150 -0
- data/vendor/pygments-main/pygments/lexers/vyper.py +140 -0
- data/vendor/pygments-main/pygments/lexers/web.py +2 -1
- data/vendor/pygments-main/pygments/lexers/webassembly.py +2 -3
- data/vendor/pygments-main/pygments/lexers/webidl.py +2 -3
- data/vendor/pygments-main/pygments/lexers/webmisc.py +11 -15
- data/vendor/pygments-main/pygments/lexers/wgsl.py +6 -7
- data/vendor/pygments-main/pygments/lexers/whiley.py +2 -3
- data/vendor/pygments-main/pygments/lexers/wowtoc.py +3 -3
- data/vendor/pygments-main/pygments/lexers/wren.py +3 -4
- data/vendor/pygments-main/pygments/lexers/x10.py +6 -7
- data/vendor/pygments-main/pygments/lexers/xorg.py +2 -1
- data/vendor/pygments-main/pygments/lexers/yang.py +2 -3
- data/vendor/pygments-main/pygments/lexers/yara.py +69 -0
- data/vendor/pygments-main/pygments/lexers/zig.py +2 -1
- data/vendor/pygments-main/pygments/modeline.py +4 -4
- data/vendor/pygments-main/pygments/plugin.py +3 -19
- data/vendor/pygments-main/pygments/regexopt.py +1 -1
- data/vendor/pygments-main/pygments/scanner.py +1 -1
- data/vendor/pygments-main/pygments/sphinxext.py +38 -8
- data/vendor/pygments-main/pygments/style.py +8 -2
- data/vendor/pygments-main/pygments/styles/__init__.py +17 -59
- data/vendor/pygments-main/pygments/styles/_mapping.py +54 -0
- data/vendor/pygments-main/pygments/styles/abap.py +5 -1
- data/vendor/pygments-main/pygments/styles/algol.py +5 -1
- data/vendor/pygments-main/pygments/styles/algol_nu.py +5 -1
- data/vendor/pygments-main/pygments/styles/arduino.py +76 -72
- data/vendor/pygments-main/pygments/styles/autumn.py +6 -1
- data/vendor/pygments-main/pygments/styles/borland.py +6 -1
- data/vendor/pygments-main/pygments/styles/bw.py +6 -1
- data/vendor/pygments-main/pygments/styles/coffee.py +80 -0
- data/vendor/pygments-main/pygments/styles/colorful.py +6 -1
- data/vendor/pygments-main/pygments/styles/default.py +6 -1
- data/vendor/pygments-main/pygments/styles/dracula.py +68 -80
- data/vendor/pygments-main/pygments/styles/emacs.py +6 -1
- data/vendor/pygments-main/pygments/styles/friendly.py +6 -1
- data/vendor/pygments-main/pygments/styles/friendly_grayscale.py +6 -1
- data/vendor/pygments-main/pygments/styles/fruity.py +7 -1
- data/vendor/pygments-main/pygments/styles/gh_dark.py +7 -1
- data/vendor/pygments-main/pygments/styles/gruvbox.py +10 -1
- data/vendor/pygments-main/pygments/styles/igor.py +6 -1
- data/vendor/pygments-main/pygments/styles/inkpot.py +7 -2
- data/vendor/pygments-main/pygments/styles/lightbulb.py +110 -0
- data/vendor/pygments-main/pygments/styles/lilypond.py +8 -2
- data/vendor/pygments-main/pygments/styles/lovelace.py +16 -10
- data/vendor/pygments-main/pygments/styles/manni.py +7 -2
- data/vendor/pygments-main/pygments/styles/material.py +21 -14
- data/vendor/pygments-main/pygments/styles/monokai.py +16 -10
- data/vendor/pygments-main/pygments/styles/murphy.py +7 -2
- data/vendor/pygments-main/pygments/styles/native.py +10 -5
- data/vendor/pygments-main/pygments/styles/nord.py +9 -3
- data/vendor/pygments-main/pygments/styles/onedark.py +6 -2
- data/vendor/pygments-main/pygments/styles/paraiso_dark.py +7 -2
- data/vendor/pygments-main/pygments/styles/paraiso_light.py +7 -2
- data/vendor/pygments-main/pygments/styles/pastie.py +7 -1
- data/vendor/pygments-main/pygments/styles/perldoc.py +7 -1
- data/vendor/pygments-main/pygments/styles/rainbow_dash.py +26 -19
- data/vendor/pygments-main/pygments/styles/rrt.py +8 -2
- data/vendor/pygments-main/pygments/styles/sas.py +6 -1
- data/vendor/pygments-main/pygments/styles/solarized.py +9 -1
- data/vendor/pygments-main/pygments/styles/staroffice.py +6 -1
- data/vendor/pygments-main/pygments/styles/stata_dark.py +6 -2
- data/vendor/pygments-main/pygments/styles/stata_light.py +6 -1
- data/vendor/pygments-main/pygments/styles/tango.py +7 -3
- data/vendor/pygments-main/pygments/styles/trac.py +7 -1
- data/vendor/pygments-main/pygments/styles/vim.py +7 -1
- data/vendor/pygments-main/pygments/styles/vs.py +7 -2
- data/vendor/pygments-main/pygments/styles/xcode.py +6 -1
- data/vendor/pygments-main/pygments/styles/zenburn.py +6 -1
- data/vendor/pygments-main/pygments/token.py +2 -1
- data/vendor/pygments-main/pygments/unistring.py +5 -5
- data/vendor/pygments-main/pygments/util.py +13 -19
- data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info}/METADATA +14 -13
- data/vendor/pygments-main/pygments-2.18.0.dist-info/RECORD +663 -0
- data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info}/WHEEL +1 -2
- data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info/licenses}/AUTHORS +13 -0
- metadata +41 -17
- data/vendor/pygments-main/Pygments-2.15.1.dist-info/RECORD +0 -614
- data/vendor/pygments-main/Pygments-2.15.1.dist-info/top_level.txt +0 -1
- /data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info}/INSTALLER +0 -0
- /data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info}/REQUESTED +0 -0
- /data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info}/entry_points.txt +0 -0
- /data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info/licenses}/LICENSE +0 -0
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
Lexers for various template engines' markup.
|
6
6
|
|
7
|
-
:copyright: Copyright 2006-
|
7
|
+
:copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
|
8
8
|
:license: BSD, see LICENSE for details.
|
9
9
|
"""
|
10
10
|
|
@@ -62,6 +62,7 @@ class ErbLexer(Lexer):
|
|
62
62
|
url = 'https://github.com/ruby/erb'
|
63
63
|
aliases = ['erb']
|
64
64
|
mimetypes = ['application/x-ruby-templating']
|
65
|
+
version_added = ''
|
65
66
|
|
66
67
|
_block_re = re.compile(r'(<%%|%%>|<%=|<%#|<%-|<%|-%>|%>|^%[^%].*?$)', re.M)
|
67
68
|
|
@@ -156,6 +157,7 @@ class SmartyLexer(RegexLexer):
|
|
156
157
|
aliases = ['smarty']
|
157
158
|
filenames = ['*.tpl']
|
158
159
|
mimetypes = ['application/x-smarty']
|
160
|
+
version_added = ''
|
159
161
|
|
160
162
|
flags = re.MULTILINE | re.DOTALL
|
161
163
|
|
@@ -212,6 +214,7 @@ class VelocityLexer(RegexLexer):
|
|
212
214
|
url = 'https://velocity.apache.org/'
|
213
215
|
aliases = ['velocity']
|
214
216
|
filenames = ['*.vm', '*.fhtml']
|
217
|
+
version_added = ''
|
215
218
|
|
216
219
|
flags = re.MULTILINE | re.DOTALL
|
217
220
|
|
@@ -292,8 +295,10 @@ class VelocityHtmlLexer(DelegatingLexer):
|
|
292
295
|
|
293
296
|
name = 'HTML+Velocity'
|
294
297
|
aliases = ['html+velocity']
|
298
|
+
version_added = ''
|
295
299
|
alias_filenames = ['*.html', '*.fhtml']
|
296
300
|
mimetypes = ['text/html+velocity']
|
301
|
+
url = 'https://velocity.apache.org/'
|
297
302
|
|
298
303
|
def __init__(self, **options):
|
299
304
|
super().__init__(HtmlLexer, VelocityLexer, **options)
|
@@ -308,8 +313,10 @@ class VelocityXmlLexer(DelegatingLexer):
|
|
308
313
|
|
309
314
|
name = 'XML+Velocity'
|
310
315
|
aliases = ['xml+velocity']
|
316
|
+
version_added = ''
|
311
317
|
alias_filenames = ['*.xml', '*.vm']
|
312
318
|
mimetypes = ['application/xml+velocity']
|
319
|
+
url = 'https://velocity.apache.org/'
|
313
320
|
|
314
321
|
def __init__(self, **options):
|
315
322
|
super().__init__(XmlLexer, VelocityLexer, **options)
|
@@ -323,8 +330,8 @@ class VelocityXmlLexer(DelegatingLexer):
|
|
323
330
|
|
324
331
|
class DjangoLexer(RegexLexer):
|
325
332
|
"""
|
326
|
-
Generic `
|
327
|
-
and `
|
333
|
+
Generic `Django <https://www.djangoproject.com/documentation/templates/>`_
|
334
|
+
and `Jinja <https://jinja.palletsprojects.com>`_ template lexer.
|
328
335
|
|
329
336
|
It just highlights django/jinja code between the preprocessor directives,
|
330
337
|
other data is left untouched by the lexer.
|
@@ -333,6 +340,8 @@ class DjangoLexer(RegexLexer):
|
|
333
340
|
name = 'Django/Jinja'
|
334
341
|
aliases = ['django', 'jinja']
|
335
342
|
mimetypes = ['application/x-django-templating', 'application/x-jinja']
|
343
|
+
url = 'https://www.djangoproject.com/documentation/templates'
|
344
|
+
version_added = ''
|
336
345
|
|
337
346
|
flags = re.M | re.S
|
338
347
|
|
@@ -408,8 +417,6 @@ class MyghtyLexer(RegexLexer):
|
|
408
417
|
"""
|
409
418
|
Generic myghty templates lexer. Code that isn't Myghty
|
410
419
|
markup is yielded as `Token.Other`.
|
411
|
-
|
412
|
-
.. versionadded:: 0.6
|
413
420
|
"""
|
414
421
|
|
415
422
|
name = 'Myghty'
|
@@ -417,6 +424,7 @@ class MyghtyLexer(RegexLexer):
|
|
417
424
|
aliases = ['myghty']
|
418
425
|
filenames = ['*.myt', 'autodelegate']
|
419
426
|
mimetypes = ['application/x-myghty']
|
427
|
+
version_added = '0.6'
|
420
428
|
|
421
429
|
tokens = {
|
422
430
|
'root': [
|
@@ -455,13 +463,13 @@ class MyghtyHtmlLexer(DelegatingLexer):
|
|
455
463
|
"""
|
456
464
|
Subclass of the `MyghtyLexer` that highlights unlexed data
|
457
465
|
with the `HtmlLexer`.
|
458
|
-
|
459
|
-
.. versionadded:: 0.6
|
460
466
|
"""
|
461
467
|
|
462
468
|
name = 'HTML+Myghty'
|
463
469
|
aliases = ['html+myghty']
|
464
470
|
mimetypes = ['text/html+myghty']
|
471
|
+
url = 'http://www.myghty.org/'
|
472
|
+
version_added = '0.6'
|
465
473
|
|
466
474
|
def __init__(self, **options):
|
467
475
|
super().__init__(HtmlLexer, MyghtyLexer, **options)
|
@@ -471,13 +479,13 @@ class MyghtyXmlLexer(DelegatingLexer):
|
|
471
479
|
"""
|
472
480
|
Subclass of the `MyghtyLexer` that highlights unlexed data
|
473
481
|
with the `XmlLexer`.
|
474
|
-
|
475
|
-
.. versionadded:: 0.6
|
476
482
|
"""
|
477
483
|
|
478
484
|
name = 'XML+Myghty'
|
479
485
|
aliases = ['xml+myghty']
|
480
486
|
mimetypes = ['application/xml+myghty']
|
487
|
+
url = 'http://www.myghty.org/'
|
488
|
+
version_added = '0.6'
|
481
489
|
|
482
490
|
def __init__(self, **options):
|
483
491
|
super().__init__(XmlLexer, MyghtyLexer, **options)
|
@@ -487,8 +495,6 @@ class MyghtyJavascriptLexer(DelegatingLexer):
|
|
487
495
|
"""
|
488
496
|
Subclass of the `MyghtyLexer` that highlights unlexed data
|
489
497
|
with the `JavascriptLexer`.
|
490
|
-
|
491
|
-
.. versionadded:: 0.6
|
492
498
|
"""
|
493
499
|
|
494
500
|
name = 'JavaScript+Myghty'
|
@@ -496,6 +502,8 @@ class MyghtyJavascriptLexer(DelegatingLexer):
|
|
496
502
|
mimetypes = ['application/x-javascript+myghty',
|
497
503
|
'text/x-javascript+myghty',
|
498
504
|
'text/javascript+mygthy']
|
505
|
+
url = 'http://www.myghty.org/'
|
506
|
+
version_added = '0.6'
|
499
507
|
|
500
508
|
def __init__(self, **options):
|
501
509
|
super().__init__(JavascriptLexer, MyghtyLexer, **options)
|
@@ -505,13 +513,13 @@ class MyghtyCssLexer(DelegatingLexer):
|
|
505
513
|
"""
|
506
514
|
Subclass of the `MyghtyLexer` that highlights unlexed data
|
507
515
|
with the `CssLexer`.
|
508
|
-
|
509
|
-
.. versionadded:: 0.6
|
510
516
|
"""
|
511
517
|
|
512
518
|
name = 'CSS+Myghty'
|
513
519
|
aliases = ['css+myghty']
|
514
520
|
mimetypes = ['text/css+myghty']
|
521
|
+
url = 'http://www.myghty.org/'
|
522
|
+
version_added = '0.6'
|
515
523
|
|
516
524
|
def __init__(self, **options):
|
517
525
|
super().__init__(CssLexer, MyghtyLexer, **options)
|
@@ -521,14 +529,13 @@ class MasonLexer(RegexLexer):
|
|
521
529
|
"""
|
522
530
|
Generic mason templates lexer. Stolen from Myghty lexer. Code that isn't
|
523
531
|
Mason markup is HTML.
|
524
|
-
|
525
|
-
.. versionadded:: 1.4
|
526
532
|
"""
|
527
533
|
name = 'Mason'
|
528
534
|
url = 'http://www.masonhq.com/'
|
529
535
|
aliases = ['mason']
|
530
536
|
filenames = ['*.m', '*.mhtml', '*.mc', '*.mi', 'autohandler', 'dhandler']
|
531
537
|
mimetypes = ['application/x-mason']
|
538
|
+
version_added = '1.4'
|
532
539
|
|
533
540
|
tokens = {
|
534
541
|
'root': [
|
@@ -576,8 +583,6 @@ class MakoLexer(RegexLexer):
|
|
576
583
|
"""
|
577
584
|
Generic mako templates lexer. Code that isn't Mako
|
578
585
|
markup is yielded as `Token.Other`.
|
579
|
-
|
580
|
-
.. versionadded:: 0.7
|
581
586
|
"""
|
582
587
|
|
583
588
|
name = 'Mako'
|
@@ -585,6 +590,7 @@ class MakoLexer(RegexLexer):
|
|
585
590
|
aliases = ['mako']
|
586
591
|
filenames = ['*.mao']
|
587
592
|
mimetypes = ['application/x-mako']
|
593
|
+
version_added = '0.7'
|
588
594
|
|
589
595
|
tokens = {
|
590
596
|
'root': [
|
@@ -643,13 +649,13 @@ class MakoHtmlLexer(DelegatingLexer):
|
|
643
649
|
"""
|
644
650
|
Subclass of the `MakoLexer` that highlights unlexed data
|
645
651
|
with the `HtmlLexer`.
|
646
|
-
|
647
|
-
.. versionadded:: 0.7
|
648
652
|
"""
|
649
653
|
|
650
654
|
name = 'HTML+Mako'
|
651
655
|
aliases = ['html+mako']
|
652
656
|
mimetypes = ['text/html+mako']
|
657
|
+
url = 'http://www.makotemplates.org/'
|
658
|
+
version_added = '0.7'
|
653
659
|
|
654
660
|
def __init__(self, **options):
|
655
661
|
super().__init__(HtmlLexer, MakoLexer, **options)
|
@@ -659,13 +665,13 @@ class MakoXmlLexer(DelegatingLexer):
|
|
659
665
|
"""
|
660
666
|
Subclass of the `MakoLexer` that highlights unlexed data
|
661
667
|
with the `XmlLexer`.
|
662
|
-
|
663
|
-
.. versionadded:: 0.7
|
664
668
|
"""
|
665
669
|
|
666
670
|
name = 'XML+Mako'
|
667
671
|
aliases = ['xml+mako']
|
668
672
|
mimetypes = ['application/xml+mako']
|
673
|
+
url = 'http://www.makotemplates.org/'
|
674
|
+
version_added = '0.7'
|
669
675
|
|
670
676
|
def __init__(self, **options):
|
671
677
|
super().__init__(XmlLexer, MakoLexer, **options)
|
@@ -675,8 +681,6 @@ class MakoJavascriptLexer(DelegatingLexer):
|
|
675
681
|
"""
|
676
682
|
Subclass of the `MakoLexer` that highlights unlexed data
|
677
683
|
with the `JavascriptLexer`.
|
678
|
-
|
679
|
-
.. versionadded:: 0.7
|
680
684
|
"""
|
681
685
|
|
682
686
|
name = 'JavaScript+Mako'
|
@@ -684,6 +688,8 @@ class MakoJavascriptLexer(DelegatingLexer):
|
|
684
688
|
mimetypes = ['application/x-javascript+mako',
|
685
689
|
'text/x-javascript+mako',
|
686
690
|
'text/javascript+mako']
|
691
|
+
url = 'http://www.makotemplates.org/'
|
692
|
+
version_added = '0.7'
|
687
693
|
|
688
694
|
def __init__(self, **options):
|
689
695
|
super().__init__(JavascriptLexer, MakoLexer, **options)
|
@@ -693,13 +699,13 @@ class MakoCssLexer(DelegatingLexer):
|
|
693
699
|
"""
|
694
700
|
Subclass of the `MakoLexer` that highlights unlexed data
|
695
701
|
with the `CssLexer`.
|
696
|
-
|
697
|
-
.. versionadded:: 0.7
|
698
702
|
"""
|
699
703
|
|
700
704
|
name = 'CSS+Mako'
|
701
705
|
aliases = ['css+mako']
|
702
706
|
mimetypes = ['text/css+mako']
|
707
|
+
url = 'http://www.makotemplates.org/'
|
708
|
+
version_added = '0.7'
|
703
709
|
|
704
710
|
def __init__(self, **options):
|
705
711
|
super().__init__(CssLexer, MakoLexer, **options)
|
@@ -734,6 +740,7 @@ class CheetahLexer(RegexLexer):
|
|
734
740
|
aliases = ['cheetah', 'spitfire']
|
735
741
|
filenames = ['*.tmpl', '*.spt']
|
736
742
|
mimetypes = ['application/x-cheetah', 'application/x-spitfire']
|
743
|
+
version_added = ''
|
737
744
|
|
738
745
|
tokens = {
|
739
746
|
'root': [
|
@@ -773,6 +780,8 @@ class CheetahHtmlLexer(DelegatingLexer):
|
|
773
780
|
name = 'HTML+Cheetah'
|
774
781
|
aliases = ['html+cheetah', 'html+spitfire', 'htmlcheetah']
|
775
782
|
mimetypes = ['text/html+cheetah', 'text/html+spitfire']
|
783
|
+
url = 'http://www.cheetahtemplate.org/'
|
784
|
+
version_added = ''
|
776
785
|
|
777
786
|
def __init__(self, **options):
|
778
787
|
super().__init__(HtmlLexer, CheetahLexer, **options)
|
@@ -787,6 +796,8 @@ class CheetahXmlLexer(DelegatingLexer):
|
|
787
796
|
name = 'XML+Cheetah'
|
788
797
|
aliases = ['xml+cheetah', 'xml+spitfire']
|
789
798
|
mimetypes = ['application/xml+cheetah', 'application/xml+spitfire']
|
799
|
+
url = 'http://www.cheetahtemplate.org/'
|
800
|
+
version_added = ''
|
790
801
|
|
791
802
|
def __init__(self, **options):
|
792
803
|
super().__init__(XmlLexer, CheetahLexer, **options)
|
@@ -807,6 +818,8 @@ class CheetahJavascriptLexer(DelegatingLexer):
|
|
807
818
|
'application/x-javascript+spitfire',
|
808
819
|
'text/x-javascript+spitfire',
|
809
820
|
'text/javascript+spitfire']
|
821
|
+
url = 'http://www.cheetahtemplate.org/'
|
822
|
+
version_added = ''
|
810
823
|
|
811
824
|
def __init__(self, **options):
|
812
825
|
super().__init__(JavascriptLexer, CheetahLexer, **options)
|
@@ -818,9 +831,10 @@ class GenshiTextLexer(RegexLexer):
|
|
818
831
|
"""
|
819
832
|
|
820
833
|
name = 'Genshi Text'
|
821
|
-
url = '
|
834
|
+
url = 'https://genshi.edgewall.org/'
|
822
835
|
aliases = ['genshitext']
|
823
836
|
mimetypes = ['application/x-genshi-text', 'text/x-genshi']
|
837
|
+
version_added = ''
|
824
838
|
|
825
839
|
tokens = {
|
826
840
|
'root': [
|
@@ -913,14 +927,16 @@ class GenshiMarkupLexer(RegexLexer):
|
|
913
927
|
|
914
928
|
class HtmlGenshiLexer(DelegatingLexer):
|
915
929
|
"""
|
916
|
-
A lexer that highlights `genshi <
|
930
|
+
A lexer that highlights `genshi <https://genshi.edgewall.org/>`_ and
|
917
931
|
`kid <http://kid-templating.org/>`_ kid HTML templates.
|
918
932
|
"""
|
919
933
|
|
920
934
|
name = 'HTML+Genshi'
|
921
935
|
aliases = ['html+genshi', 'html+kid']
|
936
|
+
version_added = ''
|
922
937
|
alias_filenames = ['*.html', '*.htm', '*.xhtml']
|
923
938
|
mimetypes = ['text/html+genshi']
|
939
|
+
url = 'https://genshi.edgewall.org/'
|
924
940
|
|
925
941
|
def __init__(self, **options):
|
926
942
|
super().__init__(HtmlLexer, GenshiMarkupLexer, **options)
|
@@ -936,15 +952,17 @@ class HtmlGenshiLexer(DelegatingLexer):
|
|
936
952
|
|
937
953
|
class GenshiLexer(DelegatingLexer):
|
938
954
|
"""
|
939
|
-
A lexer that highlights `genshi <
|
955
|
+
A lexer that highlights `genshi <https://genshi.edgewall.org/>`_ and
|
940
956
|
`kid <http://kid-templating.org/>`_ kid XML templates.
|
941
957
|
"""
|
942
958
|
|
943
959
|
name = 'Genshi'
|
944
960
|
aliases = ['genshi', 'kid', 'xml+genshi', 'xml+kid']
|
945
961
|
filenames = ['*.kid']
|
962
|
+
version_added = ''
|
946
963
|
alias_filenames = ['*.xml']
|
947
964
|
mimetypes = ['application/x-genshi', 'application/x-kid']
|
965
|
+
url = 'https://genshi.edgewall.org/'
|
948
966
|
|
949
967
|
def __init__(self, **options):
|
950
968
|
super().__init__(XmlLexer, GenshiMarkupLexer, **options)
|
@@ -966,10 +984,12 @@ class JavascriptGenshiLexer(DelegatingLexer):
|
|
966
984
|
name = 'JavaScript+Genshi Text'
|
967
985
|
aliases = ['js+genshitext', 'js+genshi', 'javascript+genshitext',
|
968
986
|
'javascript+genshi']
|
987
|
+
version_added = ''
|
969
988
|
alias_filenames = ['*.js']
|
970
989
|
mimetypes = ['application/x-javascript+genshi',
|
971
990
|
'text/x-javascript+genshi',
|
972
991
|
'text/javascript+genshi']
|
992
|
+
url = 'https://genshi.edgewall.org'
|
973
993
|
|
974
994
|
def __init__(self, **options):
|
975
995
|
super().__init__(JavascriptLexer, GenshiTextLexer, **options)
|
@@ -985,8 +1005,10 @@ class CssGenshiLexer(DelegatingLexer):
|
|
985
1005
|
|
986
1006
|
name = 'CSS+Genshi Text'
|
987
1007
|
aliases = ['css+genshitext', 'css+genshi']
|
1008
|
+
version_added = ''
|
988
1009
|
alias_filenames = ['*.css']
|
989
1010
|
mimetypes = ['text/css+genshi']
|
1011
|
+
url = 'https://genshi.edgewall.org'
|
990
1012
|
|
991
1013
|
def __init__(self, **options):
|
992
1014
|
super().__init__(CssLexer, GenshiTextLexer, **options)
|
@@ -1006,8 +1028,11 @@ class RhtmlLexer(DelegatingLexer):
|
|
1006
1028
|
name = 'RHTML'
|
1007
1029
|
aliases = ['rhtml', 'html+erb', 'html+ruby']
|
1008
1030
|
filenames = ['*.rhtml']
|
1031
|
+
version_added = ''
|
1009
1032
|
alias_filenames = ['*.html', '*.htm', '*.xhtml']
|
1010
1033
|
mimetypes = ['text/html+ruby']
|
1034
|
+
url = 'https://github.com/ruby/erb'
|
1035
|
+
|
1011
1036
|
|
1012
1037
|
def __init__(self, **options):
|
1013
1038
|
super().__init__(HtmlLexer, ErbLexer, **options)
|
@@ -1028,8 +1053,10 @@ class XmlErbLexer(DelegatingLexer):
|
|
1028
1053
|
|
1029
1054
|
name = 'XML+Ruby'
|
1030
1055
|
aliases = ['xml+ruby', 'xml+erb']
|
1056
|
+
version_added = ''
|
1031
1057
|
alias_filenames = ['*.xml']
|
1032
1058
|
mimetypes = ['application/xml+ruby']
|
1059
|
+
url = 'https://github.com/ruby/erb'
|
1033
1060
|
|
1034
1061
|
def __init__(self, **options):
|
1035
1062
|
super().__init__(XmlLexer, ErbLexer, **options)
|
@@ -1048,8 +1075,10 @@ class CssErbLexer(DelegatingLexer):
|
|
1048
1075
|
|
1049
1076
|
name = 'CSS+Ruby'
|
1050
1077
|
aliases = ['css+ruby', 'css+erb']
|
1078
|
+
version_added = ''
|
1051
1079
|
alias_filenames = ['*.css']
|
1052
1080
|
mimetypes = ['text/css+ruby']
|
1081
|
+
url = 'https://github.com/ruby/erb'
|
1053
1082
|
|
1054
1083
|
def __init__(self, **options):
|
1055
1084
|
super().__init__(CssLexer, ErbLexer, **options)
|
@@ -1066,10 +1095,12 @@ class JavascriptErbLexer(DelegatingLexer):
|
|
1066
1095
|
|
1067
1096
|
name = 'JavaScript+Ruby'
|
1068
1097
|
aliases = ['javascript+ruby', 'js+ruby', 'javascript+erb', 'js+erb']
|
1098
|
+
version_added = ''
|
1069
1099
|
alias_filenames = ['*.js']
|
1070
1100
|
mimetypes = ['application/x-javascript+ruby',
|
1071
1101
|
'text/x-javascript+ruby',
|
1072
1102
|
'text/javascript+ruby']
|
1103
|
+
url = 'https://github.com/ruby/erb'
|
1073
1104
|
|
1074
1105
|
def __init__(self, **options):
|
1075
1106
|
super().__init__(JavascriptLexer, ErbLexer, **options)
|
@@ -1088,11 +1119,14 @@ class HtmlPhpLexer(DelegatingLexer):
|
|
1088
1119
|
name = 'HTML+PHP'
|
1089
1120
|
aliases = ['html+php']
|
1090
1121
|
filenames = ['*.phtml']
|
1122
|
+
version_added = ''
|
1091
1123
|
alias_filenames = ['*.php', '*.html', '*.htm', '*.xhtml',
|
1092
1124
|
'*.php[345]']
|
1093
1125
|
mimetypes = ['application/x-php',
|
1094
1126
|
'application/x-httpd-php', 'application/x-httpd-php3',
|
1095
1127
|
'application/x-httpd-php4', 'application/x-httpd-php5']
|
1128
|
+
url = 'https://www.php.net'
|
1129
|
+
|
1096
1130
|
|
1097
1131
|
def __init__(self, **options):
|
1098
1132
|
super().__init__(HtmlLexer, PhpLexer, **options)
|
@@ -1111,8 +1145,10 @@ class XmlPhpLexer(DelegatingLexer):
|
|
1111
1145
|
|
1112
1146
|
name = 'XML+PHP'
|
1113
1147
|
aliases = ['xml+php']
|
1148
|
+
version_added = ''
|
1114
1149
|
alias_filenames = ['*.xml', '*.php', '*.php[345]']
|
1115
1150
|
mimetypes = ['application/xml+php']
|
1151
|
+
url = 'https://www.php.net'
|
1116
1152
|
|
1117
1153
|
def __init__(self, **options):
|
1118
1154
|
super().__init__(XmlLexer, PhpLexer, **options)
|
@@ -1131,8 +1167,10 @@ class CssPhpLexer(DelegatingLexer):
|
|
1131
1167
|
|
1132
1168
|
name = 'CSS+PHP'
|
1133
1169
|
aliases = ['css+php']
|
1170
|
+
version_added = ''
|
1134
1171
|
alias_filenames = ['*.css']
|
1135
1172
|
mimetypes = ['text/css+php']
|
1173
|
+
url = 'https://www.php.net'
|
1136
1174
|
|
1137
1175
|
def __init__(self, **options):
|
1138
1176
|
super().__init__(CssLexer, PhpLexer, **options)
|
@@ -1149,10 +1187,12 @@ class JavascriptPhpLexer(DelegatingLexer):
|
|
1149
1187
|
|
1150
1188
|
name = 'JavaScript+PHP'
|
1151
1189
|
aliases = ['javascript+php', 'js+php']
|
1190
|
+
version_added = ''
|
1152
1191
|
alias_filenames = ['*.js']
|
1153
1192
|
mimetypes = ['application/x-javascript+php',
|
1154
1193
|
'text/x-javascript+php',
|
1155
1194
|
'text/javascript+php']
|
1195
|
+
url = 'https://www.php.net'
|
1156
1196
|
|
1157
1197
|
def __init__(self, **options):
|
1158
1198
|
super().__init__(JavascriptLexer, PhpLexer, **options)
|
@@ -1171,8 +1211,10 @@ class HtmlSmartyLexer(DelegatingLexer):
|
|
1171
1211
|
|
1172
1212
|
name = 'HTML+Smarty'
|
1173
1213
|
aliases = ['html+smarty']
|
1214
|
+
version_added = ''
|
1174
1215
|
alias_filenames = ['*.html', '*.htm', '*.xhtml', '*.tpl']
|
1175
1216
|
mimetypes = ['text/html+smarty']
|
1217
|
+
url = 'https://www.smarty.net/'
|
1176
1218
|
|
1177
1219
|
def __init__(self, **options):
|
1178
1220
|
super().__init__(HtmlLexer, SmartyLexer, **options)
|
@@ -1192,8 +1234,10 @@ class XmlSmartyLexer(DelegatingLexer):
|
|
1192
1234
|
|
1193
1235
|
name = 'XML+Smarty'
|
1194
1236
|
aliases = ['xml+smarty']
|
1237
|
+
version_added = ''
|
1195
1238
|
alias_filenames = ['*.xml', '*.tpl']
|
1196
1239
|
mimetypes = ['application/xml+smarty']
|
1240
|
+
url = 'https://www.smarty.net/'
|
1197
1241
|
|
1198
1242
|
def __init__(self, **options):
|
1199
1243
|
super().__init__(XmlLexer, SmartyLexer, **options)
|
@@ -1213,8 +1257,10 @@ class CssSmartyLexer(DelegatingLexer):
|
|
1213
1257
|
|
1214
1258
|
name = 'CSS+Smarty'
|
1215
1259
|
aliases = ['css+smarty']
|
1260
|
+
version_added = ''
|
1216
1261
|
alias_filenames = ['*.css', '*.tpl']
|
1217
1262
|
mimetypes = ['text/css+smarty']
|
1263
|
+
url = 'https://www.smarty.net/'
|
1218
1264
|
|
1219
1265
|
def __init__(self, **options):
|
1220
1266
|
super().__init__(CssLexer, SmartyLexer, **options)
|
@@ -1231,10 +1277,12 @@ class JavascriptSmartyLexer(DelegatingLexer):
|
|
1231
1277
|
|
1232
1278
|
name = 'JavaScript+Smarty'
|
1233
1279
|
aliases = ['javascript+smarty', 'js+smarty']
|
1280
|
+
version_added = ''
|
1234
1281
|
alias_filenames = ['*.js', '*.tpl']
|
1235
1282
|
mimetypes = ['application/x-javascript+smarty',
|
1236
1283
|
'text/x-javascript+smarty',
|
1237
1284
|
'text/javascript+smarty']
|
1285
|
+
url = 'https://www.smarty.net/'
|
1238
1286
|
|
1239
1287
|
def __init__(self, **options):
|
1240
1288
|
super().__init__(JavascriptLexer, SmartyLexer, **options)
|
@@ -1254,8 +1302,10 @@ class HtmlDjangoLexer(DelegatingLexer):
|
|
1254
1302
|
name = 'HTML+Django/Jinja'
|
1255
1303
|
aliases = ['html+django', 'html+jinja', 'htmldjango']
|
1256
1304
|
filenames = ['*.html.j2', '*.htm.j2', '*.xhtml.j2', '*.html.jinja2', '*.htm.jinja2', '*.xhtml.jinja2']
|
1305
|
+
version_added = ''
|
1257
1306
|
alias_filenames = ['*.html', '*.htm', '*.xhtml']
|
1258
1307
|
mimetypes = ['text/html+django', 'text/html+jinja']
|
1308
|
+
url = 'https://www.djangoproject.com/documentation/templates'
|
1259
1309
|
|
1260
1310
|
def __init__(self, **options):
|
1261
1311
|
super().__init__(HtmlLexer, DjangoLexer, **options)
|
@@ -1276,8 +1326,10 @@ class XmlDjangoLexer(DelegatingLexer):
|
|
1276
1326
|
name = 'XML+Django/Jinja'
|
1277
1327
|
aliases = ['xml+django', 'xml+jinja']
|
1278
1328
|
filenames = ['*.xml.j2', '*.xml.jinja2']
|
1329
|
+
version_added = ''
|
1279
1330
|
alias_filenames = ['*.xml']
|
1280
1331
|
mimetypes = ['application/xml+django', 'application/xml+jinja']
|
1332
|
+
url = 'https://www.djangoproject.com/documentation/templates'
|
1281
1333
|
|
1282
1334
|
def __init__(self, **options):
|
1283
1335
|
super().__init__(XmlLexer, DjangoLexer, **options)
|
@@ -1298,8 +1350,10 @@ class CssDjangoLexer(DelegatingLexer):
|
|
1298
1350
|
name = 'CSS+Django/Jinja'
|
1299
1351
|
aliases = ['css+django', 'css+jinja']
|
1300
1352
|
filenames = ['*.css.j2', '*.css.jinja2']
|
1353
|
+
version_added = ''
|
1301
1354
|
alias_filenames = ['*.css']
|
1302
1355
|
mimetypes = ['text/css+django', 'text/css+jinja']
|
1356
|
+
url = 'https://www.djangoproject.com/documentation/templates'
|
1303
1357
|
|
1304
1358
|
def __init__(self, **options):
|
1305
1359
|
super().__init__(CssLexer, DjangoLexer, **options)
|
@@ -1318,6 +1372,7 @@ class JavascriptDjangoLexer(DelegatingLexer):
|
|
1318
1372
|
aliases = ['javascript+django', 'js+django',
|
1319
1373
|
'javascript+jinja', 'js+jinja']
|
1320
1374
|
filenames = ['*.js.j2', '*.js.jinja2']
|
1375
|
+
version_added = ''
|
1321
1376
|
alias_filenames = ['*.js']
|
1322
1377
|
mimetypes = ['application/x-javascript+django',
|
1323
1378
|
'application/x-javascript+jinja',
|
@@ -1325,6 +1380,7 @@ class JavascriptDjangoLexer(DelegatingLexer):
|
|
1325
1380
|
'text/x-javascript+jinja',
|
1326
1381
|
'text/javascript+django',
|
1327
1382
|
'text/javascript+jinja']
|
1383
|
+
url = 'https://www.djangoproject.com/documentation/templates'
|
1328
1384
|
|
1329
1385
|
def __init__(self, **options):
|
1330
1386
|
super().__init__(JavascriptLexer, DjangoLexer, **options)
|
@@ -1361,13 +1417,13 @@ class JspRootLexer(RegexLexer):
|
|
1361
1417
|
class JspLexer(DelegatingLexer):
|
1362
1418
|
"""
|
1363
1419
|
Lexer for Java Server Pages.
|
1364
|
-
|
1365
|
-
.. versionadded:: 0.7
|
1366
1420
|
"""
|
1367
1421
|
name = 'Java Server Page'
|
1368
1422
|
aliases = ['jsp']
|
1369
1423
|
filenames = ['*.jsp']
|
1370
1424
|
mimetypes = ['application/x-jsp']
|
1425
|
+
url = 'https://projects.eclipse.org/projects/ee4j.jsp'
|
1426
|
+
version_added = '0.7'
|
1371
1427
|
|
1372
1428
|
def __init__(self, **options):
|
1373
1429
|
super().__init__(XmlLexer, JspRootLexer, **options)
|
@@ -1384,13 +1440,13 @@ class JspLexer(DelegatingLexer):
|
|
1384
1440
|
class EvoqueLexer(RegexLexer):
|
1385
1441
|
"""
|
1386
1442
|
For files using the Evoque templating system.
|
1387
|
-
|
1388
|
-
.. versionadded:: 1.1
|
1389
1443
|
"""
|
1390
1444
|
name = 'Evoque'
|
1391
1445
|
aliases = ['evoque']
|
1392
1446
|
filenames = ['*.evoque']
|
1393
1447
|
mimetypes = ['application/x-evoque']
|
1448
|
+
url = 'https://gizmojo.org/templating'
|
1449
|
+
version_added = '1.1'
|
1394
1450
|
|
1395
1451
|
flags = re.DOTALL
|
1396
1452
|
|
@@ -1442,13 +1498,13 @@ class EvoqueHtmlLexer(DelegatingLexer):
|
|
1442
1498
|
"""
|
1443
1499
|
Subclass of the `EvoqueLexer` that highlights unlexed data with the
|
1444
1500
|
`HtmlLexer`.
|
1445
|
-
|
1446
|
-
.. versionadded:: 1.1
|
1447
1501
|
"""
|
1448
1502
|
name = 'HTML+Evoque'
|
1449
1503
|
aliases = ['html+evoque']
|
1450
1504
|
filenames = ['*.html']
|
1451
1505
|
mimetypes = ['text/html+evoque']
|
1506
|
+
url = 'https://gizmojo.org/templating'
|
1507
|
+
version_added = '1.1'
|
1452
1508
|
|
1453
1509
|
def __init__(self, **options):
|
1454
1510
|
super().__init__(HtmlLexer, EvoqueLexer, **options)
|
@@ -1461,13 +1517,13 @@ class EvoqueXmlLexer(DelegatingLexer):
|
|
1461
1517
|
"""
|
1462
1518
|
Subclass of the `EvoqueLexer` that highlights unlexed data with the
|
1463
1519
|
`XmlLexer`.
|
1464
|
-
|
1465
|
-
.. versionadded:: 1.1
|
1466
1520
|
"""
|
1467
1521
|
name = 'XML+Evoque'
|
1468
1522
|
aliases = ['xml+evoque']
|
1469
1523
|
filenames = ['*.xml']
|
1470
1524
|
mimetypes = ['application/xml+evoque']
|
1525
|
+
url = 'https://gizmojo.org/templating'
|
1526
|
+
version_added = '1.1'
|
1471
1527
|
|
1472
1528
|
def __init__(self, **options):
|
1473
1529
|
super().__init__(XmlLexer, EvoqueLexer, **options)
|
@@ -1484,6 +1540,9 @@ class ColdfusionLexer(RegexLexer):
|
|
1484
1540
|
aliases = ['cfs']
|
1485
1541
|
filenames = []
|
1486
1542
|
mimetypes = []
|
1543
|
+
url = 'https://www.adobe.com/products/coldfusion-family.html'
|
1544
|
+
version_added = ''
|
1545
|
+
|
1487
1546
|
flags = re.IGNORECASE
|
1488
1547
|
|
1489
1548
|
tokens = {
|
@@ -1532,6 +1591,7 @@ class ColdfusionMarkupLexer(RegexLexer):
|
|
1532
1591
|
aliases = ['cf']
|
1533
1592
|
filenames = []
|
1534
1593
|
mimetypes = []
|
1594
|
+
url = 'https://www.adobe.com/products/coldfusion-family.html'
|
1535
1595
|
|
1536
1596
|
tokens = {
|
1537
1597
|
'root': [
|
@@ -1578,6 +1638,8 @@ class ColdfusionHtmlLexer(DelegatingLexer):
|
|
1578
1638
|
aliases = ['cfm']
|
1579
1639
|
filenames = ['*.cfm', '*.cfml']
|
1580
1640
|
mimetypes = ['application/x-coldfusion']
|
1641
|
+
url = 'https://www.adobe.com/products/coldfusion-family.html'
|
1642
|
+
version_added = ''
|
1581
1643
|
|
1582
1644
|
def __init__(self, **options):
|
1583
1645
|
super().__init__(HtmlLexer, ColdfusionMarkupLexer, **options)
|
@@ -1586,13 +1648,13 @@ class ColdfusionHtmlLexer(DelegatingLexer):
|
|
1586
1648
|
class ColdfusionCFCLexer(DelegatingLexer):
|
1587
1649
|
"""
|
1588
1650
|
Coldfusion markup/script components
|
1589
|
-
|
1590
|
-
.. versionadded:: 2.0
|
1591
1651
|
"""
|
1592
1652
|
name = 'Coldfusion CFC'
|
1593
1653
|
aliases = ['cfc']
|
1594
1654
|
filenames = ['*.cfc']
|
1595
1655
|
mimetypes = []
|
1656
|
+
url = 'https://www.adobe.com/products/coldfusion-family.html'
|
1657
|
+
version_added = '2.0'
|
1596
1658
|
|
1597
1659
|
def __init__(self, **options):
|
1598
1660
|
super().__init__(ColdfusionHtmlLexer, ColdfusionLexer, **options)
|
@@ -1601,13 +1663,13 @@ class ColdfusionCFCLexer(DelegatingLexer):
|
|
1601
1663
|
class SspLexer(DelegatingLexer):
|
1602
1664
|
"""
|
1603
1665
|
Lexer for Scalate Server Pages.
|
1604
|
-
|
1605
|
-
.. versionadded:: 1.4
|
1606
1666
|
"""
|
1607
1667
|
name = 'Scalate Server Page'
|
1608
1668
|
aliases = ['ssp']
|
1609
1669
|
filenames = ['*.ssp']
|
1610
1670
|
mimetypes = ['application/x-ssp']
|
1671
|
+
url = 'https://scalate.github.io/scalate/'
|
1672
|
+
version_added = '1.4'
|
1611
1673
|
|
1612
1674
|
def __init__(self, **options):
|
1613
1675
|
super().__init__(XmlLexer, JspRootLexer, **options)
|
@@ -1647,14 +1709,14 @@ class TeaTemplateRootLexer(RegexLexer):
|
|
1647
1709
|
|
1648
1710
|
class TeaTemplateLexer(DelegatingLexer):
|
1649
1711
|
"""
|
1650
|
-
Lexer for
|
1651
|
-
|
1652
|
-
.. versionadded:: 1.5
|
1712
|
+
Lexer for Tea Templates.
|
1653
1713
|
"""
|
1654
1714
|
name = 'Tea'
|
1655
1715
|
aliases = ['tea']
|
1656
1716
|
filenames = ['*.tea']
|
1657
1717
|
mimetypes = ['text/x-tea']
|
1718
|
+
url = 'https://github.com/teatrove/teatrove'
|
1719
|
+
version_added = '1.5'
|
1658
1720
|
|
1659
1721
|
def __init__(self, **options):
|
1660
1722
|
super().__init__(XmlLexer, TeaTemplateRootLexer, **options)
|
@@ -1674,17 +1736,17 @@ class LassoHtmlLexer(DelegatingLexer):
|
|
1674
1736
|
`HtmlLexer`.
|
1675
1737
|
|
1676
1738
|
Nested JavaScript and CSS is also highlighted.
|
1677
|
-
|
1678
|
-
.. versionadded:: 1.6
|
1679
1739
|
"""
|
1680
1740
|
|
1681
1741
|
name = 'HTML+Lasso'
|
1682
1742
|
aliases = ['html+lasso']
|
1743
|
+
version_added = '1.6'
|
1683
1744
|
alias_filenames = ['*.html', '*.htm', '*.xhtml', '*.lasso', '*.lasso[89]',
|
1684
1745
|
'*.incl', '*.inc', '*.las']
|
1685
1746
|
mimetypes = ['text/html+lasso',
|
1686
1747
|
'application/x-httpd-lasso',
|
1687
1748
|
'application/x-httpd-lasso[89]']
|
1749
|
+
url = 'https://www.lassosoft.com'
|
1688
1750
|
|
1689
1751
|
def __init__(self, **options):
|
1690
1752
|
super().__init__(HtmlLexer, LassoLexer, **options)
|
@@ -1700,15 +1762,15 @@ class LassoXmlLexer(DelegatingLexer):
|
|
1700
1762
|
"""
|
1701
1763
|
Subclass of the `LassoLexer` which highlights unhandled data with the
|
1702
1764
|
`XmlLexer`.
|
1703
|
-
|
1704
|
-
.. versionadded:: 1.6
|
1705
1765
|
"""
|
1706
1766
|
|
1707
1767
|
name = 'XML+Lasso'
|
1708
1768
|
aliases = ['xml+lasso']
|
1769
|
+
version_added = '1.6'
|
1709
1770
|
alias_filenames = ['*.xml', '*.lasso', '*.lasso[89]',
|
1710
1771
|
'*.incl', '*.inc', '*.las']
|
1711
1772
|
mimetypes = ['application/xml+lasso']
|
1773
|
+
url = 'https://www.lassosoft.com'
|
1712
1774
|
|
1713
1775
|
def __init__(self, **options):
|
1714
1776
|
super().__init__(XmlLexer, LassoLexer, **options)
|
@@ -1724,14 +1786,14 @@ class LassoCssLexer(DelegatingLexer):
|
|
1724
1786
|
"""
|
1725
1787
|
Subclass of the `LassoLexer` which highlights unhandled data with the
|
1726
1788
|
`CssLexer`.
|
1727
|
-
|
1728
|
-
.. versionadded:: 1.6
|
1729
1789
|
"""
|
1730
1790
|
|
1731
1791
|
name = 'CSS+Lasso'
|
1732
1792
|
aliases = ['css+lasso']
|
1793
|
+
version_added = '1.6'
|
1733
1794
|
alias_filenames = ['*.css']
|
1734
1795
|
mimetypes = ['text/css+lasso']
|
1796
|
+
url = 'https://www.lassosoft.com'
|
1735
1797
|
|
1736
1798
|
def __init__(self, **options):
|
1737
1799
|
options['requiredelimiters'] = True
|
@@ -1750,16 +1812,16 @@ class LassoJavascriptLexer(DelegatingLexer):
|
|
1750
1812
|
"""
|
1751
1813
|
Subclass of the `LassoLexer` which highlights unhandled data with the
|
1752
1814
|
`JavascriptLexer`.
|
1753
|
-
|
1754
|
-
.. versionadded:: 1.6
|
1755
1815
|
"""
|
1756
1816
|
|
1757
1817
|
name = 'JavaScript+Lasso'
|
1758
1818
|
aliases = ['javascript+lasso', 'js+lasso']
|
1819
|
+
version_added = '1.6'
|
1759
1820
|
alias_filenames = ['*.js']
|
1760
1821
|
mimetypes = ['application/x-javascript+lasso',
|
1761
1822
|
'text/x-javascript+lasso',
|
1762
1823
|
'text/javascript+lasso']
|
1824
|
+
url = 'https://www.lassosoft.com'
|
1763
1825
|
|
1764
1826
|
def __init__(self, **options):
|
1765
1827
|
options['requiredelimiters'] = True
|
@@ -1776,13 +1838,12 @@ class HandlebarsLexer(RegexLexer):
|
|
1776
1838
|
|
1777
1839
|
Highlights only the Handlebars template tags (stuff between `{{` and `}}`).
|
1778
1840
|
Everything else is left for a delegating lexer.
|
1779
|
-
|
1780
|
-
.. versionadded:: 2.0
|
1781
1841
|
"""
|
1782
1842
|
|
1783
1843
|
name = "Handlebars"
|
1784
1844
|
url = 'https://handlebarsjs.com/'
|
1785
1845
|
aliases = ['handlebars']
|
1846
|
+
version_added = '2.0'
|
1786
1847
|
|
1787
1848
|
tokens = {
|
1788
1849
|
'root': [
|
@@ -1851,14 +1912,14 @@ class HandlebarsHtmlLexer(DelegatingLexer):
|
|
1851
1912
|
"""
|
1852
1913
|
Subclass of the `HandlebarsLexer` that highlights unlexed data with the
|
1853
1914
|
`HtmlLexer`.
|
1854
|
-
|
1855
|
-
.. versionadded:: 2.0
|
1856
1915
|
"""
|
1857
1916
|
|
1858
1917
|
name = "HTML+Handlebars"
|
1859
1918
|
aliases = ["html+handlebars"]
|
1860
1919
|
filenames = ['*.handlebars', '*.hbs']
|
1861
1920
|
mimetypes = ['text/html+handlebars', 'text/x-handlebars-template']
|
1921
|
+
url = 'https://handlebarsjs.com/'
|
1922
|
+
version_added = '2.0'
|
1862
1923
|
|
1863
1924
|
def __init__(self, **options):
|
1864
1925
|
super().__init__(HtmlLexer, HandlebarsLexer, **options)
|
@@ -1870,14 +1931,14 @@ class YamlJinjaLexer(DelegatingLexer):
|
|
1870
1931
|
`YamlLexer`.
|
1871
1932
|
|
1872
1933
|
Commonly used in Saltstack salt states.
|
1873
|
-
|
1874
|
-
.. versionadded:: 2.0
|
1875
1934
|
"""
|
1876
1935
|
|
1877
1936
|
name = 'YAML+Jinja'
|
1878
1937
|
aliases = ['yaml+jinja', 'salt', 'sls']
|
1879
1938
|
filenames = ['*.sls', '*.yaml.j2', '*.yml.j2', '*.yaml.jinja2', '*.yml.jinja2']
|
1880
1939
|
mimetypes = ['text/x-yaml+jinja', 'text/x-sls']
|
1940
|
+
url = 'https://jinja.palletsprojects.com'
|
1941
|
+
version_added = '2.0'
|
1881
1942
|
|
1882
1943
|
def __init__(self, **options):
|
1883
1944
|
super().__init__(YamlLexer, DjangoLexer, **options)
|
@@ -1886,13 +1947,12 @@ class YamlJinjaLexer(DelegatingLexer):
|
|
1886
1947
|
class LiquidLexer(RegexLexer):
|
1887
1948
|
"""
|
1888
1949
|
Lexer for Liquid templates.
|
1889
|
-
|
1890
|
-
.. versionadded:: 2.0
|
1891
1950
|
"""
|
1892
1951
|
name = 'liquid'
|
1893
1952
|
url = 'https://www.rubydoc.info/github/Shopify/liquid'
|
1894
1953
|
aliases = ['liquid']
|
1895
1954
|
filenames = ['*.liquid']
|
1955
|
+
version_added = '2.0'
|
1896
1956
|
|
1897
1957
|
tokens = {
|
1898
1958
|
'root': [
|
@@ -2095,13 +2155,13 @@ class TwigLexer(RegexLexer):
|
|
2095
2155
|
|
2096
2156
|
It just highlights Twig code between the preprocessor directives,
|
2097
2157
|
other data is left untouched by the lexer.
|
2098
|
-
|
2099
|
-
.. versionadded:: 2.0
|
2100
2158
|
"""
|
2101
2159
|
|
2102
2160
|
name = 'Twig'
|
2103
2161
|
aliases = ['twig']
|
2104
2162
|
mimetypes = ['application/x-twig']
|
2163
|
+
url = 'https://twig.symfony.com'
|
2164
|
+
version_added = '2.0'
|
2105
2165
|
|
2106
2166
|
flags = re.M | re.S
|
2107
2167
|
|
@@ -2130,7 +2190,7 @@ class TwigLexer(RegexLexer):
|
|
2130
2190
|
Other, Comment.Preproc, Text, Keyword, Text,
|
2131
2191
|
Comment.Preproc)),
|
2132
2192
|
# filter blocks
|
2133
|
-
(
|
2193
|
+
(rf'(\{{%)(-?\s*)(filter)(\s+)({_ident_inner})',
|
2134
2194
|
bygroups(Comment.Preproc, Text, Keyword, Text, Name.Function),
|
2135
2195
|
'tag'),
|
2136
2196
|
(r'(\{%)(-?\s*)([a-zA-Z_]\w*)',
|
@@ -2138,9 +2198,9 @@ class TwigLexer(RegexLexer):
|
|
2138
2198
|
(r'\{', Other),
|
2139
2199
|
],
|
2140
2200
|
'varnames': [
|
2141
|
-
(
|
2201
|
+
(rf'(\|)(\s*)({_ident_inner})',
|
2142
2202
|
bygroups(Operator, Text, Name.Function)),
|
2143
|
-
(
|
2203
|
+
(rf'(is)(\s+)(not)?(\s*)({_ident_inner})',
|
2144
2204
|
bygroups(Keyword, Text, Keyword, Text, Name.Function)),
|
2145
2205
|
(r'(?i)(true|false|none|null)\b', Keyword.Pseudo),
|
2146
2206
|
(r'(in|not|and|b-and|or|b-or|b-xor|is'
|
@@ -2176,14 +2236,14 @@ class TwigHtmlLexer(DelegatingLexer):
|
|
2176
2236
|
"""
|
2177
2237
|
Subclass of the `TwigLexer` that highlights unlexed data with the
|
2178
2238
|
`HtmlLexer`.
|
2179
|
-
|
2180
|
-
.. versionadded:: 2.0
|
2181
2239
|
"""
|
2182
2240
|
|
2183
2241
|
name = "HTML+Twig"
|
2184
2242
|
aliases = ["html+twig"]
|
2185
2243
|
filenames = ['*.twig']
|
2186
2244
|
mimetypes = ['text/html+twig']
|
2245
|
+
url = 'https://twig.symfony.com'
|
2246
|
+
version_added = '2.0'
|
2187
2247
|
|
2188
2248
|
def __init__(self, **options):
|
2189
2249
|
super().__init__(HtmlLexer, TwigLexer, **options)
|
@@ -2196,13 +2256,12 @@ class Angular2Lexer(RegexLexer):
|
|
2196
2256
|
Highlights only the Angular template tags (stuff between `{{` and `}}` and
|
2197
2257
|
special attributes: '(event)=', '[property]=', '[(twoWayBinding)]=').
|
2198
2258
|
Everything else is left for a delegating lexer.
|
2199
|
-
|
2200
|
-
.. versionadded:: 2.1
|
2201
2259
|
"""
|
2202
2260
|
|
2203
2261
|
name = "Angular2"
|
2204
2262
|
url = 'https://angular.io/guide/template-syntax'
|
2205
2263
|
aliases = ['ng2']
|
2264
|
+
version_added = '2.1'
|
2206
2265
|
|
2207
2266
|
tokens = {
|
2208
2267
|
'root': [
|
@@ -2256,13 +2315,13 @@ class Angular2HtmlLexer(DelegatingLexer):
|
|
2256
2315
|
"""
|
2257
2316
|
Subclass of the `Angular2Lexer` that highlights unlexed data with the
|
2258
2317
|
`HtmlLexer`.
|
2259
|
-
|
2260
|
-
.. versionadded:: 2.0
|
2261
2318
|
"""
|
2262
2319
|
|
2263
2320
|
name = "HTML + Angular2"
|
2264
2321
|
aliases = ["html+ng2"]
|
2265
2322
|
filenames = ['*.ng2']
|
2323
|
+
url = 'https://angular.io/guide/template-syntax'
|
2324
|
+
version_added = '2.0'
|
2266
2325
|
|
2267
2326
|
def __init__(self, **options):
|
2268
2327
|
super().__init__(HtmlLexer, Angular2Lexer, **options)
|
@@ -2271,13 +2330,13 @@ class Angular2HtmlLexer(DelegatingLexer):
|
|
2271
2330
|
class SqlJinjaLexer(DelegatingLexer):
|
2272
2331
|
"""
|
2273
2332
|
Templated SQL lexer.
|
2274
|
-
|
2275
|
-
.. versionadded:: 2.13
|
2276
2333
|
"""
|
2277
2334
|
|
2278
2335
|
name = 'SQL+Jinja'
|
2279
2336
|
aliases = ['sql+jinja']
|
2280
2337
|
filenames = ['*.sql', '*.sql.j2', '*.sql.jinja2']
|
2338
|
+
url = 'https://jinja.palletsprojects.com'
|
2339
|
+
version_added = '2.13'
|
2281
2340
|
|
2282
2341
|
def __init__(self, **options):
|
2283
2342
|
super().__init__(SqlLexer, DjangoLexer, **options)
|