pygments.rb 2.3.1 → 2.4.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 +1 -1
- data/.rubocop.yml +7 -0
- data/CHANGELOG.adoc +4 -0
- data/README.adoc +1 -1
- data/bench.rb +1 -1
- data/lib/pygments/popen.rb +3 -7
- data/lib/pygments/version.rb +1 -1
- data/pygments.rb.gemspec +2 -2
- data/test/test_pygments.rb +0 -19
- data/vendor/pygments-main/{Pygments-2.10.0.dist-info → Pygments-2.15.1.dist-info}/AUTHORS +21 -1
- data/vendor/pygments-main/{Pygments-2.10.0.dist-info → Pygments-2.15.1.dist-info}/LICENSE +1 -1
- data/vendor/pygments-main/{Pygments-2.10.0.dist-info → Pygments-2.15.1.dist-info}/METADATA +19 -11
- data/vendor/pygments-main/Pygments-2.15.1.dist-info/RECORD +614 -0
- data/vendor/pygments-main/{Pygments-2.10.0.dist-info → Pygments-2.15.1.dist-info}/WHEEL +1 -1
- data/vendor/pygments-main/{Pygments-2.10.0.dist-info → Pygments-2.15.1.dist-info}/entry_points.txt +0 -1
- data/vendor/pygments-main/bin/pygmentize +1 -1
- data/vendor/pygments-main/pygments/__init__.py +20 -22
- data/vendor/pygments-main/pygments/__main__.py +1 -1
- data/vendor/pygments-main/pygments/cmdline.py +74 -8
- 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 +6 -3
- data/vendor/pygments-main/pygments/formatter.py +41 -11
- data/vendor/pygments-main/pygments/formatters/__init__.py +21 -16
- data/vendor/pygments-main/pygments/formatters/_mapping.py +5 -65
- data/vendor/pygments-main/pygments/formatters/bbcode.py +1 -1
- data/vendor/pygments-main/pygments/formatters/groff.py +170 -0
- data/vendor/pygments-main/pygments/formatters/html.py +54 -32
- data/vendor/pygments-main/pygments/formatters/img.py +9 -5
- data/vendor/pygments-main/pygments/formatters/irc.py +6 -33
- data/vendor/pygments-main/pygments/formatters/latex.py +24 -14
- 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 -3
- data/vendor/pygments-main/pygments/formatters/terminal256.py +2 -4
- data/vendor/pygments-main/pygments/lexer.py +101 -32
- data/vendor/pygments-main/pygments/lexers/__init__.py +50 -29
- data/vendor/pygments-main/pygments/lexers/_ada_builtins.py +103 -0
- 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 +21 -6
- data/vendor/pygments-main/pygments/lexers/_css_builtins.py +558 -0
- data/vendor/pygments-main/pygments/lexers/_julia_builtins.py +10 -0
- data/vendor/pygments-main/pygments/lexers/_lasso_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_lilypond_builtins.py +4932 -0
- data/vendor/pygments-main/pygments/lexers/_lua_builtins.py +11 -18
- data/vendor/pygments-main/pygments/lexers/_mapping.py +71 -82
- data/vendor/pygments-main/pygments/lexers/_mql_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_mysql_builtins.py +58 -4
- data/vendor/pygments-main/pygments/lexers/_openedge_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_php_builtins.py +408 -1835
- data/vendor/pygments-main/pygments/lexers/_postgres_builtins.py +70 -8
- data/vendor/pygments-main/pygments/lexers/_qlik_builtins.py +666 -0
- data/vendor/pygments-main/pygments/lexers/_scheme_builtins.py +1609 -0
- data/vendor/pygments-main/pygments/lexers/_scilab_builtins.py +3 -3
- data/vendor/pygments-main/pygments/lexers/_sourcemod_builtins.py +9 -18
- data/vendor/pygments-main/pygments/lexers/_stan_builtins.py +185 -94
- 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 +15 -14
- data/vendor/pygments-main/pygments/lexers/ada.py +144 -0
- data/vendor/pygments-main/pygments/lexers/agile.py +1 -1
- data/vendor/pygments-main/pygments/lexers/algebra.py +72 -9
- data/vendor/pygments-main/pygments/lexers/ambient.py +8 -7
- data/vendor/pygments-main/pygments/lexers/amdgpu.py +4 -3
- data/vendor/pygments-main/pygments/lexers/ampl.py +10 -8
- data/vendor/pygments-main/pygments/lexers/apdlexer.py +164 -20
- data/vendor/pygments-main/pygments/lexers/apl.py +6 -5
- data/vendor/pygments-main/pygments/lexers/archetype.py +23 -21
- data/vendor/pygments-main/pygments/lexers/arrow.py +10 -9
- data/vendor/pygments-main/pygments/lexers/arturo.py +250 -0
- data/vendor/pygments-main/pygments/lexers/asc.py +9 -5
- data/vendor/pygments-main/pygments/lexers/asm.py +68 -63
- data/vendor/pygments-main/pygments/lexers/automation.py +7 -5
- data/vendor/pygments-main/pygments/lexers/bare.py +20 -21
- data/vendor/pygments-main/pygments/lexers/basic.py +45 -41
- data/vendor/pygments-main/pygments/lexers/bdd.py +58 -0
- data/vendor/pygments-main/pygments/lexers/berry.py +99 -0
- data/vendor/pygments-main/pygments/lexers/bibtex.py +6 -6
- data/vendor/pygments-main/pygments/lexers/boa.py +4 -8
- data/vendor/pygments-main/pygments/lexers/business.py +18 -18
- data/vendor/pygments-main/pygments/lexers/c_cpp.py +80 -40
- data/vendor/pygments-main/pygments/lexers/c_like.py +21 -19
- data/vendor/pygments-main/pygments/lexers/capnproto.py +6 -8
- data/vendor/pygments-main/pygments/lexers/carbon.py +96 -0
- data/vendor/pygments-main/pygments/lexers/cddl.py +16 -33
- data/vendor/pygments-main/pygments/lexers/chapel.py +14 -9
- data/vendor/pygments-main/pygments/lexers/clean.py +3 -2
- data/vendor/pygments-main/pygments/lexers/comal.py +80 -0
- data/vendor/pygments-main/pygments/lexers/compiled.py +3 -2
- data/vendor/pygments-main/pygments/lexers/configs.py +235 -120
- data/vendor/pygments-main/pygments/lexers/console.py +5 -4
- data/vendor/pygments-main/pygments/lexers/cplint.py +44 -0
- data/vendor/pygments-main/pygments/lexers/crystal.py +22 -23
- data/vendor/pygments-main/pygments/lexers/csound.py +19 -17
- data/vendor/pygments-main/pygments/lexers/css.py +67 -159
- data/vendor/pygments-main/pygments/lexers/d.py +15 -12
- data/vendor/pygments-main/pygments/lexers/dalvik.py +14 -11
- data/vendor/pygments-main/pygments/lexers/data.py +119 -49
- data/vendor/pygments-main/pygments/lexers/dax.py +136 -0
- data/vendor/pygments-main/pygments/lexers/devicetree.py +9 -8
- data/vendor/pygments-main/pygments/lexers/diff.py +23 -19
- data/vendor/pygments-main/pygments/lexers/dotnet.py +216 -81
- data/vendor/pygments-main/pygments/lexers/dsls.py +86 -64
- data/vendor/pygments-main/pygments/lexers/dylan.py +16 -15
- data/vendor/pygments-main/pygments/lexers/ecl.py +46 -38
- data/vendor/pygments-main/pygments/lexers/eiffel.py +15 -10
- data/vendor/pygments-main/pygments/lexers/elm.py +12 -8
- data/vendor/pygments-main/pygments/lexers/elpi.py +165 -0
- data/vendor/pygments-main/pygments/lexers/email.py +21 -39
- data/vendor/pygments-main/pygments/lexers/erlang.py +21 -22
- data/vendor/pygments-main/pygments/lexers/esoteric.py +28 -30
- data/vendor/pygments-main/pygments/lexers/ezhil.py +10 -9
- data/vendor/pygments-main/pygments/lexers/factor.py +104 -83
- data/vendor/pygments-main/pygments/lexers/fantom.py +31 -29
- data/vendor/pygments-main/pygments/lexers/felix.py +18 -14
- data/vendor/pygments-main/pygments/lexers/fift.py +67 -0
- data/vendor/pygments-main/pygments/lexers/floscript.py +7 -7
- data/vendor/pygments-main/pygments/lexers/forth.py +8 -6
- data/vendor/pygments-main/pygments/lexers/fortran.py +16 -11
- data/vendor/pygments-main/pygments/lexers/foxpro.py +2 -2
- data/vendor/pygments-main/pygments/lexers/freefem.py +7 -10
- data/vendor/pygments-main/pygments/lexers/func.py +108 -0
- data/vendor/pygments-main/pygments/lexers/functional.py +1 -1
- data/vendor/pygments-main/pygments/lexers/futhark.py +12 -17
- data/vendor/pygments-main/pygments/lexers/gcodelexer.py +1 -2
- data/vendor/pygments-main/pygments/lexers/gdscript.py +76 -233
- data/vendor/pygments-main/pygments/lexers/go.py +12 -14
- data/vendor/pygments-main/pygments/lexers/grammar_notation.py +22 -26
- data/vendor/pygments-main/pygments/lexers/graph.py +36 -15
- data/vendor/pygments-main/pygments/lexers/graphics.py +37 -38
- data/vendor/pygments-main/pygments/lexers/graphviz.py +2 -1
- data/vendor/pygments-main/pygments/lexers/gsql.py +39 -27
- data/vendor/pygments-main/pygments/lexers/haskell.py +73 -71
- data/vendor/pygments-main/pygments/lexers/haxe.py +13 -11
- data/vendor/pygments-main/pygments/lexers/hdl.py +31 -34
- data/vendor/pygments-main/pygments/lexers/hexdump.py +21 -21
- data/vendor/pygments-main/pygments/lexers/html.py +11 -19
- data/vendor/pygments-main/pygments/lexers/idl.py +10 -5
- data/vendor/pygments-main/pygments/lexers/igor.py +3 -2
- data/vendor/pygments-main/pygments/lexers/inferno.py +9 -8
- data/vendor/pygments-main/pygments/lexers/installers.py +39 -33
- data/vendor/pygments-main/pygments/lexers/int_fiction.py +35 -20
- data/vendor/pygments-main/pygments/lexers/iolang.py +9 -9
- data/vendor/pygments-main/pygments/lexers/j.py +20 -13
- data/vendor/pygments-main/pygments/lexers/javascript.py +183 -149
- data/vendor/pygments-main/pygments/lexers/jmespath.py +68 -0
- data/vendor/pygments-main/pygments/lexers/jslt.py +4 -3
- data/vendor/pygments-main/pygments/lexers/jsonnet.py +168 -0
- data/vendor/pygments-main/pygments/lexers/julia.py +44 -32
- data/vendor/pygments-main/pygments/lexers/jvm.py +161 -140
- data/vendor/pygments-main/pygments/lexers/kuin.py +93 -59
- data/vendor/pygments-main/pygments/lexers/lilypond.py +226 -0
- data/vendor/pygments-main/pygments/lexers/lisp.py +244 -107
- data/vendor/pygments-main/pygments/lexers/macaulay2.py +1739 -0
- data/vendor/pygments-main/pygments/lexers/make.py +21 -16
- data/vendor/pygments-main/pygments/lexers/markup.py +752 -11
- data/vendor/pygments-main/pygments/lexers/math.py +1 -1
- data/vendor/pygments-main/pygments/lexers/matlab.py +18 -3
- data/vendor/pygments-main/pygments/lexers/maxima.py +85 -0
- data/vendor/pygments-main/pygments/lexers/meson.py +10 -25
- data/vendor/pygments-main/pygments/lexers/mime.py +2 -2
- data/vendor/pygments-main/pygments/lexers/minecraft.py +394 -0
- data/vendor/pygments-main/pygments/lexers/mips.py +128 -0
- data/vendor/pygments-main/pygments/lexers/ml.py +9 -6
- data/vendor/pygments-main/pygments/lexers/modeling.py +12 -8
- data/vendor/pygments-main/pygments/lexers/modula2.py +3 -2
- data/vendor/pygments-main/pygments/lexers/monte.py +3 -2
- 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 +62 -20
- data/vendor/pygments-main/pygments/lexers/nit.py +3 -2
- data/vendor/pygments-main/pygments/lexers/nix.py +5 -5
- data/vendor/pygments-main/pygments/lexers/oberon.py +2 -2
- data/vendor/pygments-main/pygments/lexers/objective.py +6 -4
- data/vendor/pygments-main/pygments/lexers/ooc.py +3 -2
- data/vendor/pygments-main/pygments/lexers/other.py +1 -1
- data/vendor/pygments-main/pygments/lexers/parasail.py +3 -2
- data/vendor/pygments-main/pygments/lexers/parsers.py +23 -21
- data/vendor/pygments-main/pygments/lexers/pascal.py +196 -198
- data/vendor/pygments-main/pygments/lexers/pawn.py +1 -1
- data/vendor/pygments-main/pygments/lexers/perl.py +17 -15
- data/vendor/pygments-main/pygments/lexers/phix.py +364 -0
- data/vendor/pygments-main/pygments/lexers/php.py +35 -20
- data/vendor/pygments-main/pygments/lexers/pointless.py +3 -2
- data/vendor/pygments-main/pygments/lexers/pony.py +1 -1
- data/vendor/pygments-main/pygments/lexers/praat.py +41 -38
- data/vendor/pygments-main/pygments/lexers/procfile.py +2 -3
- data/vendor/pygments-main/pygments/lexers/prolog.py +7 -8
- data/vendor/pygments-main/pygments/lexers/promql.py +5 -12
- data/vendor/pygments-main/pygments/lexers/python.py +145 -119
- data/vendor/pygments-main/pygments/lexers/q.py +188 -0
- data/vendor/pygments-main/pygments/lexers/qlik.py +117 -0
- data/vendor/pygments-main/pygments/lexers/qvt.py +1 -1
- data/vendor/pygments-main/pygments/lexers/r.py +4 -4
- data/vendor/pygments-main/pygments/lexers/rdf.py +3 -3
- data/vendor/pygments-main/pygments/lexers/rebol.py +1 -12
- data/vendor/pygments-main/pygments/lexers/resource.py +1 -1
- data/vendor/pygments-main/pygments/lexers/ride.py +3 -2
- data/vendor/pygments-main/pygments/lexers/rita.py +43 -0
- data/vendor/pygments-main/pygments/lexers/rnc.py +3 -2
- data/vendor/pygments-main/pygments/lexers/roboconf.py +3 -3
- data/vendor/pygments-main/pygments/lexers/robotframework.py +6 -5
- data/vendor/pygments-main/pygments/lexers/ruby.py +24 -24
- data/vendor/pygments-main/pygments/lexers/rust.py +3 -2
- data/vendor/pygments-main/pygments/lexers/sas.py +2 -2
- data/vendor/pygments-main/pygments/lexers/savi.py +170 -0
- data/vendor/pygments-main/pygments/lexers/scdoc.py +4 -7
- data/vendor/pygments-main/pygments/lexers/scripting.py +24 -21
- data/vendor/pygments-main/pygments/lexers/sgf.py +6 -6
- data/vendor/pygments-main/pygments/lexers/shell.py +29 -21
- data/vendor/pygments-main/pygments/lexers/sieve.py +14 -4
- data/vendor/pygments-main/pygments/lexers/slash.py +1 -1
- data/vendor/pygments-main/pygments/lexers/smalltalk.py +5 -3
- data/vendor/pygments-main/pygments/lexers/smithy.py +5 -6
- 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 +3 -7
- data/vendor/pygments-main/pygments/lexers/sophia.py +103 -0
- data/vendor/pygments-main/pygments/lexers/special.py +2 -5
- data/vendor/pygments-main/pygments/lexers/spice.py +71 -0
- data/vendor/pygments-main/pygments/lexers/sql.py +212 -17
- data/vendor/pygments-main/pygments/lexers/srcinfo.py +62 -0
- data/vendor/pygments-main/pygments/lexers/stata.py +4 -3
- data/vendor/pygments-main/pygments/lexers/supercollider.py +4 -3
- data/vendor/pygments-main/pygments/lexers/tal.py +74 -0
- data/vendor/pygments-main/pygments/lexers/tcl.py +21 -16
- data/vendor/pygments-main/pygments/lexers/teal.py +9 -8
- data/vendor/pygments-main/pygments/lexers/templates.py +62 -29
- data/vendor/pygments-main/pygments/lexers/teraterm.py +12 -20
- data/vendor/pygments-main/pygments/lexers/testing.py +6 -2
- data/vendor/pygments-main/pygments/lexers/text.py +3 -2
- data/vendor/pygments-main/pygments/lexers/textedit.py +41 -7
- data/vendor/pygments-main/pygments/lexers/textfmts.py +7 -5
- data/vendor/pygments-main/pygments/lexers/theorem.py +42 -36
- data/vendor/pygments-main/pygments/lexers/thingsdb.py +2 -4
- data/vendor/pygments-main/pygments/lexers/tlb.py +57 -0
- data/vendor/pygments-main/pygments/lexers/tnt.py +3 -4
- data/vendor/pygments-main/pygments/lexers/trafficscript.py +2 -4
- data/vendor/pygments-main/pygments/lexers/typoscript.py +2 -3
- data/vendor/pygments-main/pygments/lexers/ul4.py +267 -0
- data/vendor/pygments-main/pygments/lexers/unicon.py +1 -1
- data/vendor/pygments-main/pygments/lexers/urbi.py +4 -4
- data/vendor/pygments-main/pygments/lexers/usd.py +2 -1
- data/vendor/pygments-main/pygments/lexers/varnish.py +5 -5
- data/vendor/pygments-main/pygments/lexers/verification.py +4 -3
- data/vendor/pygments-main/pygments/lexers/web.py +1 -1
- data/vendor/pygments-main/pygments/lexers/webassembly.py +5 -5
- data/vendor/pygments-main/pygments/lexers/webidl.py +2 -1
- data/vendor/pygments-main/pygments/lexers/webmisc.py +90 -71
- data/vendor/pygments-main/pygments/lexers/wgsl.py +407 -0
- data/vendor/pygments-main/pygments/lexers/whiley.py +2 -1
- data/vendor/pygments-main/pygments/lexers/wowtoc.py +120 -0
- data/vendor/pygments-main/pygments/lexers/wren.py +99 -0
- data/vendor/pygments-main/pygments/lexers/x10.py +5 -6
- data/vendor/pygments-main/pygments/lexers/xorg.py +3 -2
- data/vendor/pygments-main/pygments/lexers/yang.py +6 -5
- data/vendor/pygments-main/pygments/lexers/zig.py +3 -2
- data/vendor/pygments-main/pygments/modeline.py +1 -1
- data/vendor/pygments-main/pygments/plugin.py +28 -9
- data/vendor/pygments-main/pygments/regexopt.py +1 -1
- data/vendor/pygments-main/pygments/scanner.py +2 -2
- data/vendor/pygments-main/pygments/sphinxext.py +63 -1
- data/vendor/pygments-main/pygments/style.py +7 -1
- data/vendor/pygments-main/pygments/styles/__init__.py +19 -5
- data/vendor/pygments-main/pygments/styles/abap.py +2 -2
- data/vendor/pygments-main/pygments/styles/algol.py +1 -2
- data/vendor/pygments-main/pygments/styles/algol_nu.py +1 -2
- data/vendor/pygments-main/pygments/styles/arduino.py +2 -3
- data/vendor/pygments-main/pygments/styles/autumn.py +1 -3
- data/vendor/pygments-main/pygments/styles/borland.py +1 -3
- data/vendor/pygments-main/pygments/styles/bw.py +1 -2
- data/vendor/pygments-main/pygments/styles/colorful.py +1 -3
- data/vendor/pygments-main/pygments/styles/default.py +13 -14
- data/vendor/pygments-main/pygments/styles/dracula.py +102 -0
- data/vendor/pygments-main/pygments/styles/emacs.py +1 -2
- data/vendor/pygments-main/pygments/styles/friendly.py +1 -2
- data/vendor/pygments-main/pygments/styles/friendly_grayscale.py +75 -0
- data/vendor/pygments-main/pygments/styles/fruity.py +1 -1
- data/vendor/pygments-main/pygments/styles/gh_dark.py +107 -0
- data/vendor/pygments-main/pygments/styles/gruvbox.py +4 -2
- data/vendor/pygments-main/pygments/styles/igor.py +1 -2
- data/vendor/pygments-main/pygments/styles/inkpot.py +3 -2
- data/vendor/pygments-main/pygments/styles/lilypond.py +56 -0
- data/vendor/pygments-main/pygments/styles/lovelace.py +1 -3
- data/vendor/pygments-main/pygments/styles/manni.py +1 -1
- data/vendor/pygments-main/pygments/styles/material.py +1 -2
- data/vendor/pygments-main/pygments/styles/monokai.py +3 -3
- data/vendor/pygments-main/pygments/styles/murphy.py +1 -3
- data/vendor/pygments-main/pygments/styles/native.py +11 -11
- data/vendor/pygments-main/pygments/styles/nord.py +150 -0
- data/vendor/pygments-main/pygments/styles/onedark.py +59 -0
- data/vendor/pygments-main/pygments/styles/paraiso_dark.py +1 -6
- data/vendor/pygments-main/pygments/styles/paraiso_light.py +1 -6
- data/vendor/pygments-main/pygments/styles/pastie.py +1 -3
- data/vendor/pygments-main/pygments/styles/perldoc.py +1 -2
- data/vendor/pygments-main/pygments/styles/rainbow_dash.py +3 -3
- data/vendor/pygments-main/pygments/styles/rrt.py +3 -2
- data/vendor/pygments-main/pygments/styles/sas.py +2 -4
- data/vendor/pygments-main/pygments/styles/solarized.py +1 -1
- data/vendor/pygments-main/pygments/styles/staroffice.py +26 -0
- data/vendor/pygments-main/pygments/styles/stata_dark.py +4 -6
- data/vendor/pygments-main/pygments/styles/stata_light.py +1 -2
- data/vendor/pygments-main/pygments/styles/tango.py +2 -3
- data/vendor/pygments-main/pygments/styles/trac.py +1 -3
- data/vendor/pygments-main/pygments/styles/vim.py +1 -2
- data/vendor/pygments-main/pygments/styles/vs.py +1 -2
- data/vendor/pygments-main/pygments/styles/xcode.py +1 -3
- data/vendor/pygments-main/pygments/styles/zenburn.py +4 -6
- data/vendor/pygments-main/pygments/token.py +2 -1
- data/vendor/pygments-main/pygments/unistring.py +4 -6
- data/vendor/pygments-main/pygments/util.py +27 -5
- metadata +59 -14
- data/vendor/pygments-main/Pygments-2.10.0.dist-info/RECORD +0 -524
- /data/vendor/pygments-main/{Pygments-2.10.0.dist-info → Pygments-2.15.1.dist-info}/INSTALLER +0 -0
- /data/vendor/pygments-main/{Pygments-2.10.0.dist-info → Pygments-2.15.1.dist-info}/REQUESTED +0 -0
- /data/vendor/pygments-main/{Pygments-2.10.0.dist-info → Pygments-2.15.1.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,128 @@
|
|
1
|
+
"""
|
2
|
+
pygments.lexers.mips
|
3
|
+
~~~~~~~~~~~~~~~~~~~~
|
4
|
+
|
5
|
+
Lexers for MIPS assembly.
|
6
|
+
|
7
|
+
:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
|
8
|
+
:license: BSD, see LICENSE for details.
|
9
|
+
"""
|
10
|
+
|
11
|
+
from pygments.lexer import RegexLexer, words
|
12
|
+
from pygments.token import Whitespace, Comment, String, Keyword, Name, Text
|
13
|
+
|
14
|
+
__all__ = ["MIPSLexer"]
|
15
|
+
|
16
|
+
|
17
|
+
class MIPSLexer(RegexLexer):
|
18
|
+
"""
|
19
|
+
A MIPS Assembly Lexer.
|
20
|
+
|
21
|
+
Based on the Emacs major mode by hlissner:
|
22
|
+
https://github.com/hlissner/emacs-mips-mode
|
23
|
+
"""
|
24
|
+
|
25
|
+
name = 'MIPS'
|
26
|
+
aliases = ['mips']
|
27
|
+
# TODO: add '*.s' and '*.asm', which will require designing an analyse_text
|
28
|
+
# method for this lexer and refactoring those from Gas and Nasm in order to
|
29
|
+
# have relatively reliable detection
|
30
|
+
filenames = ['*.mips', '*.MIPS']
|
31
|
+
|
32
|
+
keywords = [
|
33
|
+
# Arithmetic insturctions
|
34
|
+
"add", "sub", "subu", "addi", "subi", "addu", "addiu",
|
35
|
+
# Multiplication/division
|
36
|
+
"mul", "mult", "multu", "mulu", "madd", "maddu", "msub", "msubu", "div", "divu",
|
37
|
+
# Bitwise operations
|
38
|
+
"and", "or", "nor", "xor", "andi", "ori", "xori", "clo", "clz",
|
39
|
+
# Shifts
|
40
|
+
"sll", "srl", "sllv", "srlv", "sra", "srav",
|
41
|
+
# Comparisons
|
42
|
+
"slt", "sltu", "slti", "sltiu",
|
43
|
+
# Move data
|
44
|
+
"mfhi", "mthi", "mflo", "mtlo", "movn", "movz", "movf", "movt",
|
45
|
+
# Jump
|
46
|
+
"j", "jal", "jalr", "jr",
|
47
|
+
# branch
|
48
|
+
"bc1f", "bc1t", "beq", "bgez", "bgezal", "bgtz", "blez", "bltzal", "bltz", "bne",
|
49
|
+
# Load
|
50
|
+
"lui", "lb", "lbu", "lh", "lhu", "lw", "lwcl", "lwl", "lwr",
|
51
|
+
# Store
|
52
|
+
"sb", "sh", "sw", "swl", "swr", # coproc: swc1 sdc1
|
53
|
+
# Concurrent load/store
|
54
|
+
"ll", "sc",
|
55
|
+
# Trap handling
|
56
|
+
"teq", "teqi", "tne", "tneqi", "tge", "tgeu", "tgei", "tgeiu", "tlt", "tltu", "tlti",
|
57
|
+
"tltiu",
|
58
|
+
# Exception / Interrupt
|
59
|
+
"eret", "break", "bop", "syscall",
|
60
|
+
# --- Floats -----------------------------------------------------
|
61
|
+
# Arithmetic
|
62
|
+
"add.s", "add.d", "sub.s", "sub.d", "mul.s", "mul.d", "div.s", "div.d", "neg.d",
|
63
|
+
"neg.s",
|
64
|
+
# Comparison
|
65
|
+
"c.e.d", "c.e.s", "c.le.d", "c.le.s", "c.lt.s", "c.lt.d", # "c.gt.s", "c.gt.d",
|
66
|
+
"madd.s", "madd.d", "msub.s", "msub.d",
|
67
|
+
# Move Floats
|
68
|
+
"mov.d", "move.s", "movf.d", "movf.s", "movt.d", "movt.s", "movn.d", "movn.s",
|
69
|
+
"movnzd", "movz.s", "movz.d",
|
70
|
+
# Conversion
|
71
|
+
"cvt.d.s", "cvt.d.w", "cvt.s.d", "cvt.s.w", "cvt.w.d", "cvt.w.s", "trunc.w.d",
|
72
|
+
"trunc.w.s",
|
73
|
+
# Math
|
74
|
+
"abs.s", "abs.d", "sqrt.s", "sqrt.d", "ceil.w.d", "ceil.w.s", "floor.w.d",
|
75
|
+
"floor.w.s", "round.w.d", "round.w.s",
|
76
|
+
]
|
77
|
+
|
78
|
+
pseudoinstructions = [
|
79
|
+
# Arithmetic & logical
|
80
|
+
"rem", "remu", "mulo", "mulou", "abs", "neg", "negu", "not", "rol", "ror",
|
81
|
+
# branches
|
82
|
+
"b", "beqz", "bge", "bgeu", "bgt", "bgtu", "ble", "bleu", "blt", "bltu", "bnez",
|
83
|
+
# loads
|
84
|
+
"la", "li", "ld", "ulh", "ulhu", "ulw",
|
85
|
+
# Store
|
86
|
+
"sd", "ush", "usw",
|
87
|
+
# move
|
88
|
+
"move", # coproc: "mfc1.d",
|
89
|
+
# comparisons
|
90
|
+
"sgt", "sgtu", "sge", "sgeu", "sle", "sleu", "sne", "seq",
|
91
|
+
# --- Floats -----------------------------------------------------
|
92
|
+
# load-store
|
93
|
+
"l.d", "l.s", "s.d", "s.s",
|
94
|
+
]
|
95
|
+
|
96
|
+
directives = [
|
97
|
+
".align", ".ascii", ".asciiz", ".byte", ".data", ".double", ".extern", ".float",
|
98
|
+
".globl", ".half", ".kdata", ".ktext", ".space", ".text", ".word",
|
99
|
+
]
|
100
|
+
|
101
|
+
deprecated = [
|
102
|
+
"beql", "bnel", "bgtzl", "bgezl", "bltzl", "blezl", "bltzall", "bgezall",
|
103
|
+
]
|
104
|
+
|
105
|
+
tokens = {
|
106
|
+
'root': [
|
107
|
+
(r'\s+', Whitespace),
|
108
|
+
(r'#.*', Comment),
|
109
|
+
(r'"', String, 'string'),
|
110
|
+
(r'-?[0-9]+?', Keyword.Constant),
|
111
|
+
(r'\w*:', Name.Function),
|
112
|
+
(words(deprecated, suffix=r'\b'), Keyword.Pseudo), # need warning face
|
113
|
+
(words(pseudoinstructions, suffix=r'\b'), Name.Variable),
|
114
|
+
(words(keywords, suffix=r'\b'), Keyword),
|
115
|
+
(r'[slm][ftwd]c[0-9]([.]d)?', Keyword),
|
116
|
+
(r'\$(f?[0-2][0-9]|f?3[01]|[ft]?[0-9]|[vk][01]|a[0-3]|s[0-7]|[gsf]p|ra|at|zero)',
|
117
|
+
Keyword.Type),
|
118
|
+
(words(directives, suffix=r'\b'), Name.Entity), # Preprocessor?
|
119
|
+
(r':|,|;|\{|\}|=>|@|\$|=', Name.Builtin),
|
120
|
+
(r'\w+', Text),
|
121
|
+
(r'.', Text),
|
122
|
+
],
|
123
|
+
'string': [
|
124
|
+
(r'\\.', String.Escape),
|
125
|
+
(r'"', String, '#pop'),
|
126
|
+
(r'[^\\"]+', String),
|
127
|
+
],
|
128
|
+
}
|
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
Lexers for ML family languages.
|
6
6
|
|
7
|
-
:copyright: Copyright 2006-
|
7
|
+
:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
|
8
8
|
:license: BSD, see LICENSE for details.
|
9
9
|
"""
|
10
10
|
|
@@ -55,7 +55,7 @@ class SMLLexer(RegexLexer):
|
|
55
55
|
# A character constant is a sequence of the form #s, where s is a string
|
56
56
|
# constant denoting a string of size one character. This setup just parses
|
57
57
|
# the entire string as either a String.Double or a String.Char (depending
|
58
|
-
# on the argument), even if the String.Char is an
|
58
|
+
# on the argument), even if the String.Char is an erroneous
|
59
59
|
# multiple-character string.
|
60
60
|
def stringy(whatkind):
|
61
61
|
return [
|
@@ -360,6 +360,7 @@ class OcamlLexer(RegexLexer):
|
|
360
360
|
"""
|
361
361
|
|
362
362
|
name = 'OCaml'
|
363
|
+
url = 'https://ocaml.org/'
|
363
364
|
aliases = ['ocaml']
|
364
365
|
filenames = ['*.ml', '*.mli', '*.mll', '*.mly']
|
365
366
|
mimetypes = ['text/x-ocaml']
|
@@ -446,7 +447,7 @@ class OcamlLexer(RegexLexer):
|
|
446
447
|
|
447
448
|
class OpaLexer(RegexLexer):
|
448
449
|
"""
|
449
|
-
Lexer for the Opa language
|
450
|
+
Lexer for the Opa language.
|
450
451
|
|
451
452
|
.. versionadded:: 1.5
|
452
453
|
"""
|
@@ -769,12 +770,13 @@ class OpaLexer(RegexLexer):
|
|
769
770
|
|
770
771
|
class ReasonLexer(RegexLexer):
|
771
772
|
"""
|
772
|
-
For the ReasonML language
|
773
|
+
For the ReasonML language.
|
773
774
|
|
774
775
|
.. versionadded:: 2.6
|
775
776
|
"""
|
776
777
|
|
777
778
|
name = 'ReasonML'
|
779
|
+
url = 'https://reasonml.github.io/'
|
778
780
|
aliases = ['reasonml', 'reason']
|
779
781
|
filenames = ['*.re', '*.rei']
|
780
782
|
mimetypes = ['text/x-reasonml']
|
@@ -861,11 +863,12 @@ class ReasonLexer(RegexLexer):
|
|
861
863
|
|
862
864
|
class FStarLexer(RegexLexer):
|
863
865
|
"""
|
864
|
-
For the F* language
|
866
|
+
For the F* language.
|
865
867
|
.. versionadded:: 2.7
|
866
868
|
"""
|
867
869
|
|
868
870
|
name = 'FStar'
|
871
|
+
url = 'https://www.fstar-lang.org/'
|
869
872
|
aliases = ['fstar']
|
870
873
|
filenames = ['*.fst', '*.fsti']
|
871
874
|
mimetypes = ['text/x-fstar']
|
@@ -908,7 +911,7 @@ class FStarLexer(RegexLexer):
|
|
908
911
|
(r'\b([A-Z][\w\']*)(?=\s*\.)', Name.Namespace, 'dotted'),
|
909
912
|
(r'\b([A-Z][\w\']*)', Name.Class),
|
910
913
|
(r'\(\*(?![)])', Comment, 'comment'),
|
911
|
-
(r'
|
914
|
+
(r'\/\/.+$', Comment),
|
912
915
|
(r'\b(%s)\b' % '|'.join(keywords), Keyword),
|
913
916
|
(r'\b(%s)\b' % '|'.join(assume_keywords), Name.Exception),
|
914
917
|
(r'\b(%s)\b' % '|'.join(decl_keywords), Keyword.Declaration),
|
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
Lexers for modeling languages.
|
6
6
|
|
7
|
-
:copyright: Copyright 2006-
|
7
|
+
:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
|
8
8
|
:license: BSD, see LICENSE for details.
|
9
9
|
"""
|
10
10
|
|
@@ -22,11 +22,12 @@ __all__ = ['ModelicaLexer', 'BugsLexer', 'JagsLexer', 'StanLexer']
|
|
22
22
|
|
23
23
|
class ModelicaLexer(RegexLexer):
|
24
24
|
"""
|
25
|
-
For
|
25
|
+
For Modelica source code.
|
26
26
|
|
27
27
|
.. versionadded:: 1.1
|
28
28
|
"""
|
29
29
|
name = 'Modelica'
|
30
|
+
url = 'http://www.modelica.org/'
|
30
31
|
aliases = ['modelica']
|
31
32
|
filenames = ['*.mo']
|
32
33
|
mimetypes = ['text/x-modelica']
|
@@ -97,7 +98,7 @@ class ModelicaLexer(RegexLexer):
|
|
97
98
|
|
98
99
|
class BugsLexer(RegexLexer):
|
99
100
|
"""
|
100
|
-
Pygments Lexer for
|
101
|
+
Pygments Lexer for OpenBugs and WinBugs
|
101
102
|
models.
|
102
103
|
|
103
104
|
.. versionadded:: 1.6
|
@@ -303,7 +304,6 @@ class StanLexer(RegexLexer):
|
|
303
304
|
(r'(//|#).*$', Comment.Single),
|
304
305
|
],
|
305
306
|
'root': [
|
306
|
-
# Stan is more restrictive on strings than this regex
|
307
307
|
(r'"[^"]*"', String),
|
308
308
|
# Comments
|
309
309
|
include('comments'),
|
@@ -325,7 +325,7 @@ class StanLexer(RegexLexer):
|
|
325
325
|
(r'(%s)\b' % r'|'.join(_stan_builtins.TYPES), Keyword.Type),
|
326
326
|
# < should be punctuation, but elsewhere I can't tell if it is in
|
327
327
|
# a range constraint
|
328
|
-
(r'(<)(\s*)(upper|lower)(\s*)(=)',
|
328
|
+
(r'(<)(\s*)(upper|lower|offset|multiplier)(\s*)(=)',
|
329
329
|
bygroups(Operator, Whitespace, Keyword, Whitespace, Punctuation)),
|
330
330
|
(r'(,)(\s*)(upper)(\s*)(=)',
|
331
331
|
bygroups(Punctuation, Whitespace, Keyword, Whitespace, Punctuation)),
|
@@ -340,17 +340,21 @@ class StanLexer(RegexLexer):
|
|
340
340
|
(r'(%s)\b' % r'|'.join(_stan_builtins.RESERVED), Keyword.Reserved),
|
341
341
|
# user-defined functions
|
342
342
|
(r'[A-Za-z]\w*(?=\s*\()]', Name.Function),
|
343
|
-
#
|
344
|
-
(r'[
|
343
|
+
# Imaginary Literals
|
344
|
+
(r'[0-9]+(\.[0-9]*)?([eE][+-]?[0-9]+)?i', Number.Float),
|
345
|
+
(r'\.[0-9]+([eE][+-]?[0-9]+)?i', Number.Float),
|
346
|
+
(r'[0-9]+i', Number.Float),
|
345
347
|
# Real Literals
|
346
348
|
(r'[0-9]+(\.[0-9]*)?([eE][+-]?[0-9]+)?', Number.Float),
|
347
349
|
(r'\.[0-9]+([eE][+-]?[0-9]+)?', Number.Float),
|
348
350
|
# Integer Literals
|
349
351
|
(r'[0-9]+', Number.Integer),
|
352
|
+
# Regular variable names
|
353
|
+
(r'[A-Za-z]\w*\b', Name),
|
350
354
|
# Assignment operators
|
351
355
|
(r'<-|(?:\+|-|\.?/|\.?\*|=)?=|~', Operator),
|
352
356
|
# Infix, prefix and postfix operators (and = )
|
353
|
-
(r"\+|-|\.?\*|\.?/|\\|'
|
357
|
+
(r"\+|-|\.?\*|\.?/|\\|'|\.?\^|!=?|<=?|>=?|\|\||&&|%|\?|:|%/%|!", Operator),
|
354
358
|
# Block delimiters
|
355
359
|
(r'[{}]', Punctuation),
|
356
360
|
# Distribution |
|
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
Multi-Dialect Lexer for Modula-2.
|
6
6
|
|
7
|
-
:copyright: Copyright 2006-
|
7
|
+
:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
|
8
8
|
:license: BSD, see LICENSE for details.
|
9
9
|
"""
|
10
10
|
|
@@ -21,7 +21,7 @@ __all__ = ['Modula2Lexer']
|
|
21
21
|
# Multi-Dialect Modula-2 Lexer
|
22
22
|
class Modula2Lexer(RegexLexer):
|
23
23
|
"""
|
24
|
-
For
|
24
|
+
For Modula-2 source code.
|
25
25
|
|
26
26
|
The Modula-2 lexer supports several dialects. By default, it operates in
|
27
27
|
fallback mode, recognising the *combined* literals, punctuation symbols
|
@@ -159,6 +159,7 @@ class Modula2Lexer(RegexLexer):
|
|
159
159
|
Added multi-dialect support.
|
160
160
|
"""
|
161
161
|
name = 'Modula-2'
|
162
|
+
url = 'http://www.modula2.org/'
|
162
163
|
aliases = ['modula2', 'm2']
|
163
164
|
filenames = ['*.def', '*.mod']
|
164
165
|
mimetypes = ['text/x-modula2']
|
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
Lexer for the Monte programming language.
|
6
6
|
|
7
|
-
:copyright: Copyright 2006-
|
7
|
+
:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
|
8
8
|
:license: BSD, see LICENSE for details.
|
9
9
|
"""
|
10
10
|
|
@@ -77,11 +77,12 @@ _safeScope = [
|
|
77
77
|
|
78
78
|
class MonteLexer(RegexLexer):
|
79
79
|
"""
|
80
|
-
Lexer for the
|
80
|
+
Lexer for the Monte programming language.
|
81
81
|
|
82
82
|
.. versionadded:: 2.2
|
83
83
|
"""
|
84
84
|
name = 'Monte'
|
85
|
+
url = 'https://monte.readthedocs.io/'
|
85
86
|
aliases = ['monte']
|
86
87
|
filenames = ['*.mt']
|
87
88
|
|
@@ -5,7 +5,7 @@
|
|
5
5
|
Lexers for the mosel language.
|
6
6
|
http://www.fico.com/en/products/fico-xpress-optimization
|
7
7
|
|
8
|
-
:copyright: Copyright 2006-
|
8
|
+
:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
|
9
9
|
:license: BSD, see LICENSE for details.
|
10
10
|
"""
|
11
11
|
|
@@ -4,13 +4,13 @@
|
|
4
4
|
|
5
5
|
Lexer for the Nim language (formerly known as Nimrod).
|
6
6
|
|
7
|
-
:copyright: Copyright 2006-
|
7
|
+
:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
|
8
8
|
:license: BSD, see LICENSE for details.
|
9
9
|
"""
|
10
10
|
|
11
11
|
import re
|
12
12
|
|
13
|
-
from pygments.lexer import RegexLexer, include, default
|
13
|
+
from pygments.lexer import RegexLexer, include, default, bygroups
|
14
14
|
from pygments.token import Text, Comment, Operator, Keyword, Name, String, \
|
15
15
|
Number, Punctuation, Error
|
16
16
|
|
@@ -19,36 +19,38 @@ __all__ = ['NimrodLexer']
|
|
19
19
|
|
20
20
|
class NimrodLexer(RegexLexer):
|
21
21
|
"""
|
22
|
-
For
|
22
|
+
For Nim source code.
|
23
23
|
|
24
24
|
.. versionadded:: 1.5
|
25
25
|
"""
|
26
26
|
|
27
27
|
name = 'Nimrod'
|
28
|
+
url = 'http://nim-lang.org/'
|
28
29
|
aliases = ['nimrod', 'nim']
|
29
30
|
filenames = ['*.nim', '*.nimrod']
|
30
31
|
mimetypes = ['text/x-nim']
|
31
32
|
|
32
|
-
flags = re.MULTILINE | re.IGNORECASE
|
33
|
+
flags = re.MULTILINE | re.IGNORECASE
|
33
34
|
|
34
35
|
def underscorize(words):
|
35
36
|
newWords = []
|
36
|
-
new =
|
37
|
+
new = []
|
37
38
|
for word in words:
|
38
39
|
for ch in word:
|
39
|
-
new
|
40
|
-
|
41
|
-
new
|
40
|
+
new.append(ch)
|
41
|
+
new.append("_?")
|
42
|
+
newWords.append(''.join(new))
|
43
|
+
new = []
|
42
44
|
return "|".join(newWords)
|
43
45
|
|
44
46
|
keywords = [
|
45
47
|
'addr', 'and', 'as', 'asm', 'bind', 'block', 'break', 'case',
|
46
48
|
'cast', 'concept', 'const', 'continue', 'converter', 'defer', 'discard',
|
47
49
|
'distinct', 'div', 'do', 'elif', 'else', 'end', 'enum', 'except',
|
48
|
-
'export', 'finally', 'for', '
|
49
|
-
'is', 'isnot', 'iterator', 'let', '
|
50
|
-
'not', 'notin', 'object', 'of', 'or', 'out', '
|
51
|
-
'ref', 'return', 'shl', 'shr', 'static', '
|
50
|
+
'export', 'finally', 'for', 'if', 'in', 'yield', 'interface',
|
51
|
+
'is', 'isnot', 'iterator', 'let', 'mixin', 'mod',
|
52
|
+
'not', 'notin', 'object', 'of', 'or', 'out', 'ptr', 'raise',
|
53
|
+
'ref', 'return', 'shl', 'shr', 'static', 'try',
|
52
54
|
'tuple', 'type', 'using', 'when', 'while', 'xor'
|
53
55
|
]
|
54
56
|
|
@@ -68,15 +70,27 @@ class NimrodLexer(RegexLexer):
|
|
68
70
|
|
69
71
|
tokens = {
|
70
72
|
'root': [
|
73
|
+
# Comments
|
74
|
+
(r'##\[', String.Doc, 'doccomment'),
|
71
75
|
(r'##.*$', String.Doc),
|
76
|
+
(r'#\[', Comment.Multiline, 'comment'),
|
72
77
|
(r'#.*$', Comment),
|
78
|
+
|
79
|
+
# Pragmas
|
80
|
+
(r'\{\.', String.Other, 'pragma'),
|
81
|
+
|
82
|
+
# Operators
|
73
83
|
(r'[*=><+\-/@$~&%!?|\\\[\]]', Operator),
|
74
84
|
(r'\.\.|\.|,|\[\.|\.\]|\{\.|\.\}|\(\.|\.\)|\{|\}|\(|\)|:|\^|`|;',
|
75
85
|
Punctuation),
|
76
86
|
|
87
|
+
# Case statement branch
|
88
|
+
(r'(\n\s*)(of)(\s)', bygroups(Text.Whitespace, Keyword,
|
89
|
+
Text.Whitespace), 'casebranch'),
|
90
|
+
|
77
91
|
# Strings
|
78
92
|
(r'(?:[\w]+)"', String, 'rdqs'),
|
79
|
-
(r'"""', String, 'tdqs'),
|
93
|
+
(r'"""', String.Double, 'tdqs'),
|
80
94
|
('"', String, 'dqs'),
|
81
95
|
|
82
96
|
# Char
|
@@ -84,15 +98,18 @@ class NimrodLexer(RegexLexer):
|
|
84
98
|
|
85
99
|
# Keywords
|
86
100
|
(r'(%s)\b' % underscorize(opWords), Operator.Word),
|
87
|
-
(r'(
|
101
|
+
(r'(proc|func|method|macro|template)(\s)(?![(\[\]])',
|
102
|
+
bygroups(Keyword, Text.Whitespace), 'funcname'),
|
88
103
|
(r'(%s)\b' % underscorize(keywords), Keyword),
|
89
|
-
(r'(%s)\b' % underscorize(['from', 'import', 'include']),
|
104
|
+
(r'(%s)\b' % underscorize(['from', 'import', 'include', 'export']),
|
90
105
|
Keyword.Namespace),
|
91
106
|
(r'(v_?a_?r)\b', Keyword.Declaration),
|
92
|
-
(r'(%s)\b' % underscorize(types),
|
107
|
+
(r'(%s)\b' % underscorize(types), Name.Builtin),
|
93
108
|
(r'(%s)\b' % underscorize(keywordsPseudo), Keyword.Pseudo),
|
109
|
+
|
94
110
|
# Identifiers
|
95
111
|
(r'\b((?![_\d])\w)(((?!_)\w)|(_(?!_)\w))*', Name),
|
112
|
+
|
96
113
|
# Numbers
|
97
114
|
(r'[0-9][0-9_]*(?=([e.]|\'f(32|64)))',
|
98
115
|
Number.Float, ('float-suffix', 'float-number')),
|
@@ -100,8 +117,9 @@ class NimrodLexer(RegexLexer):
|
|
100
117
|
(r'0b[01][01_]*', Number.Bin, 'int-suffix'),
|
101
118
|
(r'0o[0-7][0-7_]*', Number.Oct, 'int-suffix'),
|
102
119
|
(r'[0-9][0-9_]*', Number.Integer, 'int-suffix'),
|
120
|
+
|
103
121
|
# Whitespace
|
104
|
-
(r'\s+', Text),
|
122
|
+
(r'\s+', Text.Whitespace),
|
105
123
|
(r'.+$', Error),
|
106
124
|
],
|
107
125
|
'chars': [
|
@@ -118,6 +136,18 @@ class NimrodLexer(RegexLexer):
|
|
118
136
|
(r'\$', String)
|
119
137
|
# newlines are an error (use "nl" state)
|
120
138
|
],
|
139
|
+
'doccomment': [
|
140
|
+
(r'[^\]#]+', String.Doc),
|
141
|
+
(r'##\[', String.Doc, '#push'),
|
142
|
+
(r'\]##', String.Doc, '#pop'),
|
143
|
+
(r'[\]#]', String.Doc),
|
144
|
+
],
|
145
|
+
'comment': [
|
146
|
+
(r'[^\]#]+', Comment.Multiline),
|
147
|
+
(r'#\[', Comment.Multiline, '#push'),
|
148
|
+
(r'\]#', Comment.Multiline, '#pop'),
|
149
|
+
(r'[\]#]', Comment.Multiline),
|
150
|
+
],
|
121
151
|
'dqs': [
|
122
152
|
(r'\\([\\abcefnrtvl"\']|\n|x[a-f0-9]{2}|[0-9]{1,3})',
|
123
153
|
String.Escape),
|
@@ -130,9 +160,9 @@ class NimrodLexer(RegexLexer):
|
|
130
160
|
include('strings')
|
131
161
|
],
|
132
162
|
'tdqs': [
|
133
|
-
(r'"""
|
163
|
+
(r'"""', String.Double, '#pop'),
|
134
164
|
include('strings'),
|
135
|
-
|
165
|
+
(r'\n', String.Double)
|
136
166
|
],
|
137
167
|
'funcname': [
|
138
168
|
(r'((?![\d_])\w)(((?!_)\w)|(_(?!_)\w))*', Name.Function, '#pop'),
|
@@ -142,7 +172,7 @@ class NimrodLexer(RegexLexer):
|
|
142
172
|
(r'\n', String)
|
143
173
|
],
|
144
174
|
'float-number': [
|
145
|
-
(r'\.(?!\.)[0-9_]*', Number.Float),
|
175
|
+
(r'\.(?!\.)[0-9_]*[f]*', Number.Float),
|
146
176
|
(r'e[+-]?[0-9][0-9_]*', Number.Float),
|
147
177
|
default('#pop')
|
148
178
|
],
|
@@ -155,4 +185,16 @@ class NimrodLexer(RegexLexer):
|
|
155
185
|
(r'\'i(8|16)', Number.Integer),
|
156
186
|
default('#pop')
|
157
187
|
],
|
188
|
+
'casebranch': [
|
189
|
+
(r',', Punctuation),
|
190
|
+
(r'[\n ]+', Text.Whitespace),
|
191
|
+
(r':', Operator, '#pop'),
|
192
|
+
(r'\w+|[^:]', Name.Label),
|
193
|
+
],
|
194
|
+
'pragma': [
|
195
|
+
(r'[:,]', Text),
|
196
|
+
(r'[\n ]+', Text.Whitespace),
|
197
|
+
(r'\.\}', String.Other, '#pop'),
|
198
|
+
(r'\w+|\W+|[^.}]', String.Other),
|
199
|
+
],
|
158
200
|
}
|
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
Lexer for the Nit language.
|
6
6
|
|
7
|
-
:copyright: Copyright 2006-
|
7
|
+
:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
|
8
8
|
:license: BSD, see LICENSE for details.
|
9
9
|
"""
|
10
10
|
|
@@ -17,12 +17,13 @@ __all__ = ['NitLexer']
|
|
17
17
|
|
18
18
|
class NitLexer(RegexLexer):
|
19
19
|
"""
|
20
|
-
For
|
20
|
+
For nit source.
|
21
21
|
|
22
22
|
.. versionadded:: 2.0
|
23
23
|
"""
|
24
24
|
|
25
25
|
name = 'Nit'
|
26
|
+
url = 'http://nitlanguage.org'
|
26
27
|
aliases = ['nit']
|
27
28
|
filenames = ['*.nit']
|
28
29
|
tokens = {
|
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
Lexers for the NixOS Nix language.
|
6
6
|
|
7
|
-
:copyright: Copyright 2006-
|
7
|
+
:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
|
8
8
|
:license: BSD, see LICENSE for details.
|
9
9
|
"""
|
10
10
|
|
@@ -19,18 +19,17 @@ __all__ = ['NixLexer']
|
|
19
19
|
|
20
20
|
class NixLexer(RegexLexer):
|
21
21
|
"""
|
22
|
-
For the
|
22
|
+
For the Nix language.
|
23
23
|
|
24
24
|
.. versionadded:: 2.0
|
25
25
|
"""
|
26
26
|
|
27
27
|
name = 'Nix'
|
28
|
+
url = 'http://nixos.org/nix/'
|
28
29
|
aliases = ['nixos', 'nix']
|
29
30
|
filenames = ['*.nix']
|
30
31
|
mimetypes = ['text/x-nix']
|
31
32
|
|
32
|
-
flags = re.MULTILINE | re.UNICODE
|
33
|
-
|
34
33
|
keywords = ['rec', 'with', 'let', 'in', 'inherit', 'assert', 'if',
|
35
34
|
'else', 'then', '...']
|
36
35
|
builtins = ['import', 'abort', 'baseNameOf', 'dirOf', 'isNull', 'builtins',
|
@@ -103,7 +102,8 @@ class NixLexer(RegexLexer):
|
|
103
102
|
(r"''\t", String.Escape),
|
104
103
|
(r"''", String.Single, '#pop'),
|
105
104
|
(r'\$\{', String.Interpol, 'antiquote'),
|
106
|
-
(r"[
|
105
|
+
(r"['$]", String.Single),
|
106
|
+
(r"[^'$]+", String.Single),
|
107
107
|
],
|
108
108
|
'doublequote': [
|
109
109
|
(r'\\', String.Escape),
|
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
Lexers for Oberon family languages.
|
6
6
|
|
7
|
-
:copyright: Copyright 2006-
|
7
|
+
:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
|
8
8
|
:license: BSD, see LICENSE for details.
|
9
9
|
"""
|
10
10
|
|
@@ -19,7 +19,7 @@ __all__ = ['ComponentPascalLexer']
|
|
19
19
|
|
20
20
|
class ComponentPascalLexer(RegexLexer):
|
21
21
|
"""
|
22
|
-
For
|
22
|
+
For Component Pascal source code.
|
23
23
|
|
24
24
|
.. versionadded:: 2.1
|
25
25
|
"""
|
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
Lexers for Objective-C family languages.
|
6
6
|
|
7
|
-
:copyright: Copyright 2006-
|
7
|
+
:copyright: Copyright 2006-2023 by the Pygments team, see AUTHORS.
|
8
8
|
:license: BSD, see LICENSE for details.
|
9
9
|
"""
|
10
10
|
|
@@ -175,12 +175,12 @@ def objective(baselexer):
|
|
175
175
|
return 0.8
|
176
176
|
return 0
|
177
177
|
|
178
|
-
def get_tokens_unprocessed(self, text):
|
178
|
+
def get_tokens_unprocessed(self, text, stack=('root',)):
|
179
179
|
from pygments.lexers._cocoa_builtins import COCOA_INTERFACES, \
|
180
180
|
COCOA_PROTOCOLS, COCOA_PRIMITIVES
|
181
181
|
|
182
182
|
for index, token, value in \
|
183
|
-
baselexer.get_tokens_unprocessed(self, text):
|
183
|
+
baselexer.get_tokens_unprocessed(self, text, stack):
|
184
184
|
if token is Name or token is Name.Class:
|
185
185
|
if value in COCOA_INTERFACES or value in COCOA_PROTOCOLS \
|
186
186
|
or value in COCOA_PRIMITIVES:
|
@@ -197,6 +197,7 @@ class ObjectiveCLexer(objective(CLexer)):
|
|
197
197
|
"""
|
198
198
|
|
199
199
|
name = 'Objective-C'
|
200
|
+
url = 'https://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/ProgrammingWithObjectiveC/Introduction/Introduction.html'
|
200
201
|
aliases = ['objective-c', 'objectivec', 'obj-c', 'objc']
|
201
202
|
filenames = ['*.m', '*.h']
|
202
203
|
mimetypes = ['text/x-objective-c']
|
@@ -281,11 +282,12 @@ class LogosLexer(ObjectiveCppLexer):
|
|
281
282
|
|
282
283
|
class SwiftLexer(RegexLexer):
|
283
284
|
"""
|
284
|
-
For
|
285
|
+
For Swift source.
|
285
286
|
|
286
287
|
.. versionadded:: 2.0
|
287
288
|
"""
|
288
289
|
name = 'Swift'
|
290
|
+
url = 'https://www.swift.org/'
|
289
291
|
filenames = ['*.swift']
|
290
292
|
aliases = ['swift']
|
291
293
|
mimetypes = ['text/x-swift']
|