pygments.rb 1.2.0 → 2.1.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 +5 -5
- data/.github/dependabot.yml +13 -0
- data/.github/workflows/ci.yml +40 -0
- data/.github/workflows/release.yml +24 -0
- data/.gitignore +5 -5
- data/.rubocop.yml +18 -0
- data/CHANGELOG.adoc +132 -0
- data/Gemfile +3 -1
- data/LICENSE +1 -1
- data/README.adoc +160 -0
- data/Rakefile +12 -21
- data/bench.rb +14 -8
- data/{cache-lexers.rb → cache_lexers.rb} +3 -2
- data/lexers +0 -0
- data/lib/pygments.rb +10 -11
- data/lib/pygments/lexer.rb +6 -6
- data/lib/pygments/mentos.py +23 -110
- data/lib/pygments/popen.rb +196 -275
- data/lib/pygments/version.rb +2 -2
- data/pygments.rb.gemspec +12 -10
- data/test/test_pygments.rb +50 -110
- data/vendor/pygments-main/{AUTHORS → Pygments-2.8.0.dist-info/AUTHORS} +26 -3
- data/vendor/pygments-main/Pygments-2.8.0.dist-info/INSTALLER +1 -0
- data/vendor/pygments-main/{LICENSE → Pygments-2.8.0.dist-info/LICENSE} +1 -1
- data/vendor/pygments-main/Pygments-2.8.0.dist-info/METADATA +48 -0
- data/vendor/pygments-main/Pygments-2.8.0.dist-info/RECORD +494 -0
- data/vendor/pygments-main/Pygments-2.8.0.dist-info/REQUESTED +0 -0
- data/vendor/pygments-main/Pygments-2.8.0.dist-info/WHEEL +5 -0
- data/vendor/pygments-main/Pygments-2.8.0.dist-info/entry_points.txt +3 -0
- data/vendor/pygments-main/Pygments-2.8.0.dist-info/top_level.txt +1 -0
- data/vendor/pygments-main/bin/pygmentize +8 -0
- data/vendor/pygments-main/pygments/__init__.py +6 -12
- data/vendor/pygments-main/pygments/__main__.py +17 -0
- data/vendor/pygments-main/pygments/cmdline.py +213 -184
- data/vendor/pygments-main/pygments/console.py +6 -10
- data/vendor/pygments-main/pygments/filter.py +4 -7
- data/vendor/pygments-main/pygments/filters/__init__.py +609 -22
- data/vendor/pygments-main/pygments/formatter.py +4 -5
- data/vendor/pygments-main/pygments/formatters/__init__.py +10 -10
- data/vendor/pygments-main/pygments/formatters/_mapping.py +1 -4
- data/vendor/pygments-main/pygments/formatters/bbcode.py +1 -2
- data/vendor/pygments-main/pygments/formatters/html.py +242 -139
- data/vendor/pygments-main/pygments/formatters/img.py +91 -50
- data/vendor/pygments-main/pygments/formatters/irc.py +39 -40
- data/vendor/pygments-main/pygments/formatters/latex.py +62 -33
- data/vendor/pygments-main/pygments/formatters/other.py +18 -17
- data/vendor/pygments-main/pygments/formatters/rtf.py +29 -30
- data/vendor/pygments-main/pygments/formatters/svg.py +40 -5
- data/vendor/pygments-main/pygments/formatters/terminal.py +25 -32
- data/vendor/pygments-main/pygments/formatters/terminal256.py +45 -14
- data/vendor/pygments-main/pygments/lexer.py +47 -44
- data/vendor/pygments-main/pygments/lexers/__init__.py +29 -17
- data/vendor/pygments-main/pygments/lexers/_asy_builtins.py +5 -6
- data/vendor/pygments-main/pygments/lexers/_cl_builtins.py +15 -16
- data/vendor/pygments-main/pygments/lexers/_cocoa_builtins.py +21 -18
- data/vendor/pygments-main/pygments/lexers/_csound_builtins.py +1717 -1339
- data/vendor/pygments-main/pygments/lexers/_lasso_builtins.py +1 -2
- data/vendor/pygments-main/pygments/lexers/_lua_builtins.py +2 -5
- data/vendor/pygments-main/pygments/lexers/_mapping.py +79 -31
- data/vendor/pygments-main/pygments/lexers/_mql_builtins.py +2 -3
- data/vendor/pygments-main/pygments/lexers/_mysql_builtins.py +1281 -0
- data/vendor/pygments-main/pygments/lexers/_openedge_builtins.py +439 -386
- data/vendor/pygments-main/pygments/lexers/_php_builtins.py +17 -21
- data/vendor/pygments-main/pygments/lexers/_postgres_builtins.py +73 -17
- data/vendor/pygments-main/pygments/lexers/_scilab_builtins.py +2 -3
- data/vendor/pygments-main/pygments/lexers/_sourcemod_builtins.py +1 -4
- data/vendor/pygments-main/pygments/lexers/_stan_builtins.py +151 -126
- data/vendor/pygments-main/pygments/lexers/_stata_builtins.py +96 -58
- data/vendor/pygments-main/pygments/lexers/_tsql_builtins.py +1 -2
- data/vendor/pygments-main/pygments/lexers/_usd_builtins.py +112 -0
- data/vendor/pygments-main/pygments/lexers/_vbscript_builtins.py +279 -0
- data/vendor/pygments-main/pygments/lexers/_vim_builtins.py +1 -2
- data/vendor/pygments-main/pygments/lexers/actionscript.py +14 -10
- data/vendor/pygments-main/pygments/lexers/agile.py +1 -2
- data/vendor/pygments-main/pygments/lexers/algebra.py +20 -2
- data/vendor/pygments-main/pygments/lexers/ambient.py +2 -3
- data/vendor/pygments-main/pygments/lexers/amdgpu.py +48 -0
- data/vendor/pygments-main/pygments/lexers/ampl.py +3 -4
- data/vendor/pygments-main/pygments/lexers/apl.py +15 -16
- data/vendor/pygments-main/pygments/lexers/archetype.py +4 -5
- data/vendor/pygments-main/pygments/lexers/arrow.py +116 -0
- data/vendor/pygments-main/pygments/lexers/asm.py +440 -77
- data/vendor/pygments-main/pygments/lexers/automation.py +7 -2
- data/vendor/pygments-main/pygments/lexers/bare.py +103 -0
- data/vendor/pygments-main/pygments/lexers/basic.py +168 -7
- data/vendor/pygments-main/pygments/lexers/bibtex.py +5 -6
- data/vendor/pygments-main/pygments/lexers/boa.py +101 -0
- data/vendor/pygments-main/pygments/lexers/business.py +19 -5
- data/vendor/pygments-main/pygments/lexers/c_cpp.py +138 -48
- data/vendor/pygments-main/pygments/lexers/c_like.py +67 -43
- data/vendor/pygments-main/pygments/lexers/capnproto.py +7 -8
- data/vendor/pygments-main/pygments/lexers/cddl.py +190 -0
- data/vendor/pygments-main/pygments/lexers/chapel.py +25 -16
- data/vendor/pygments-main/pygments/lexers/clean.py +135 -245
- data/vendor/pygments-main/pygments/lexers/compiled.py +1 -2
- data/vendor/pygments-main/pygments/lexers/configs.py +190 -38
- data/vendor/pygments-main/pygments/lexers/console.py +1 -2
- data/vendor/pygments-main/pygments/lexers/crystal.py +54 -81
- data/vendor/pygments-main/pygments/lexers/csound.py +288 -188
- data/vendor/pygments-main/pygments/lexers/css.py +28 -23
- data/vendor/pygments-main/pygments/lexers/d.py +12 -8
- data/vendor/pygments-main/pygments/lexers/dalvik.py +1 -2
- data/vendor/pygments-main/pygments/lexers/data.py +240 -98
- data/vendor/pygments-main/pygments/lexers/devicetree.py +108 -0
- data/vendor/pygments-main/pygments/lexers/diff.py +4 -5
- data/vendor/pygments-main/pygments/lexers/dotnet.py +46 -31
- data/vendor/pygments-main/pygments/lexers/dsls.py +146 -65
- data/vendor/pygments-main/pygments/lexers/dylan.py +16 -19
- data/vendor/pygments-main/pygments/lexers/ecl.py +17 -5
- data/vendor/pygments-main/pygments/lexers/eiffel.py +2 -3
- data/vendor/pygments-main/pygments/lexers/elm.py +5 -6
- data/vendor/pygments-main/pygments/lexers/email.py +150 -0
- data/vendor/pygments-main/pygments/lexers/erlang.py +29 -33
- data/vendor/pygments-main/pygments/lexers/esoteric.py +46 -20
- data/vendor/pygments-main/pygments/lexers/ezhil.py +21 -14
- data/vendor/pygments-main/pygments/lexers/factor.py +3 -4
- data/vendor/pygments-main/pygments/lexers/fantom.py +1 -2
- data/vendor/pygments-main/pygments/lexers/felix.py +1 -2
- data/vendor/pygments-main/pygments/lexers/floscript.py +82 -0
- data/vendor/pygments-main/pygments/lexers/forth.py +41 -41
- data/vendor/pygments-main/pygments/lexers/fortran.py +13 -10
- data/vendor/pygments-main/pygments/lexers/foxpro.py +2 -3
- data/vendor/pygments-main/pygments/lexers/freefem.py +897 -0
- data/vendor/pygments-main/pygments/lexers/functional.py +1 -2
- data/vendor/pygments-main/pygments/lexers/futhark.py +110 -0
- data/vendor/pygments-main/pygments/lexers/gdscript.py +345 -0
- data/vendor/pygments-main/pygments/lexers/go.py +2 -3
- data/vendor/pygments-main/pygments/lexers/grammar_notation.py +62 -6
- data/vendor/pygments-main/pygments/lexers/graph.py +14 -10
- data/vendor/pygments-main/pygments/lexers/graphics.py +274 -28
- data/vendor/pygments-main/pygments/lexers/graphviz.py +57 -0
- data/vendor/pygments-main/pygments/lexers/haskell.py +48 -22
- data/vendor/pygments-main/pygments/lexers/haxe.py +8 -9
- data/vendor/pygments-main/pygments/lexers/hdl.py +176 -90
- data/vendor/pygments-main/pygments/lexers/hexdump.py +1 -2
- data/vendor/pygments-main/pygments/lexers/html.py +37 -26
- data/vendor/pygments-main/pygments/lexers/idl.py +19 -9
- data/vendor/pygments-main/pygments/lexers/igor.py +244 -113
- data/vendor/pygments-main/pygments/lexers/inferno.py +2 -3
- data/vendor/pygments-main/pygments/lexers/installers.py +1 -2
- data/vendor/pygments-main/pygments/lexers/int_fiction.py +40 -16
- data/vendor/pygments-main/pygments/lexers/iolang.py +3 -4
- data/vendor/pygments-main/pygments/lexers/j.py +4 -5
- data/vendor/pygments-main/pygments/lexers/javascript.py +115 -104
- data/vendor/pygments-main/pygments/lexers/julia.py +44 -47
- data/vendor/pygments-main/pygments/lexers/jvm.py +368 -202
- data/vendor/pygments-main/pygments/lexers/lisp.py +887 -810
- data/vendor/pygments-main/pygments/lexers/make.py +12 -9
- data/vendor/pygments-main/pygments/lexers/markup.py +212 -45
- data/vendor/pygments-main/pygments/lexers/math.py +1 -2
- data/vendor/pygments-main/pygments/lexers/matlab.py +2705 -88
- data/vendor/pygments-main/pygments/lexers/mime.py +225 -0
- data/vendor/pygments-main/pygments/lexers/ml.py +203 -15
- data/vendor/pygments-main/pygments/lexers/modeling.py +26 -19
- data/vendor/pygments-main/pygments/lexers/modula2.py +27 -9
- data/vendor/pygments-main/pygments/lexers/monte.py +1 -2
- data/vendor/pygments-main/pygments/lexers/mosel.py +447 -0
- data/vendor/pygments-main/pygments/lexers/ncl.py +1 -2
- data/vendor/pygments-main/pygments/lexers/nimrod.py +4 -5
- data/vendor/pygments-main/pygments/lexers/nit.py +1 -2
- data/vendor/pygments-main/pygments/lexers/nix.py +1 -2
- data/vendor/pygments-main/pygments/lexers/oberon.py +17 -2
- data/vendor/pygments-main/pygments/lexers/objective.py +18 -19
- data/vendor/pygments-main/pygments/lexers/ooc.py +1 -2
- data/vendor/pygments-main/pygments/lexers/other.py +1 -2
- data/vendor/pygments-main/pygments/lexers/parasail.py +1 -2
- data/vendor/pygments-main/pygments/lexers/parsers.py +47 -83
- data/vendor/pygments-main/pygments/lexers/pascal.py +22 -23
- data/vendor/pygments-main/pygments/lexers/pawn.py +31 -28
- data/vendor/pygments-main/pygments/lexers/perl.py +260 -149
- data/vendor/pygments-main/pygments/lexers/php.py +66 -13
- data/vendor/pygments-main/pygments/lexers/pointless.py +70 -0
- data/vendor/pygments-main/pygments/lexers/pony.py +93 -0
- data/vendor/pygments-main/pygments/lexers/praat.py +38 -31
- data/vendor/pygments-main/pygments/lexers/prolog.py +38 -39
- data/vendor/pygments-main/pygments/lexers/promql.py +182 -0
- data/vendor/pygments-main/pygments/lexers/python.py +450 -231
- data/vendor/pygments-main/pygments/lexers/qvt.py +6 -7
- data/vendor/pygments-main/pygments/lexers/r.py +13 -276
- data/vendor/pygments-main/pygments/lexers/rdf.py +232 -40
- data/vendor/pygments-main/pygments/lexers/rebol.py +8 -9
- data/vendor/pygments-main/pygments/lexers/resource.py +2 -3
- data/vendor/pygments-main/pygments/lexers/ride.py +138 -0
- data/vendor/pygments-main/pygments/lexers/rnc.py +1 -2
- data/vendor/pygments-main/pygments/lexers/roboconf.py +1 -2
- data/vendor/pygments-main/pygments/lexers/robotframework.py +23 -32
- data/vendor/pygments-main/pygments/lexers/ruby.py +50 -46
- data/vendor/pygments-main/pygments/lexers/rust.py +76 -73
- data/vendor/pygments-main/pygments/lexers/sas.py +1 -2
- data/vendor/pygments-main/pygments/lexers/scdoc.py +82 -0
- data/vendor/pygments-main/pygments/lexers/scripting.py +79 -18
- data/vendor/pygments-main/pygments/lexers/sgf.py +60 -0
- data/vendor/pygments-main/pygments/lexers/shell.py +164 -49
- data/vendor/pygments-main/pygments/lexers/sieve.py +68 -0
- data/vendor/pygments-main/pygments/lexers/slash.py +184 -0
- data/vendor/pygments-main/pygments/lexers/smalltalk.py +2 -3
- data/vendor/pygments-main/pygments/lexers/smv.py +3 -4
- data/vendor/pygments-main/pygments/lexers/snobol.py +1 -2
- data/vendor/pygments-main/pygments/lexers/solidity.py +91 -0
- data/vendor/pygments-main/pygments/lexers/special.py +31 -28
- data/vendor/pygments-main/pygments/lexers/sql.py +330 -179
- data/vendor/pygments-main/pygments/lexers/stata.py +107 -45
- data/vendor/pygments-main/pygments/lexers/supercollider.py +8 -4
- data/vendor/pygments-main/pygments/lexers/tcl.py +1 -2
- data/vendor/pygments-main/pygments/lexers/templates.py +116 -136
- data/vendor/pygments-main/pygments/lexers/teraterm.py +334 -0
- data/vendor/pygments-main/pygments/lexers/testing.py +6 -7
- data/vendor/pygments-main/pygments/lexers/text.py +2 -2
- data/vendor/pygments-main/pygments/lexers/textedit.py +6 -7
- data/vendor/pygments-main/pygments/lexers/textfmts.py +146 -14
- data/vendor/pygments-main/pygments/lexers/theorem.py +74 -56
- data/vendor/pygments-main/pygments/lexers/tnt.py +262 -0
- data/vendor/pygments-main/pygments/lexers/trafficscript.py +1 -2
- data/vendor/pygments-main/pygments/lexers/typoscript.py +4 -12
- data/vendor/pygments-main/pygments/lexers/unicon.py +411 -0
- data/vendor/pygments-main/pygments/lexers/urbi.py +16 -4
- data/vendor/pygments-main/pygments/lexers/usd.py +89 -0
- data/vendor/pygments-main/pygments/lexers/varnish.py +4 -5
- data/vendor/pygments-main/pygments/lexers/verification.py +13 -11
- data/vendor/pygments-main/pygments/lexers/web.py +1 -2
- data/vendor/pygments-main/pygments/lexers/webidl.py +298 -0
- data/vendor/pygments-main/pygments/lexers/webmisc.py +35 -32
- data/vendor/pygments-main/pygments/lexers/whiley.py +5 -6
- data/vendor/pygments-main/pygments/lexers/x10.py +2 -3
- data/vendor/pygments-main/pygments/lexers/xorg.py +5 -5
- data/vendor/pygments-main/pygments/lexers/yang.py +103 -0
- data/vendor/pygments-main/pygments/lexers/zig.py +123 -0
- data/vendor/pygments-main/pygments/modeline.py +1 -2
- data/vendor/pygments-main/pygments/plugin.py +4 -3
- data/vendor/pygments-main/pygments/regexopt.py +1 -2
- data/vendor/pygments-main/pygments/scanner.py +2 -3
- data/vendor/pygments-main/pygments/sphinxext.py +2 -5
- data/vendor/pygments-main/pygments/style.py +61 -25
- data/vendor/pygments-main/pygments/styles/__init__.py +12 -5
- data/vendor/pygments-main/pygments/styles/abap.py +1 -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 -2
- data/vendor/pygments-main/pygments/styles/borland.py +1 -2
- data/vendor/pygments-main/pygments/styles/bw.py +1 -2
- data/vendor/pygments-main/pygments/styles/colorful.py +1 -2
- data/vendor/pygments-main/pygments/styles/default.py +1 -2
- 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/fruity.py +1 -2
- data/vendor/pygments-main/pygments/styles/igor.py +1 -2
- data/vendor/pygments-main/pygments/styles/inkpot.py +66 -0
- data/vendor/pygments-main/pygments/styles/lovelace.py +1 -2
- data/vendor/pygments-main/pygments/styles/manni.py +1 -2
- data/vendor/pygments-main/pygments/styles/material.py +118 -0
- data/vendor/pygments-main/pygments/styles/monokai.py +4 -4
- data/vendor/pygments-main/pygments/styles/murphy.py +1 -2
- data/vendor/pygments-main/pygments/styles/native.py +1 -2
- data/vendor/pygments-main/pygments/styles/paraiso_dark.py +1 -2
- data/vendor/pygments-main/pygments/styles/paraiso_light.py +1 -2
- data/vendor/pygments-main/pygments/styles/pastie.py +1 -2
- data/vendor/pygments-main/pygments/styles/perldoc.py +1 -2
- data/vendor/pygments-main/pygments/styles/rainbow_dash.py +1 -2
- data/vendor/pygments-main/pygments/styles/rrt.py +1 -2
- data/vendor/pygments-main/pygments/styles/sas.py +1 -2
- data/vendor/pygments-main/pygments/styles/solarized.py +136 -0
- data/vendor/pygments-main/pygments/styles/stata_dark.py +40 -0
- data/vendor/pygments-main/pygments/styles/{stata.py → stata_light.py} +14 -16
- data/vendor/pygments-main/pygments/styles/tango.py +1 -2
- data/vendor/pygments-main/pygments/styles/trac.py +1 -2
- 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 -2
- data/vendor/pygments-main/pygments/styles/zenburn.py +80 -0
- data/vendor/pygments-main/pygments/token.py +1 -2
- data/vendor/pygments-main/pygments/unistring.py +47 -109
- data/vendor/pygments-main/pygments/util.py +16 -96
- metadata +76 -137
- data/CHANGELOG.md +0 -105
- data/README.md +0 -121
- data/circle.yml +0 -20
- data/test/test_data.c +0 -2581
- data/test/test_data.py +0 -514
- data/test/test_data_generated +0 -2582
- data/vendor/custom_lexers/github.py +0 -565
- data/vendor/pygments-main/CHANGES +0 -1186
- data/vendor/pygments-main/MANIFEST.in +0 -6
- data/vendor/pygments-main/Makefile +0 -65
- data/vendor/pygments-main/README.rst +0 -39
- data/vendor/pygments-main/REVISION +0 -1
- data/vendor/pygments-main/TODO +0 -12
- data/vendor/pygments-main/doc/Makefile +0 -153
- data/vendor/pygments-main/doc/_static/favicon.ico +0 -0
- data/vendor/pygments-main/doc/_static/logo_new.png +0 -0
- data/vendor/pygments-main/doc/_static/logo_only.png +0 -0
- data/vendor/pygments-main/doc/_templates/docssidebar.html +0 -3
- data/vendor/pygments-main/doc/_templates/indexsidebar.html +0 -25
- data/vendor/pygments-main/doc/_themes/pygments14/layout.html +0 -98
- data/vendor/pygments-main/doc/_themes/pygments14/static/bodybg.png +0 -0
- data/vendor/pygments-main/doc/_themes/pygments14/static/docbg.png +0 -0
- data/vendor/pygments-main/doc/_themes/pygments14/static/listitem.png +0 -0
- data/vendor/pygments-main/doc/_themes/pygments14/static/logo.png +0 -0
- data/vendor/pygments-main/doc/_themes/pygments14/static/pocoo.png +0 -0
- data/vendor/pygments-main/doc/_themes/pygments14/static/pygments14.css_t +0 -401
- data/vendor/pygments-main/doc/_themes/pygments14/theme.conf +0 -15
- data/vendor/pygments-main/doc/conf.py +0 -241
- data/vendor/pygments-main/doc/docs/api.rst +0 -354
- data/vendor/pygments-main/doc/docs/authors.rst +0 -4
- data/vendor/pygments-main/doc/docs/changelog.rst +0 -1
- data/vendor/pygments-main/doc/docs/cmdline.rst +0 -166
- data/vendor/pygments-main/doc/docs/filterdevelopment.rst +0 -71
- data/vendor/pygments-main/doc/docs/filters.rst +0 -41
- data/vendor/pygments-main/doc/docs/formatterdevelopment.rst +0 -169
- data/vendor/pygments-main/doc/docs/formatters.rst +0 -48
- data/vendor/pygments-main/doc/docs/index.rst +0 -66
- data/vendor/pygments-main/doc/docs/integrate.rst +0 -40
- data/vendor/pygments-main/doc/docs/java.rst +0 -70
- data/vendor/pygments-main/doc/docs/lexerdevelopment.rst +0 -728
- data/vendor/pygments-main/doc/docs/lexers.rst +0 -69
- data/vendor/pygments-main/doc/docs/moinmoin.rst +0 -39
- data/vendor/pygments-main/doc/docs/plugins.rst +0 -93
- data/vendor/pygments-main/doc/docs/quickstart.rst +0 -205
- data/vendor/pygments-main/doc/docs/rstdirective.rst +0 -22
- data/vendor/pygments-main/doc/docs/styles.rst +0 -201
- data/vendor/pygments-main/doc/docs/tokens.rst +0 -372
- data/vendor/pygments-main/doc/docs/unicode.rst +0 -58
- data/vendor/pygments-main/doc/download.rst +0 -41
- data/vendor/pygments-main/doc/faq.rst +0 -139
- data/vendor/pygments-main/doc/index.rst +0 -54
- data/vendor/pygments-main/doc/languages.rst +0 -154
- data/vendor/pygments-main/doc/make.bat +0 -190
- data/vendor/pygments-main/doc/pygmentize.1 +0 -94
- data/vendor/pygments-main/external/autopygmentize +0 -101
- data/vendor/pygments-main/external/lasso-builtins-generator-9.lasso +0 -162
- data/vendor/pygments-main/external/markdown-processor.py +0 -67
- data/vendor/pygments-main/external/moin-parser.py +0 -112
- data/vendor/pygments-main/external/pygments.bashcomp +0 -38
- data/vendor/pygments-main/external/rst-directive.py +0 -82
- data/vendor/pygments-main/pygmentize +0 -8
- data/vendor/pygments-main/pygments/lexers/github.py +0 -565
- data/vendor/pygments-main/requirements.txt +0 -5
- data/vendor/pygments-main/scripts/check_sources.py +0 -211
- data/vendor/pygments-main/scripts/debug_lexer.py +0 -246
- data/vendor/pygments-main/scripts/detect_missing_analyse_text.py +0 -33
- data/vendor/pygments-main/scripts/epydoc.css +0 -280
- data/vendor/pygments-main/scripts/get_vimkw.py +0 -74
- data/vendor/pygments-main/scripts/pylintrc +0 -301
- data/vendor/pygments-main/scripts/vim2pygments.py +0 -935
- data/vendor/pygments-main/setup.cfg +0 -10
- data/vendor/pygments-main/setup.py +0 -77
- data/vendor/pygments-main/tox.ini +0 -7
- data/vendor/simplejson/.gitignore +0 -10
- data/vendor/simplejson/.travis.yml +0 -5
- data/vendor/simplejson/CHANGES.txt +0 -291
- data/vendor/simplejson/LICENSE.txt +0 -19
- data/vendor/simplejson/MANIFEST.in +0 -5
- data/vendor/simplejson/README.rst +0 -19
- data/vendor/simplejson/conf.py +0 -179
- data/vendor/simplejson/index.rst +0 -628
- data/vendor/simplejson/scripts/make_docs.py +0 -18
- data/vendor/simplejson/setup.py +0 -104
- data/vendor/simplejson/simplejson/__init__.py +0 -510
- data/vendor/simplejson/simplejson/_speedups.c +0 -2745
- data/vendor/simplejson/simplejson/decoder.py +0 -425
- data/vendor/simplejson/simplejson/encoder.py +0 -567
- data/vendor/simplejson/simplejson/ordered_dict.py +0 -119
- data/vendor/simplejson/simplejson/scanner.py +0 -77
- data/vendor/simplejson/simplejson/tests/__init__.py +0 -67
- data/vendor/simplejson/simplejson/tests/test_bigint_as_string.py +0 -55
- data/vendor/simplejson/simplejson/tests/test_check_circular.py +0 -30
- data/vendor/simplejson/simplejson/tests/test_decimal.py +0 -66
- data/vendor/simplejson/simplejson/tests/test_decode.py +0 -83
- data/vendor/simplejson/simplejson/tests/test_default.py +0 -9
- data/vendor/simplejson/simplejson/tests/test_dump.py +0 -67
- data/vendor/simplejson/simplejson/tests/test_encode_basestring_ascii.py +0 -46
- data/vendor/simplejson/simplejson/tests/test_encode_for_html.py +0 -32
- data/vendor/simplejson/simplejson/tests/test_errors.py +0 -34
- data/vendor/simplejson/simplejson/tests/test_fail.py +0 -91
- data/vendor/simplejson/simplejson/tests/test_float.py +0 -19
- data/vendor/simplejson/simplejson/tests/test_indent.py +0 -86
- data/vendor/simplejson/simplejson/tests/test_item_sort_key.py +0 -20
- data/vendor/simplejson/simplejson/tests/test_namedtuple.py +0 -121
- data/vendor/simplejson/simplejson/tests/test_pass1.py +0 -76
- data/vendor/simplejson/simplejson/tests/test_pass2.py +0 -14
- data/vendor/simplejson/simplejson/tests/test_pass3.py +0 -20
- data/vendor/simplejson/simplejson/tests/test_recursion.py +0 -67
- data/vendor/simplejson/simplejson/tests/test_scanstring.py +0 -117
- data/vendor/simplejson/simplejson/tests/test_separators.py +0 -42
- data/vendor/simplejson/simplejson/tests/test_speedups.py +0 -20
- data/vendor/simplejson/simplejson/tests/test_tuple.py +0 -49
- data/vendor/simplejson/simplejson/tests/test_unicode.py +0 -109
- data/vendor/simplejson/simplejson/tool.py +0 -39
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
1
|
"""
|
|
3
2
|
pygments.lexers.ncl
|
|
4
3
|
~~~~~~~~~~~~~~~~~~~
|
|
5
4
|
|
|
6
5
|
Lexers for NCAR Command Language.
|
|
7
6
|
|
|
8
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
|
|
9
8
|
:license: BSD, see LICENSE for details.
|
|
10
9
|
"""
|
|
11
10
|
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
1
|
"""
|
|
3
2
|
pygments.lexers.nimrod
|
|
4
3
|
~~~~~~~~~~~~~~~~~~~~~~
|
|
5
4
|
|
|
6
5
|
Lexer for the Nim language (formerly known as Nimrod).
|
|
7
6
|
|
|
8
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
|
|
9
8
|
:license: BSD, see LICENSE for details.
|
|
10
9
|
"""
|
|
11
10
|
|
|
@@ -43,14 +42,14 @@ class NimrodLexer(RegexLexer):
|
|
|
43
42
|
return "|".join(newWords)
|
|
44
43
|
|
|
45
44
|
keywords = [
|
|
46
|
-
'addr', 'and', 'as', 'asm', '
|
|
45
|
+
'addr', 'and', 'as', 'asm', 'bind', 'block', 'break', 'case',
|
|
47
46
|
'cast', 'concept', 'const', 'continue', 'converter', 'defer', 'discard',
|
|
48
47
|
'distinct', 'div', 'do', 'elif', 'else', 'end', 'enum', 'except',
|
|
49
48
|
'export', 'finally', 'for', 'func', 'if', 'in', 'yield', 'interface',
|
|
50
49
|
'is', 'isnot', 'iterator', 'let', 'macro', 'method', 'mixin', 'mod',
|
|
51
50
|
'not', 'notin', 'object', 'of', 'or', 'out', 'proc', 'ptr', 'raise',
|
|
52
|
-
'ref', 'return', '
|
|
53
|
-
'tuple', 'type', '
|
|
51
|
+
'ref', 'return', 'shl', 'shr', 'static', 'template', 'try',
|
|
52
|
+
'tuple', 'type', 'using', 'when', 'while', 'xor'
|
|
54
53
|
]
|
|
55
54
|
|
|
56
55
|
keywordsPseudo = [
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
1
|
"""
|
|
3
2
|
pygments.lexers.nit
|
|
4
3
|
~~~~~~~~~~~~~~~~~~~
|
|
5
4
|
|
|
6
5
|
Lexer for the Nit language.
|
|
7
6
|
|
|
8
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
|
|
9
8
|
:license: BSD, see LICENSE for details.
|
|
10
9
|
"""
|
|
11
10
|
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
1
|
"""
|
|
3
2
|
pygments.lexers.nix
|
|
4
3
|
~~~~~~~~~~~~~~~~~~~
|
|
5
4
|
|
|
6
5
|
Lexers for the NixOS Nix language.
|
|
7
6
|
|
|
8
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
|
|
9
8
|
:license: BSD, see LICENSE for details.
|
|
10
9
|
"""
|
|
11
10
|
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
1
|
"""
|
|
3
2
|
pygments.lexers.oberon
|
|
4
3
|
~~~~~~~~~~~~~~~~~~~~~~
|
|
5
4
|
|
|
6
5
|
Lexers for Oberon family languages.
|
|
7
6
|
|
|
8
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
|
|
9
8
|
:license: BSD, see LICENSE for details.
|
|
10
9
|
"""
|
|
11
10
|
|
|
@@ -103,3 +102,19 @@ class ComponentPascalLexer(RegexLexer):
|
|
|
103
102
|
(r'(TRUE|FALSE|NIL|INF)\b', Keyword.Constant),
|
|
104
103
|
]
|
|
105
104
|
}
|
|
105
|
+
|
|
106
|
+
def analyse_text(text):
|
|
107
|
+
"""The only other lexer using .cp is the C++ one, so we check if for
|
|
108
|
+
a few common Pascal keywords here. Those are unfortunately quite
|
|
109
|
+
common across various business languages as well."""
|
|
110
|
+
result = 0
|
|
111
|
+
if 'BEGIN' in text:
|
|
112
|
+
result += 0.01
|
|
113
|
+
if 'END' in text:
|
|
114
|
+
result += 0.01
|
|
115
|
+
if 'PROCEDURE' in text:
|
|
116
|
+
result += 0.01
|
|
117
|
+
if 'END' in text:
|
|
118
|
+
result += 0.01
|
|
119
|
+
|
|
120
|
+
return result
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
1
|
"""
|
|
3
2
|
pygments.lexers.objective
|
|
4
3
|
~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
5
4
|
|
|
6
5
|
Lexers for Objective-C family languages.
|
|
7
6
|
|
|
8
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
|
|
9
8
|
:license: BSD, see LICENSE for details.
|
|
10
9
|
"""
|
|
11
10
|
|
|
@@ -66,7 +65,7 @@ def objective(baselexer):
|
|
|
66
65
|
'copy', 'retain', 'assign', 'unsafe_unretained', 'atomic', 'nonatomic',
|
|
67
66
|
'readonly', 'readwrite', 'setter', 'getter', 'typeof', 'in',
|
|
68
67
|
'out', 'inout', 'release', 'class', '@dynamic', '@optional',
|
|
69
|
-
'@required', '@autoreleasepool'), suffix=r'\b'),
|
|
68
|
+
'@required', '@autoreleasepool', '@import'), suffix=r'\b'),
|
|
70
69
|
Keyword),
|
|
71
70
|
(words(('id', 'instancetype', 'Class', 'IMP', 'SEL', 'BOOL',
|
|
72
71
|
'IBOutlet', 'IBAction', 'unichar'), suffix=r'\b'),
|
|
@@ -87,26 +86,26 @@ def objective(baselexer):
|
|
|
87
86
|
],
|
|
88
87
|
'oc_classname': [
|
|
89
88
|
# interface definition that inherits
|
|
90
|
-
('([a-zA-Z$_][\w$]*)(\s*:\s*)([a-zA-Z$_][\w$]*)?(\s*)(\{)',
|
|
89
|
+
(r'([a-zA-Z$_][\w$]*)(\s*:\s*)([a-zA-Z$_][\w$]*)?(\s*)(\{)',
|
|
91
90
|
bygroups(Name.Class, Text, Name.Class, Text, Punctuation),
|
|
92
91
|
('#pop', 'oc_ivars')),
|
|
93
|
-
('([a-zA-Z$_][\w$]*)(\s*:\s*)([a-zA-Z$_][\w$]*)?',
|
|
92
|
+
(r'([a-zA-Z$_][\w$]*)(\s*:\s*)([a-zA-Z$_][\w$]*)?',
|
|
94
93
|
bygroups(Name.Class, Text, Name.Class), '#pop'),
|
|
95
94
|
# interface definition for a category
|
|
96
|
-
('([a-zA-Z$_][\w$]*)(\s*)(\([a-zA-Z$_][\w$]*\))(\s*)(\{)',
|
|
95
|
+
(r'([a-zA-Z$_][\w$]*)(\s*)(\([a-zA-Z$_][\w$]*\))(\s*)(\{)',
|
|
97
96
|
bygroups(Name.Class, Text, Name.Label, Text, Punctuation),
|
|
98
97
|
('#pop', 'oc_ivars')),
|
|
99
|
-
('([a-zA-Z$_][\w$]*)(\s*)(\([a-zA-Z$_][\w$]*\))',
|
|
98
|
+
(r'([a-zA-Z$_][\w$]*)(\s*)(\([a-zA-Z$_][\w$]*\))',
|
|
100
99
|
bygroups(Name.Class, Text, Name.Label), '#pop'),
|
|
101
100
|
# simple interface / implementation
|
|
102
|
-
('([a-zA-Z$_][\w$]*)(\s*)(\{)',
|
|
101
|
+
(r'([a-zA-Z$_][\w$]*)(\s*)(\{)',
|
|
103
102
|
bygroups(Name.Class, Text, Punctuation), ('#pop', 'oc_ivars')),
|
|
104
|
-
('([a-zA-Z$_][\w$]*)', Name.Class, '#pop')
|
|
103
|
+
(r'([a-zA-Z$_][\w$]*)', Name.Class, '#pop')
|
|
105
104
|
],
|
|
106
105
|
'oc_forward_classname': [
|
|
107
|
-
('([a-zA-Z$_][\w$]*)(\s*,\s*)',
|
|
106
|
+
(r'([a-zA-Z$_][\w$]*)(\s*,\s*)',
|
|
108
107
|
bygroups(Name.Class, Text), 'oc_forward_classname'),
|
|
109
|
-
('([a-zA-Z$_][\w$]*)(\s*;?)',
|
|
108
|
+
(r'([a-zA-Z$_][\w$]*)(\s*;?)',
|
|
110
109
|
bygroups(Name.Class, Text), '#pop')
|
|
111
110
|
],
|
|
112
111
|
'oc_ivars': [
|
|
@@ -244,28 +243,28 @@ class LogosLexer(ObjectiveCppLexer):
|
|
|
244
243
|
inherit,
|
|
245
244
|
],
|
|
246
245
|
'logos_init_directive': [
|
|
247
|
-
('\s+', Text),
|
|
246
|
+
(r'\s+', Text),
|
|
248
247
|
(',', Punctuation, ('logos_init_directive', '#pop')),
|
|
249
|
-
('([a-zA-Z$_][\w$]*)(\s*)(=)(\s*)([^);]*)',
|
|
248
|
+
(r'([a-zA-Z$_][\w$]*)(\s*)(=)(\s*)([^);]*)',
|
|
250
249
|
bygroups(Name.Class, Text, Punctuation, Text, Text)),
|
|
251
|
-
('([a-zA-Z$_][\w$]*)', Name.Class),
|
|
252
|
-
('\)', Punctuation, '#pop'),
|
|
250
|
+
(r'([a-zA-Z$_][\w$]*)', Name.Class),
|
|
251
|
+
(r'\)', Punctuation, '#pop'),
|
|
253
252
|
],
|
|
254
253
|
'logos_classname': [
|
|
255
|
-
('([a-zA-Z$_][\w$]*)(\s*:\s*)([a-zA-Z$_][\w$]*)?',
|
|
254
|
+
(r'([a-zA-Z$_][\w$]*)(\s*:\s*)([a-zA-Z$_][\w$]*)?',
|
|
256
255
|
bygroups(Name.Class, Text, Name.Class), '#pop'),
|
|
257
|
-
('([a-zA-Z$_][\w$]*)', Name.Class, '#pop')
|
|
256
|
+
(r'([a-zA-Z$_][\w$]*)', Name.Class, '#pop')
|
|
258
257
|
],
|
|
259
258
|
'root': [
|
|
260
259
|
(r'(%subclass)(\s+)', bygroups(Keyword, Text),
|
|
261
260
|
'logos_classname'),
|
|
262
261
|
(r'(%hook|%group)(\s+)([a-zA-Z$_][\w$]+)',
|
|
263
262
|
bygroups(Keyword, Text, Name.Class)),
|
|
264
|
-
(r'(%config)(\s*\(\s*)(\w+)(\s
|
|
263
|
+
(r'(%config)(\s*\(\s*)(\w+)(\s*=)(.*?)(\)\s*)',
|
|
265
264
|
bygroups(Keyword, Text, Name.Variable, Text, String, Text)),
|
|
266
265
|
(r'(%ctor)(\s*)(\{)', bygroups(Keyword, Text, Punctuation),
|
|
267
266
|
'function'),
|
|
268
|
-
(r'(%new)(\s*)(\()(
|
|
267
|
+
(r'(%new)(\s*)(\()(.*?)(\))',
|
|
269
268
|
bygroups(Keyword, Text, Keyword, String, Keyword)),
|
|
270
269
|
(r'(\s*)(%end)(\s*)', bygroups(Text, Keyword, Text)),
|
|
271
270
|
inherit,
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
1
|
"""
|
|
3
2
|
pygments.lexers.ooc
|
|
4
3
|
~~~~~~~~~~~~~~~~~~~
|
|
5
4
|
|
|
6
5
|
Lexers for the Ooc language.
|
|
7
6
|
|
|
8
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
|
|
9
8
|
:license: BSD, see LICENSE for details.
|
|
10
9
|
"""
|
|
11
10
|
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
1
|
"""
|
|
3
2
|
pygments.lexers.other
|
|
4
3
|
~~~~~~~~~~~~~~~~~~~~~
|
|
5
4
|
|
|
6
5
|
Just export lexer classes previously contained in this module.
|
|
7
6
|
|
|
8
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
|
|
9
8
|
:license: BSD, see LICENSE for details.
|
|
10
9
|
"""
|
|
11
10
|
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
1
|
"""
|
|
3
2
|
pygments.lexers.parasail
|
|
4
3
|
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
5
4
|
|
|
6
5
|
Lexer for ParaSail.
|
|
7
6
|
|
|
8
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
|
|
9
8
|
:license: BSD, see LICENSE for details.
|
|
10
9
|
"""
|
|
11
10
|
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
1
|
"""
|
|
3
2
|
pygments.lexers.parsers
|
|
4
3
|
~~~~~~~~~~~~~~~~~~~~~~~
|
|
5
4
|
|
|
6
5
|
Lexers for parser generators.
|
|
7
6
|
|
|
8
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
|
|
9
8
|
:license: BSD, see LICENSE for details.
|
|
10
9
|
"""
|
|
11
10
|
|
|
@@ -28,7 +27,6 @@ __all__ = ['RagelLexer', 'RagelEmbeddedLexer', 'RagelCLexer', 'RagelDLexer',
|
|
|
28
27
|
'RagelCppLexer', 'RagelObjectiveCLexer', 'RagelRubyLexer',
|
|
29
28
|
'RagelJavaLexer', 'AntlrLexer', 'AntlrPythonLexer',
|
|
30
29
|
'AntlrPerlLexer', 'AntlrRubyLexer', 'AntlrCppLexer',
|
|
31
|
-
# 'AntlrCLexer',
|
|
32
30
|
'AntlrCSharpLexer', 'AntlrObjectiveCLexer',
|
|
33
31
|
'AntlrJavaLexer', 'AntlrActionScriptLexer',
|
|
34
32
|
'TreetopLexer', 'EbnfLexer']
|
|
@@ -65,10 +63,10 @@ class RagelLexer(RegexLexer):
|
|
|
65
63
|
(r'[+-]?[0-9]+', Number.Integer),
|
|
66
64
|
],
|
|
67
65
|
'literals': [
|
|
68
|
-
(r'"(\\\\|\\
|
|
69
|
-
(r"'(\\\\|\\
|
|
70
|
-
(r'\[(
|
|
71
|
-
(r'/(?!\*)(
|
|
66
|
+
(r'"(\\\\|\\[^\\]|[^"\\])*"', String.Double),
|
|
67
|
+
(r"'(\\\\|\\[^\\]|[^'\\])*'", String.Single),
|
|
68
|
+
(r'\[(\\\\|\\[^\\]|[^\\\]])*\]', String), # square bracket literals
|
|
69
|
+
(r'/(?!\*)(\\\\|\\[^\\]|[^/\\])*/', String.Regex), # regular expressions
|
|
72
70
|
],
|
|
73
71
|
'identifiers': [
|
|
74
72
|
(r'[a-zA-Z_]\w*', Name.Variable),
|
|
@@ -107,15 +105,15 @@ class RagelLexer(RegexLexer):
|
|
|
107
105
|
r'[^\\]\\[{}]', # allow escaped { or }
|
|
108
106
|
|
|
109
107
|
# strings and comments may safely contain unsafe characters
|
|
110
|
-
r'"(\\\\|\\
|
|
111
|
-
r"'(\\\\|\\
|
|
108
|
+
r'"(\\\\|\\[^\\]|[^"\\])*"',
|
|
109
|
+
r"'(\\\\|\\[^\\]|[^'\\])*'",
|
|
112
110
|
r'//.*$\n?', # single line comment
|
|
113
111
|
r'/\*(.|\n)*?\*/', # multi-line javadoc-style comment
|
|
114
112
|
r'\#.*$\n?', # ruby comment
|
|
115
113
|
|
|
116
114
|
# regular expression: There's no reason for it to start
|
|
117
115
|
# with a * and this stops confusion with comments.
|
|
118
|
-
r'/(?!\*)(
|
|
116
|
+
r'/(?!\*)(\\\\|\\[^\\]|[^/\\])*/',
|
|
119
117
|
|
|
120
118
|
# / is safe now that we've handled regex and javadoc comments
|
|
121
119
|
r'/',
|
|
@@ -148,12 +146,12 @@ class RagelEmbeddedLexer(RegexLexer):
|
|
|
148
146
|
r'%(?=[^%]|$)', # a single % sign is okay, just not 2 of them
|
|
149
147
|
|
|
150
148
|
# strings and comments may safely contain unsafe characters
|
|
151
|
-
r'"(\\\\|\\
|
|
152
|
-
r"'(\\\\|\\
|
|
149
|
+
r'"(\\\\|\\[^\\]|[^"\\])*"',
|
|
150
|
+
r"'(\\\\|\\[^\\]|[^'\\])*'",
|
|
153
151
|
r'/\*(.|\n)*?\*/', # multi-line javadoc-style comment
|
|
154
152
|
r'//.*$\n?', # single line comment
|
|
155
153
|
r'\#.*$\n?', # ruby/ragel comment
|
|
156
|
-
r'/(?!\*)(
|
|
154
|
+
r'/(?!\*)(\\\\|\\[^\\]|[^/\\])*/', # regular expression
|
|
157
155
|
|
|
158
156
|
# / is safe now that we've handled regex and javadoc comments
|
|
159
157
|
r'/',
|
|
@@ -183,7 +181,7 @@ class RagelEmbeddedLexer(RegexLexer):
|
|
|
183
181
|
|
|
184
182
|
# specifically allow regex followed immediately by *
|
|
185
183
|
# so it doesn't get mistaken for a comment
|
|
186
|
-
r'/(?!\*)(
|
|
184
|
+
r'/(?!\*)(\\\\|\\[^\\]|[^/\\])*/\*',
|
|
187
185
|
|
|
188
186
|
# allow / as long as it's not followed by another / or by a *
|
|
189
187
|
r'/(?=[^/*]|$)',
|
|
@@ -194,9 +192,9 @@ class RagelEmbeddedLexer(RegexLexer):
|
|
|
194
192
|
)) + r')+',
|
|
195
193
|
|
|
196
194
|
# strings and comments may safely contain unsafe characters
|
|
197
|
-
r'"(\\\\|\\
|
|
198
|
-
r"'(\\\\|\\
|
|
199
|
-
r"\[(
|
|
195
|
+
r'"(\\\\|\\[^\\]|[^"\\])*"',
|
|
196
|
+
r"'(\\\\|\\[^\\]|[^'\\])*'",
|
|
197
|
+
r"\[(\\\\|\\[^\\]|[^\]\\])*\]", # square bracket literal
|
|
200
198
|
r'/\*(.|\n)*?\*/', # multi-line javadoc-style comment
|
|
201
199
|
r'//.*$\n?', # single line comment
|
|
202
200
|
r'\#.*$\n?', # ruby/ragel comment
|
|
@@ -222,8 +220,7 @@ class RagelRubyLexer(DelegatingLexer):
|
|
|
222
220
|
filenames = ['*.rl']
|
|
223
221
|
|
|
224
222
|
def __init__(self, **options):
|
|
225
|
-
super(
|
|
226
|
-
**options)
|
|
223
|
+
super().__init__(RubyLexer, RagelEmbeddedLexer, **options)
|
|
227
224
|
|
|
228
225
|
def analyse_text(text):
|
|
229
226
|
return '@LANG: ruby' in text
|
|
@@ -241,8 +238,7 @@ class RagelCLexer(DelegatingLexer):
|
|
|
241
238
|
filenames = ['*.rl']
|
|
242
239
|
|
|
243
240
|
def __init__(self, **options):
|
|
244
|
-
super(
|
|
245
|
-
**options)
|
|
241
|
+
super().__init__(CLexer, RagelEmbeddedLexer, **options)
|
|
246
242
|
|
|
247
243
|
def analyse_text(text):
|
|
248
244
|
return '@LANG: c' in text
|
|
@@ -260,7 +256,7 @@ class RagelDLexer(DelegatingLexer):
|
|
|
260
256
|
filenames = ['*.rl']
|
|
261
257
|
|
|
262
258
|
def __init__(self, **options):
|
|
263
|
-
super(
|
|
259
|
+
super().__init__(DLexer, RagelEmbeddedLexer, **options)
|
|
264
260
|
|
|
265
261
|
def analyse_text(text):
|
|
266
262
|
return '@LANG: d' in text
|
|
@@ -278,7 +274,7 @@ class RagelCppLexer(DelegatingLexer):
|
|
|
278
274
|
filenames = ['*.rl']
|
|
279
275
|
|
|
280
276
|
def __init__(self, **options):
|
|
281
|
-
super(
|
|
277
|
+
super().__init__(CppLexer, RagelEmbeddedLexer, **options)
|
|
282
278
|
|
|
283
279
|
def analyse_text(text):
|
|
284
280
|
return '@LANG: c++' in text
|
|
@@ -296,9 +292,7 @@ class RagelObjectiveCLexer(DelegatingLexer):
|
|
|
296
292
|
filenames = ['*.rl']
|
|
297
293
|
|
|
298
294
|
def __init__(self, **options):
|
|
299
|
-
super(
|
|
300
|
-
RagelEmbeddedLexer,
|
|
301
|
-
**options)
|
|
295
|
+
super().__init__(ObjectiveCLexer, RagelEmbeddedLexer, **options)
|
|
302
296
|
|
|
303
297
|
def analyse_text(text):
|
|
304
298
|
return '@LANG: objc' in text
|
|
@@ -316,8 +310,7 @@ class RagelJavaLexer(DelegatingLexer):
|
|
|
316
310
|
filenames = ['*.rl']
|
|
317
311
|
|
|
318
312
|
def __init__(self, **options):
|
|
319
|
-
super(
|
|
320
|
-
**options)
|
|
313
|
+
super().__init__(JavaLexer, RagelEmbeddedLexer, **options)
|
|
321
314
|
|
|
322
315
|
def analyse_text(text):
|
|
323
316
|
return '@LANG: java' in text
|
|
@@ -364,13 +357,13 @@ class AntlrLexer(RegexLexer):
|
|
|
364
357
|
# tokensSpec
|
|
365
358
|
(r'tokens\b', Keyword, 'tokens'),
|
|
366
359
|
# attrScope
|
|
367
|
-
(r'(scope)(\s*)(' + _id + ')(\s*)(\{)',
|
|
360
|
+
(r'(scope)(\s*)(' + _id + r')(\s*)(\{)',
|
|
368
361
|
bygroups(Keyword, Whitespace, Name.Variable, Whitespace,
|
|
369
362
|
Punctuation), 'action'),
|
|
370
363
|
# exception
|
|
371
364
|
(r'(catch|finally)\b', Keyword, 'exception'),
|
|
372
365
|
# action
|
|
373
|
-
(r'(@' + _id + ')(\s*)(::)?(\s*)(' + _id + ')(\s*)(\{)',
|
|
366
|
+
(r'(@' + _id + r')(\s*)(::)?(\s*)(' + _id + r')(\s*)(\{)',
|
|
374
367
|
bygroups(Name.Label, Whitespace, Punctuation, Whitespace,
|
|
375
368
|
Name.Label, Whitespace, Punctuation), 'action'),
|
|
376
369
|
# rule
|
|
@@ -405,10 +398,10 @@ class AntlrLexer(RegexLexer):
|
|
|
405
398
|
# L173 ANTLRv3.g from ANTLR book
|
|
406
399
|
(r'(scope)(\s+)(\{)', bygroups(Keyword, Whitespace, Punctuation),
|
|
407
400
|
'action'),
|
|
408
|
-
(r'(scope)(\s+)(' + _id + ')(\s*)(;)',
|
|
401
|
+
(r'(scope)(\s+)(' + _id + r')(\s*)(;)',
|
|
409
402
|
bygroups(Keyword, Whitespace, Name.Label, Whitespace, Punctuation)),
|
|
410
403
|
# ruleAction
|
|
411
|
-
(r'(@' + _id + ')(\s*)(\{)',
|
|
404
|
+
(r'(@' + _id + r')(\s*)(\{)',
|
|
412
405
|
bygroups(Name.Label, Whitespace, Punctuation), 'action'),
|
|
413
406
|
# finished prelims, go to rule alts!
|
|
414
407
|
(r':', Punctuation, '#pop')
|
|
@@ -422,8 +415,8 @@ class AntlrLexer(RegexLexer):
|
|
|
422
415
|
(r':', Punctuation),
|
|
423
416
|
|
|
424
417
|
# literals
|
|
425
|
-
(r"
|
|
426
|
-
(r'
|
|
418
|
+
(r'"(\\\\|\\[^\\]|[^"\\])*"', String.Double),
|
|
419
|
+
(r"'(\\\\|\\[^\\]|[^'\\])*'", String.Single),
|
|
427
420
|
(r'<<([^>]|>[^>])>>', String),
|
|
428
421
|
# identifiers
|
|
429
422
|
# Tokens start with capital letter.
|
|
@@ -442,7 +435,7 @@ class AntlrLexer(RegexLexer):
|
|
|
442
435
|
include('comments'),
|
|
443
436
|
(r'\{', Punctuation),
|
|
444
437
|
(r'(' + _TOKEN_REF + r')(\s*)(=)?(\s*)(' + _STRING_LITERAL
|
|
445
|
-
+ ')?(\s*)(;)',
|
|
438
|
+
+ r')?(\s*)(;)',
|
|
446
439
|
bygroups(Name.Label, Whitespace, Punctuation, Whitespace,
|
|
447
440
|
String, Whitespace, Punctuation)),
|
|
448
441
|
(r'\}', Punctuation, '#pop'),
|
|
@@ -452,7 +445,7 @@ class AntlrLexer(RegexLexer):
|
|
|
452
445
|
include('comments'),
|
|
453
446
|
(r'\{', Punctuation),
|
|
454
447
|
(r'(' + _id + r')(\s*)(=)(\s*)(' +
|
|
455
|
-
'|'.join((_id, _STRING_LITERAL, _INT, '\*')) + ')(\s*)(;)',
|
|
448
|
+
'|'.join((_id, _STRING_LITERAL, _INT, r'\*')) + r')(\s*)(;)',
|
|
456
449
|
bygroups(Name.Variable, Whitespace, Punctuation, Whitespace,
|
|
457
450
|
Text, Whitespace, Punctuation)),
|
|
458
451
|
(r'\}', Punctuation, '#pop'),
|
|
@@ -462,14 +455,14 @@ class AntlrLexer(RegexLexer):
|
|
|
462
455
|
r'[^${}\'"/\\]+', # exclude unsafe characters
|
|
463
456
|
|
|
464
457
|
# strings and comments may safely contain unsafe characters
|
|
465
|
-
r'"(\\\\|\\
|
|
466
|
-
r"'(\\\\|\\
|
|
458
|
+
r'"(\\\\|\\[^\\]|[^"\\])*"',
|
|
459
|
+
r"'(\\\\|\\[^\\]|[^'\\])*'",
|
|
467
460
|
r'//.*$\n?', # single line comment
|
|
468
461
|
r'/\*(.|\n)*?\*/', # multi-line javadoc-style comment
|
|
469
462
|
|
|
470
463
|
# regular expression: There's no reason for it to start
|
|
471
464
|
# with a * and this stops confusion with comments.
|
|
472
|
-
r'/(?!\*)(
|
|
465
|
+
r'/(?!\*)(\\\\|\\[^\\]|[^/\\])*/',
|
|
473
466
|
|
|
474
467
|
# backslashes are okay, as long as we are not backslashing a %
|
|
475
468
|
r'\\(?!%)',
|
|
@@ -489,14 +482,14 @@ class AntlrLexer(RegexLexer):
|
|
|
489
482
|
r'[^$\[\]\'"/]+', # exclude unsafe characters
|
|
490
483
|
|
|
491
484
|
# strings and comments may safely contain unsafe characters
|
|
492
|
-
r'"(\\\\|\\
|
|
493
|
-
r"'(\\\\|\\
|
|
485
|
+
r'"(\\\\|\\[^\\]|[^"\\])*"',
|
|
486
|
+
r"'(\\\\|\\[^\\]|[^'\\])*'",
|
|
494
487
|
r'//.*$\n?', # single line comment
|
|
495
488
|
r'/\*(.|\n)*?\*/', # multi-line javadoc-style comment
|
|
496
489
|
|
|
497
490
|
# regular expression: There's no reason for it to start
|
|
498
491
|
# with a * and this stops confusion with comments.
|
|
499
|
-
r'/(?!\*)(
|
|
492
|
+
r'/(?!\*)(\\\\|\\[^\\]|[^/\\])*/',
|
|
500
493
|
|
|
501
494
|
# Now that we've handled regex and javadoc comments
|
|
502
495
|
# it's safe to let / through.
|
|
@@ -515,30 +508,8 @@ class AntlrLexer(RegexLexer):
|
|
|
515
508
|
def analyse_text(text):
|
|
516
509
|
return re.search(r'^\s*grammar\s+[a-zA-Z0-9]+\s*;', text, re.M)
|
|
517
510
|
|
|
518
|
-
# http://www.antlr.org/wiki/display/ANTLR3/Code+Generation+Targets
|
|
519
|
-
|
|
520
|
-
# TH: I'm not aware of any language features of C++ that will cause
|
|
521
|
-
# incorrect lexing of C files. Antlr doesn't appear to make a distinction,
|
|
522
|
-
# so just assume they're C++. No idea how to make Objective C work in the
|
|
523
|
-
# future.
|
|
524
|
-
|
|
525
|
-
# class AntlrCLexer(DelegatingLexer):
|
|
526
|
-
# """
|
|
527
|
-
# ANTLR with C Target
|
|
528
|
-
#
|
|
529
|
-
# .. versionadded:: 1.1
|
|
530
|
-
# """
|
|
531
|
-
#
|
|
532
|
-
# name = 'ANTLR With C Target'
|
|
533
|
-
# aliases = ['antlr-c']
|
|
534
|
-
# filenames = ['*.G', '*.g']
|
|
535
|
-
#
|
|
536
|
-
# def __init__(self, **options):
|
|
537
|
-
# super(AntlrCLexer, self).__init__(CLexer, AntlrLexer, **options)
|
|
538
|
-
#
|
|
539
|
-
# def analyse_text(text):
|
|
540
|
-
# return re.match(r'^\s*language\s*=\s*C\s*;', text)
|
|
541
511
|
|
|
512
|
+
# http://www.antlr.org/wiki/display/ANTLR3/Code+Generation+Targets
|
|
542
513
|
|
|
543
514
|
class AntlrCppLexer(DelegatingLexer):
|
|
544
515
|
"""
|
|
@@ -552,7 +523,7 @@ class AntlrCppLexer(DelegatingLexer):
|
|
|
552
523
|
filenames = ['*.G', '*.g']
|
|
553
524
|
|
|
554
525
|
def __init__(self, **options):
|
|
555
|
-
super(
|
|
526
|
+
super().__init__(CppLexer, AntlrLexer, **options)
|
|
556
527
|
|
|
557
528
|
def analyse_text(text):
|
|
558
529
|
return AntlrLexer.analyse_text(text) and \
|
|
@@ -571,8 +542,7 @@ class AntlrObjectiveCLexer(DelegatingLexer):
|
|
|
571
542
|
filenames = ['*.G', '*.g']
|
|
572
543
|
|
|
573
544
|
def __init__(self, **options):
|
|
574
|
-
super(
|
|
575
|
-
AntlrLexer, **options)
|
|
545
|
+
super().__init__(ObjectiveCLexer, AntlrLexer, **options)
|
|
576
546
|
|
|
577
547
|
def analyse_text(text):
|
|
578
548
|
return AntlrLexer.analyse_text(text) and \
|
|
@@ -591,8 +561,7 @@ class AntlrCSharpLexer(DelegatingLexer):
|
|
|
591
561
|
filenames = ['*.G', '*.g']
|
|
592
562
|
|
|
593
563
|
def __init__(self, **options):
|
|
594
|
-
super(
|
|
595
|
-
**options)
|
|
564
|
+
super().__init__(CSharpLexer, AntlrLexer, **options)
|
|
596
565
|
|
|
597
566
|
def analyse_text(text):
|
|
598
567
|
return AntlrLexer.analyse_text(text) and \
|
|
@@ -611,8 +580,7 @@ class AntlrPythonLexer(DelegatingLexer):
|
|
|
611
580
|
filenames = ['*.G', '*.g']
|
|
612
581
|
|
|
613
582
|
def __init__(self, **options):
|
|
614
|
-
super(
|
|
615
|
-
**options)
|
|
583
|
+
super().__init__(PythonLexer, AntlrLexer, **options)
|
|
616
584
|
|
|
617
585
|
def analyse_text(text):
|
|
618
586
|
return AntlrLexer.analyse_text(text) and \
|
|
@@ -631,8 +599,7 @@ class AntlrJavaLexer(DelegatingLexer):
|
|
|
631
599
|
filenames = ['*.G', '*.g']
|
|
632
600
|
|
|
633
601
|
def __init__(self, **options):
|
|
634
|
-
super(
|
|
635
|
-
**options)
|
|
602
|
+
super().__init__(JavaLexer, AntlrLexer, **options)
|
|
636
603
|
|
|
637
604
|
def analyse_text(text):
|
|
638
605
|
# Antlr language is Java by default
|
|
@@ -651,8 +618,7 @@ class AntlrRubyLexer(DelegatingLexer):
|
|
|
651
618
|
filenames = ['*.G', '*.g']
|
|
652
619
|
|
|
653
620
|
def __init__(self, **options):
|
|
654
|
-
super(
|
|
655
|
-
**options)
|
|
621
|
+
super().__init__(RubyLexer, AntlrLexer, **options)
|
|
656
622
|
|
|
657
623
|
def analyse_text(text):
|
|
658
624
|
return AntlrLexer.analyse_text(text) and \
|
|
@@ -671,8 +637,7 @@ class AntlrPerlLexer(DelegatingLexer):
|
|
|
671
637
|
filenames = ['*.G', '*.g']
|
|
672
638
|
|
|
673
639
|
def __init__(self, **options):
|
|
674
|
-
super(
|
|
675
|
-
**options)
|
|
640
|
+
super().__init__(PerlLexer, AntlrLexer, **options)
|
|
676
641
|
|
|
677
642
|
def analyse_text(text):
|
|
678
643
|
return AntlrLexer.analyse_text(text) and \
|
|
@@ -692,8 +657,7 @@ class AntlrActionScriptLexer(DelegatingLexer):
|
|
|
692
657
|
|
|
693
658
|
def __init__(self, **options):
|
|
694
659
|
from pygments.lexers.actionscript import ActionScriptLexer
|
|
695
|
-
super(
|
|
696
|
-
AntlrLexer, **options)
|
|
660
|
+
super().__init__(ActionScriptLexer, AntlrLexer, **options)
|
|
697
661
|
|
|
698
662
|
def analyse_text(text):
|
|
699
663
|
return AntlrLexer.analyse_text(text) and \
|
|
@@ -736,8 +700,8 @@ class TreetopBaseLexer(RegexLexer):
|
|
|
736
700
|
'rule': [
|
|
737
701
|
include('space'),
|
|
738
702
|
include('end'),
|
|
739
|
-
(r'"(\\\\|\\
|
|
740
|
-
(r"'(\\\\|\\
|
|
703
|
+
(r'"(\\\\|\\[^\\]|[^"\\])*"', String.Double),
|
|
704
|
+
(r"'(\\\\|\\[^\\]|[^'\\])*'", String.Single),
|
|
741
705
|
(r'([A-Za-z_]\w*)(:)', bygroups(Name.Label, Punctuation)),
|
|
742
706
|
(r'[A-Za-z_]\w*', Name),
|
|
743
707
|
(r'[()]', Punctuation),
|
|
@@ -781,7 +745,7 @@ class TreetopLexer(DelegatingLexer):
|
|
|
781
745
|
filenames = ['*.treetop', '*.tt']
|
|
782
746
|
|
|
783
747
|
def __init__(self, **options):
|
|
784
|
-
super(
|
|
748
|
+
super().__init__(RubyLexer, TreetopBaseLexer, **options)
|
|
785
749
|
|
|
786
750
|
|
|
787
751
|
class EbnfLexer(RegexLexer):
|