pygments.rb 2.4.0 → 3.0.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/ci.yml +8 -8
- data/.github/workflows/release.yml +5 -5
- data/.gitignore +2 -0
- data/.rubocop.yml +1 -1
- data/CHANGELOG.adoc +12 -0
- data/README.adoc +2 -2
- data/lib/pygments/popen.rb +2 -2
- data/lib/pygments/version.rb +1 -1
- data/pygments.rb.gemspec +3 -3
- data/vendor/pygments-main/bin/pygmentize +1 -1
- data/vendor/pygments-main/pygments/__init__.py +2 -2
- data/vendor/pygments-main/pygments/__main__.py +1 -1
- data/vendor/pygments-main/pygments/cmdline.py +12 -12
- data/vendor/pygments-main/pygments/console.py +5 -5
- data/vendor/pygments-main/pygments/filter.py +2 -3
- data/vendor/pygments-main/pygments/filters/__init__.py +4 -4
- data/vendor/pygments-main/pygments/formatter.py +6 -1
- data/vendor/pygments-main/pygments/formatters/__init__.py +7 -8
- data/vendor/pygments-main/pygments/formatters/_mapping.py +0 -0
- data/vendor/pygments-main/pygments/formatters/bbcode.py +2 -2
- data/vendor/pygments-main/pygments/formatters/groff.py +3 -3
- data/vendor/pygments-main/pygments/formatters/html.py +38 -40
- data/vendor/pygments-main/pygments/formatters/img.py +51 -11
- data/vendor/pygments-main/pygments/formatters/irc.py +1 -1
- data/vendor/pygments-main/pygments/formatters/latex.py +24 -27
- data/vendor/pygments-main/pygments/formatters/other.py +3 -4
- data/vendor/pygments-main/pygments/formatters/pangomarkup.py +2 -2
- data/vendor/pygments-main/pygments/formatters/rtf.py +228 -25
- data/vendor/pygments-main/pygments/formatters/svg.py +17 -20
- data/vendor/pygments-main/pygments/formatters/terminal.py +1 -1
- data/vendor/pygments-main/pygments/formatters/terminal256.py +1 -1
- data/vendor/pygments-main/pygments/lexer.py +51 -33
- data/vendor/pygments-main/pygments/lexers/__init__.py +12 -12
- data/vendor/pygments-main/pygments/lexers/_ada_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_asy_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_cl_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_cocoa_builtins.py +2 -2
- data/vendor/pygments-main/pygments/lexers/_csound_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_css_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_julia_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_lasso_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_lilypond_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_lua_builtins.py +5 -5
- data/vendor/pygments-main/pygments/lexers/_luau_builtins.py +62 -0
- data/vendor/pygments-main/pygments/lexers/_mapping.py +41 -11
- data/vendor/pygments-main/pygments/lexers/_mql_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_mysql_builtins.py +3 -3
- data/vendor/pygments-main/pygments/lexers/_openedge_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_php_builtins.py +3 -3
- data/vendor/pygments-main/pygments/lexers/_postgres_builtins.py +5 -5
- data/vendor/pygments-main/pygments/lexers/_qlik_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_scheme_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_scilab_builtins.py +4 -4
- data/vendor/pygments-main/pygments/lexers/_sourcemod_builtins.py +3 -3
- data/vendor/pygments-main/pygments/lexers/_stan_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_stata_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_tsql_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_usd_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_vbscript_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_vim_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/actionscript.py +6 -8
- data/vendor/pygments-main/pygments/lexers/ada.py +3 -3
- data/vendor/pygments-main/pygments/lexers/agile.py +3 -1
- data/vendor/pygments-main/pygments/lexers/algebra.py +9 -13
- data/vendor/pygments-main/pygments/lexers/ambient.py +2 -3
- data/vendor/pygments-main/pygments/lexers/amdgpu.py +3 -3
- data/vendor/pygments-main/pygments/lexers/ampl.py +2 -3
- data/vendor/pygments-main/pygments/lexers/apdlexer.py +4 -3
- data/vendor/pygments-main/pygments/lexers/apl.py +2 -3
- data/vendor/pygments-main/pygments/lexers/archetype.py +8 -12
- data/vendor/pygments-main/pygments/lexers/arrow.py +2 -3
- data/vendor/pygments-main/pygments/lexers/arturo.py +2 -3
- data/vendor/pygments-main/pygments/lexers/asc.py +4 -4
- data/vendor/pygments-main/pygments/lexers/asm.py +28 -15
- data/vendor/pygments-main/pygments/lexers/asn1.py +178 -0
- data/vendor/pygments-main/pygments/lexers/automation.py +6 -8
- data/vendor/pygments-main/pygments/lexers/bare.py +2 -3
- data/vendor/pygments-main/pygments/lexers/basic.py +48 -57
- data/vendor/pygments-main/pygments/lexers/bdd.py +3 -4
- data/vendor/pygments-main/pygments/lexers/berry.py +4 -4
- data/vendor/pygments-main/pygments/lexers/bibtex.py +5 -5
- data/vendor/pygments-main/pygments/lexers/blueprint.py +173 -0
- data/vendor/pygments-main/pygments/lexers/boa.py +4 -4
- data/vendor/pygments-main/pygments/lexers/bqn.py +109 -0
- data/vendor/pygments-main/pygments/lexers/business.py +21 -22
- data/vendor/pygments-main/pygments/lexers/c_cpp.py +9 -4
- data/vendor/pygments-main/pygments/lexers/c_like.py +99 -27
- data/vendor/pygments-main/pygments/lexers/capnproto.py +2 -3
- data/vendor/pygments-main/pygments/lexers/carbon.py +10 -11
- data/vendor/pygments-main/pygments/lexers/cddl.py +8 -9
- data/vendor/pygments-main/pygments/lexers/chapel.py +2 -3
- data/vendor/pygments-main/pygments/lexers/clean.py +2 -1
- data/vendor/pygments-main/pygments/lexers/comal.py +2 -1
- data/vendor/pygments-main/pygments/lexers/compiled.py +2 -1
- data/vendor/pygments-main/pygments/lexers/configs.py +342 -108
- data/vendor/pygments-main/pygments/lexers/console.py +5 -5
- data/vendor/pygments-main/pygments/lexers/cplint.py +2 -3
- data/vendor/pygments-main/pygments/lexers/crystal.py +4 -5
- data/vendor/pygments-main/pygments/lexers/csound.py +6 -8
- data/vendor/pygments-main/pygments/lexers/css.py +5 -5
- data/vendor/pygments-main/pygments/lexers/d.py +4 -3
- data/vendor/pygments-main/pygments/lexers/dalvik.py +2 -3
- data/vendor/pygments-main/pygments/lexers/data.py +8 -12
- data/vendor/pygments-main/pygments/lexers/dax.py +2 -3
- data/vendor/pygments-main/pygments/lexers/devicetree.py +2 -3
- data/vendor/pygments-main/pygments/lexers/diff.py +7 -6
- data/vendor/pygments-main/pygments/lexers/dns.py +109 -0
- data/vendor/pygments-main/pygments/lexers/dotnet.py +19 -14
- data/vendor/pygments-main/pygments/lexers/dsls.py +24 -35
- data/vendor/pygments-main/pygments/lexers/dylan.py +8 -16
- data/vendor/pygments-main/pygments/lexers/ecl.py +2 -3
- data/vendor/pygments-main/pygments/lexers/eiffel.py +3 -4
- data/vendor/pygments-main/pygments/lexers/elm.py +3 -4
- data/vendor/pygments-main/pygments/lexers/elpi.py +28 -21
- data/vendor/pygments-main/pygments/lexers/email.py +3 -3
- data/vendor/pygments-main/pygments/lexers/erlang.py +22 -24
- data/vendor/pygments-main/pygments/lexers/esoteric.py +11 -12
- data/vendor/pygments-main/pygments/lexers/ezhil.py +2 -3
- data/vendor/pygments-main/pygments/lexers/factor.py +2 -3
- data/vendor/pygments-main/pygments/lexers/fantom.py +3 -3
- data/vendor/pygments-main/pygments/lexers/felix.py +9 -10
- data/vendor/pygments-main/pygments/lexers/fift.py +2 -1
- data/vendor/pygments-main/pygments/lexers/floscript.py +2 -3
- data/vendor/pygments-main/pygments/lexers/forth.py +2 -3
- data/vendor/pygments-main/pygments/lexers/fortran.py +6 -7
- data/vendor/pygments-main/pygments/lexers/foxpro.py +3 -3
- data/vendor/pygments-main/pygments/lexers/freefem.py +2 -3
- data/vendor/pygments-main/pygments/lexers/func.py +3 -1
- data/vendor/pygments-main/pygments/lexers/functional.py +2 -1
- data/vendor/pygments-main/pygments/lexers/futhark.py +6 -7
- data/vendor/pygments-main/pygments/lexers/gcodelexer.py +3 -3
- data/vendor/pygments-main/pygments/lexers/gdscript.py +2 -1
- data/vendor/pygments-main/pygments/lexers/go.py +3 -4
- data/vendor/pygments-main/pygments/lexers/grammar_notation.py +6 -9
- data/vendor/pygments-main/pygments/lexers/graph.py +12 -9
- data/vendor/pygments-main/pygments/lexers/graphics.py +13 -17
- data/vendor/pygments-main/pygments/lexers/graphql.py +176 -0
- data/vendor/pygments-main/pygments/lexers/graphviz.py +2 -3
- data/vendor/pygments-main/pygments/lexers/gsql.py +2 -3
- data/vendor/pygments-main/pygments/lexers/haskell.py +27 -32
- data/vendor/pygments-main/pygments/lexers/haxe.py +3 -5
- data/vendor/pygments-main/pygments/lexers/hdl.py +8 -7
- data/vendor/pygments-main/pygments/lexers/hexdump.py +3 -3
- data/vendor/pygments-main/pygments/lexers/html.py +34 -13
- data/vendor/pygments-main/pygments/lexers/idl.py +2 -3
- data/vendor/pygments-main/pygments/lexers/igor.py +305 -290
- data/vendor/pygments-main/pygments/lexers/inferno.py +2 -3
- data/vendor/pygments-main/pygments/lexers/installers.py +7 -9
- data/vendor/pygments-main/pygments/lexers/int_fiction.py +150 -162
- data/vendor/pygments-main/pygments/lexers/iolang.py +2 -3
- data/vendor/pygments-main/pygments/lexers/j.py +2 -3
- data/vendor/pygments-main/pygments/lexers/javascript.py +18 -19
- data/vendor/pygments-main/pygments/lexers/jmespath.py +2 -1
- data/vendor/pygments-main/pygments/lexers/jslt.py +2 -3
- data/vendor/pygments-main/pygments/lexers/jsonnet.py +4 -3
- data/vendor/pygments-main/pygments/lexers/jsx.py +75 -0
- data/vendor/pygments-main/pygments/lexers/julia.py +4 -5
- data/vendor/pygments-main/pygments/lexers/jvm.py +98 -116
- data/vendor/pygments-main/pygments/lexers/kuin.py +2 -3
- data/vendor/pygments-main/pygments/lexers/kusto.py +93 -0
- data/vendor/pygments-main/pygments/lexers/ldap.py +155 -0
- data/vendor/pygments-main/pygments/lexers/lean.py +241 -0
- data/vendor/pygments-main/pygments/lexers/lilypond.py +2 -3
- data/vendor/pygments-main/pygments/lexers/lisp.py +373 -65
- data/vendor/pygments-main/pygments/lexers/macaulay2.py +53 -4
- data/vendor/pygments-main/pygments/lexers/make.py +7 -5
- data/vendor/pygments-main/pygments/lexers/markup.py +242 -91
- data/vendor/pygments-main/pygments/lexers/math.py +2 -1
- data/vendor/pygments-main/pygments/lexers/matlab.py +10 -12
- data/vendor/pygments-main/pygments/lexers/maxima.py +2 -3
- data/vendor/pygments-main/pygments/lexers/meson.py +2 -3
- data/vendor/pygments-main/pygments/lexers/mime.py +4 -4
- data/vendor/pygments-main/pygments/lexers/minecraft.py +24 -27
- data/vendor/pygments-main/pygments/lexers/mips.py +3 -1
- data/vendor/pygments-main/pygments/lexers/ml.py +59 -61
- data/vendor/pygments-main/pygments/lexers/modeling.py +19 -22
- data/vendor/pygments-main/pygments/lexers/modula2.py +2 -3
- data/vendor/pygments-main/pygments/lexers/mojo.py +704 -0
- data/vendor/pygments-main/pygments/lexers/monte.py +2 -3
- data/vendor/pygments-main/pygments/lexers/mosel.py +3 -3
- data/vendor/pygments-main/pygments/lexers/ncl.py +4 -3
- data/vendor/pygments-main/pygments/lexers/nimrod.py +7 -8
- data/vendor/pygments-main/pygments/lexers/nit.py +2 -3
- data/vendor/pygments-main/pygments/lexers/nix.py +40 -31
- data/vendor/pygments-main/pygments/lexers/oberon.py +3 -3
- data/vendor/pygments-main/pygments/lexers/objective.py +14 -6
- data/vendor/pygments-main/pygments/lexers/ooc.py +2 -3
- data/vendor/pygments-main/pygments/lexers/openscad.py +96 -0
- data/vendor/pygments-main/pygments/lexers/other.py +2 -1
- data/vendor/pygments-main/pygments/lexers/parasail.py +2 -3
- data/vendor/pygments-main/pygments/lexers/parsers.py +41 -44
- data/vendor/pygments-main/pygments/lexers/pascal.py +6 -3
- data/vendor/pygments-main/pygments/lexers/pawn.py +5 -5
- data/vendor/pygments-main/pygments/lexers/perl.py +3 -3
- data/vendor/pygments-main/pygments/lexers/phix.py +2 -3
- data/vendor/pygments-main/pygments/lexers/php.py +4 -5
- data/vendor/pygments-main/pygments/lexers/pointless.py +2 -3
- data/vendor/pygments-main/pygments/lexers/pony.py +3 -3
- data/vendor/pygments-main/pygments/lexers/praat.py +2 -3
- data/vendor/pygments-main/pygments/lexers/procfile.py +2 -3
- data/vendor/pygments-main/pygments/lexers/prolog.py +23 -9
- data/vendor/pygments-main/pygments/lexers/promql.py +2 -1
- data/vendor/pygments-main/pygments/lexers/prql.py +251 -0
- data/vendor/pygments-main/pygments/lexers/ptx.py +119 -0
- data/vendor/pygments-main/pygments/lexers/python.py +24 -24
- data/vendor/pygments-main/pygments/lexers/q.py +5 -6
- data/vendor/pygments-main/pygments/lexers/qlik.py +3 -3
- data/vendor/pygments-main/pygments/lexers/qvt.py +5 -3
- data/vendor/pygments-main/pygments/lexers/r.py +8 -6
- data/vendor/pygments-main/pygments/lexers/rdf.py +19 -13
- data/vendor/pygments-main/pygments/lexers/rebol.py +7 -7
- data/vendor/pygments-main/pygments/lexers/resource.py +5 -6
- data/vendor/pygments-main/pygments/lexers/ride.py +4 -5
- data/vendor/pygments-main/pygments/lexers/rita.py +2 -3
- data/vendor/pygments-main/pygments/lexers/rnc.py +2 -3
- data/vendor/pygments-main/pygments/lexers/roboconf.py +5 -5
- data/vendor/pygments-main/pygments/lexers/robotframework.py +2 -3
- data/vendor/pygments-main/pygments/lexers/ruby.py +8 -13
- data/vendor/pygments-main/pygments/lexers/rust.py +9 -10
- data/vendor/pygments-main/pygments/lexers/sas.py +3 -3
- data/vendor/pygments-main/pygments/lexers/savi.py +131 -130
- data/vendor/pygments-main/pygments/lexers/scdoc.py +13 -7
- data/vendor/pygments-main/pygments/lexers/scripting.py +354 -42
- data/vendor/pygments-main/pygments/lexers/sgf.py +2 -3
- data/vendor/pygments-main/pygments/lexers/shell.py +107 -129
- data/vendor/pygments-main/pygments/lexers/sieve.py +3 -3
- data/vendor/pygments-main/pygments/lexers/slash.py +4 -5
- data/vendor/pygments-main/pygments/lexers/smalltalk.py +3 -5
- data/vendor/pygments-main/pygments/lexers/smithy.py +2 -3
- data/vendor/pygments-main/pygments/lexers/smv.py +3 -3
- data/vendor/pygments-main/pygments/lexers/snobol.py +3 -3
- data/vendor/pygments-main/pygments/lexers/solidity.py +3 -3
- data/vendor/pygments-main/pygments/lexers/soong.py +78 -0
- data/vendor/pygments-main/pygments/lexers/sophia.py +3 -4
- data/vendor/pygments-main/pygments/lexers/special.py +8 -3
- data/vendor/pygments-main/pygments/lexers/spice.py +15 -16
- data/vendor/pygments-main/pygments/lexers/sql.py +24 -18
- data/vendor/pygments-main/pygments/lexers/srcinfo.py +3 -3
- data/vendor/pygments-main/pygments/lexers/stata.py +2 -3
- data/vendor/pygments-main/pygments/lexers/supercollider.py +2 -3
- data/vendor/pygments-main/pygments/lexers/tact.py +303 -0
- data/vendor/pygments-main/pygments/lexers/tal.py +13 -10
- data/vendor/pygments-main/pygments/lexers/tcl.py +2 -3
- data/vendor/pygments-main/pygments/lexers/teal.py +2 -3
- data/vendor/pygments-main/pygments/lexers/templates.py +131 -72
- data/vendor/pygments-main/pygments/lexers/teraterm.py +2 -3
- data/vendor/pygments-main/pygments/lexers/testing.py +4 -5
- data/vendor/pygments-main/pygments/lexers/text.py +2 -1
- data/vendor/pygments-main/pygments/lexers/textedit.py +9 -6
- data/vendor/pygments-main/pygments/lexers/textfmts.py +20 -15
- data/vendor/pygments-main/pygments/lexers/theorem.py +41 -115
- data/vendor/pygments-main/pygments/lexers/thingsdb.py +50 -26
- data/vendor/pygments-main/pygments/lexers/tlb.py +3 -1
- data/vendor/pygments-main/pygments/lexers/tls.py +54 -0
- data/vendor/pygments-main/pygments/lexers/tnt.py +2 -3
- data/vendor/pygments-main/pygments/lexers/trafficscript.py +3 -3
- data/vendor/pygments-main/pygments/lexers/typoscript.py +6 -7
- data/vendor/pygments-main/pygments/lexers/typst.py +104 -0
- data/vendor/pygments-main/pygments/lexers/ul4.py +47 -5
- data/vendor/pygments-main/pygments/lexers/unicon.py +9 -7
- data/vendor/pygments-main/pygments/lexers/urbi.py +3 -3
- data/vendor/pygments-main/pygments/lexers/usd.py +6 -11
- data/vendor/pygments-main/pygments/lexers/varnish.py +5 -5
- data/vendor/pygments-main/pygments/lexers/verification.py +4 -5
- data/vendor/pygments-main/pygments/lexers/verifpal.py +65 -0
- data/vendor/pygments-main/pygments/lexers/vip.py +150 -0
- data/vendor/pygments-main/pygments/lexers/vyper.py +140 -0
- data/vendor/pygments-main/pygments/lexers/web.py +2 -1
- data/vendor/pygments-main/pygments/lexers/webassembly.py +2 -3
- data/vendor/pygments-main/pygments/lexers/webidl.py +2 -3
- data/vendor/pygments-main/pygments/lexers/webmisc.py +11 -15
- data/vendor/pygments-main/pygments/lexers/wgsl.py +6 -7
- data/vendor/pygments-main/pygments/lexers/whiley.py +2 -3
- data/vendor/pygments-main/pygments/lexers/wowtoc.py +3 -3
- data/vendor/pygments-main/pygments/lexers/wren.py +3 -4
- data/vendor/pygments-main/pygments/lexers/x10.py +6 -7
- data/vendor/pygments-main/pygments/lexers/xorg.py +2 -1
- data/vendor/pygments-main/pygments/lexers/yang.py +2 -3
- data/vendor/pygments-main/pygments/lexers/yara.py +69 -0
- data/vendor/pygments-main/pygments/lexers/zig.py +2 -1
- data/vendor/pygments-main/pygments/modeline.py +4 -4
- data/vendor/pygments-main/pygments/plugin.py +3 -19
- data/vendor/pygments-main/pygments/regexopt.py +1 -1
- data/vendor/pygments-main/pygments/scanner.py +1 -1
- data/vendor/pygments-main/pygments/sphinxext.py +38 -8
- data/vendor/pygments-main/pygments/style.py +8 -2
- data/vendor/pygments-main/pygments/styles/__init__.py +17 -59
- data/vendor/pygments-main/pygments/styles/_mapping.py +54 -0
- data/vendor/pygments-main/pygments/styles/abap.py +5 -1
- data/vendor/pygments-main/pygments/styles/algol.py +5 -1
- data/vendor/pygments-main/pygments/styles/algol_nu.py +5 -1
- data/vendor/pygments-main/pygments/styles/arduino.py +76 -72
- data/vendor/pygments-main/pygments/styles/autumn.py +6 -1
- data/vendor/pygments-main/pygments/styles/borland.py +6 -1
- data/vendor/pygments-main/pygments/styles/bw.py +6 -1
- data/vendor/pygments-main/pygments/styles/coffee.py +80 -0
- data/vendor/pygments-main/pygments/styles/colorful.py +6 -1
- data/vendor/pygments-main/pygments/styles/default.py +6 -1
- data/vendor/pygments-main/pygments/styles/dracula.py +68 -80
- data/vendor/pygments-main/pygments/styles/emacs.py +6 -1
- data/vendor/pygments-main/pygments/styles/friendly.py +6 -1
- data/vendor/pygments-main/pygments/styles/friendly_grayscale.py +6 -1
- data/vendor/pygments-main/pygments/styles/fruity.py +7 -1
- data/vendor/pygments-main/pygments/styles/gh_dark.py +7 -1
- data/vendor/pygments-main/pygments/styles/gruvbox.py +10 -1
- data/vendor/pygments-main/pygments/styles/igor.py +6 -1
- data/vendor/pygments-main/pygments/styles/inkpot.py +7 -2
- data/vendor/pygments-main/pygments/styles/lightbulb.py +110 -0
- data/vendor/pygments-main/pygments/styles/lilypond.py +8 -2
- data/vendor/pygments-main/pygments/styles/lovelace.py +16 -10
- data/vendor/pygments-main/pygments/styles/manni.py +7 -2
- data/vendor/pygments-main/pygments/styles/material.py +21 -14
- data/vendor/pygments-main/pygments/styles/monokai.py +16 -10
- data/vendor/pygments-main/pygments/styles/murphy.py +7 -2
- data/vendor/pygments-main/pygments/styles/native.py +10 -5
- data/vendor/pygments-main/pygments/styles/nord.py +9 -3
- data/vendor/pygments-main/pygments/styles/onedark.py +6 -2
- data/vendor/pygments-main/pygments/styles/paraiso_dark.py +7 -2
- data/vendor/pygments-main/pygments/styles/paraiso_light.py +7 -2
- data/vendor/pygments-main/pygments/styles/pastie.py +7 -1
- data/vendor/pygments-main/pygments/styles/perldoc.py +7 -1
- data/vendor/pygments-main/pygments/styles/rainbow_dash.py +26 -19
- data/vendor/pygments-main/pygments/styles/rrt.py +8 -2
- data/vendor/pygments-main/pygments/styles/sas.py +6 -1
- data/vendor/pygments-main/pygments/styles/solarized.py +9 -1
- data/vendor/pygments-main/pygments/styles/staroffice.py +6 -1
- data/vendor/pygments-main/pygments/styles/stata_dark.py +6 -2
- data/vendor/pygments-main/pygments/styles/stata_light.py +6 -1
- data/vendor/pygments-main/pygments/styles/tango.py +7 -3
- data/vendor/pygments-main/pygments/styles/trac.py +7 -1
- data/vendor/pygments-main/pygments/styles/vim.py +7 -1
- data/vendor/pygments-main/pygments/styles/vs.py +7 -2
- data/vendor/pygments-main/pygments/styles/xcode.py +6 -1
- data/vendor/pygments-main/pygments/styles/zenburn.py +6 -1
- data/vendor/pygments-main/pygments/token.py +2 -1
- data/vendor/pygments-main/pygments/unistring.py +5 -5
- data/vendor/pygments-main/pygments/util.py +13 -19
- data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info}/METADATA +14 -13
- data/vendor/pygments-main/pygments-2.18.0.dist-info/RECORD +663 -0
- data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info}/WHEEL +1 -2
- data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info/licenses}/AUTHORS +13 -0
- metadata +41 -17
- data/vendor/pygments-main/Pygments-2.15.1.dist-info/RECORD +0 -614
- data/vendor/pygments-main/Pygments-2.15.1.dist-info/top_level.txt +0 -1
- /data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info}/INSTALLER +0 -0
- /data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info}/REQUESTED +0 -0
- /data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info}/entry_points.txt +0 -0
- /data/vendor/pygments-main/{Pygments-2.15.1.dist-info → pygments-2.18.0.dist-info/licenses}/LICENSE +0 -0
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
Lexers for Prolog and Prolog-like languages.
|
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
|
|
@@ -25,6 +25,8 @@ class PrologLexer(RegexLexer):
|
|
25
25
|
aliases = ['prolog']
|
26
26
|
filenames = ['*.ecl', '*.prolog', '*.pro', '*.pl']
|
27
27
|
mimetypes = ['text/x-prolog']
|
28
|
+
url = 'https://en.wikipedia.org/wiki/Prolog'
|
29
|
+
version_added = ''
|
28
30
|
|
29
31
|
tokens = {
|
30
32
|
'root': [
|
@@ -78,14 +80,17 @@ class PrologLexer(RegexLexer):
|
|
78
80
|
}
|
79
81
|
|
80
82
|
def analyse_text(text):
|
81
|
-
|
83
|
+
"""Competes with IDL and Visual Prolog on *.pro"""
|
84
|
+
if ':-' in text:
|
85
|
+
# Visual Prolog also uses :-
|
86
|
+
return 0.5
|
87
|
+
else:
|
88
|
+
return 0
|
82
89
|
|
83
90
|
|
84
91
|
class LogtalkLexer(RegexLexer):
|
85
92
|
"""
|
86
93
|
For Logtalk source code.
|
87
|
-
|
88
|
-
.. versionadded:: 0.10
|
89
94
|
"""
|
90
95
|
|
91
96
|
name = 'Logtalk'
|
@@ -93,6 +98,7 @@ class LogtalkLexer(RegexLexer):
|
|
93
98
|
aliases = ['logtalk']
|
94
99
|
filenames = ['*.lgt', '*.logtalk']
|
95
100
|
mimetypes = ['text/x-logtalk']
|
101
|
+
version_added = '0.10'
|
96
102
|
|
97
103
|
tokens = {
|
98
104
|
'root': [
|
@@ -143,7 +149,7 @@ class LogtalkLexer(RegexLexer):
|
|
143
149
|
# Control constructs
|
144
150
|
(r'(ca(ll|tch)|throw)(?=[(])', Keyword),
|
145
151
|
(r'(fa(il|lse)|true|(instantiation|system)_error)\b', Keyword),
|
146
|
-
(r'(type|domain|existence|permission|representation|evaluation|resource|syntax)_error(?=[(])', Keyword),
|
152
|
+
(r'(uninstantiation|type|domain|existence|permission|representation|evaluation|resource|syntax)_error(?=[(])', Keyword),
|
147
153
|
# All solutions
|
148
154
|
(r'((bag|set)of|f(ind|or)all)(?=[(])', Keyword),
|
149
155
|
# Multi-threading predicates
|
@@ -224,13 +230,13 @@ class LogtalkLexer(RegexLexer):
|
|
224
230
|
(r'[?@]', Operator),
|
225
231
|
# Existential quantifier
|
226
232
|
(r'\^', Operator),
|
227
|
-
# Strings
|
228
|
-
(r'"(\\\\|\\[^\\]|[^"\\])*"', String),
|
229
233
|
# Punctuation
|
230
234
|
(r'[()\[\],.|]', Text),
|
231
235
|
# Atoms
|
232
236
|
(r"[a-z][a-zA-Z0-9_]*", Text),
|
233
237
|
(r"'", String, 'quoted_atom'),
|
238
|
+
# Double-quoted terms
|
239
|
+
(r'"', String, 'double_quoted_term'),
|
234
240
|
],
|
235
241
|
|
236
242
|
'quoted_atom': [
|
@@ -241,6 +247,14 @@ class LogtalkLexer(RegexLexer):
|
|
241
247
|
(r'\\', String),
|
242
248
|
],
|
243
249
|
|
250
|
+
'double_quoted_term': [
|
251
|
+
(r'""', String),
|
252
|
+
(r'"', String, '#pop'),
|
253
|
+
(r'\\([\\abfnrtv"\']|(x[a-fA-F0-9]+|[0-7]+)\\)', String.Escape),
|
254
|
+
(r'[^\\"\n]+', String),
|
255
|
+
(r'\\', String),
|
256
|
+
],
|
257
|
+
|
244
258
|
'directive': [
|
245
259
|
# Conditional compilation directives
|
246
260
|
(r'(el)?if(?=[(])', Keyword, 'root'),
|
@@ -274,8 +288,8 @@ class LogtalkLexer(RegexLexer):
|
|
274
288
|
# Atoms
|
275
289
|
(r"[a-z][a-zA-Z0-9_]*", Text),
|
276
290
|
(r"'", String, 'quoted_atom'),
|
277
|
-
#
|
278
|
-
(r'"
|
291
|
+
# Double-quoted terms
|
292
|
+
(r'"', String, 'double_quoted_term'),
|
279
293
|
# End of entity-opening directive
|
280
294
|
(r'([)]\.)', Text, 'root'),
|
281
295
|
# Scope operator
|
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
Lexer for Prometheus Query Language.
|
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
|
|
@@ -29,6 +29,7 @@ class PromQLLexer(RegexLexer):
|
|
29
29
|
url = 'https://prometheus.io/docs/prometheus/latest/querying/basics/'
|
30
30
|
aliases = ["promql"]
|
31
31
|
filenames = ["*.promql"]
|
32
|
+
version_added = ''
|
32
33
|
|
33
34
|
base_keywords = (
|
34
35
|
words(
|
@@ -0,0 +1,251 @@
|
|
1
|
+
"""
|
2
|
+
pygments.lexers.prql
|
3
|
+
~~~~~~~~~~~~~~~~~~~~
|
4
|
+
|
5
|
+
Lexer for the PRQL query language.
|
6
|
+
|
7
|
+
:copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
|
8
|
+
:license: BSD, see LICENSE for details.
|
9
|
+
"""
|
10
|
+
|
11
|
+
from pygments.lexer import RegexLexer, combined, words, include, bygroups
|
12
|
+
from pygments.token import Comment, Literal, Keyword, Name, Number, Operator, \
|
13
|
+
Punctuation, String, Text, Whitespace
|
14
|
+
|
15
|
+
__all__ = ['PrqlLexer']
|
16
|
+
|
17
|
+
|
18
|
+
class PrqlLexer(RegexLexer):
|
19
|
+
"""
|
20
|
+
For PRQL source code.
|
21
|
+
|
22
|
+
grammar: https://github.com/PRQL/prql/tree/main/grammars
|
23
|
+
"""
|
24
|
+
|
25
|
+
name = 'PRQL'
|
26
|
+
url = 'https://prql-lang.org/'
|
27
|
+
aliases = ['prql']
|
28
|
+
filenames = ['*.prql']
|
29
|
+
mimetypes = ['application/prql', 'application/x-prql']
|
30
|
+
version_added = '2.17'
|
31
|
+
|
32
|
+
builtinTypes = words((
|
33
|
+
"bool",
|
34
|
+
"int",
|
35
|
+
"int8", "int16", "int32", "int64", "int128",
|
36
|
+
"float",
|
37
|
+
"text",
|
38
|
+
"set"), suffix=r'\b')
|
39
|
+
|
40
|
+
def innerstring_rules(ttype):
|
41
|
+
return [
|
42
|
+
# the new style '{}'.format(...) string formatting
|
43
|
+
(r'\{'
|
44
|
+
r'((\w+)((\.\w+)|(\[[^\]]+\]))*)?' # field name
|
45
|
+
r'(\:(.?[<>=\^])?[-+ ]?#?0?(\d+)?,?(\.\d+)?[E-GXb-gnosx%]?)?'
|
46
|
+
r'\}', String.Interpol),
|
47
|
+
|
48
|
+
(r'[^\\\'"%{\n]+', ttype),
|
49
|
+
(r'[\'"\\]', ttype),
|
50
|
+
(r'%|(\{{1,2})', ttype)
|
51
|
+
]
|
52
|
+
|
53
|
+
def fstring_rules(ttype):
|
54
|
+
return [
|
55
|
+
(r'\}', String.Interpol),
|
56
|
+
(r'\{', String.Interpol, 'expr-inside-fstring'),
|
57
|
+
(r'[^\\\'"{}\n]+', ttype),
|
58
|
+
(r'[\'"\\]', ttype),
|
59
|
+
]
|
60
|
+
|
61
|
+
tokens = {
|
62
|
+
'root': [
|
63
|
+
|
64
|
+
# Comments
|
65
|
+
(r'#!.*', String.Doc),
|
66
|
+
(r'#.*', Comment.Single),
|
67
|
+
|
68
|
+
# Whitespace
|
69
|
+
(r'\s+', Whitespace),
|
70
|
+
|
71
|
+
# Modules
|
72
|
+
(r'^(\s*)(module)(\s*)',
|
73
|
+
bygroups(Whitespace, Keyword.Namespace, Whitespace),
|
74
|
+
'imports'),
|
75
|
+
|
76
|
+
(builtinTypes, Keyword.Type),
|
77
|
+
|
78
|
+
# Main
|
79
|
+
(r'^prql ', Keyword.Reserved),
|
80
|
+
|
81
|
+
('let', Keyword.Declaration),
|
82
|
+
|
83
|
+
include('keywords'),
|
84
|
+
include('expr'),
|
85
|
+
|
86
|
+
# Transforms
|
87
|
+
(r'^[A-Za-z_][a-zA-Z0-9_]*', Keyword),
|
88
|
+
],
|
89
|
+
'expr': [
|
90
|
+
# non-raw f-strings
|
91
|
+
('(f)(""")', bygroups(String.Affix, String.Double),
|
92
|
+
combined('fstringescape', 'tdqf')),
|
93
|
+
("(f)(''')", bygroups(String.Affix, String.Single),
|
94
|
+
combined('fstringescape', 'tsqf')),
|
95
|
+
('(f)(")', bygroups(String.Affix, String.Double),
|
96
|
+
combined('fstringescape', 'dqf')),
|
97
|
+
("(f)(')", bygroups(String.Affix, String.Single),
|
98
|
+
combined('fstringescape', 'sqf')),
|
99
|
+
|
100
|
+
# non-raw s-strings
|
101
|
+
('(s)(""")', bygroups(String.Affix, String.Double),
|
102
|
+
combined('stringescape', 'tdqf')),
|
103
|
+
("(s)(''')", bygroups(String.Affix, String.Single),
|
104
|
+
combined('stringescape', 'tsqf')),
|
105
|
+
('(s)(")', bygroups(String.Affix, String.Double),
|
106
|
+
combined('stringescape', 'dqf')),
|
107
|
+
("(s)(')", bygroups(String.Affix, String.Single),
|
108
|
+
combined('stringescape', 'sqf')),
|
109
|
+
|
110
|
+
# raw strings
|
111
|
+
('(?i)(r)(""")',
|
112
|
+
bygroups(String.Affix, String.Double), 'tdqs'),
|
113
|
+
("(?i)(r)(''')",
|
114
|
+
bygroups(String.Affix, String.Single), 'tsqs'),
|
115
|
+
('(?i)(r)(")',
|
116
|
+
bygroups(String.Affix, String.Double), 'dqs'),
|
117
|
+
("(?i)(r)(')",
|
118
|
+
bygroups(String.Affix, String.Single), 'sqs'),
|
119
|
+
|
120
|
+
# non-raw strings
|
121
|
+
('"""', String.Double, combined('stringescape', 'tdqs')),
|
122
|
+
("'''", String.Single, combined('stringescape', 'tsqs')),
|
123
|
+
('"', String.Double, combined('stringescape', 'dqs')),
|
124
|
+
("'", String.Single, combined('stringescape', 'sqs')),
|
125
|
+
|
126
|
+
# Time and dates
|
127
|
+
(r'@\d{4}-\d{2}-\d{2}T\d{2}(:\d{2})?(:\d{2})?(\.\d{1,6})?(Z|[+-]\d{1,2}(:\d{1,2})?)?', Literal.Date),
|
128
|
+
(r'@\d{4}-\d{2}-\d{2}', Literal.Date),
|
129
|
+
(r'@\d{2}(:\d{2})?(:\d{2})?(\.\d{1,6})?(Z|[+-]\d{1,2}(:\d{1,2})?)?', Literal.Date),
|
130
|
+
|
131
|
+
(r'[^\S\n]+', Text),
|
132
|
+
include('numbers'),
|
133
|
+
(r'->|=>|==|!=|>=|<=|~=|&&|\|\||\?\?|\/\/', Operator),
|
134
|
+
(r'[-~+/*%=<>&^|.@]', Operator),
|
135
|
+
(r'[]{}:(),;[]', Punctuation),
|
136
|
+
include('functions'),
|
137
|
+
|
138
|
+
# Variable Names
|
139
|
+
(r'[A-Za-z_][a-zA-Z0-9_]*', Name.Variable),
|
140
|
+
],
|
141
|
+
'numbers': [
|
142
|
+
(r'(\d(?:_?\d)*\.(?:\d(?:_?\d)*)?|(?:\d(?:_?\d)*)?\.\d(?:_?\d)*)'
|
143
|
+
r'([eE][+-]?\d(?:_?\d)*)?', Number.Float),
|
144
|
+
(r'\d(?:_?\d)*[eE][+-]?\d(?:_?\d)*j?', Number.Float),
|
145
|
+
(r'0[oO](?:_?[0-7])+', Number.Oct),
|
146
|
+
(r'0[bB](?:_?[01])+', Number.Bin),
|
147
|
+
(r'0[xX](?:_?[a-fA-F0-9])+', Number.Hex),
|
148
|
+
(r'\d(?:_?\d)*', Number.Integer),
|
149
|
+
],
|
150
|
+
'fstringescape': [
|
151
|
+
include('stringescape'),
|
152
|
+
],
|
153
|
+
'bytesescape': [
|
154
|
+
(r'\\([\\bfnrt"\']|\n|x[a-fA-F0-9]{2}|[0-7]{1,3})', String.Escape)
|
155
|
+
],
|
156
|
+
'stringescape': [
|
157
|
+
(r'\\(N\{.*?\}|u\{[a-fA-F0-9]{1,6}\})', String.Escape),
|
158
|
+
include('bytesescape')
|
159
|
+
],
|
160
|
+
'fstrings-single': fstring_rules(String.Single),
|
161
|
+
'fstrings-double': fstring_rules(String.Double),
|
162
|
+
'strings-single': innerstring_rules(String.Single),
|
163
|
+
'strings-double': innerstring_rules(String.Double),
|
164
|
+
'dqf': [
|
165
|
+
(r'"', String.Double, '#pop'),
|
166
|
+
(r'\\\\|\\"|\\\n', String.Escape), # included here for raw strings
|
167
|
+
include('fstrings-double')
|
168
|
+
],
|
169
|
+
'sqf': [
|
170
|
+
(r"'", String.Single, '#pop'),
|
171
|
+
(r"\\\\|\\'|\\\n", String.Escape), # included here for raw strings
|
172
|
+
include('fstrings-single')
|
173
|
+
],
|
174
|
+
'dqs': [
|
175
|
+
(r'"', String.Double, '#pop'),
|
176
|
+
(r'\\\\|\\"|\\\n', String.Escape), # included here for raw strings
|
177
|
+
include('strings-double')
|
178
|
+
],
|
179
|
+
'sqs': [
|
180
|
+
(r"'", String.Single, '#pop'),
|
181
|
+
(r"\\\\|\\'|\\\n", String.Escape), # included here for raw strings
|
182
|
+
include('strings-single')
|
183
|
+
],
|
184
|
+
'tdqf': [
|
185
|
+
(r'"""', String.Double, '#pop'),
|
186
|
+
include('fstrings-double'),
|
187
|
+
(r'\n', String.Double)
|
188
|
+
],
|
189
|
+
'tsqf': [
|
190
|
+
(r"'''", String.Single, '#pop'),
|
191
|
+
include('fstrings-single'),
|
192
|
+
(r'\n', String.Single)
|
193
|
+
],
|
194
|
+
'tdqs': [
|
195
|
+
(r'"""', String.Double, '#pop'),
|
196
|
+
include('strings-double'),
|
197
|
+
(r'\n', String.Double)
|
198
|
+
],
|
199
|
+
'tsqs': [
|
200
|
+
(r"'''", String.Single, '#pop'),
|
201
|
+
include('strings-single'),
|
202
|
+
(r'\n', String.Single)
|
203
|
+
],
|
204
|
+
|
205
|
+
'expr-inside-fstring': [
|
206
|
+
(r'[{([]', Punctuation, 'expr-inside-fstring-inner'),
|
207
|
+
# without format specifier
|
208
|
+
(r'(=\s*)?' # debug (https://bugs.python.org/issue36817)
|
209
|
+
r'\}', String.Interpol, '#pop'),
|
210
|
+
# with format specifier
|
211
|
+
# we'll catch the remaining '}' in the outer scope
|
212
|
+
(r'(=\s*)?' # debug (https://bugs.python.org/issue36817)
|
213
|
+
r':', String.Interpol, '#pop'),
|
214
|
+
(r'\s+', Whitespace), # allow new lines
|
215
|
+
include('expr'),
|
216
|
+
],
|
217
|
+
'expr-inside-fstring-inner': [
|
218
|
+
(r'[{([]', Punctuation, 'expr-inside-fstring-inner'),
|
219
|
+
(r'[])}]', Punctuation, '#pop'),
|
220
|
+
(r'\s+', Whitespace), # allow new lines
|
221
|
+
include('expr'),
|
222
|
+
],
|
223
|
+
'keywords': [
|
224
|
+
(words((
|
225
|
+
'into', 'case', 'type', 'module', 'internal',
|
226
|
+
), suffix=r'\b'),
|
227
|
+
Keyword),
|
228
|
+
(words(('true', 'false', 'null'), suffix=r'\b'), Keyword.Constant),
|
229
|
+
],
|
230
|
+
'functions': [
|
231
|
+
(words((
|
232
|
+
"min", "max", "sum", "average", "stddev", "every", "any",
|
233
|
+
"concat_array", "count", "lag", "lead", "first", "last",
|
234
|
+
"rank", "rank_dense", "row_number", "round", "as", "in",
|
235
|
+
"tuple_every", "tuple_map", "tuple_zip", "_eq", "_is_null",
|
236
|
+
"from_text", "lower", "upper", "read_parquet", "read_csv"),
|
237
|
+
suffix=r'\b'),
|
238
|
+
Name.Function),
|
239
|
+
],
|
240
|
+
|
241
|
+
'comment': [
|
242
|
+
(r'-(?!\})', Comment.Multiline),
|
243
|
+
(r'\{-', Comment.Multiline, 'comment'),
|
244
|
+
(r'[^-}]', Comment.Multiline),
|
245
|
+
(r'-\}', Comment.Multiline, '#pop'),
|
246
|
+
],
|
247
|
+
|
248
|
+
'imports': [
|
249
|
+
(r'\w+(\.\w+)*', Name.Class, '#pop'),
|
250
|
+
],
|
251
|
+
}
|
@@ -0,0 +1,119 @@
|
|
1
|
+
"""
|
2
|
+
pygments.lexers.ptx
|
3
|
+
~~~~~~~~~~~~~~~~~~~
|
4
|
+
|
5
|
+
Lexer for other PTX language.
|
6
|
+
|
7
|
+
:copyright: Copyright 2006-2024 by the Pygments team, see AUTHORS.
|
8
|
+
:license: BSD, see LICENSE for details.
|
9
|
+
"""
|
10
|
+
|
11
|
+
from pygments.lexer import RegexLexer, include, words
|
12
|
+
from pygments.token import Comment, Keyword, Name, String, Number, \
|
13
|
+
Punctuation, Whitespace, Operator
|
14
|
+
|
15
|
+
__all__ = ["PtxLexer"]
|
16
|
+
|
17
|
+
|
18
|
+
class PtxLexer(RegexLexer):
|
19
|
+
"""
|
20
|
+
For NVIDIA `PTX <https://docs.nvidia.com/cuda/parallel-thread-execution/>`_
|
21
|
+
source.
|
22
|
+
"""
|
23
|
+
name = 'PTX'
|
24
|
+
url = "https://docs.nvidia.com/cuda/parallel-thread-execution/"
|
25
|
+
filenames = ['*.ptx']
|
26
|
+
aliases = ['ptx']
|
27
|
+
mimetypes = ['text/x-ptx']
|
28
|
+
version_added = '2.16'
|
29
|
+
|
30
|
+
#: optional Comment or Whitespace
|
31
|
+
string = r'"[^"]*?"'
|
32
|
+
followsym = r'[a-zA-Z0-9_$]'
|
33
|
+
identifier = r'([-a-zA-Z$._][\w\-$.]*|' + string + ')'
|
34
|
+
block_label = r'(' + identifier + r'|(\d+))'
|
35
|
+
|
36
|
+
tokens = {
|
37
|
+
'root': [
|
38
|
+
include('whitespace'),
|
39
|
+
|
40
|
+
(block_label + r'\s*:', Name.Label),
|
41
|
+
|
42
|
+
include('keyword'),
|
43
|
+
|
44
|
+
(r'%' + identifier, Name.Variable),
|
45
|
+
(r'%\d+', Name.Variable.Anonymous),
|
46
|
+
(r'c?' + string, String),
|
47
|
+
(identifier, Name.Variable),
|
48
|
+
(r';', Punctuation),
|
49
|
+
(r'[*+-/]', Operator),
|
50
|
+
|
51
|
+
(r'0[xX][a-fA-F0-9]+', Number),
|
52
|
+
(r'-?\d+(?:[.]\d+)?(?:[eE][-+]?\d+(?:[.]\d+)?)?', Number),
|
53
|
+
|
54
|
+
(r'[=<>{}\[\]()*.,!]|x\b', Punctuation)
|
55
|
+
|
56
|
+
],
|
57
|
+
'whitespace': [
|
58
|
+
(r'(\n|\s+)+', Whitespace),
|
59
|
+
(r'//.*?\n', Comment)
|
60
|
+
],
|
61
|
+
|
62
|
+
'keyword': [
|
63
|
+
# Instruction keywords
|
64
|
+
(words((
|
65
|
+
'abs', 'discard', 'min', 'shf', 'vadd',
|
66
|
+
'activemask', 'div', 'mma', 'shfl', 'vadd2',
|
67
|
+
'add', 'dp2a', 'mov', 'shl', 'vadd4',
|
68
|
+
'addc', 'dp4a', 'movmatrix', 'shr', 'vavrg2',
|
69
|
+
'alloca', 'elect', 'mul', 'sin', 'vavrg4',
|
70
|
+
'and', 'ex2', 'mul24', 'slct', 'vmad',
|
71
|
+
'applypriority', 'exit', 'multimem', 'sqrt', 'vmax',
|
72
|
+
'atom', 'fence', 'nanosleep', 'st', 'vmax2',
|
73
|
+
'bar', 'fma', 'neg', 'stackrestore', 'vmax4',
|
74
|
+
'barrier', 'fns', 'not', 'stacksave', 'vmin',
|
75
|
+
'bfe', 'getctarank', 'or', 'stmatrix', 'vmin2',
|
76
|
+
'bfi', 'griddepcontrol', 'pmevent', 'sub', 'vmin4',
|
77
|
+
'bfind', 'isspacep', 'popc', 'subc', 'vote',
|
78
|
+
'bmsk', 'istypep', 'prefetch', 'suld', 'vset',
|
79
|
+
'bra', 'ld', 'prefetchu', 'suq', 'vset2',
|
80
|
+
'brev', 'ldmatrix', 'prmt', 'sured', 'vset4',
|
81
|
+
'brkpt', 'ldu', 'rcp', 'sust', 'vshl',
|
82
|
+
'brx', 'lg2', 'red', 'szext', 'vshr',
|
83
|
+
'call', 'lop3', 'redux', 'tanh', 'vsub',
|
84
|
+
'clz', 'mad', 'rem', 'testp', 'vsub2',
|
85
|
+
'cnot', 'mad24', 'ret', 'tex', 'vsub4',
|
86
|
+
'copysign', 'madc', 'rsqrt', 'tld4', 'wgmma',
|
87
|
+
'cos', 'mapa', 'sad', 'trap', 'wmma',
|
88
|
+
'cp', 'match', 'selp', 'txq', 'xor',
|
89
|
+
'createpolicy', 'max', 'set', 'vabsdiff', 'cvt',
|
90
|
+
'mbarrier', 'setmaxnreg', 'vabsdiff2', 'cvta',
|
91
|
+
'membar', 'setp', 'vabsdiff4')), Keyword),
|
92
|
+
# State Spaces and Suffixes
|
93
|
+
(words((
|
94
|
+
'reg', '.sreg', '.const', '.global',
|
95
|
+
'.local', '.param', '.shared', '.tex',
|
96
|
+
'.wide', '.loc'
|
97
|
+
)), Keyword.Pseudo),
|
98
|
+
# PTX Directives
|
99
|
+
(words((
|
100
|
+
'.address_size', '.explicitcluster', '.maxnreg', '.section',
|
101
|
+
'.alias', '.extern', '.maxntid', '.shared',
|
102
|
+
'.align', '.file', '.minnctapersm', '.sreg',
|
103
|
+
'.branchtargets', '.func', '.noreturn', '.target',
|
104
|
+
'.callprototype', '.global', '.param', '.tex',
|
105
|
+
'.calltargets', '.loc', '.pragma', '.version',
|
106
|
+
'.common', '.local', '.reg', '.visible',
|
107
|
+
'.const', '.maxclusterrank', '.reqnctapercluster', '.weak',
|
108
|
+
'.entry', '.maxnctapersm', '.reqntid')), Keyword.Reserved),
|
109
|
+
# Fundamental Types
|
110
|
+
(words((
|
111
|
+
'.s8', '.s16', '.s32', '.s64',
|
112
|
+
'.u8', '.u16', '.u32', '.u64',
|
113
|
+
'.f16', '.f16x2', '.f32', '.f64',
|
114
|
+
'.b8', '.b16', '.b32', '.b64',
|
115
|
+
'.pred'
|
116
|
+
)), Keyword.Type)
|
117
|
+
],
|
118
|
+
|
119
|
+
}
|
@@ -4,15 +4,14 @@
|
|
4
4
|
|
5
5
|
Lexers for Python and related languages.
|
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
|
|
11
|
-
import re
|
12
11
|
import keyword
|
13
12
|
|
14
|
-
from pygments.lexer import DelegatingLexer,
|
15
|
-
bygroups, using, default, words, combined,
|
13
|
+
from pygments.lexer import DelegatingLexer, RegexLexer, include, \
|
14
|
+
bygroups, using, default, words, combined, this
|
16
15
|
from pygments.util import get_bool_opt, shebang_matches
|
17
16
|
from pygments.token import Text, Comment, Operator, Keyword, Name, String, \
|
18
17
|
Number, Punctuation, Generic, Other, Error, Whitespace
|
@@ -27,16 +26,14 @@ class PythonLexer(RegexLexer):
|
|
27
26
|
"""
|
28
27
|
For Python source code (version 3.x).
|
29
28
|
|
30
|
-
.. versionadded:: 0.10
|
31
|
-
|
32
29
|
.. versionchanged:: 2.5
|
33
30
|
This is now the default ``PythonLexer``. It is still available as the
|
34
31
|
alias ``Python3Lexer``.
|
35
32
|
"""
|
36
33
|
|
37
34
|
name = 'Python'
|
38
|
-
url = '
|
39
|
-
aliases = ['python', 'py', 'sage', 'python3', 'py3']
|
35
|
+
url = 'https://www.python.org'
|
36
|
+
aliases = ['python', 'py', 'sage', 'python3', 'py3', 'bazel', 'starlark']
|
40
37
|
filenames = [
|
41
38
|
'*.py',
|
42
39
|
'*.pyw',
|
@@ -61,8 +58,9 @@ class PythonLexer(RegexLexer):
|
|
61
58
|
]
|
62
59
|
mimetypes = ['text/x-python', 'application/x-python',
|
63
60
|
'text/x-python3', 'application/x-python3']
|
61
|
+
version_added = '0.10'
|
64
62
|
|
65
|
-
uni_name = "[
|
63
|
+
uni_name = f"[{uni.xid_start}][{uni.xid_continue}]*"
|
66
64
|
|
67
65
|
def innerstring_rules(ttype):
|
68
66
|
return [
|
@@ -224,7 +222,8 @@ class PythonLexer(RegexLexer):
|
|
224
222
|
r'(match|case)\b' # a possible keyword
|
225
223
|
r'(?![ \t]*(?:' # not followed by...
|
226
224
|
r'[:,;=^&|@~)\]}]|(?:' + # characters and keywords that mean this isn't
|
227
|
-
|
225
|
+
# pattern matching (but None/True/False is ok)
|
226
|
+
r'|'.join(k for k in keyword.kwlist if k[0].islower()) + r')\b))',
|
228
227
|
bygroups(Text, Keyword), 'soft-keywords-inner'),
|
229
228
|
],
|
230
229
|
'soft-keywords-inner': [
|
@@ -425,10 +424,11 @@ class Python2Lexer(RegexLexer):
|
|
425
424
|
"""
|
426
425
|
|
427
426
|
name = 'Python 2.x'
|
428
|
-
url = '
|
427
|
+
url = 'https://www.python.org'
|
429
428
|
aliases = ['python2', 'py2']
|
430
429
|
filenames = [] # now taken over by PythonLexer (3.x)
|
431
430
|
mimetypes = ['text/x-python2', 'application/x-python2']
|
431
|
+
version_added = ''
|
432
432
|
|
433
433
|
def innerstring_rules(ttype):
|
434
434
|
return [
|
@@ -637,7 +637,7 @@ class Python2Lexer(RegexLexer):
|
|
637
637
|
|
638
638
|
class _PythonConsoleLexerBase(RegexLexer):
|
639
639
|
name = 'Python console session'
|
640
|
-
aliases = ['pycon']
|
640
|
+
aliases = ['pycon', 'python-console']
|
641
641
|
mimetypes = ['text/x-python-doctest']
|
642
642
|
|
643
643
|
"""Auxiliary lexer for `PythonConsoleLexer`.
|
@@ -696,8 +696,10 @@ class PythonConsoleLexer(DelegatingLexer):
|
|
696
696
|
"""
|
697
697
|
|
698
698
|
name = 'Python console session'
|
699
|
-
aliases = ['pycon']
|
699
|
+
aliases = ['pycon', 'python-console']
|
700
700
|
mimetypes = ['text/x-python-doctest']
|
701
|
+
url = 'https://python.org'
|
702
|
+
version_added = ''
|
701
703
|
|
702
704
|
def __init__(self, **options):
|
703
705
|
python3 = get_bool_opt(options, 'python3', True)
|
@@ -721,8 +723,6 @@ class PythonTracebackLexer(RegexLexer):
|
|
721
723
|
"""
|
722
724
|
For Python 3.x tracebacks, with support for chained exceptions.
|
723
725
|
|
724
|
-
.. versionadded:: 1.0
|
725
|
-
|
726
726
|
.. versionchanged:: 2.5
|
727
727
|
This is now the default ``PythonTracebackLexer``. It is still available
|
728
728
|
as the alias ``Python3TracebackLexer``.
|
@@ -732,6 +732,8 @@ class PythonTracebackLexer(RegexLexer):
|
|
732
732
|
aliases = ['pytb', 'py3tb']
|
733
733
|
filenames = ['*.pytb', '*.py3tb']
|
734
734
|
mimetypes = ['text/x-python-traceback', 'text/x-python3-traceback']
|
735
|
+
url = 'https://python.org'
|
736
|
+
version_added = '1.0'
|
735
737
|
|
736
738
|
tokens = {
|
737
739
|
'root': [
|
@@ -778,8 +780,6 @@ class Python2TracebackLexer(RegexLexer):
|
|
778
780
|
"""
|
779
781
|
For Python tracebacks.
|
780
782
|
|
781
|
-
.. versionadded:: 0.7
|
782
|
-
|
783
783
|
.. versionchanged:: 2.5
|
784
784
|
This class has been renamed from ``PythonTracebackLexer``.
|
785
785
|
``PythonTracebackLexer`` now refers to the Python 3 variant.
|
@@ -789,6 +789,8 @@ class Python2TracebackLexer(RegexLexer):
|
|
789
789
|
aliases = ['py2tb']
|
790
790
|
filenames = ['*.py2tb']
|
791
791
|
mimetypes = ['text/x-python2-traceback']
|
792
|
+
url = 'https://python.org'
|
793
|
+
version_added = '0.7'
|
792
794
|
|
793
795
|
tokens = {
|
794
796
|
'root': [
|
@@ -825,15 +827,14 @@ class Python2TracebackLexer(RegexLexer):
|
|
825
827
|
class CythonLexer(RegexLexer):
|
826
828
|
"""
|
827
829
|
For Pyrex and Cython source code.
|
828
|
-
|
829
|
-
.. versionadded:: 1.1
|
830
830
|
"""
|
831
831
|
|
832
832
|
name = 'Cython'
|
833
|
-
url = '
|
833
|
+
url = 'https://cython.org'
|
834
834
|
aliases = ['cython', 'pyx', 'pyrex']
|
835
835
|
filenames = ['*.pyx', '*.pxd', '*.pxi']
|
836
836
|
mimetypes = ['text/x-cython', 'application/x-cython']
|
837
|
+
version_added = '1.1'
|
837
838
|
|
838
839
|
tokens = {
|
839
840
|
'root': [
|
@@ -1007,13 +1008,13 @@ class DgLexer(RegexLexer):
|
|
1007
1008
|
Lexer for dg,
|
1008
1009
|
a functional and object-oriented programming language
|
1009
1010
|
running on the CPython 3 VM.
|
1010
|
-
|
1011
|
-
.. versionadded:: 1.6
|
1012
1011
|
"""
|
1013
1012
|
name = 'dg'
|
1014
1013
|
aliases = ['dg']
|
1015
1014
|
filenames = ['*.dg']
|
1016
1015
|
mimetypes = ['text/x-dg']
|
1016
|
+
url = 'http://pyos.github.io/dg'
|
1017
|
+
version_added = '1.6'
|
1017
1018
|
|
1018
1019
|
tokens = {
|
1019
1020
|
'root': [
|
@@ -1104,13 +1105,12 @@ class DgLexer(RegexLexer):
|
|
1104
1105
|
class NumPyLexer(PythonLexer):
|
1105
1106
|
"""
|
1106
1107
|
A Python lexer recognizing Numerical Python builtins.
|
1107
|
-
|
1108
|
-
.. versionadded:: 0.10
|
1109
1108
|
"""
|
1110
1109
|
|
1111
1110
|
name = 'NumPy'
|
1112
1111
|
url = 'https://numpy.org/'
|
1113
1112
|
aliases = ['numpy']
|
1113
|
+
version_added = '0.10'
|
1114
1114
|
|
1115
1115
|
# override the mimetypes to not inherit them from python
|
1116
1116
|
mimetypes = []
|