pygments.rb 3.0.0 → 5.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/.rubocop.yml +1 -2
- data/CHANGELOG.adoc +13 -1
- data/README.adoc +3 -3
- data/Rakefile +1 -1
- data/bench.rb +3 -3
- data/lib/pygments/version.rb +1 -1
- data/pygments.rb.gemspec +6 -4
- data/test/test_pygments.rb +0 -4
- 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 +2 -2
- data/vendor/pygments-main/pygments/console.py +1 -1
- data/vendor/pygments-main/pygments/filter.py +1 -1
- data/vendor/pygments-main/pygments/filters/__init__.py +10 -8
- data/vendor/pygments-main/pygments/formatter.py +1 -1
- data/vendor/pygments-main/pygments/formatters/__init__.py +1 -1
- data/vendor/pygments-main/pygments/formatters/_mapping.py +0 -0
- data/vendor/pygments-main/pygments/formatters/bbcode.py +1 -1
- data/vendor/pygments-main/pygments/formatters/groff.py +1 -1
- data/vendor/pygments-main/pygments/formatters/html.py +20 -10
- data/vendor/pygments-main/pygments/formatters/img.py +3 -2
- data/vendor/pygments-main/pygments/formatters/irc.py +1 -2
- data/vendor/pygments-main/pygments/formatters/latex.py +1 -1
- data/vendor/pygments-main/pygments/formatters/other.py +1 -1
- data/vendor/pygments-main/pygments/formatters/pangomarkup.py +1 -1
- data/vendor/pygments-main/pygments/formatters/rtf.py +1 -1
- data/vendor/pygments-main/pygments/formatters/svg.py +1 -1
- data/vendor/pygments-main/pygments/formatters/terminal.py +1 -1
- data/vendor/pygments-main/pygments/formatters/terminal256.py +6 -6
- data/vendor/pygments-main/pygments/lexer.py +7 -5
- data/vendor/pygments-main/pygments/lexers/__init__.py +1 -1
- 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 +1 -1
- 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/_googlesql_builtins.py +918 -0
- 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 +404 -152
- data/vendor/pygments-main/pygments/lexers/_lua_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_luau_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_mapping.py +24 -10
- data/vendor/pygments-main/pygments/lexers/_mql_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_mysql_builtins.py +52 -3
- data/vendor/pygments-main/pygments/lexers/_openedge_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_php_builtins.py +7 -4
- data/vendor/pygments-main/pygments/lexers/_postgres_builtins.py +1 -1
- 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 +1 -1
- data/vendor/pygments-main/pygments/lexers/_sourcemod_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_sql_builtins.py +106 -0
- data/vendor/pygments-main/pygments/lexers/_stan_builtins.py +126 -13
- 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 +3 -3
- data/vendor/pygments-main/pygments/lexers/ada.py +1 -1
- data/vendor/pygments-main/pygments/lexers/agile.py +1 -1
- data/vendor/pygments-main/pygments/lexers/algebra.py +8 -6
- data/vendor/pygments-main/pygments/lexers/ambient.py +1 -1
- data/vendor/pygments-main/pygments/lexers/amdgpu.py +1 -1
- data/vendor/pygments-main/pygments/lexers/ampl.py +1 -1
- data/vendor/pygments-main/pygments/lexers/apdlexer.py +1 -1
- data/vendor/pygments-main/pygments/lexers/apl.py +1 -1
- data/vendor/pygments-main/pygments/lexers/archetype.py +4 -4
- data/vendor/pygments-main/pygments/lexers/arrow.py +1 -1
- data/vendor/pygments-main/pygments/lexers/arturo.py +1 -1
- data/vendor/pygments-main/pygments/lexers/asc.py +1 -1
- data/vendor/pygments-main/pygments/lexers/asm.py +29 -21
- data/vendor/pygments-main/pygments/lexers/asn1.py +3 -3
- data/vendor/pygments-main/pygments/lexers/automation.py +1 -1
- data/vendor/pygments-main/pygments/lexers/bare.py +1 -1
- data/vendor/pygments-main/pygments/lexers/basic.py +1 -1
- data/vendor/pygments-main/pygments/lexers/bdd.py +1 -1
- data/vendor/pygments-main/pygments/lexers/berry.py +1 -1
- data/vendor/pygments-main/pygments/lexers/bibtex.py +1 -1
- data/vendor/pygments-main/pygments/lexers/blueprint.py +1 -1
- data/vendor/pygments-main/pygments/lexers/boa.py +1 -1
- data/vendor/pygments-main/pygments/lexers/bqn.py +18 -15
- data/vendor/pygments-main/pygments/lexers/business.py +1 -1
- data/vendor/pygments-main/pygments/lexers/c_cpp.py +18 -17
- data/vendor/pygments-main/pygments/lexers/c_like.py +1 -1
- data/vendor/pygments-main/pygments/lexers/capnproto.py +1 -1
- data/vendor/pygments-main/pygments/lexers/carbon.py +1 -1
- data/vendor/pygments-main/pygments/lexers/cddl.py +1 -1
- data/vendor/pygments-main/pygments/lexers/chapel.py +1 -1
- data/vendor/pygments-main/pygments/lexers/clean.py +1 -1
- data/vendor/pygments-main/pygments/lexers/codeql.py +80 -0
- data/vendor/pygments-main/pygments/lexers/comal.py +1 -1
- data/vendor/pygments-main/pygments/lexers/compiled.py +1 -1
- data/vendor/pygments-main/pygments/lexers/configs.py +17 -8
- data/vendor/pygments-main/pygments/lexers/console.py +1 -1
- data/vendor/pygments-main/pygments/lexers/cplint.py +1 -1
- data/vendor/pygments-main/pygments/lexers/crystal.py +1 -1
- data/vendor/pygments-main/pygments/lexers/csound.py +1 -1
- data/vendor/pygments-main/pygments/lexers/css.py +32 -2
- data/vendor/pygments-main/pygments/lexers/d.py +1 -1
- data/vendor/pygments-main/pygments/lexers/dalvik.py +1 -1
- data/vendor/pygments-main/pygments/lexers/data.py +2 -2
- data/vendor/pygments-main/pygments/lexers/dax.py +1 -1
- data/vendor/pygments-main/pygments/lexers/devicetree.py +17 -5
- data/vendor/pygments-main/pygments/lexers/diff.py +1 -1
- data/vendor/pygments-main/pygments/lexers/dns.py +1 -1
- data/vendor/pygments-main/pygments/lexers/dotnet.py +40 -13
- data/vendor/pygments-main/pygments/lexers/dsls.py +2 -2
- data/vendor/pygments-main/pygments/lexers/dylan.py +3 -3
- data/vendor/pygments-main/pygments/lexers/ecl.py +1 -1
- data/vendor/pygments-main/pygments/lexers/eiffel.py +1 -1
- data/vendor/pygments-main/pygments/lexers/elm.py +1 -1
- data/vendor/pygments-main/pygments/lexers/elpi.py +55 -26
- data/vendor/pygments-main/pygments/lexers/email.py +1 -1
- data/vendor/pygments-main/pygments/lexers/erlang.py +1 -1
- data/vendor/pygments-main/pygments/lexers/esoteric.py +1 -1
- data/vendor/pygments-main/pygments/lexers/ezhil.py +1 -1
- data/vendor/pygments-main/pygments/lexers/factor.py +1 -1
- data/vendor/pygments-main/pygments/lexers/fantom.py +1 -1
- data/vendor/pygments-main/pygments/lexers/felix.py +1 -1
- data/vendor/pygments-main/pygments/lexers/fift.py +1 -1
- data/vendor/pygments-main/pygments/lexers/floscript.py +1 -1
- data/vendor/pygments-main/pygments/lexers/forth.py +1 -1
- data/vendor/pygments-main/pygments/lexers/fortran.py +1 -1
- data/vendor/pygments-main/pygments/lexers/foxpro.py +1 -1
- data/vendor/pygments-main/pygments/lexers/freefem.py +1 -1
- data/vendor/pygments-main/pygments/lexers/func.py +1 -1
- data/vendor/pygments-main/pygments/lexers/functional.py +2 -2
- data/vendor/pygments-main/pygments/lexers/futhark.py +1 -1
- data/vendor/pygments-main/pygments/lexers/gcodelexer.py +1 -1
- data/vendor/pygments-main/pygments/lexers/gdscript.py +1 -1
- data/vendor/pygments-main/pygments/lexers/gleam.py +74 -0
- data/vendor/pygments-main/pygments/lexers/go.py +1 -1
- data/vendor/pygments-main/pygments/lexers/grammar_notation.py +1 -1
- data/vendor/pygments-main/pygments/lexers/graph.py +1 -1
- data/vendor/pygments-main/pygments/lexers/graphics.py +1 -1
- data/vendor/pygments-main/pygments/lexers/graphql.py +1 -1
- data/vendor/pygments-main/pygments/lexers/graphviz.py +1 -1
- data/vendor/pygments-main/pygments/lexers/gsql.py +1 -1
- data/vendor/pygments-main/pygments/lexers/hare.py +73 -0
- data/vendor/pygments-main/pygments/lexers/haskell.py +5 -4
- data/vendor/pygments-main/pygments/lexers/haxe.py +9 -3
- data/vendor/pygments-main/pygments/lexers/hdl.py +1 -1
- data/vendor/pygments-main/pygments/lexers/hexdump.py +1 -1
- data/vendor/pygments-main/pygments/lexers/html.py +48 -4
- data/vendor/pygments-main/pygments/lexers/idl.py +1 -1
- data/vendor/pygments-main/pygments/lexers/igor.py +2 -2
- data/vendor/pygments-main/pygments/lexers/inferno.py +1 -1
- data/vendor/pygments-main/pygments/lexers/installers.py +53 -26
- data/vendor/pygments-main/pygments/lexers/int_fiction.py +1 -1
- data/vendor/pygments-main/pygments/lexers/iolang.py +1 -1
- data/vendor/pygments-main/pygments/lexers/j.py +1 -1
- data/vendor/pygments-main/pygments/lexers/javascript.py +5 -1
- data/vendor/pygments-main/pygments/lexers/jmespath.py +1 -1
- data/vendor/pygments-main/pygments/lexers/jslt.py +1 -1
- data/vendor/pygments-main/pygments/lexers/json5.py +83 -0
- data/vendor/pygments-main/pygments/lexers/jsonnet.py +1 -1
- data/vendor/pygments-main/pygments/lexers/jsx.py +64 -39
- data/vendor/pygments-main/pygments/lexers/julia.py +2 -1
- data/vendor/pygments-main/pygments/lexers/jvm.py +11 -6
- data/vendor/pygments-main/pygments/lexers/kuin.py +1 -1
- data/vendor/pygments-main/pygments/lexers/kusto.py +1 -1
- data/vendor/pygments-main/pygments/lexers/ldap.py +1 -1
- data/vendor/pygments-main/pygments/lexers/lean.py +3 -3
- data/vendor/pygments-main/pygments/lexers/lilypond.py +1 -1
- data/vendor/pygments-main/pygments/lexers/lisp.py +18 -12
- data/vendor/pygments-main/pygments/lexers/macaulay2.py +169 -110
- data/vendor/pygments-main/pygments/lexers/make.py +1 -1
- data/vendor/pygments-main/pygments/lexers/maple.py +291 -0
- data/vendor/pygments-main/pygments/lexers/markup.py +11 -6
- data/vendor/pygments-main/pygments/lexers/math.py +1 -1
- data/vendor/pygments-main/pygments/lexers/matlab.py +5 -4
- data/vendor/pygments-main/pygments/lexers/maxima.py +1 -1
- data/vendor/pygments-main/pygments/lexers/meson.py +3 -3
- data/vendor/pygments-main/pygments/lexers/mime.py +1 -1
- data/vendor/pygments-main/pygments/lexers/minecraft.py +3 -2
- data/vendor/pygments-main/pygments/lexers/mips.py +1 -1
- data/vendor/pygments-main/pygments/lexers/ml.py +1 -1
- data/vendor/pygments-main/pygments/lexers/modeling.py +3 -1
- data/vendor/pygments-main/pygments/lexers/modula2.py +1 -1
- data/vendor/pygments-main/pygments/lexers/mojo.py +7 -4
- data/vendor/pygments-main/pygments/lexers/monte.py +1 -1
- data/vendor/pygments-main/pygments/lexers/mosel.py +1 -1
- data/vendor/pygments-main/pygments/lexers/ncl.py +1 -1
- data/vendor/pygments-main/pygments/lexers/nimrod.py +1 -1
- data/vendor/pygments-main/pygments/lexers/nit.py +1 -1
- data/vendor/pygments-main/pygments/lexers/nix.py +1 -1
- data/vendor/pygments-main/pygments/lexers/numbair.py +63 -0
- data/vendor/pygments-main/pygments/lexers/oberon.py +2 -2
- data/vendor/pygments-main/pygments/lexers/objective.py +12 -12
- data/vendor/pygments-main/pygments/lexers/ooc.py +3 -3
- data/vendor/pygments-main/pygments/lexers/openscad.py +1 -1
- data/vendor/pygments-main/pygments/lexers/other.py +1 -1
- data/vendor/pygments-main/pygments/lexers/parasail.py +1 -1
- data/vendor/pygments-main/pygments/lexers/parsers.py +5 -5
- data/vendor/pygments-main/pygments/lexers/pascal.py +1 -1
- data/vendor/pygments-main/pygments/lexers/pawn.py +1 -1
- data/vendor/pygments-main/pygments/lexers/pddl.py +82 -0
- data/vendor/pygments-main/pygments/lexers/perl.py +1 -1
- data/vendor/pygments-main/pygments/lexers/phix.py +1 -1
- data/vendor/pygments-main/pygments/lexers/php.py +6 -5
- data/vendor/pygments-main/pygments/lexers/pointless.py +1 -1
- data/vendor/pygments-main/pygments/lexers/pony.py +1 -1
- data/vendor/pygments-main/pygments/lexers/praat.py +1 -1
- data/vendor/pygments-main/pygments/lexers/procfile.py +1 -1
- data/vendor/pygments-main/pygments/lexers/prolog.py +1 -1
- data/vendor/pygments-main/pygments/lexers/promql.py +1 -1
- data/vendor/pygments-main/pygments/lexers/prql.py +1 -1
- data/vendor/pygments-main/pygments/lexers/ptx.py +1 -1
- data/vendor/pygments-main/pygments/lexers/python.py +58 -52
- data/vendor/pygments-main/pygments/lexers/q.py +1 -1
- data/vendor/pygments-main/pygments/lexers/qlik.py +1 -1
- data/vendor/pygments-main/pygments/lexers/qvt.py +1 -1
- data/vendor/pygments-main/pygments/lexers/r.py +8 -4
- data/vendor/pygments-main/pygments/lexers/rdf.py +4 -4
- data/vendor/pygments-main/pygments/lexers/rebol.py +1 -1
- data/vendor/pygments-main/pygments/lexers/rego.py +57 -0
- data/vendor/pygments-main/pygments/lexers/rell.py +68 -0
- data/vendor/pygments-main/pygments/lexers/resource.py +1 -1
- data/vendor/pygments-main/pygments/lexers/ride.py +1 -1
- data/vendor/pygments-main/pygments/lexers/rita.py +1 -1
- data/vendor/pygments-main/pygments/lexers/rnc.py +1 -1
- data/vendor/pygments-main/pygments/lexers/roboconf.py +1 -1
- data/vendor/pygments-main/pygments/lexers/robotframework.py +1 -1
- data/vendor/pygments-main/pygments/lexers/ruby.py +1 -1
- data/vendor/pygments-main/pygments/lexers/rust.py +1 -1
- data/vendor/pygments-main/pygments/lexers/sas.py +1 -1
- data/vendor/pygments-main/pygments/lexers/savi.py +1 -1
- data/vendor/pygments-main/pygments/lexers/scdoc.py +1 -1
- data/vendor/pygments-main/pygments/lexers/scripting.py +65 -25
- data/vendor/pygments-main/pygments/lexers/sgf.py +1 -1
- data/vendor/pygments-main/pygments/lexers/shell.py +5 -1
- data/vendor/pygments-main/pygments/lexers/sieve.py +1 -1
- data/vendor/pygments-main/pygments/lexers/slash.py +1 -1
- data/vendor/pygments-main/pygments/lexers/smalltalk.py +1 -1
- data/vendor/pygments-main/pygments/lexers/smithy.py +1 -1
- data/vendor/pygments-main/pygments/lexers/smv.py +1 -1
- data/vendor/pygments-main/pygments/lexers/snobol.py +1 -1
- data/vendor/pygments-main/pygments/lexers/solidity.py +1 -1
- data/vendor/pygments-main/pygments/lexers/soong.py +1 -1
- data/vendor/pygments-main/pygments/lexers/sophia.py +1 -1
- data/vendor/pygments-main/pygments/lexers/special.py +2 -1
- data/vendor/pygments-main/pygments/lexers/spice.py +2 -2
- data/vendor/pygments-main/pygments/lexers/sql.py +205 -127
- data/vendor/pygments-main/pygments/lexers/srcinfo.py +1 -1
- data/vendor/pygments-main/pygments/lexers/stata.py +1 -1
- data/vendor/pygments-main/pygments/lexers/supercollider.py +1 -1
- data/vendor/pygments-main/pygments/lexers/tablegen.py +177 -0
- data/vendor/pygments-main/pygments/lexers/tact.py +1 -1
- data/vendor/pygments-main/pygments/lexers/tal.py +1 -1
- data/vendor/pygments-main/pygments/lexers/tcl.py +1 -1
- data/vendor/pygments-main/pygments/lexers/teal.py +1 -1
- data/vendor/pygments-main/pygments/lexers/templates.py +3 -3
- data/vendor/pygments-main/pygments/lexers/teraterm.py +11 -1
- data/vendor/pygments-main/pygments/lexers/testing.py +1 -1
- data/vendor/pygments-main/pygments/lexers/text.py +2 -2
- data/vendor/pygments-main/pygments/lexers/textedit.py +1 -1
- data/vendor/pygments-main/pygments/lexers/textfmts.py +1 -1
- data/vendor/pygments-main/pygments/lexers/theorem.py +8 -8
- data/vendor/pygments-main/pygments/lexers/thingsdb.py +8 -5
- data/vendor/pygments-main/pygments/lexers/tlb.py +1 -1
- data/vendor/pygments-main/pygments/lexers/tls.py +1 -1
- data/vendor/pygments-main/pygments/lexers/tnt.py +1 -1
- data/vendor/pygments-main/pygments/lexers/trafficscript.py +1 -1
- data/vendor/pygments-main/pygments/lexers/typoscript.py +1 -1
- data/vendor/pygments-main/pygments/lexers/typst.py +82 -26
- data/vendor/pygments-main/pygments/lexers/ul4.py +1 -1
- data/vendor/pygments-main/pygments/lexers/unicon.py +1 -1
- data/vendor/pygments-main/pygments/lexers/urbi.py +1 -1
- data/vendor/pygments-main/pygments/lexers/usd.py +1 -1
- data/vendor/pygments-main/pygments/lexers/varnish.py +1 -1
- data/vendor/pygments-main/pygments/lexers/verification.py +1 -1
- data/vendor/pygments-main/pygments/lexers/verifpal.py +1 -1
- data/vendor/pygments-main/pygments/lexers/vip.py +1 -1
- data/vendor/pygments-main/pygments/lexers/vyper.py +2 -2
- data/vendor/pygments-main/pygments/lexers/web.py +1 -1
- data/vendor/pygments-main/pygments/lexers/webassembly.py +1 -1
- data/vendor/pygments-main/pygments/lexers/webidl.py +1 -1
- data/vendor/pygments-main/pygments/lexers/webmisc.py +1 -1
- data/vendor/pygments-main/pygments/lexers/wgsl.py +1 -1
- data/vendor/pygments-main/pygments/lexers/whiley.py +1 -1
- data/vendor/pygments-main/pygments/lexers/wowtoc.py +1 -1
- data/vendor/pygments-main/pygments/lexers/wren.py +1 -1
- data/vendor/pygments-main/pygments/lexers/x10.py +1 -1
- data/vendor/pygments-main/pygments/lexers/xorg.py +1 -1
- data/vendor/pygments-main/pygments/lexers/yang.py +1 -1
- data/vendor/pygments-main/pygments/lexers/yara.py +1 -1
- data/vendor/pygments-main/pygments/lexers/zig.py +2 -2
- data/vendor/pygments-main/pygments/modeline.py +1 -1
- data/vendor/pygments-main/pygments/plugin.py +3 -1
- data/vendor/pygments-main/pygments/regexopt.py +13 -2
- data/vendor/pygments-main/pygments/scanner.py +1 -1
- data/vendor/pygments-main/pygments/sphinxext.py +1 -1
- data/vendor/pygments-main/pygments/style.py +1 -1
- data/vendor/pygments-main/pygments/styles/__init__.py +1 -1
- data/vendor/pygments-main/pygments/styles/abap.py +1 -1
- data/vendor/pygments-main/pygments/styles/algol.py +1 -1
- data/vendor/pygments-main/pygments/styles/algol_nu.py +1 -1
- data/vendor/pygments-main/pygments/styles/arduino.py +1 -1
- data/vendor/pygments-main/pygments/styles/autumn.py +1 -1
- data/vendor/pygments-main/pygments/styles/borland.py +1 -1
- data/vendor/pygments-main/pygments/styles/bw.py +1 -1
- data/vendor/pygments-main/pygments/styles/coffee.py +1 -1
- data/vendor/pygments-main/pygments/styles/colorful.py +1 -1
- data/vendor/pygments-main/pygments/styles/default.py +1 -1
- data/vendor/pygments-main/pygments/styles/dracula.py +1 -1
- data/vendor/pygments-main/pygments/styles/emacs.py +1 -1
- data/vendor/pygments-main/pygments/styles/friendly.py +1 -1
- data/vendor/pygments-main/pygments/styles/friendly_grayscale.py +1 -1
- data/vendor/pygments-main/pygments/styles/fruity.py +1 -1
- data/vendor/pygments-main/pygments/styles/gh_dark.py +1 -1
- data/vendor/pygments-main/pygments/styles/gruvbox.py +1 -1
- data/vendor/pygments-main/pygments/styles/igor.py +1 -1
- data/vendor/pygments-main/pygments/styles/inkpot.py +1 -1
- data/vendor/pygments-main/pygments/styles/lightbulb.py +1 -1
- data/vendor/pygments-main/pygments/styles/lilypond.py +1 -1
- data/vendor/pygments-main/pygments/styles/lovelace.py +1 -1
- data/vendor/pygments-main/pygments/styles/manni.py +1 -1
- data/vendor/pygments-main/pygments/styles/material.py +1 -1
- data/vendor/pygments-main/pygments/styles/monokai.py +1 -1
- data/vendor/pygments-main/pygments/styles/murphy.py +1 -1
- data/vendor/pygments-main/pygments/styles/native.py +1 -1
- data/vendor/pygments-main/pygments/styles/nord.py +1 -1
- data/vendor/pygments-main/pygments/styles/onedark.py +13 -3
- data/vendor/pygments-main/pygments/styles/paraiso_dark.py +1 -1
- data/vendor/pygments-main/pygments/styles/paraiso_light.py +1 -1
- data/vendor/pygments-main/pygments/styles/pastie.py +1 -1
- data/vendor/pygments-main/pygments/styles/perldoc.py +1 -1
- data/vendor/pygments-main/pygments/styles/rainbow_dash.py +1 -1
- data/vendor/pygments-main/pygments/styles/rrt.py +18 -3
- data/vendor/pygments-main/pygments/styles/sas.py +1 -1
- data/vendor/pygments-main/pygments/styles/solarized.py +1 -1
- data/vendor/pygments-main/pygments/styles/staroffice.py +1 -1
- data/vendor/pygments-main/pygments/styles/stata_dark.py +1 -1
- data/vendor/pygments-main/pygments/styles/stata_light.py +1 -1
- data/vendor/pygments-main/pygments/styles/tango.py +1 -1
- data/vendor/pygments-main/pygments/styles/trac.py +1 -1
- data/vendor/pygments-main/pygments/styles/vim.py +1 -1
- data/vendor/pygments-main/pygments/styles/vs.py +1 -1
- data/vendor/pygments-main/pygments/styles/xcode.py +1 -1
- data/vendor/pygments-main/pygments/styles/zenburn.py +1 -1
- data/vendor/pygments-main/pygments/token.py +1 -1
- data/vendor/pygments-main/pygments/unistring.py +1 -1
- data/vendor/pygments-main/pygments/util.py +2 -2
- data/vendor/pygments-main/{pygments-2.18.0.dist-info → pygments-2.20.0.dist-info}/METADATA +7 -7
- data/vendor/pygments-main/pygments-2.20.0.dist-info/RECORD +687 -0
- data/vendor/pygments-main/{pygments-2.18.0.dist-info → pygments-2.20.0.dist-info}/WHEEL +1 -1
- data/vendor/pygments-main/{pygments-2.18.0.dist-info → pygments-2.20.0.dist-info}/licenses/AUTHORS +9 -0
- metadata +44 -21
- data/vendor/pygments-main/pygments-2.18.0.dist-info/RECORD +0 -663
- /data/vendor/pygments-main/{pygments-2.18.0.dist-info → pygments-2.20.0.dist-info}/INSTALLER +0 -0
- /data/vendor/pygments-main/{pygments-2.18.0.dist-info → pygments-2.20.0.dist-info}/REQUESTED +0 -0
- /data/vendor/pygments-main/{pygments-2.18.0.dist-info → pygments-2.20.0.dist-info}/entry_points.txt +0 -0
- /data/vendor/pygments-main/{pygments-2.18.0.dist-info → pygments-2.20.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Lexer for scripting and embedded languages.
|
|
6
6
|
|
|
7
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
|
|
8
8
|
:license: BSD, see LICENSE for details.
|
|
9
9
|
"""
|
|
10
10
|
|
|
@@ -21,6 +21,10 @@ __all__ = ['LuaLexer', 'LuauLexer', 'MoonScriptLexer', 'ChaiscriptLexer', 'LSLLe
|
|
|
21
21
|
'EasytrieveLexer', 'JclLexer', 'MiniScriptLexer']
|
|
22
22
|
|
|
23
23
|
|
|
24
|
+
def all_lua_builtins():
|
|
25
|
+
from pygments.lexers._lua_builtins import MODULES
|
|
26
|
+
return [w for values in MODULES.values() for w in values]
|
|
27
|
+
|
|
24
28
|
class LuaLexer(RegexLexer):
|
|
25
29
|
"""
|
|
26
30
|
For Lua source code.
|
|
@@ -53,8 +57,14 @@ class LuaLexer(RegexLexer):
|
|
|
53
57
|
|
|
54
58
|
_comment_multiline = r'(?:--\[(?P<level>=*)\[[\w\W]*?\](?P=level)\])'
|
|
55
59
|
_comment_single = r'(?:--.*$)'
|
|
56
|
-
_space = r'(?:\s+)'
|
|
60
|
+
_space = r'(?:\s+(?!\s))'
|
|
57
61
|
_s = rf'(?:{_comment_multiline}|{_comment_single}|{_space})'
|
|
62
|
+
# A lookahead-safe version of _s that avoids catastrophic backtracking.
|
|
63
|
+
# The _comment_multiline pattern contains [\w\W]*? which, when used
|
|
64
|
+
# inside a lookahead with a * quantifier, causes exponential blowup.
|
|
65
|
+
# This version skips only whitespace; comments between an identifier
|
|
66
|
+
# and a following [.:] or ( are rare enough to sacrifice.
|
|
67
|
+
_s_la = r'\s'
|
|
58
68
|
_name = r'(?:[^\W\d]\w*)'
|
|
59
69
|
|
|
60
70
|
tokens = {
|
|
@@ -66,7 +76,7 @@ class LuaLexer(RegexLexer):
|
|
|
66
76
|
'ws': [
|
|
67
77
|
(_comment_multiline, Comment.Multiline),
|
|
68
78
|
(_comment_single, Comment.Single),
|
|
69
|
-
(_space,
|
|
79
|
+
(_space, Whitespace),
|
|
70
80
|
],
|
|
71
81
|
'base': [
|
|
72
82
|
include('ws'),
|
|
@@ -82,27 +92,41 @@ class LuaLexer(RegexLexer):
|
|
|
82
92
|
(r'::', Punctuation, 'label'),
|
|
83
93
|
(r'\.{3}', Punctuation),
|
|
84
94
|
(r'[=<>|~&+\-*/%#^]+|\.\.', Operator),
|
|
85
|
-
(r'[\[\]{}().,:;]', Punctuation),
|
|
95
|
+
(r'[\[\]{}().,:;]+', Punctuation),
|
|
86
96
|
(r'(and|or|not)\b', Operator.Word),
|
|
87
97
|
|
|
88
|
-
(
|
|
89
|
-
|
|
98
|
+
(words([
|
|
99
|
+
'break', 'do', 'else', 'elseif', 'end', 'for', 'if', 'in',
|
|
100
|
+
'repeat', 'return', 'then', 'until', 'while'
|
|
101
|
+
], suffix=r'\b'), Keyword.Reserved),
|
|
90
102
|
(r'goto\b', Keyword.Reserved, 'goto'),
|
|
91
103
|
(r'(local)\b', Keyword.Declaration),
|
|
92
104
|
(r'(true|false|nil)\b', Keyword.Constant),
|
|
93
105
|
|
|
94
106
|
(r'(function)\b', Keyword.Reserved, 'funcname'),
|
|
95
107
|
|
|
96
|
-
(r
|
|
108
|
+
(words(all_lua_builtins(), suffix=r"\b"), Name.Builtin),
|
|
109
|
+
(fr'[A-Za-z_]\w*(?={_s_la}*[.:])', Name.Variable, 'varname'),
|
|
110
|
+
(fr'[A-Za-z_]\w*(?={_s_la}*\()', Name.Function),
|
|
111
|
+
(r'[A-Za-z_]\w*', Name.Variable),
|
|
97
112
|
|
|
98
113
|
("'", String.Single, combined('stringescape', 'sqs')),
|
|
99
114
|
('"', String.Double, combined('stringescape', 'dqs'))
|
|
100
115
|
],
|
|
101
116
|
|
|
117
|
+
'varname': [
|
|
118
|
+
include('ws'),
|
|
119
|
+
(r'\.\.', Operator, '#pop'),
|
|
120
|
+
(r'[.:]', Punctuation),
|
|
121
|
+
(rf'{_name}(?={_s_la}*[.:])', Name.Property),
|
|
122
|
+
(rf'{_name}(?={_s_la}*\()', Name.Function, '#pop'),
|
|
123
|
+
(_name, Name.Property, '#pop'),
|
|
124
|
+
],
|
|
125
|
+
|
|
102
126
|
'funcname': [
|
|
103
127
|
include('ws'),
|
|
104
128
|
(r'[.:]', Punctuation),
|
|
105
|
-
(rf'{_name}(?={
|
|
129
|
+
(rf'{_name}(?={_s_la}*[.:])', Name.Class),
|
|
106
130
|
(_name, Name.Function, '#pop'),
|
|
107
131
|
# inline function
|
|
108
132
|
(r'\(', Punctuation, '#pop'),
|
|
@@ -151,19 +175,18 @@ class LuaLexer(RegexLexer):
|
|
|
151
175
|
def get_tokens_unprocessed(self, text):
|
|
152
176
|
for index, token, value in \
|
|
153
177
|
RegexLexer.get_tokens_unprocessed(self, text):
|
|
154
|
-
if token is Name:
|
|
155
|
-
if
|
|
156
|
-
yield index, Name.Builtin, value
|
|
157
|
-
continue
|
|
158
|
-
elif '.' in value:
|
|
178
|
+
if token is Name.Builtin and value not in self._functions:
|
|
179
|
+
if '.' in value:
|
|
159
180
|
a, b = value.split('.')
|
|
160
181
|
yield index, Name, a
|
|
161
182
|
yield index + len(a), Punctuation, '.'
|
|
162
183
|
yield index + len(a) + 1, Name, b
|
|
163
|
-
|
|
184
|
+
else:
|
|
185
|
+
yield index, Name, value
|
|
186
|
+
continue
|
|
164
187
|
yield index, token, value
|
|
165
188
|
|
|
166
|
-
def _luau_make_expression(should_pop, _s):
|
|
189
|
+
def _luau_make_expression(should_pop, _s, _s_la):
|
|
167
190
|
temp_list = [
|
|
168
191
|
(r'0[xX][\da-fA-F_]*', Number.Hex, '#pop'),
|
|
169
192
|
(r'0[bB][\d_]*', Number.Bin, '#pop'),
|
|
@@ -178,7 +201,7 @@ def _luau_make_expression(should_pop, _s):
|
|
|
178
201
|
(r'(\.)([a-zA-Z_]\w*)(?=%s*[({"\'])', bygroups(Punctuation, Name.Function), '#pop'),
|
|
179
202
|
(r'(\.)([a-zA-Z_]\w*)', bygroups(Punctuation, Name.Variable), '#pop'),
|
|
180
203
|
|
|
181
|
-
(rf'[a-zA-Z_]\w*(?:\.[a-zA-Z_]\w*)*(?={
|
|
204
|
+
(rf'[a-zA-Z_]\w*(?:\.[a-zA-Z_]\w*)*(?={_s_la}*[({{"\'])', Name.Other, '#pop'),
|
|
182
205
|
(r'[a-zA-Z_]\w*(?:\.[a-zA-Z_]\w*)*', Name, '#pop'),
|
|
183
206
|
]
|
|
184
207
|
if should_pop:
|
|
@@ -227,6 +250,9 @@ class LuauLexer(RegexLexer):
|
|
|
227
250
|
_comment_multiline = r'(?:--\[(?P<level>=*)\[[\w\W]*?\](?P=level)\])'
|
|
228
251
|
_comment_single = r'(?:--.*$)'
|
|
229
252
|
_s = r'(?:{}|{}|{})'.format(_comment_multiline, _comment_single, r'\s+')
|
|
253
|
+
# Lookahead-safe version — avoids catastrophic backtracking from
|
|
254
|
+
# [\w\W]*? inside _comment_multiline when combined with * quantifier.
|
|
255
|
+
_s_la = r'\s'
|
|
230
256
|
|
|
231
257
|
tokens = {
|
|
232
258
|
'root': [
|
|
@@ -266,7 +292,7 @@ class LuauLexer(RegexLexer):
|
|
|
266
292
|
(r'[\])};]+', Punctuation),
|
|
267
293
|
|
|
268
294
|
include('expression_static'),
|
|
269
|
-
*_luau_make_expression(False, _s),
|
|
295
|
+
*_luau_make_expression(False, _s, _s_la),
|
|
270
296
|
|
|
271
297
|
(r'[\[.,]', Punctuation, 'expression'),
|
|
272
298
|
],
|
|
@@ -288,7 +314,7 @@ class LuauLexer(RegexLexer):
|
|
|
288
314
|
(r'function\b', Keyword.Reserved, 'func_name'),
|
|
289
315
|
|
|
290
316
|
include('expression_static'),
|
|
291
|
-
*_luau_make_expression(True, _s),
|
|
317
|
+
*_luau_make_expression(True, _s, _s_la),
|
|
292
318
|
|
|
293
319
|
default('#pop'),
|
|
294
320
|
],
|
|
@@ -364,7 +390,7 @@ class LuauLexer(RegexLexer):
|
|
|
364
390
|
include('ws'),
|
|
365
391
|
|
|
366
392
|
(r'[.:]', Punctuation),
|
|
367
|
-
(rf'[a-zA-Z_]\w*(?={
|
|
393
|
+
(rf'[a-zA-Z_]\w*(?={_s_la}*[.:])', Name.Class),
|
|
368
394
|
(r'[a-zA-Z_]\w*', Name.Function),
|
|
369
395
|
|
|
370
396
|
(r'<', Punctuation, 'closing_gt_type'),
|
|
@@ -521,20 +547,34 @@ class MoonScriptLexer(LuaLexer):
|
|
|
521
547
|
(r'(self)\b', Name.Builtin.Pseudo),
|
|
522
548
|
(r'@@?([a-zA-Z_]\w*)?', Name.Variable.Class),
|
|
523
549
|
(r'[A-Z]\w*', Name.Class), # proper name
|
|
524
|
-
(r
|
|
550
|
+
(words(all_lua_builtins(), suffix=r"\b"), Name.Builtin),
|
|
551
|
+
(r'[A-Za-z_]\w*', Name),
|
|
525
552
|
("'", String.Single, combined('stringescape', 'sqs')),
|
|
526
553
|
('"', String.Double, combined('stringescape', 'dqs'))
|
|
527
554
|
],
|
|
528
555
|
'stringescape': [
|
|
529
556
|
(r'''\\([abfnrtv\\"']|\d{1,3})''', String.Escape)
|
|
530
557
|
],
|
|
531
|
-
'
|
|
532
|
-
("'
|
|
533
|
-
|
|
558
|
+
'strings': [
|
|
559
|
+
(r'[^#\\\'"]+', String),
|
|
560
|
+
# note that strings are multi-line.
|
|
561
|
+
# hashmarks, quotes and backslashes must be parsed one at a time
|
|
562
|
+
],
|
|
563
|
+
'interpoling_string': [
|
|
564
|
+
(r'\}', String.Interpol, "#pop"),
|
|
565
|
+
include('base')
|
|
534
566
|
],
|
|
535
567
|
'dqs': [
|
|
536
|
-
('"', String.Double, '#pop'),
|
|
537
|
-
('
|
|
568
|
+
(r'"', String.Double, '#pop'),
|
|
569
|
+
(r'\\.|\'', String), # double-quoted string don't need ' escapes
|
|
570
|
+
(r'#\{', String.Interpol, "interpoling_string"),
|
|
571
|
+
(r'#', String),
|
|
572
|
+
include('strings')
|
|
573
|
+
],
|
|
574
|
+
'sqs': [
|
|
575
|
+
(r"'", String.Single, '#pop'),
|
|
576
|
+
(r'#|\\.|"', String), # single quoted strings don't need " escapses
|
|
577
|
+
include('strings')
|
|
538
578
|
]
|
|
539
579
|
}
|
|
540
580
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Lexers for various shells.
|
|
6
6
|
|
|
7
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
|
|
8
8
|
:license: BSD, see LICENSE for details.
|
|
9
9
|
"""
|
|
10
10
|
|
|
@@ -232,6 +232,7 @@ class BashSessionLexer(ShellSessionBaseLexer):
|
|
|
232
232
|
mimetypes = ['application/x-shell-session', 'application/x-sh-session']
|
|
233
233
|
url = 'https://en.wikipedia.org/wiki/Unix_shell'
|
|
234
234
|
version_added = '1.1'
|
|
235
|
+
_example = "console/example.sh-session"
|
|
235
236
|
|
|
236
237
|
_innerLexerCls = BashLexer
|
|
237
238
|
_ps1rgx = re.compile(
|
|
@@ -542,6 +543,7 @@ class MSDOSSessionLexer(ShellSessionBaseLexer):
|
|
|
542
543
|
mimetypes = []
|
|
543
544
|
url = 'https://en.wikipedia.org/wiki/MS-DOS'
|
|
544
545
|
version_added = '2.1'
|
|
546
|
+
_example = "doscon/session"
|
|
545
547
|
|
|
546
548
|
_innerLexerCls = BatchLexer
|
|
547
549
|
_ps1rgx = re.compile(r'^([^>]*>)(.*\n?)')
|
|
@@ -628,6 +630,7 @@ class TcshSessionLexer(ShellSessionBaseLexer):
|
|
|
628
630
|
mimetypes = []
|
|
629
631
|
url = 'https://www.tcsh.org'
|
|
630
632
|
version_added = '2.1'
|
|
633
|
+
_example = "tcshcon/session"
|
|
631
634
|
|
|
632
635
|
_innerLexerCls = TcshLexer
|
|
633
636
|
_ps1rgx = re.compile(r'^([^>]+>)(.*\n?)')
|
|
@@ -760,6 +763,7 @@ class PowerShellSessionLexer(ShellSessionBaseLexer):
|
|
|
760
763
|
mimetypes = []
|
|
761
764
|
url = 'https://learn.microsoft.com/en-us/powershell'
|
|
762
765
|
version_added = '2.1'
|
|
766
|
+
_example = "pwsh-session/session"
|
|
763
767
|
|
|
764
768
|
_innerLexerCls = PowerShellLexer
|
|
765
769
|
_bare_continuation = True
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
https://tools.ietf.org/html/rfc5429
|
|
14
14
|
https://tools.ietf.org/html/rfc8580
|
|
15
15
|
|
|
16
|
-
:copyright: Copyright 2006-
|
|
16
|
+
:copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
|
|
17
17
|
:license: BSD, see LICENSE for details.
|
|
18
18
|
"""
|
|
19
19
|
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Special lexers.
|
|
6
6
|
|
|
7
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
|
|
8
8
|
:license: BSD, see LICENSE for details.
|
|
9
9
|
"""
|
|
10
10
|
|
|
@@ -46,6 +46,7 @@ class OutputLexer(Lexer):
|
|
|
46
46
|
aliases = ['output']
|
|
47
47
|
url = ""
|
|
48
48
|
version_added = '2.10'
|
|
49
|
+
_example = "output/output"
|
|
49
50
|
|
|
50
51
|
def get_tokens_unprocessed(self, text):
|
|
51
52
|
yield 0, Generic.Output, text
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Lexers for the Spice programming language.
|
|
6
6
|
|
|
7
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-present by the Pygments team, see AUTHORS.
|
|
8
8
|
:license: BSD, see LICENSE for details.
|
|
9
9
|
"""
|
|
10
10
|
|
|
@@ -40,7 +40,7 @@ class SpiceLexer(RegexLexer):
|
|
|
40
40
|
(r'(f|p|type|struct|interface|enum|alias|operator)\b', Keyword.Declaration),
|
|
41
41
|
(words(('if', 'else', 'switch', 'case', 'default', 'for', 'foreach', 'do',
|
|
42
42
|
'while', 'break', 'continue', 'fallthrough', 'return', 'assert',
|
|
43
|
-
'unsafe', 'ext'), suffix=r'\b'), Keyword),
|
|
43
|
+
'unsafe', 'ext', 'cast'), suffix=r'\b'), Keyword),
|
|
44
44
|
(words(('const', 'signed', 'unsigned', 'inline', 'public', 'heap', 'compose'),
|
|
45
45
|
suffix=r'\b'), Keyword.Pseudo),
|
|
46
46
|
(words(('new', 'yield', 'stash', 'pick', 'sync', 'class'), suffix=r'\b'),
|