pygments.rb 2.4.1 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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 +9 -1
- data/README.adoc +2 -2
- data/lib/pygments/version.rb +1 -1
- data/pygments.rb.gemspec +2 -2
- 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 +39 -15
- 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 | 
             
                Pygments lexers.
         | 
| 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 |  | 
| @@ -22,6 +22,7 @@ from pygments.util import ClassNotFound, guess_decode | |
| 22 22 | 
             
            COMPAT = {
         | 
| 23 23 | 
             
                'Python3Lexer': 'PythonLexer',
         | 
| 24 24 | 
             
                'Python3TracebackLexer': 'PythonTracebackLexer',
         | 
| 25 | 
            +
                'LeanLexer': 'Lean3Lexer',
         | 
| 25 26 | 
             
            }
         | 
| 26 27 |  | 
| 27 28 | 
             
            __all__ = ['get_lexer_by_name', 'get_lexer_for_filename', 'find_lexer_class',
         | 
| @@ -92,7 +93,7 @@ def find_lexer_class_by_name(_alias): | |
| 92 93 | 
             
                .. versionadded:: 2.2
         | 
| 93 94 | 
             
                """
         | 
| 94 95 | 
             
                if not _alias:
         | 
| 95 | 
            -
                    raise ClassNotFound('no lexer for alias  | 
| 96 | 
            +
                    raise ClassNotFound(f'no lexer for alias {_alias!r} found')
         | 
| 96 97 | 
             
                # lookup builtin lexers
         | 
| 97 98 | 
             
                for module_name, name, aliases, _, _ in LEXERS.values():
         | 
| 98 99 | 
             
                    if _alias.lower() in aliases:
         | 
| @@ -103,7 +104,7 @@ def find_lexer_class_by_name(_alias): | |
| 103 104 | 
             
                for cls in find_plugin_lexers():
         | 
| 104 105 | 
             
                    if _alias.lower() in cls.aliases:
         | 
| 105 106 | 
             
                        return cls
         | 
| 106 | 
            -
                raise ClassNotFound('no lexer for alias  | 
| 107 | 
            +
                raise ClassNotFound(f'no lexer for alias {_alias!r} found')
         | 
| 107 108 |  | 
| 108 109 |  | 
| 109 110 | 
             
            def get_lexer_by_name(_alias, **options):
         | 
| @@ -116,7 +117,7 @@ def get_lexer_by_name(_alias, **options): | |
| 116 117 | 
             
                found.
         | 
| 117 118 | 
             
                """
         | 
| 118 119 | 
             
                if not _alias:
         | 
| 119 | 
            -
                    raise ClassNotFound('no lexer for alias  | 
| 120 | 
            +
                    raise ClassNotFound(f'no lexer for alias {_alias!r} found')
         | 
| 120 121 |  | 
| 121 122 | 
             
                # lookup builtin lexers
         | 
| 122 123 | 
             
                for module_name, name, aliases, _, _ in LEXERS.values():
         | 
| @@ -128,7 +129,7 @@ def get_lexer_by_name(_alias, **options): | |
| 128 129 | 
             
                for cls in find_plugin_lexers():
         | 
| 129 130 | 
             
                    if _alias.lower() in cls.aliases:
         | 
| 130 131 | 
             
                        return cls(**options)
         | 
| 131 | 
            -
                raise ClassNotFound('no lexer for alias  | 
| 132 | 
            +
                raise ClassNotFound(f'no lexer for alias {_alias!r} found')
         | 
| 132 133 |  | 
| 133 134 |  | 
| 134 135 | 
             
            def load_lexer_from_file(filename, lexername="CustomLexer", **options):
         | 
| @@ -153,17 +154,16 @@ def load_lexer_from_file(filename, lexername="CustomLexer", **options): | |
| 153 154 | 
             
                        exec(f.read(), custom_namespace)
         | 
| 154 155 | 
             
                    # Retrieve the class `lexername` from that namespace
         | 
| 155 156 | 
             
                    if lexername not in custom_namespace:
         | 
| 156 | 
            -
                        raise ClassNotFound('no valid  | 
| 157 | 
            -
                                            (lexername, filename))
         | 
| 157 | 
            +
                        raise ClassNotFound(f'no valid {lexername} class found in {filename}')
         | 
| 158 158 | 
             
                    lexer_class = custom_namespace[lexername]
         | 
| 159 159 | 
             
                    # And finally instantiate it with the options
         | 
| 160 160 | 
             
                    return lexer_class(**options)
         | 
| 161 161 | 
             
                except OSError as err:
         | 
| 162 | 
            -
                    raise ClassNotFound('cannot read  | 
| 162 | 
            +
                    raise ClassNotFound(f'cannot read {filename}: {err}')
         | 
| 163 163 | 
             
                except ClassNotFound:
         | 
| 164 164 | 
             
                    raise
         | 
| 165 165 | 
             
                except Exception as err:
         | 
| 166 | 
            -
                    raise ClassNotFound('error when loading custom lexer:  | 
| 166 | 
            +
                    raise ClassNotFound(f'error when loading custom lexer: {err}')
         | 
| 167 167 |  | 
| 168 168 |  | 
| 169 169 | 
             
            def find_lexer_class_for_filename(_fn, code=None):
         | 
| @@ -224,7 +224,7 @@ def get_lexer_for_filename(_fn, code=None, **options): | |
| 224 224 | 
             
                """
         | 
| 225 225 | 
             
                res = find_lexer_class_for_filename(_fn, code)
         | 
| 226 226 | 
             
                if not res:
         | 
| 227 | 
            -
                    raise ClassNotFound('no lexer for filename  | 
| 227 | 
            +
                    raise ClassNotFound(f'no lexer for filename {_fn!r} found')
         | 
| 228 228 | 
             
                return res(**options)
         | 
| 229 229 |  | 
| 230 230 |  | 
| @@ -244,7 +244,7 @@ def get_lexer_for_mimetype(_mime, **options): | |
| 244 244 | 
             
                for cls in find_plugin_lexers():
         | 
| 245 245 | 
             
                    if _mime in cls.mimetypes:
         | 
| 246 246 | 
             
                        return cls(**options)
         | 
| 247 | 
            -
                raise ClassNotFound('no lexer for mimetype  | 
| 247 | 
            +
                raise ClassNotFound(f'no lexer for mimetype {_mime!r} found')
         | 
| 248 248 |  | 
| 249 249 |  | 
| 250 250 | 
             
            def _iter_lexerclasses(plugins=True):
         | 
| @@ -279,7 +279,7 @@ def guess_lexer_for_filename(_fn, _text, **options): | |
| 279 279 | 
             
                            matching_lexers.add(lexer)
         | 
| 280 280 | 
             
                            primary[lexer] = False
         | 
| 281 281 | 
             
                if not matching_lexers:
         | 
| 282 | 
            -
                    raise ClassNotFound('no lexer for filename  | 
| 282 | 
            +
                    raise ClassNotFound(f'no lexer for filename {fn!r} found')
         | 
| 283 283 | 
             
                if len(matching_lexers) == 1:
         | 
| 284 284 | 
             
                    return matching_lexers.pop()(**options)
         | 
| 285 285 | 
             
                result = []
         | 
| @@ -9,7 +9,7 @@ | |
| 9 9 | 
             
                TODO: perl/python script in Asymptote SVN similar to asy-list.pl but only
         | 
| 10 10 | 
             
                for function and variable names.
         | 
| 11 11 |  | 
| 12 | 
            -
                :copyright: Copyright 2006- | 
| 12 | 
            +
                :copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
         | 
| 13 13 | 
             
                :license: BSD, see LICENSE for details.
         | 
| 14 14 | 
             
            """
         | 
| 15 15 |  | 
| @@ -7,7 +7,7 @@ | |
| 7 7 |  | 
| 8 8 | 
             
                File may be also used as standalone generator for above.
         | 
| 9 9 |  | 
| 10 | 
            -
                :copyright: Copyright 2006- | 
| 10 | 
            +
                :copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
         | 
| 11 11 | 
             
                :license: BSD, see LICENSE for details.
         | 
| 12 12 | 
             
            """
         | 
| 13 13 |  | 
| @@ -41,7 +41,7 @@ if __name__ == '__main__':  # pragma: no cover | |
| 41 41 | 
             
                            with open(headerFilePath, encoding='utf-8') as f:
         | 
| 42 42 | 
             
                                content = f.read()
         | 
| 43 43 | 
             
                        except UnicodeDecodeError:
         | 
| 44 | 
            -
                            print("Decoding error for file: { | 
| 44 | 
            +
                            print(f"Decoding error for file: {headerFilePath}")
         | 
| 45 45 | 
             
                            continue
         | 
| 46 46 |  | 
| 47 47 | 
             
                        res = re.findall(r'(?<=@interface )\w+', content)
         | 
| @@ -10,7 +10,7 @@ | |
| 10 10 |  | 
| 11 11 | 
             
                Run with `python -I` to regenerate.
         | 
| 12 12 |  | 
| 13 | 
            -
                :copyright: Copyright 2006- | 
| 13 | 
            +
                :copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
         | 
| 14 14 | 
             
                :license: BSD, see LICENSE for details.
         | 
| 15 15 | 
             
            """
         | 
| 16 16 |  | 
| @@ -230,7 +230,7 @@ if __name__ == '__main__':  # pragma: no cover | |
| 230 230 | 
             
                            return m.groups()[0]
         | 
| 231 231 |  | 
| 232 232 | 
             
                def get_lua_functions(version):
         | 
| 233 | 
            -
                    f = urlopen('http://www.lua.org/manual | 
| 233 | 
            +
                    f = urlopen(f'http://www.lua.org/manual/{version}/')
         | 
| 234 234 | 
             
                    r = re.compile(r'^<A HREF="manual.html#pdf-(?!lua|LUA)([^:]+)">\1</A>')
         | 
| 235 235 | 
             
                    functions = []
         | 
| 236 236 | 
             
                    for line in f:
         | 
| @@ -258,14 +258,14 @@ if __name__ == '__main__':  # pragma: no cover | |
| 258 258 |  | 
| 259 259 | 
             
                    with open(filename, 'w', encoding='utf-8') as fp:
         | 
| 260 260 | 
             
                        fp.write(header)
         | 
| 261 | 
            -
                        fp.write('MODULES =  | 
| 261 | 
            +
                        fp.write(f'MODULES = {pprint.pformat(modules)}\n\n')
         | 
| 262 262 | 
             
                        fp.write(footer)
         | 
| 263 263 |  | 
| 264 264 | 
             
                def run():
         | 
| 265 265 | 
             
                    version = get_newest_version()
         | 
| 266 266 | 
             
                    functions = set()
         | 
| 267 267 | 
             
                    for v in ('5.2', version):
         | 
| 268 | 
            -
                        print('> Downloading function index for Lua  | 
| 268 | 
            +
                        print(f'> Downloading function index for Lua {v}')
         | 
| 269 269 | 
             
                        f = get_lua_functions(v)
         | 
| 270 270 | 
             
                        print('> %d functions found, %d new:' %
         | 
| 271 271 | 
             
                              (len(f), len(set(f) - functions)))
         | 
| @@ -275,7 +275,7 @@ if __name__ == '__main__':  # pragma: no cover | |
| 275 275 |  | 
| 276 276 | 
             
                    modules = {}
         | 
| 277 277 | 
             
                    for full_function_name in functions:
         | 
| 278 | 
            -
                        print('>>  | 
| 278 | 
            +
                        print(f'>> {full_function_name}')
         | 
| 279 279 | 
             
                        m = get_function_module(full_function_name)
         | 
| 280 280 | 
             
                        modules.setdefault(m, []).append(full_function_name)
         | 
| 281 281 | 
             
                    modules = {k: tuple(v) for k, v in modules.items()}
         | 
| @@ -0,0 +1,62 @@ | |
| 1 | 
            +
            """
         | 
| 2 | 
            +
                pygments.lexers._luau_builtins
         | 
| 3 | 
            +
                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
         | 
| 4 | 
            +
             | 
| 5 | 
            +
                Includes the builtins for Luau and Roblox.
         | 
| 6 | 
            +
             | 
| 7 | 
            +
                :copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
         | 
| 8 | 
            +
                :license: BSD, see LICENSE for details.
         | 
| 9 | 
            +
            """
         | 
| 10 | 
            +
             | 
| 11 | 
            +
            LUAU_BUILTINS = {
         | 
| 12 | 
            +
            	'bit32',
         | 
| 13 | 
            +
            	'buffer',
         | 
| 14 | 
            +
            	'coroutine',
         | 
| 15 | 
            +
            	'debug',
         | 
| 16 | 
            +
            	'math',
         | 
| 17 | 
            +
            	'os',
         | 
| 18 | 
            +
            	'string',
         | 
| 19 | 
            +
            	'table',
         | 
| 20 | 
            +
            	'utf8',
         | 
| 21 | 
            +
            }
         | 
| 22 | 
            +
             | 
| 23 | 
            +
            ROBLOX_BUILTINS = {
         | 
| 24 | 
            +
            	'task',
         | 
| 25 | 
            +
             | 
| 26 | 
            +
            	'Axes',
         | 
| 27 | 
            +
            	'BrickColor',
         | 
| 28 | 
            +
            	'CatalogSearchParams',
         | 
| 29 | 
            +
            	'CFrame',
         | 
| 30 | 
            +
            	'Color3',
         | 
| 31 | 
            +
            	'ColorSequence',
         | 
| 32 | 
            +
            	'ColorSequenceKeypoint',
         | 
| 33 | 
            +
            	'DateTime',
         | 
| 34 | 
            +
            	'DockWidgetPluginGuiInfo',
         | 
| 35 | 
            +
            	'Faces',
         | 
| 36 | 
            +
            	'FloatCurveKey',
         | 
| 37 | 
            +
            	'Font',
         | 
| 38 | 
            +
            	'Instance',
         | 
| 39 | 
            +
            	'NumberRange',
         | 
| 40 | 
            +
            	'NumberSequence',
         | 
| 41 | 
            +
            	'NumberSequenceKeypoint',
         | 
| 42 | 
            +
            	'OverlapParams',
         | 
| 43 | 
            +
            	'PathWaypoint',
         | 
| 44 | 
            +
            	'PhysicalProperties',
         | 
| 45 | 
            +
            	'Random',
         | 
| 46 | 
            +
            	'Ray',
         | 
| 47 | 
            +
            	'RaycastParams',
         | 
| 48 | 
            +
            	'RaycastResult',
         | 
| 49 | 
            +
            	'RBXScriptConnection',
         | 
| 50 | 
            +
            	'RBXScriptSignal',
         | 
| 51 | 
            +
            	'Rect',
         | 
| 52 | 
            +
            	'Region3',
         | 
| 53 | 
            +
            	'Region3int16',
         | 
| 54 | 
            +
            	'SharedTable',
         | 
| 55 | 
            +
            	'TweenInfo',
         | 
| 56 | 
            +
            	'UDim',
         | 
| 57 | 
            +
            	'UDim2',
         | 
| 58 | 
            +
            	'Vector2',
         | 
| 59 | 
            +
            	'Vector2int16',
         | 
| 60 | 
            +
            	'Vector3',
         | 
| 61 | 
            +
            	'Vector3int16',
         | 
| 62 | 
            +
            }
         | 
| @@ -31,7 +31,8 @@ LEXERS = { | |
| 31 31 | 
             
                'ArduinoLexer': ('pygments.lexers.c_like', 'Arduino', ('arduino',), ('*.ino',), ('text/x-arduino',)),
         | 
| 32 32 | 
             
                'ArrowLexer': ('pygments.lexers.arrow', 'Arrow', ('arrow',), ('*.arw',), ()),
         | 
| 33 33 | 
             
                'ArturoLexer': ('pygments.lexers.arturo', 'Arturo', ('arturo', 'art'), ('*.art',), ()),
         | 
| 34 | 
            -
                'AscLexer': ('pygments.lexers.asc', 'ASCII armored', ('asc', 'pem'), ('*.asc', '*.pem', 'id_dsa', 'id_ecdsa', 'id_ecdsa_sk', 'id_ed25519', 'id_ed25519_sk', 'id_rsa'), ('application/pgp-keys', 'application/pgp-encrypted', 'application/pgp-signature')),
         | 
| 34 | 
            +
                'AscLexer': ('pygments.lexers.asc', 'ASCII armored', ('asc', 'pem'), ('*.asc', '*.pem', 'id_dsa', 'id_ecdsa', 'id_ecdsa_sk', 'id_ed25519', 'id_ed25519_sk', 'id_rsa'), ('application/pgp-keys', 'application/pgp-encrypted', 'application/pgp-signature', 'application/pem-certificate-chain')),
         | 
| 35 | 
            +
                'Asn1Lexer': ('pygments.lexers.asn1', 'ASN.1', ('asn1',), ('*.asn1',), ()),
         | 
| 35 36 | 
             
                'AspectJLexer': ('pygments.lexers.jvm', 'AspectJ', ('aspectj',), ('*.aj',), ('text/x-aspectj',)),
         | 
| 36 37 | 
             
                'AsymptoteLexer': ('pygments.lexers.graphics', 'Asymptote', ('asymptote', 'asy'), ('*.asy',), ('text/x-asymptote',)),
         | 
| 37 38 | 
             
                'AugeasLexer': ('pygments.lexers.configs', 'Augeas', ('augeas',), ('*.aug',), ()),
         | 
| @@ -41,10 +42,11 @@ LEXERS = { | |
| 41 42 | 
             
                'BBCBasicLexer': ('pygments.lexers.basic', 'BBC Basic', ('bbcbasic',), ('*.bbc',), ()),
         | 
| 42 43 | 
             
                'BBCodeLexer': ('pygments.lexers.markup', 'BBCode', ('bbcode',), (), ('text/x-bbcode',)),
         | 
| 43 44 | 
             
                'BCLexer': ('pygments.lexers.algebra', 'BC', ('bc',), ('*.bc',), ()),
         | 
| 45 | 
            +
                'BQNLexer': ('pygments.lexers.bqn', 'BQN', ('bqn',), ('*.bqn',), ()),
         | 
| 44 46 | 
             
                'BSTLexer': ('pygments.lexers.bibtex', 'BST', ('bst', 'bst-pybtex'), ('*.bst',), ()),
         | 
| 45 47 | 
             
                'BareLexer': ('pygments.lexers.bare', 'BARE', ('bare',), ('*.bare',), ()),
         | 
| 46 48 | 
             
                'BaseMakefileLexer': ('pygments.lexers.make', 'Base Makefile', ('basemake',), (), ()),
         | 
| 47 | 
            -
                'BashLexer': ('pygments.lexers.shell', 'Bash', ('bash', 'sh', 'ksh', 'zsh', 'shell'), ('*.sh', '*.ksh', '*.bash', '*.ebuild', '*.eclass', '*.exheres-0', '*.exlib', '*.zsh', '.bashrc', 'bashrc', '.bash_*', 'bash_*', 'zshrc', '.zshrc', '.kshrc', 'kshrc', 'PKGBUILD'), ('application/x-sh', 'application/x-shellscript', 'text/x-shellscript')),
         | 
| 49 | 
            +
                'BashLexer': ('pygments.lexers.shell', 'Bash', ('bash', 'sh', 'ksh', 'zsh', 'shell', 'openrc'), ('*.sh', '*.ksh', '*.bash', '*.ebuild', '*.eclass', '*.exheres-0', '*.exlib', '*.zsh', '.bashrc', 'bashrc', '.bash_*', 'bash_*', 'zshrc', '.zshrc', '.kshrc', 'kshrc', 'PKGBUILD'), ('application/x-sh', 'application/x-shellscript', 'text/x-shellscript')),
         | 
| 48 50 | 
             
                'BashSessionLexer': ('pygments.lexers.shell', 'Bash Session', ('console', 'shell-session'), ('*.sh-session', '*.shell-session'), ('application/x-shell-session', 'application/x-sh-session')),
         | 
| 49 51 | 
             
                'BatchLexer': ('pygments.lexers.shell', 'Batchfile', ('batch', 'bat', 'dosbatch', 'winbatch'), ('*.bat', '*.cmd'), ('application/x-dos-batch',)),
         | 
| 50 52 | 
             
                'BddLexer': ('pygments.lexers.bdd', 'Bdd', ('bdd',), ('*.feature',), ('text/x-bdd',)),
         | 
| @@ -53,6 +55,7 @@ LEXERS = { | |
| 53 55 | 
             
                'BibTeXLexer': ('pygments.lexers.bibtex', 'BibTeX', ('bibtex', 'bib'), ('*.bib',), ('text/x-bibtex',)),
         | 
| 54 56 | 
             
                'BlitzBasicLexer': ('pygments.lexers.basic', 'BlitzBasic', ('blitzbasic', 'b3d', 'bplus'), ('*.bb', '*.decls'), ('text/x-bb',)),
         | 
| 55 57 | 
             
                'BlitzMaxLexer': ('pygments.lexers.basic', 'BlitzMax', ('blitzmax', 'bmax'), ('*.bmx',), ('text/x-bmx',)),
         | 
| 58 | 
            +
                'BlueprintLexer': ('pygments.lexers.blueprint', 'Blueprint', ('blueprint',), ('*.blp',), ('text/x-blueprint',)),
         | 
| 56 59 | 
             
                'BnfLexer': ('pygments.lexers.grammar_notation', 'BNF', ('bnf',), ('*.bnf',), ('text/x-bnf',)),
         | 
| 57 60 | 
             
                'BoaLexer': ('pygments.lexers.boa', 'Boa', ('boa',), ('*.boa',), ()),
         | 
| 58 61 | 
             
                'BooLexer': ('pygments.lexers.dotnet', 'Boo', ('boo',), ('*.boo',), ('text/x-boo',)),
         | 
| @@ -125,10 +128,12 @@ LEXERS = { | |
| 125 128 | 
             
                'DaxLexer': ('pygments.lexers.dax', 'Dax', ('dax',), ('*.dax',), ()),
         | 
| 126 129 | 
             
                'DebianControlLexer': ('pygments.lexers.installers', 'Debian Control file', ('debcontrol', 'control'), ('control',), ()),
         | 
| 127 130 | 
             
                'DelphiLexer': ('pygments.lexers.pascal', 'Delphi', ('delphi', 'pas', 'pascal', 'objectpascal'), ('*.pas', '*.dpr'), ('text/x-pascal',)),
         | 
| 131 | 
            +
                'DesktopLexer': ('pygments.lexers.configs', 'Desktop file', ('desktop',), ('*.desktop',), ('application/x-desktop',)),
         | 
| 128 132 | 
             
                'DevicetreeLexer': ('pygments.lexers.devicetree', 'Devicetree', ('devicetree', 'dts'), ('*.dts', '*.dtsi'), ('text/x-c',)),
         | 
| 129 133 | 
             
                'DgLexer': ('pygments.lexers.python', 'dg', ('dg',), ('*.dg',), ('text/x-dg',)),
         | 
| 130 134 | 
             
                'DiffLexer': ('pygments.lexers.diff', 'Diff', ('diff', 'udiff'), ('*.diff', '*.patch'), ('text/x-diff', 'text/x-patch')),
         | 
| 131 135 | 
             
                'DjangoLexer': ('pygments.lexers.templates', 'Django/Jinja', ('django', 'jinja'), (), ('application/x-django-templating', 'application/x-jinja')),
         | 
| 136 | 
            +
                'DnsZoneLexer': ('pygments.lexers.dns', 'Zone', ('zone',), ('*.zone',), ('text/dns',)),
         | 
| 132 137 | 
             
                'DockerLexer': ('pygments.lexers.configs', 'Docker', ('docker', 'dockerfile'), ('Dockerfile', '*.docker'), ('text/x-dockerfile-config',)),
         | 
| 133 138 | 
             
                'DtdLexer': ('pygments.lexers.html', 'DTD', ('dtd',), ('*.dtd',), ('application/xml-dtd',)),
         | 
| 134 139 | 
             
                'DuelLexer': ('pygments.lexers.webmisc', 'Duel', ('duel', 'jbst', 'jsonml+bst'), ('*.duel', '*.jbst'), ('text/x-duel', 'text/x-jbst')),
         | 
| @@ -190,6 +195,7 @@ LEXERS = { | |
| 190 195 | 
             
                'GoodDataCLLexer': ('pygments.lexers.business', 'GoodData-CL', ('gooddata-cl',), ('*.gdc',), ('text/x-gooddata-cl',)),
         | 
| 191 196 | 
             
                'GosuLexer': ('pygments.lexers.jvm', 'Gosu', ('gosu',), ('*.gs', '*.gsx', '*.gsp', '*.vark'), ('text/x-gosu',)),
         | 
| 192 197 | 
             
                'GosuTemplateLexer': ('pygments.lexers.jvm', 'Gosu Template', ('gst',), ('*.gst',), ('text/x-gosu-template',)),
         | 
| 198 | 
            +
                'GraphQLLexer': ('pygments.lexers.graphql', 'GraphQL', ('graphql',), ('*.graphql',), ()),
         | 
| 193 199 | 
             
                'GraphvizLexer': ('pygments.lexers.graphviz', 'Graphviz', ('graphviz', 'dot'), ('*.gv', '*.dot'), ('text/x-graphviz', 'text/vnd.graphviz')),
         | 
| 194 200 | 
             
                'GroffLexer': ('pygments.lexers.markup', 'Groff', ('groff', 'nroff', 'man'), ('*.[1-9]', '*.man', '*.1p', '*.3pm'), ('application/x-troff', 'text/troff')),
         | 
| 195 201 | 
             
                'GroovyLexer': ('pygments.lexers.jvm', 'Groovy', ('groovy',), ('*.groovy', '*.gradle'), ('text/x-groovy',)),
         | 
| @@ -210,8 +216,8 @@ LEXERS = { | |
| 210 216 | 
             
                'HtmlSmartyLexer': ('pygments.lexers.templates', 'HTML+Smarty', ('html+smarty',), (), ('text/html+smarty',)),
         | 
| 211 217 | 
             
                'HttpLexer': ('pygments.lexers.textfmts', 'HTTP', ('http',), (), ()),
         | 
| 212 218 | 
             
                'HxmlLexer': ('pygments.lexers.haxe', 'Hxml', ('haxeml', 'hxml'), ('*.hxml',), ()),
         | 
| 213 | 
            -
                'HyLexer': ('pygments.lexers.lisp', 'Hy', ('hylang',), ('*.hy',), ('text/x-hy', 'application/x-hy')),
         | 
| 214 | 
            -
                'HybrisLexer': ('pygments.lexers.scripting', 'Hybris', ('hybris', | 
| 219 | 
            +
                'HyLexer': ('pygments.lexers.lisp', 'Hy', ('hylang', 'hy'), ('*.hy',), ('text/x-hy', 'application/x-hy')),
         | 
| 220 | 
            +
                'HybrisLexer': ('pygments.lexers.scripting', 'Hybris', ('hybris',), ('*.hyb',), ('text/x-hybris', 'application/x-hybris')),
         | 
| 215 221 | 
             
                'IDLLexer': ('pygments.lexers.idl', 'IDL', ('idl',), ('*.pro',), ('text/idl',)),
         | 
| 216 222 | 
             
                'IconLexer': ('pygments.lexers.unicon', 'Icon', ('icon',), ('*.icon', '*.ICON'), ()),
         | 
| 217 223 | 
             
                'IdrisLexer': ('pygments.lexers.haskell', 'Idris', ('idris', 'idr'), ('*.idr',), ('text/x-idris',)),
         | 
| @@ -219,7 +225,7 @@ LEXERS = { | |
| 219 225 | 
             
                'Inform6Lexer': ('pygments.lexers.int_fiction', 'Inform 6', ('inform6', 'i6'), ('*.inf',), ()),
         | 
| 220 226 | 
             
                'Inform6TemplateLexer': ('pygments.lexers.int_fiction', 'Inform 6 template', ('i6t',), ('*.i6t',), ()),
         | 
| 221 227 | 
             
                'Inform7Lexer': ('pygments.lexers.int_fiction', 'Inform 7', ('inform7', 'i7'), ('*.ni', '*.i7x'), ()),
         | 
| 222 | 
            -
                'IniLexer': ('pygments.lexers.configs', 'INI', ('ini', 'cfg', 'dosini'), ('*.ini', '*.cfg', '*.inf', '.editorconfig' | 
| 228 | 
            +
                'IniLexer': ('pygments.lexers.configs', 'INI', ('ini', 'cfg', 'dosini'), ('*.ini', '*.cfg', '*.inf', '.editorconfig'), ('text/x-ini', 'text/inf')),
         | 
| 223 229 | 
             
                'IoLexer': ('pygments.lexers.iolang', 'Io', ('io',), ('*.io',), ('text/x-iosrc',)),
         | 
| 224 230 | 
             
                'IokeLexer': ('pygments.lexers.jvm', 'Ioke', ('ioke', 'ik'), ('*.ik',), ('text/x-iokesrc',)),
         | 
| 225 231 | 
             
                'IrcLogsLexer': ('pygments.lexers.textfmts', 'IRC logs', ('irc',), ('*.weechatlog',), ('text/x-irclog',)),
         | 
| @@ -228,6 +234,7 @@ LEXERS = { | |
| 228 234 | 
             
                'JMESPathLexer': ('pygments.lexers.jmespath', 'JMESPath', ('jmespath', 'jp'), ('*.jp',), ()),
         | 
| 229 235 | 
             
                'JSLTLexer': ('pygments.lexers.jslt', 'JSLT', ('jslt',), ('*.jslt',), ('text/x-jslt',)),
         | 
| 230 236 | 
             
                'JagsLexer': ('pygments.lexers.modeling', 'JAGS', ('jags',), ('*.jag', '*.bug'), ()),
         | 
| 237 | 
            +
                'JanetLexer': ('pygments.lexers.lisp', 'Janet', ('janet',), ('*.janet', '*.jdn'), ('text/x-janet', 'application/x-janet')),
         | 
| 231 238 | 
             
                'JasminLexer': ('pygments.lexers.jvm', 'Jasmin', ('jasmin', 'jasminxt'), ('*.j',), ()),
         | 
| 232 239 | 
             
                'JavaLexer': ('pygments.lexers.jvm', 'Java', ('java',), ('*.java',), ('text/x-java',)),
         | 
| 233 240 | 
             
                'JavascriptDjangoLexer': ('pygments.lexers.templates', 'JavaScript+Django/Jinja', ('javascript+django', 'js+django', 'javascript+jinja', 'js+jinja'), ('*.js.j2', '*.js.jinja2'), ('application/x-javascript+django', 'application/x-javascript+jinja', 'text/x-javascript+django', 'text/x-javascript+jinja', 'text/javascript+django', 'text/javascript+jinja')),
         | 
| @@ -241,9 +248,10 @@ LEXERS = { | |
| 241 248 | 
             
                'JsgfLexer': ('pygments.lexers.grammar_notation', 'JSGF', ('jsgf',), ('*.jsgf',), ('application/jsgf', 'application/x-jsgf', 'text/jsgf')),
         | 
| 242 249 | 
             
                'JsonBareObjectLexer': ('pygments.lexers.data', 'JSONBareObject', (), (), ()),
         | 
| 243 250 | 
             
                'JsonLdLexer': ('pygments.lexers.data', 'JSON-LD', ('jsonld', 'json-ld'), ('*.jsonld',), ('application/ld+json',)),
         | 
| 244 | 
            -
                'JsonLexer': ('pygments.lexers.data', 'JSON', ('json', 'json-object'), ('*.json', 'Pipfile.lock'), ('application/json', 'application/json-object')),
         | 
| 251 | 
            +
                'JsonLexer': ('pygments.lexers.data', 'JSON', ('json', 'json-object'), ('*.json', '*.jsonl', '*.ndjson', 'Pipfile.lock'), ('application/json', 'application/json-object', 'application/x-ndjson', 'application/jsonl', 'application/json-seq')),
         | 
| 245 252 | 
             
                'JsonnetLexer': ('pygments.lexers.jsonnet', 'Jsonnet', ('jsonnet',), ('*.jsonnet', '*.libsonnet'), ()),
         | 
| 246 253 | 
             
                'JspLexer': ('pygments.lexers.templates', 'Java Server Page', ('jsp',), ('*.jsp',), ('application/x-jsp',)),
         | 
| 254 | 
            +
                'JsxLexer': ('pygments.lexers.jsx', 'JSX', ('jsx', 'react'), ('*.jsx', '*.react'), ('text/jsx', 'text/typescript-jsx')),
         | 
| 247 255 | 
             
                'JuliaConsoleLexer': ('pygments.lexers.julia', 'Julia console', ('jlcon', 'julia-repl'), (), ()),
         | 
| 248 256 | 
             
                'JuliaLexer': ('pygments.lexers.julia', 'Julia', ('julia', 'jl'), ('*.jl',), ('text/x-julia', 'application/x-julia')),
         | 
| 249 257 | 
             
                'JuttleLexer': ('pygments.lexers.javascript', 'Juttle', ('juttle',), ('*.juttle',), ('application/juttle', 'application/x-juttle', 'text/x-juttle', 'text/juttle')),
         | 
| @@ -254,13 +262,17 @@ LEXERS = { | |
| 254 262 | 
             
                'KokaLexer': ('pygments.lexers.haskell', 'Koka', ('koka',), ('*.kk', '*.kki'), ('text/x-koka',)),
         | 
| 255 263 | 
             
                'KotlinLexer': ('pygments.lexers.jvm', 'Kotlin', ('kotlin',), ('*.kt', '*.kts'), ('text/x-kotlin',)),
         | 
| 256 264 | 
             
                'KuinLexer': ('pygments.lexers.kuin', 'Kuin', ('kuin',), ('*.kn',), ()),
         | 
| 265 | 
            +
                'KustoLexer': ('pygments.lexers.kusto', 'Kusto', ('kql', 'kusto'), ('*.kql', '*.kusto', '.csl'), ()),
         | 
| 257 266 | 
             
                'LSLLexer': ('pygments.lexers.scripting', 'LSL', ('lsl',), ('*.lsl',), ('text/x-lsl',)),
         | 
| 258 267 | 
             
                'LassoCssLexer': ('pygments.lexers.templates', 'CSS+Lasso', ('css+lasso',), (), ('text/css+lasso',)),
         | 
| 259 268 | 
             
                'LassoHtmlLexer': ('pygments.lexers.templates', 'HTML+Lasso', ('html+lasso',), (), ('text/html+lasso', 'application/x-httpd-lasso', 'application/x-httpd-lasso[89]')),
         | 
| 260 269 | 
             
                'LassoJavascriptLexer': ('pygments.lexers.templates', 'JavaScript+Lasso', ('javascript+lasso', 'js+lasso'), (), ('application/x-javascript+lasso', 'text/x-javascript+lasso', 'text/javascript+lasso')),
         | 
| 261 270 | 
             
                'LassoLexer': ('pygments.lexers.javascript', 'Lasso', ('lasso', 'lassoscript'), ('*.lasso', '*.lasso[89]'), ('text/x-lasso',)),
         | 
| 262 271 | 
             
                'LassoXmlLexer': ('pygments.lexers.templates', 'XML+Lasso', ('xml+lasso',), (), ('application/xml+lasso',)),
         | 
| 263 | 
            -
                ' | 
| 272 | 
            +
                'LdaprcLexer': ('pygments.lexers.ldap', 'LDAP configuration file', ('ldapconf', 'ldaprc'), ('.ldaprc', 'ldaprc', 'ldap.conf'), ('text/x-ldapconf',)),
         | 
| 273 | 
            +
                'LdifLexer': ('pygments.lexers.ldap', 'LDIF', ('ldif',), ('*.ldif',), ('text/x-ldif',)),
         | 
| 274 | 
            +
                'Lean3Lexer': ('pygments.lexers.lean', 'Lean', ('lean', 'lean3'), ('*.lean',), ('text/x-lean', 'text/x-lean3')),
         | 
| 275 | 
            +
                'Lean4Lexer': ('pygments.lexers.lean', 'Lean4', ('lean4',), ('*.lean',), ('text/x-lean4',)),
         | 
| 264 276 | 
             
                'LessCssLexer': ('pygments.lexers.css', 'LessCss', ('less',), ('*.less',), ('text/x-less-css',)),
         | 
| 265 277 | 
             
                'LighttpdConfLexer': ('pygments.lexers.configs', 'Lighttpd configuration file', ('lighttpd', 'lighty'), ('lighttpd.conf',), ('text/x-lighttpd-conf',)),
         | 
| 266 278 | 
             
                'LilyPondLexer': ('pygments.lexers.lilypond', 'LilyPond', ('lilypond',), ('*.ly',), ()),
         | 
| @@ -277,6 +289,7 @@ LEXERS = { | |
| 277 289 | 
             
                'LogosLexer': ('pygments.lexers.objective', 'Logos', ('logos',), ('*.x', '*.xi', '*.xm', '*.xmi'), ('text/x-logos',)),
         | 
| 278 290 | 
             
                'LogtalkLexer': ('pygments.lexers.prolog', 'Logtalk', ('logtalk',), ('*.lgt', '*.logtalk'), ('text/x-logtalk',)),
         | 
| 279 291 | 
             
                'LuaLexer': ('pygments.lexers.scripting', 'Lua', ('lua',), ('*.lua', '*.wlua'), ('text/x-lua', 'application/x-lua')),
         | 
| 292 | 
            +
                'LuauLexer': ('pygments.lexers.scripting', 'Luau', ('luau',), ('*.luau',), ()),
         | 
| 280 293 | 
             
                'MCFunctionLexer': ('pygments.lexers.minecraft', 'MCFunction', ('mcfunction', 'mcf'), ('*.mcfunction',), ('text/mcfunction',)),
         | 
| 281 294 | 
             
                'MCSchemaLexer': ('pygments.lexers.minecraft', 'MCSchema', ('mcschema',), ('*.mcschema',), ('text/mcschema',)),
         | 
| 282 295 | 
             
                'MIMELexer': ('pygments.lexers.mime', 'MIME', ('mime',), (), ('multipart/mixed', 'multipart/related', 'multipart/alternative')),
         | 
| @@ -304,6 +317,7 @@ LEXERS = { | |
| 304 317 | 
             
                'ModelicaLexer': ('pygments.lexers.modeling', 'Modelica', ('modelica',), ('*.mo',), ('text/x-modelica',)),
         | 
| 305 318 | 
             
                'Modula2Lexer': ('pygments.lexers.modula2', 'Modula-2', ('modula2', 'm2'), ('*.def', '*.mod'), ('text/x-modula2',)),
         | 
| 306 319 | 
             
                'MoinWikiLexer': ('pygments.lexers.markup', 'MoinMoin/Trac Wiki markup', ('trac-wiki', 'moin'), (), ('text/x-trac-wiki',)),
         | 
| 320 | 
            +
                'MojoLexer': ('pygments.lexers.mojo', 'Mojo', ('mojo', '🔥'), ('*.mojo', '*.🔥'), ('text/x-mojo', 'application/x-mojo')),
         | 
| 307 321 | 
             
                'MonkeyLexer': ('pygments.lexers.basic', 'Monkey', ('monkey',), ('*.monkey',), ('text/x-monkey',)),
         | 
| 308 322 | 
             
                'MonteLexer': ('pygments.lexers.monte', 'Monte', ('monte',), ('*.mt',), ()),
         | 
| 309 323 | 
             
                'MoonScriptLexer': ('pygments.lexers.scripting', 'MoonScript', ('moonscript', 'moon'), ('*.moon',), ('text/x-moonscript', 'application/x-moonscript')),
         | 
| @@ -351,6 +365,8 @@ LEXERS = { | |
| 351 365 | 
             
                'OocLexer': ('pygments.lexers.ooc', 'Ooc', ('ooc',), ('*.ooc',), ('text/x-ooc',)),
         | 
| 352 366 | 
             
                'OpaLexer': ('pygments.lexers.ml', 'Opa', ('opa',), ('*.opa',), ('text/x-opa',)),
         | 
| 353 367 | 
             
                'OpenEdgeLexer': ('pygments.lexers.business', 'OpenEdge ABL', ('openedge', 'abl', 'progress'), ('*.p', '*.cls'), ('text/x-openedge', 'application/x-openedge')),
         | 
| 368 | 
            +
                'OpenScadLexer': ('pygments.lexers.openscad', 'OpenSCAD', ('openscad',), ('*.scad',), ('application/x-openscad',)),
         | 
| 369 | 
            +
                'OrgLexer': ('pygments.lexers.markup', 'Org Mode', ('org', 'orgmode', 'org-mode'), ('*.org',), ('text/org',)),
         | 
| 354 370 | 
             
                'OutputLexer': ('pygments.lexers.special', 'Text output', ('output',), (), ()),
         | 
| 355 371 | 
             
                'PacmanConfLexer': ('pygments.lexers.configs', 'PacmanConf', ('pacmanconf',), ('pacman.conf',), ()),
         | 
| 356 372 | 
             
                'PanLexer': ('pygments.lexers.dsls', 'Pan', ('pan',), ('*.pan',), ()),
         | 
| @@ -379,16 +395,19 @@ LEXERS = { | |
| 379 395 | 
             
                'ProcfileLexer': ('pygments.lexers.procfile', 'Procfile', ('procfile',), ('Procfile',), ()),
         | 
| 380 396 | 
             
                'PrologLexer': ('pygments.lexers.prolog', 'Prolog', ('prolog',), ('*.ecl', '*.prolog', '*.pro', '*.pl'), ('text/x-prolog',)),
         | 
| 381 397 | 
             
                'PromQLLexer': ('pygments.lexers.promql', 'PromQL', ('promql',), ('*.promql',), ()),
         | 
| 398 | 
            +
                'PromelaLexer': ('pygments.lexers.c_like', 'Promela', ('promela',), ('*.pml', '*.prom', '*.prm', '*.promela', '*.pr', '*.pm'), ('text/x-promela',)),
         | 
| 382 399 | 
             
                'PropertiesLexer': ('pygments.lexers.configs', 'Properties', ('properties', 'jproperties'), ('*.properties',), ('text/x-java-properties',)),
         | 
| 383 400 | 
             
                'ProtoBufLexer': ('pygments.lexers.dsls', 'Protocol Buffer', ('protobuf', 'proto'), ('*.proto',), ()),
         | 
| 401 | 
            +
                'PrqlLexer': ('pygments.lexers.prql', 'PRQL', ('prql',), ('*.prql',), ('application/prql', 'application/x-prql')),
         | 
| 384 402 | 
             
                'PsyshConsoleLexer': ('pygments.lexers.php', 'PsySH console session for PHP', ('psysh',), (), ()),
         | 
| 403 | 
            +
                'PtxLexer': ('pygments.lexers.ptx', 'PTX', ('ptx',), ('*.ptx',), ('text/x-ptx',)),
         | 
| 385 404 | 
             
                'PugLexer': ('pygments.lexers.html', 'Pug', ('pug', 'jade'), ('*.pug', '*.jade'), ('text/x-pug', 'text/x-jade')),
         | 
| 386 405 | 
             
                'PuppetLexer': ('pygments.lexers.dsls', 'Puppet', ('puppet',), ('*.pp',), ()),
         | 
| 387 406 | 
             
                'PyPyLogLexer': ('pygments.lexers.console', 'PyPy Log', ('pypylog', 'pypy'), ('*.pypylog',), ('application/x-pypylog',)),
         | 
| 388 407 | 
             
                'Python2Lexer': ('pygments.lexers.python', 'Python 2.x', ('python2', 'py2'), (), ('text/x-python2', 'application/x-python2')),
         | 
| 389 408 | 
             
                'Python2TracebackLexer': ('pygments.lexers.python', 'Python 2.x Traceback', ('py2tb',), ('*.py2tb',), ('text/x-python2-traceback',)),
         | 
| 390 | 
            -
                'PythonConsoleLexer': ('pygments.lexers.python', 'Python console session', ('pycon',), (), ('text/x-python-doctest',)),
         | 
| 391 | 
            -
                'PythonLexer': ('pygments.lexers.python', 'Python', ('python', 'py', 'sage', 'python3', 'py3'), ('*.py', '*.pyw', '*.pyi', '*.jy', '*.sage', '*.sc', 'SConstruct', 'SConscript', '*.bzl', 'BUCK', 'BUILD', 'BUILD.bazel', 'WORKSPACE', '*.tac'), ('text/x-python', 'application/x-python', 'text/x-python3', 'application/x-python3')),
         | 
| 409 | 
            +
                'PythonConsoleLexer': ('pygments.lexers.python', 'Python console session', ('pycon', 'python-console'), (), ('text/x-python-doctest',)),
         | 
| 410 | 
            +
                'PythonLexer': ('pygments.lexers.python', 'Python', ('python', 'py', 'sage', 'python3', 'py3', 'bazel', 'starlark'), ('*.py', '*.pyw', '*.pyi', '*.jy', '*.sage', '*.sc', 'SConstruct', 'SConscript', '*.bzl', 'BUCK', 'BUILD', 'BUILD.bazel', 'WORKSPACE', '*.tac'), ('text/x-python', 'application/x-python', 'text/x-python3', 'application/x-python3')),
         | 
| 392 411 | 
             
                'PythonTracebackLexer': ('pygments.lexers.python', 'Python Traceback', ('pytb', 'py3tb'), ('*.pytb', '*.py3tb'), ('text/x-python-traceback', 'text/x-python3-traceback')),
         | 
| 393 412 | 
             
                'PythonUL4Lexer': ('pygments.lexers.ul4', 'Python+UL4', ('py+ul4',), ('*.pyul4',), ()),
         | 
| 394 413 | 
             
                'QBasicLexer': ('pygments.lexers.basic', 'QBasic', ('qbasic', 'basic'), ('*.BAS', '*.bas'), ('text/basic',)),
         | 
| @@ -460,6 +479,7 @@ LEXERS = { | |
| 460 479 | 
             
                'SnobolLexer': ('pygments.lexers.snobol', 'Snobol', ('snobol',), ('*.snobol',), ('text/x-snobol',)),
         | 
| 461 480 | 
             
                'SnowballLexer': ('pygments.lexers.dsls', 'Snowball', ('snowball',), ('*.sbl',), ()),
         | 
| 462 481 | 
             
                'SolidityLexer': ('pygments.lexers.solidity', 'Solidity', ('solidity',), ('*.sol',), ()),
         | 
| 482 | 
            +
                'SoongLexer': ('pygments.lexers.soong', 'Soong', ('androidbp', 'bp', 'soong'), ('Android.bp',), ()),
         | 
| 463 483 | 
             
                'SophiaLexer': ('pygments.lexers.sophia', 'Sophia', ('sophia',), ('*.aes',), ()),
         | 
| 464 484 | 
             
                'SourcePawnLexer': ('pygments.lexers.pawn', 'SourcePawn', ('sp',), ('*.sp',), ('text/x-sourcepawn',)),
         | 
| 465 485 | 
             
                'SourcesListLexer': ('pygments.lexers.installers', 'Debian Sourcelist', ('debsources', 'sourceslist', 'sources.list'), ('sources.list',), ()),
         | 
| @@ -477,9 +497,11 @@ LEXERS = { | |
| 477 497 | 
             
                'SwiftLexer': ('pygments.lexers.objective', 'Swift', ('swift',), ('*.swift',), ('text/x-swift',)),
         | 
| 478 498 | 
             
                'SwigLexer': ('pygments.lexers.c_like', 'SWIG', ('swig',), ('*.swg', '*.i'), ('text/swig',)),
         | 
| 479 499 | 
             
                'SystemVerilogLexer': ('pygments.lexers.hdl', 'systemverilog', ('systemverilog', 'sv'), ('*.sv', '*.svh'), ('text/x-systemverilog',)),
         | 
| 500 | 
            +
                'SystemdLexer': ('pygments.lexers.configs', 'Systemd', ('systemd',), ('*.service', '*.socket', '*.device', '*.mount', '*.automount', '*.swap', '*.target', '*.path', '*.timer', '*.slice', '*.scope'), ()),
         | 
| 480 501 | 
             
                'TAPLexer': ('pygments.lexers.testing', 'TAP', ('tap',), ('*.tap',), ()),
         | 
| 481 502 | 
             
                'TNTLexer': ('pygments.lexers.tnt', 'Typographic Number Theory', ('tnt',), ('*.tnt',), ()),
         | 
| 482 | 
            -
                'TOMLLexer': ('pygments.lexers.configs', 'TOML', ('toml',), ('*.toml', 'Pipfile', 'poetry.lock'), ()),
         | 
| 503 | 
            +
                'TOMLLexer': ('pygments.lexers.configs', 'TOML', ('toml',), ('*.toml', 'Pipfile', 'poetry.lock'), ('application/toml',)),
         | 
| 504 | 
            +
                'TactLexer': ('pygments.lexers.tact', 'Tact', ('tact',), ('*.tact',), ()),
         | 
| 483 505 | 
             
                'Tads3Lexer': ('pygments.lexers.int_fiction', 'TADS 3', ('tads3',), ('*.t',), ()),
         | 
| 484 506 | 
             
                'TalLexer': ('pygments.lexers.tal', 'Tal', ('tal', 'uxntal'), ('*.tal',), ('text/x-uxntal',)),
         | 
| 485 507 | 
             
                'TasmLexer': ('pygments.lexers.asm', 'TASM', ('tasm',), ('*.asm', '*.ASM', '*.tasm'), ('text/x-tasm',)),
         | 
| @@ -498,6 +520,7 @@ LEXERS = { | |
| 498 520 | 
             
                'ThriftLexer': ('pygments.lexers.dsls', 'Thrift', ('thrift',), ('*.thrift',), ('application/x-thrift',)),
         | 
| 499 521 | 
             
                'TiddlyWiki5Lexer': ('pygments.lexers.markup', 'tiddler', ('tid',), ('*.tid',), ('text/vnd.tiddlywiki',)),
         | 
| 500 522 | 
             
                'TlbLexer': ('pygments.lexers.tlb', 'Tl-b', ('tlb',), ('*.tlb',), ()),
         | 
| 523 | 
            +
                'TlsLexer': ('pygments.lexers.tls', 'TLS Presentation Language', ('tls',), (), ()),
         | 
| 501 524 | 
             
                'TodotxtLexer': ('pygments.lexers.textfmts', 'Todotxt', ('todotxt',), ('todo.txt', '*.todotxt'), ('text/x-todo',)),
         | 
| 502 525 | 
             
                'TransactSqlLexer': ('pygments.lexers.sql', 'Transact-SQL', ('tsql', 't-sql'), ('*.sql',), ('text/x-tsql',)),
         | 
| 503 526 | 
             
                'TreetopLexer': ('pygments.lexers.parsers', 'Treetop', ('treetop',), ('*.treetop', '*.tt'), ()),
         | 
| @@ -508,11 +531,13 @@ LEXERS = { | |
| 508 531 | 
             
                'TypoScriptCssDataLexer': ('pygments.lexers.typoscript', 'TypoScriptCssData', ('typoscriptcssdata',), (), ()),
         | 
| 509 532 | 
             
                'TypoScriptHtmlDataLexer': ('pygments.lexers.typoscript', 'TypoScriptHtmlData', ('typoscripthtmldata',), (), ()),
         | 
| 510 533 | 
             
                'TypoScriptLexer': ('pygments.lexers.typoscript', 'TypoScript', ('typoscript',), ('*.typoscript',), ('text/x-typoscript',)),
         | 
| 534 | 
            +
                'TypstLexer': ('pygments.lexers.typst', 'Typst', ('typst',), ('*.typ',), ('text/x-typst',)),
         | 
| 511 535 | 
             
                'UL4Lexer': ('pygments.lexers.ul4', 'UL4', ('ul4',), ('*.ul4',), ()),
         | 
| 512 536 | 
             
                'UcodeLexer': ('pygments.lexers.unicon', 'ucode', ('ucode',), ('*.u', '*.u1', '*.u2'), ()),
         | 
| 513 537 | 
             
                'UniconLexer': ('pygments.lexers.unicon', 'Unicon', ('unicon',), ('*.icn',), ('text/unicon',)),
         | 
| 514 538 | 
             
                'UnixConfigLexer': ('pygments.lexers.configs', 'Unix/Linux config files', ('unixconfig', 'linuxconfig'), (), ()),
         | 
| 515 539 | 
             
                'UrbiscriptLexer': ('pygments.lexers.urbi', 'UrbiScript', ('urbiscript',), ('*.u',), ('application/x-urbiscript',)),
         | 
| 540 | 
            +
                'UrlEncodedLexer': ('pygments.lexers.html', 'urlencoded', ('urlencoded',), (), ('application/x-www-form-urlencoded',)),
         | 
| 516 541 | 
             
                'UsdLexer': ('pygments.lexers.usd', 'USD', ('usd', 'usda'), ('*.usd', '*.usda'), ()),
         | 
| 517 542 | 
             
                'VBScriptLexer': ('pygments.lexers.basic', 'VBScript', ('vbscript',), ('*.vbs', '*.VBS'), ()),
         | 
| 518 543 | 
             
                'VCLLexer': ('pygments.lexers.varnish', 'VCL', ('vcl',), ('*.vcl',), ('text/x-vclsrc',)),
         | 
| @@ -521,13 +546,17 @@ LEXERS = { | |
| 521 546 | 
             
                'VGLLexer': ('pygments.lexers.dsls', 'VGL', ('vgl',), ('*.rpf',), ()),
         | 
| 522 547 | 
             
                'ValaLexer': ('pygments.lexers.c_like', 'Vala', ('vala', 'vapi'), ('*.vala', '*.vapi'), ('text/x-vala',)),
         | 
| 523 548 | 
             
                'VbNetAspxLexer': ('pygments.lexers.dotnet', 'aspx-vb', ('aspx-vb',), ('*.aspx', '*.asax', '*.ascx', '*.ashx', '*.asmx', '*.axd'), ()),
         | 
| 524 | 
            -
                'VbNetLexer': ('pygments.lexers.dotnet', 'VB.net', ('vb.net', 'vbnet', 'lobas', 'oobas', 'sobas'), ('*.vb', '*.bas'), ('text/x-vbnet', 'text/x-vba')),
         | 
| 549 | 
            +
                'VbNetLexer': ('pygments.lexers.dotnet', 'VB.net', ('vb.net', 'vbnet', 'lobas', 'oobas', 'sobas', 'visual-basic', 'visualbasic'), ('*.vb', '*.bas'), ('text/x-vbnet', 'text/x-vba')),
         | 
| 525 550 | 
             
                'VelocityHtmlLexer': ('pygments.lexers.templates', 'HTML+Velocity', ('html+velocity',), (), ('text/html+velocity',)),
         | 
| 526 551 | 
             
                'VelocityLexer': ('pygments.lexers.templates', 'Velocity', ('velocity',), ('*.vm', '*.fhtml'), ()),
         | 
| 527 552 | 
             
                'VelocityXmlLexer': ('pygments.lexers.templates', 'XML+Velocity', ('xml+velocity',), (), ('application/xml+velocity',)),
         | 
| 553 | 
            +
                'VerifpalLexer': ('pygments.lexers.verifpal', 'Verifpal', ('verifpal',), ('*.vp',), ('text/x-verifpal',)),
         | 
| 528 554 | 
             
                'VerilogLexer': ('pygments.lexers.hdl', 'verilog', ('verilog', 'v'), ('*.v',), ('text/x-verilog',)),
         | 
| 529 555 | 
             
                'VhdlLexer': ('pygments.lexers.hdl', 'vhdl', ('vhdl',), ('*.vhdl', '*.vhd'), ('text/x-vhdl',)),
         | 
| 530 556 | 
             
                'VimLexer': ('pygments.lexers.textedit', 'VimL', ('vim',), ('*.vim', '.vimrc', '.exrc', '.gvimrc', '_vimrc', '_exrc', '_gvimrc', 'vimrc', 'gvimrc'), ('text/x-vim',)),
         | 
| 557 | 
            +
                'VisualPrologGrammarLexer': ('pygments.lexers.vip', 'Visual Prolog Grammar', ('visualprologgrammar',), ('*.vipgrm',), ()),
         | 
| 558 | 
            +
                'VisualPrologLexer': ('pygments.lexers.vip', 'Visual Prolog', ('visualprolog',), ('*.pro', '*.cl', '*.i', '*.pack', '*.ph'), ()),
         | 
| 559 | 
            +
                'VyperLexer': ('pygments.lexers.vyper', 'Vyper', ('vyper',), ('*.vy',), ()),
         | 
| 531 560 | 
             
                'WDiffLexer': ('pygments.lexers.diff', 'WDiff', ('wdiff',), ('*.wdiff',), ()),
         | 
| 532 561 | 
             
                'WatLexer': ('pygments.lexers.webassembly', 'WebAssembly', ('wast', 'wat'), ('*.wat', '*.wast'), ()),
         | 
| 533 562 | 
             
                'WebIDLLexer': ('pygments.lexers.webidl', 'Web IDL', ('webidl',), ('*.webidl',), ()),
         | 
| @@ -552,6 +581,7 @@ LEXERS = { | |
| 552 581 | 
             
                'YamlJinjaLexer': ('pygments.lexers.templates', 'YAML+Jinja', ('yaml+jinja', 'salt', 'sls'), ('*.sls', '*.yaml.j2', '*.yml.j2', '*.yaml.jinja2', '*.yml.jinja2'), ('text/x-yaml+jinja', 'text/x-sls')),
         | 
| 553 582 | 
             
                'YamlLexer': ('pygments.lexers.data', 'YAML', ('yaml',), ('*.yaml', '*.yml'), ('text/x-yaml',)),
         | 
| 554 583 | 
             
                'YangLexer': ('pygments.lexers.yang', 'YANG', ('yang',), ('*.yang',), ('application/yang',)),
         | 
| 584 | 
            +
                'YaraLexer': ('pygments.lexers.yara', 'YARA', ('yara', 'yar'), ('*.yar',), ('text/x-yara',)),
         | 
| 555 585 | 
             
                'ZeekLexer': ('pygments.lexers.dsls', 'Zeek', ('zeek', 'bro'), ('*.zeek', '*.bro'), ()),
         | 
| 556 586 | 
             
                'ZephirLexer': ('pygments.lexers.php', 'Zephir', ('zephir',), ('*.zep',), ()),
         | 
| 557 587 | 
             
                'ZigLexer': ('pygments.lexers.zig', 'Zig', ('zig',), ('*.zig',), ('text/zig',)),
         | 
| @@ -6,7 +6,7 @@ | |
| 6 6 |  | 
| 7 7 | 
             
                Run with `python -I` to update.
         | 
| 8 8 |  | 
| 9 | 
            -
                :copyright: Copyright 2006- | 
| 9 | 
            +
                :copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
         | 
| 10 10 | 
             
                :license: BSD, see LICENSE for details.
         | 
| 11 11 | 
             
            """
         | 
| 12 12 |  | 
| @@ -1321,10 +1321,10 @@ if __name__ == '__main__':  # pragma: no cover | |
| 1321 1321 | 
             
                        data = f.read()
         | 
| 1322 1322 |  | 
| 1323 1323 | 
             
                    # Line to start/end inserting
         | 
| 1324 | 
            -
                    re_match = re.compile( | 
| 1324 | 
            +
                    re_match = re.compile(rf'^{field_name}\s*=\s*\($.*?^\s*\)$', re.M | re.S)
         | 
| 1325 1325 | 
             
                    m = re_match.search(data)
         | 
| 1326 1326 | 
             
                    if not m:
         | 
| 1327 | 
            -
                        raise ValueError('Could not find an existing definition for  | 
| 1327 | 
            +
                        raise ValueError(f'Could not find an existing definition for {field_name}')
         | 
| 1328 1328 |  | 
| 1329 1329 | 
             
                    new_block = format_lines(field_name, content)
         | 
| 1330 1330 | 
             
                    data = data[:m.start()] + new_block + data[m.end():]
         |