pygments.rb 1.1.0 → 2.0.0.rc2
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 +28 -0
- data/.github/workflows/release.yml +24 -0
- data/.gitignore +5 -5
- data/CHANGELOG.adoc +119 -0
- data/Gemfile +3 -1
- data/LICENSE +1 -1
- data/README.adoc +161 -0
- data/Rakefile +12 -19
- data/bench.rb +8 -7
- data/cache-lexers.rb +3 -2
- data/lexers +0 -0
- data/lib/pygments.rb +11 -16
- data/lib/pygments/lexer.rb +6 -4
- data/lib/pygments/mentos.py +23 -66
- data/lib/pygments/popen.rb +155 -207
- data/lib/pygments/version.rb +3 -1
- data/pygments.rb.gemspec +11 -9
- data/test/test_pygments.rb +53 -83
- data/vendor/pygments-main/{AUTHORS → Pygments-2.7.3.dist-info/AUTHORS} +23 -3
- data/vendor/pygments-main/Pygments-2.7.3.dist-info/INSTALLER +1 -0
- data/vendor/pygments-main/{LICENSE → Pygments-2.7.3.dist-info/LICENSE} +1 -1
- data/vendor/pygments-main/Pygments-2.7.3.dist-info/METADATA +49 -0
- data/vendor/pygments-main/Pygments-2.7.3.dist-info/RECORD +482 -0
- data/vendor/pygments-main/Pygments-2.7.3.dist-info/REQUESTED +0 -0
- data/vendor/pygments-main/Pygments-2.7.3.dist-info/WHEEL +5 -0
- data/vendor/pygments-main/Pygments-2.7.3.dist-info/entry_points.txt +3 -0
- data/vendor/pygments-main/Pygments-2.7.3.dist-info/top_level.txt +1 -0
- data/vendor/pygments-main/bin/pygmentize +8 -0
- data/vendor/pygments-main/pygments/__init__.py +6 -11
- data/vendor/pygments-main/pygments/__main__.py +18 -0
- data/vendor/pygments-main/pygments/cmdline.py +94 -41
- data/vendor/pygments-main/pygments/console.py +6 -9
- data/vendor/pygments-main/pygments/filter.py +4 -6
- data/vendor/pygments-main/pygments/filters/__init__.py +609 -21
- data/vendor/pygments-main/pygments/formatter.py +4 -4
- data/vendor/pygments-main/pygments/formatters/__init__.py +42 -6
- data/vendor/pygments-main/pygments/formatters/_mapping.py +1 -3
- data/vendor/pygments-main/pygments/formatters/bbcode.py +1 -1
- data/vendor/pygments-main/pygments/formatters/html.py +223 -135
- data/vendor/pygments-main/pygments/formatters/img.py +102 -38
- data/vendor/pygments-main/pygments/formatters/irc.py +39 -39
- data/vendor/pygments-main/pygments/formatters/latex.py +56 -26
- data/vendor/pygments-main/pygments/formatters/other.py +12 -8
- data/vendor/pygments-main/pygments/formatters/rtf.py +29 -29
- data/vendor/pygments-main/pygments/formatters/svg.py +38 -4
- data/vendor/pygments-main/pygments/formatters/terminal.py +25 -31
- data/vendor/pygments-main/pygments/formatters/terminal256.py +22 -12
- data/vendor/pygments-main/pygments/lexer.py +41 -39
- data/vendor/pygments-main/pygments/lexers/__init__.py +62 -15
- data/vendor/pygments-main/pygments/lexers/_asy_builtins.py +5 -5
- data/vendor/pygments-main/pygments/lexers/_cl_builtins.py +15 -15
- data/vendor/pygments-main/pygments/lexers/_cocoa_builtins.py +11 -12
- data/vendor/pygments-main/pygments/lexers/_csound_builtins.py +1717 -1338
- data/vendor/pygments-main/pygments/lexers/_lasso_builtins.py +8 -1
- data/vendor/pygments-main/pygments/lexers/_lua_builtins.py +2 -4
- data/vendor/pygments-main/pygments/lexers/_mapping.py +79 -33
- data/vendor/pygments-main/pygments/lexers/_mql_builtins.py +2 -2
- data/vendor/pygments-main/pygments/lexers/_mysql_builtins.py +1282 -0
- data/vendor/pygments-main/pygments/lexers/_openedge_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_php_builtins.py +17 -20
- data/vendor/pygments-main/pygments/lexers/_postgres_builtins.py +73 -16
- data/vendor/pygments-main/pygments/lexers/_scilab_builtins.py +2 -2
- data/vendor/pygments-main/pygments/lexers/_sourcemod_builtins.py +1 -3
- data/vendor/pygments-main/pygments/lexers/_stan_builtins.py +151 -125
- data/vendor/pygments-main/pygments/lexers/_stata_builtins.py +6 -4
- data/vendor/pygments-main/pygments/lexers/_tsql_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_usd_builtins.py +113 -0
- data/vendor/pygments-main/pygments/lexers/_vbscript_builtins.py +280 -0
- data/vendor/pygments-main/pygments/lexers/_vim_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/actionscript.py +8 -3
- data/vendor/pygments-main/pygments/lexers/agile.py +1 -1
- data/vendor/pygments-main/pygments/lexers/algebra.py +20 -1
- data/vendor/pygments-main/pygments/lexers/ambient.py +1 -1
- data/vendor/pygments-main/pygments/lexers/ampl.py +3 -3
- data/vendor/pygments-main/pygments/lexers/apl.py +15 -15
- data/vendor/pygments-main/pygments/lexers/archetype.py +3 -3
- data/vendor/pygments-main/pygments/lexers/arrow.py +117 -0
- data/vendor/pygments-main/pygments/lexers/asm.py +445 -70
- data/vendor/pygments-main/pygments/lexers/automation.py +3 -3
- data/vendor/pygments-main/pygments/lexers/bare.py +104 -0
- data/vendor/pygments-main/pygments/lexers/basic.py +166 -4
- data/vendor/pygments-main/pygments/lexers/bibtex.py +13 -9
- data/vendor/pygments-main/pygments/lexers/boa.py +102 -0
- data/vendor/pygments-main/pygments/lexers/business.py +69 -36
- data/vendor/pygments-main/pygments/lexers/c_cpp.py +137 -45
- data/vendor/pygments-main/pygments/lexers/c_like.py +68 -43
- data/vendor/pygments-main/pygments/lexers/capnproto.py +20 -21
- data/vendor/pygments-main/pygments/lexers/chapel.py +25 -14
- data/vendor/pygments-main/pygments/lexers/clean.py +135 -244
- data/vendor/pygments-main/pygments/lexers/compiled.py +1 -1
- data/vendor/pygments-main/pygments/lexers/configs.py +188 -37
- data/vendor/pygments-main/pygments/lexers/console.py +1 -1
- data/vendor/pygments-main/pygments/lexers/crystal.py +31 -23
- data/vendor/pygments-main/pygments/lexers/csound.py +288 -187
- data/vendor/pygments-main/pygments/lexers/css.py +18 -16
- data/vendor/pygments-main/pygments/lexers/d.py +10 -5
- data/vendor/pygments-main/pygments/lexers/dalvik.py +1 -1
- data/vendor/pygments-main/pygments/lexers/data.py +240 -97
- data/vendor/pygments-main/pygments/lexers/devicetree.py +109 -0
- data/vendor/pygments-main/pygments/lexers/diff.py +4 -4
- data/vendor/pygments-main/pygments/lexers/dotnet.py +40 -24
- data/vendor/pygments-main/pygments/lexers/dsls.py +147 -65
- data/vendor/pygments-main/pygments/lexers/dylan.py +16 -18
- data/vendor/pygments-main/pygments/lexers/ecl.py +16 -2
- data/vendor/pygments-main/pygments/lexers/eiffel.py +1 -1
- data/vendor/pygments-main/pygments/lexers/elm.py +5 -5
- data/vendor/pygments-main/pygments/lexers/email.py +151 -0
- data/vendor/pygments-main/pygments/lexers/erlang.py +29 -32
- data/vendor/pygments-main/pygments/lexers/esoteric.py +54 -25
- data/vendor/pygments-main/pygments/lexers/ezhil.py +24 -15
- data/vendor/pygments-main/pygments/lexers/factor.py +1 -1
- data/vendor/pygments-main/pygments/lexers/fantom.py +1 -1
- data/vendor/pygments-main/pygments/lexers/felix.py +1 -1
- data/vendor/pygments-main/pygments/lexers/floscript.py +83 -0
- data/vendor/pygments-main/pygments/lexers/forth.py +41 -40
- data/vendor/pygments-main/pygments/lexers/fortran.py +5 -4
- data/vendor/pygments-main/pygments/lexers/foxpro.py +2 -2
- data/vendor/pygments-main/pygments/lexers/freefem.py +898 -0
- data/vendor/pygments-main/pygments/lexers/functional.py +1 -1
- data/vendor/pygments-main/pygments/lexers/gdscript.py +346 -0
- data/vendor/pygments-main/pygments/lexers/go.py +1 -1
- data/vendor/pygments-main/pygments/lexers/grammar_notation.py +63 -6
- data/vendor/pygments-main/pygments/lexers/graph.py +14 -9
- data/vendor/pygments-main/pygments/lexers/graphics.py +272 -25
- data/vendor/pygments-main/pygments/lexers/haskell.py +52 -22
- data/vendor/pygments-main/pygments/lexers/haxe.py +6 -6
- data/vendor/pygments-main/pygments/lexers/hdl.py +176 -86
- data/vendor/pygments-main/pygments/lexers/hexdump.py +18 -12
- data/vendor/pygments-main/pygments/lexers/html.py +31 -19
- data/vendor/pygments-main/pygments/lexers/idl.py +20 -9
- data/vendor/pygments-main/pygments/lexers/igor.py +244 -112
- data/vendor/pygments-main/pygments/lexers/inferno.py +2 -2
- data/vendor/pygments-main/pygments/lexers/installers.py +1 -1
- data/vendor/pygments-main/pygments/lexers/int_fiction.py +40 -15
- data/vendor/pygments-main/pygments/lexers/iolang.py +2 -2
- data/vendor/pygments-main/pygments/lexers/j.py +3 -3
- data/vendor/pygments-main/pygments/lexers/javascript.py +100 -66
- data/vendor/pygments-main/pygments/lexers/julia.py +46 -48
- data/vendor/pygments-main/pygments/lexers/jvm.py +265 -165
- data/vendor/pygments-main/pygments/lexers/lisp.py +882 -804
- data/vendor/pygments-main/pygments/lexers/make.py +10 -6
- data/vendor/pygments-main/pygments/lexers/markup.py +213 -43
- data/vendor/pygments-main/pygments/lexers/math.py +1 -1
- data/vendor/pygments-main/pygments/lexers/matlab.py +98 -41
- data/vendor/pygments-main/pygments/lexers/mime.py +226 -0
- data/vendor/pygments-main/pygments/lexers/ml.py +198 -9
- data/vendor/pygments-main/pygments/lexers/modeling.py +26 -18
- data/vendor/pygments-main/pygments/lexers/modula2.py +25 -6
- data/vendor/pygments-main/pygments/lexers/monte.py +4 -3
- data/vendor/pygments-main/pygments/lexers/mosel.py +448 -0
- data/vendor/pygments-main/pygments/lexers/ncl.py +85 -244
- data/vendor/pygments-main/pygments/lexers/nimrod.py +4 -4
- data/vendor/pygments-main/pygments/lexers/nit.py +1 -1
- data/vendor/pygments-main/pygments/lexers/nix.py +1 -1
- data/vendor/pygments-main/pygments/lexers/oberon.py +17 -1
- data/vendor/pygments-main/pygments/lexers/objective.py +16 -16
- data/vendor/pygments-main/pygments/lexers/ooc.py +1 -1
- data/vendor/pygments-main/pygments/lexers/other.py +1 -1
- data/vendor/pygments-main/pygments/lexers/parasail.py +1 -1
- data/vendor/pygments-main/pygments/lexers/parsers.py +23 -58
- data/vendor/pygments-main/pygments/lexers/pascal.py +23 -23
- data/vendor/pygments-main/pygments/lexers/pawn.py +30 -24
- data/vendor/pygments-main/pygments/lexers/perl.py +276 -160
- data/vendor/pygments-main/pygments/lexers/php.py +64 -10
- data/vendor/pygments-main/pygments/lexers/pointless.py +71 -0
- data/vendor/pygments-main/pygments/lexers/pony.py +94 -0
- data/vendor/pygments-main/pygments/lexers/praat.py +38 -30
- data/vendor/pygments-main/pygments/lexers/prolog.py +36 -36
- data/vendor/pygments-main/pygments/lexers/promql.py +183 -0
- data/vendor/pygments-main/pygments/lexers/python.py +439 -226
- data/vendor/pygments-main/pygments/lexers/qvt.py +6 -6
- data/vendor/pygments-main/pygments/lexers/r.py +13 -275
- data/vendor/pygments-main/pygments/lexers/rdf.py +232 -39
- data/vendor/pygments-main/pygments/lexers/rebol.py +8 -8
- data/vendor/pygments-main/pygments/lexers/resource.py +2 -2
- data/vendor/pygments-main/pygments/lexers/ride.py +139 -0
- data/vendor/pygments-main/pygments/lexers/rnc.py +1 -1
- data/vendor/pygments-main/pygments/lexers/roboconf.py +1 -1
- data/vendor/pygments-main/pygments/lexers/robotframework.py +23 -31
- data/vendor/pygments-main/pygments/lexers/ruby.py +22 -24
- data/vendor/pygments-main/pygments/lexers/rust.py +86 -71
- data/vendor/pygments-main/pygments/lexers/sas.py +7 -7
- data/vendor/pygments-main/pygments/lexers/scdoc.py +83 -0
- data/vendor/pygments-main/pygments/lexers/scripting.py +75 -13
- data/vendor/pygments-main/pygments/lexers/sgf.py +61 -0
- data/vendor/pygments-main/pygments/lexers/shell.py +175 -51
- data/vendor/pygments-main/pygments/lexers/sieve.py +69 -0
- data/vendor/pygments-main/pygments/lexers/slash.py +185 -0
- data/vendor/pygments-main/pygments/lexers/smalltalk.py +2 -2
- data/vendor/pygments-main/pygments/lexers/smv.py +30 -26
- data/vendor/pygments-main/pygments/lexers/snobol.py +1 -1
- data/vendor/pygments-main/pygments/lexers/solidity.py +92 -0
- data/vendor/pygments-main/pygments/lexers/special.py +5 -3
- data/vendor/pygments-main/pygments/lexers/sql.py +333 -177
- data/vendor/pygments-main/pygments/lexers/stata.py +107 -42
- data/vendor/pygments-main/pygments/lexers/supercollider.py +6 -1
- data/vendor/pygments-main/pygments/lexers/tcl.py +1 -1
- data/vendor/pygments-main/pygments/lexers/templates.py +144 -132
- data/vendor/pygments-main/pygments/lexers/teraterm.py +335 -0
- data/vendor/pygments-main/pygments/lexers/testing.py +6 -6
- data/vendor/pygments-main/pygments/lexers/text.py +2 -1
- data/vendor/pygments-main/pygments/lexers/textedit.py +4 -4
- data/vendor/pygments-main/pygments/lexers/textfmts.py +146 -13
- data/vendor/pygments-main/pygments/lexers/theorem.py +69 -53
- data/vendor/pygments-main/pygments/lexers/tnt.py +263 -0
- data/vendor/pygments-main/pygments/lexers/trafficscript.py +1 -1
- data/vendor/pygments-main/pygments/lexers/typoscript.py +8 -14
- data/vendor/pygments-main/pygments/lexers/unicon.py +412 -0
- data/vendor/pygments-main/pygments/lexers/urbi.py +14 -1
- data/vendor/pygments-main/pygments/lexers/usd.py +90 -0
- data/vendor/pygments-main/pygments/lexers/varnish.py +5 -5
- data/vendor/pygments-main/pygments/lexers/verification.py +15 -12
- data/vendor/pygments-main/pygments/lexers/web.py +1 -1
- data/vendor/pygments-main/pygments/lexers/webidl.py +299 -0
- data/vendor/pygments-main/pygments/lexers/webmisc.py +50 -38
- data/vendor/pygments-main/pygments/lexers/whiley.py +11 -12
- data/vendor/pygments-main/pygments/lexers/x10.py +1 -1
- data/vendor/pygments-main/pygments/lexers/xorg.py +37 -0
- data/vendor/pygments-main/pygments/lexers/yang.py +104 -0
- data/vendor/pygments-main/pygments/lexers/zig.py +124 -0
- data/vendor/pygments-main/pygments/modeline.py +6 -5
- data/vendor/pygments-main/pygments/plugin.py +14 -18
- 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 +2 -4
- data/vendor/pygments-main/pygments/style.py +61 -24
- data/vendor/pygments-main/pygments/styles/__init__.py +13 -5
- data/vendor/pygments-main/pygments/styles/abap.py +29 -0
- data/vendor/pygments-main/pygments/styles/algol.py +1 -1
- data/vendor/pygments-main/pygments/styles/algol_nu.py +1 -1
- data/vendor/pygments-main/pygments/styles/arduino.py +2 -2
- data/vendor/pygments-main/pygments/styles/autumn.py +1 -1
- data/vendor/pygments-main/pygments/styles/borland.py +1 -1
- data/vendor/pygments-main/pygments/styles/bw.py +1 -1
- data/vendor/pygments-main/pygments/styles/colorful.py +1 -1
- data/vendor/pygments-main/pygments/styles/default.py +1 -1
- data/vendor/pygments-main/pygments/styles/emacs.py +1 -1
- data/vendor/pygments-main/pygments/styles/friendly.py +1 -1
- data/vendor/pygments-main/pygments/styles/fruity.py +1 -1
- data/vendor/pygments-main/pygments/styles/igor.py +1 -1
- data/vendor/pygments-main/pygments/styles/inkpot.py +67 -0
- data/vendor/pygments-main/pygments/styles/lovelace.py +1 -1
- data/vendor/pygments-main/pygments/styles/manni.py +1 -1
- data/vendor/pygments-main/pygments/styles/monokai.py +4 -3
- data/vendor/pygments-main/pygments/styles/murphy.py +1 -1
- data/vendor/pygments-main/pygments/styles/native.py +1 -1
- data/vendor/pygments-main/pygments/styles/paraiso_dark.py +1 -1
- data/vendor/pygments-main/pygments/styles/paraiso_light.py +1 -1
- data/vendor/pygments-main/pygments/styles/pastie.py +1 -1
- data/vendor/pygments-main/pygments/styles/perldoc.py +1 -1
- data/vendor/pygments-main/pygments/styles/rainbow_dash.py +89 -0
- data/vendor/pygments-main/pygments/styles/rrt.py +1 -1
- data/vendor/pygments-main/pygments/styles/sas.py +3 -0
- data/vendor/pygments-main/pygments/styles/solarized.py +134 -0
- data/vendor/pygments-main/pygments/styles/stata_dark.py +41 -0
- data/vendor/pygments-main/pygments/styles/stata_light.py +39 -0
- data/vendor/pygments-main/pygments/styles/tango.py +1 -1
- data/vendor/pygments-main/pygments/styles/trac.py +1 -1
- data/vendor/pygments-main/pygments/styles/vim.py +1 -1
- data/vendor/pygments-main/pygments/styles/vs.py +1 -1
- data/vendor/pygments-main/pygments/styles/xcode.py +1 -1
- data/vendor/pygments-main/pygments/token.py +1 -1
- data/vendor/pygments-main/pygments/unistring.py +47 -108
- data/vendor/pygments-main/pygments/util.py +19 -95
- metadata +72 -137
- data/CHANGELOG.md +0 -89
- data/README.md +0 -121
- data/circle.yml +0 -20
- 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 -1163
- 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 -331
- 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 -149
- 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 -689
- 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 -84
- 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/pygments/styles/stata.py +0 -37
- 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/find_error.py +0 -1
- 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
data/lib/pygments/version.rb
CHANGED
data/pygments.rb.gemspec
CHANGED
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require File.expand_path('lib/pygments/version', __dir__)
|
|
2
4
|
|
|
3
5
|
Gem::Specification.new do |s|
|
|
4
6
|
s.name = 'pygments.rb'
|
|
@@ -7,19 +9,19 @@ Gem::Specification.new do |s|
|
|
|
7
9
|
s.summary = 'pygments wrapper for ruby'
|
|
8
10
|
s.description = 'pygments.rb exposes the pygments syntax highlighter to Ruby'
|
|
9
11
|
|
|
10
|
-
s.homepage = 'https://github.com/
|
|
11
|
-
s.
|
|
12
|
+
s.homepage = 'https://github.com/pygments/pygments.rb'
|
|
13
|
+
s.required_ruby_version = '>= 2.3.0'
|
|
12
14
|
|
|
13
|
-
s.authors = ['Aman Gupta', 'Ted Nyman']
|
|
14
|
-
s.email = ['
|
|
15
|
+
s.authors = ['Aman Gupta', 'Ted Nyman', 'Marat Radchenko']
|
|
16
|
+
s.email = ['marat@slonopotamus.org']
|
|
15
17
|
s.license = 'MIT'
|
|
16
18
|
|
|
17
|
-
s.
|
|
18
|
-
s.add_development_dependency '
|
|
19
|
-
s.add_development_dependency 'test-unit', '~> 3.
|
|
19
|
+
s.add_development_dependency 'rake-compiler', '~> 1.1.0'
|
|
20
|
+
s.add_development_dependency 'rubocop', '~> 0.81.0'
|
|
21
|
+
s.add_development_dependency 'test-unit', '~> 3.3.0'
|
|
20
22
|
|
|
21
23
|
# s.extensions = ['ext/extconf.rb']
|
|
22
24
|
s.require_paths = ['lib']
|
|
23
25
|
|
|
24
|
-
s.files = `git ls-files`.split("\n")
|
|
26
|
+
s.files = `git ls-files`.split("\n").reject { |f| File.symlink?(f) } + ['lexers']
|
|
25
27
|
end
|
data/test/test_pygments.rb
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
#
|
|
1
|
+
# frozen_string_literal: true
|
|
2
2
|
|
|
3
3
|
require 'test/unit'
|
|
4
4
|
require File.join(File.dirname(__FILE__), '..', '/lib/pygments.rb')
|
|
5
|
-
ENV['mentos-test'] =
|
|
5
|
+
ENV['mentos-test'] = 'yes'
|
|
6
6
|
|
|
7
7
|
P = Pygments
|
|
8
|
+
PE = Pygments.engine
|
|
8
9
|
|
|
9
10
|
class PygmentsHighlightTest < Test::Unit::TestCase
|
|
10
11
|
RUBY_CODE = "#!/usr/bin/ruby\nputs 'foo'"
|
|
@@ -24,7 +25,7 @@ class PygmentsHighlightTest < Test::Unit::TestCase
|
|
|
24
25
|
end
|
|
25
26
|
|
|
26
27
|
def test_full_table_highlight
|
|
27
|
-
code = P.highlight(RUBY_CODE, :
|
|
28
|
+
code = P.highlight(RUBY_CODE, options: { linenos: true })
|
|
28
29
|
assert_match '<span class="ch">#!/usr/bin/ruby</span>', code
|
|
29
30
|
assert_equal "<table class=\"highlighttable\"><tr><td class=\"linenos\"><div class=\"linenodiv\"><pre>1\n2</pre></div></td><td class=\"code\"><div class=\"highlight\"><pre><span></span><span class=\"ch\">#!/usr/bin/ruby</span>\n<span class=\"nb\">puts</span> <span class=\"s1\">'foo'</span>\n</pre></div>\n</td></tr></table>", code
|
|
30
31
|
end
|
|
@@ -32,66 +33,61 @@ class PygmentsHighlightTest < Test::Unit::TestCase
|
|
|
32
33
|
def test_highlight_works_with_larger_files
|
|
33
34
|
code = P.highlight(REDIS_CODE)
|
|
34
35
|
assert_match 'used_memory_peak_human', code
|
|
35
|
-
assert_equal 458511, code.bytesize.to_i
|
|
36
36
|
end
|
|
37
37
|
|
|
38
|
-
def
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
38
|
+
def test_raises_exception_on_timeout
|
|
39
|
+
assert_raise MentosError.new('Timeout on a mentos highlight call') do
|
|
40
|
+
# Assume highlighting a large file will take more than 1 millisecond
|
|
41
|
+
P.highlight(REDIS_CODE, timeout: 0.001)
|
|
42
|
+
end
|
|
42
43
|
end
|
|
43
44
|
|
|
44
45
|
def test_highlight_works_with_null_bytes
|
|
45
|
-
code = P.highlight("\0hello", :
|
|
46
|
-
assert_match
|
|
46
|
+
code = P.highlight("\0hello", lexer: 'rb')
|
|
47
|
+
assert_match 'hello', code
|
|
47
48
|
end
|
|
48
49
|
|
|
49
50
|
def test_highlight_works_on_utf8
|
|
50
|
-
code = P.highlight('# ø', :
|
|
51
|
-
assert_match
|
|
51
|
+
code = P.highlight('# ø', lexer: 'rb', options: { encoding: 'utf-8' })
|
|
52
|
+
assert_match '# ø', code
|
|
52
53
|
end
|
|
53
54
|
|
|
54
55
|
def test_highlight_works_on_utf8_automatically
|
|
55
|
-
code = P.highlight('# ø', :
|
|
56
|
-
assert_match
|
|
56
|
+
code = P.highlight('# ø', lexer: 'rb')
|
|
57
|
+
assert_match '# ø', code
|
|
57
58
|
end
|
|
58
59
|
|
|
59
60
|
def test_highlight_works_on_utf8_all_chars_automatically
|
|
60
|
-
code = P.highlight('def foo: # ø', :
|
|
61
|
+
code = P.highlight('def foo: # ø', lexer: 'py')
|
|
61
62
|
|
|
62
|
-
assert_equal
|
|
63
|
+
assert_equal '<div class="highlight"><pre><span></sp', code[0, 38]
|
|
63
64
|
end
|
|
64
65
|
|
|
65
66
|
def test_highlight_works_with_multiple_utf8
|
|
66
|
-
code = P.highlight('# ø ø ø', :
|
|
67
|
-
assert_match
|
|
67
|
+
code = P.highlight('# ø ø ø', lexer: 'rb', options: { encoding: 'utf-8' })
|
|
68
|
+
assert_match '# ø ø ø', code
|
|
68
69
|
end
|
|
69
70
|
|
|
70
71
|
def test_highlight_works_with_multiple_utf8_and_trailing_newline
|
|
71
|
-
code = P.highlight("#!/usr/bin/ruby\nputs 'ø..ø'\n", :
|
|
72
|
-
assert_match
|
|
72
|
+
code = P.highlight("#!/usr/bin/ruby\nputs 'ø..ø'\n", lexer: 'rb')
|
|
73
|
+
assert_match 'ø..ø', code
|
|
73
74
|
end
|
|
74
75
|
|
|
75
76
|
def test_highlight_formatter_bbcode
|
|
76
|
-
code = P.highlight(RUBY_CODE, :
|
|
77
|
+
code = P.highlight(RUBY_CODE, formatter: 'bbcode')
|
|
77
78
|
assert_match 'color=#408080][i]#!/usr/bin/ruby[/i]', code
|
|
78
79
|
end
|
|
79
80
|
|
|
80
81
|
def test_highlight_formatter_terminal
|
|
81
|
-
code = P.highlight(RUBY_CODE, :
|
|
82
|
+
code = P.highlight(RUBY_CODE, formatter: 'terminal')
|
|
82
83
|
assert_match '39;49;00m', code
|
|
83
84
|
end
|
|
84
85
|
|
|
85
86
|
def test_highlight_options
|
|
86
|
-
code = P.highlight(RUBY_CODE, :
|
|
87
|
+
code = P.highlight(RUBY_CODE, options: { full: true, title: 'test' })
|
|
87
88
|
assert_match '<title>test</title>', code
|
|
88
89
|
end
|
|
89
90
|
|
|
90
|
-
def test_highlight_works_with_single_character_input
|
|
91
|
-
code = P.highlight("a")
|
|
92
|
-
assert_match "a\n</pre>", code
|
|
93
|
-
end
|
|
94
|
-
|
|
95
91
|
def test_highlight_works_with_trailing_newline
|
|
96
92
|
code = P.highlight(RUBY_CODE_TRAILING_NEWLINE)
|
|
97
93
|
assert_match '<span class="ch">#!/usr/bin/ruby</span>', code
|
|
@@ -108,20 +104,19 @@ class PygmentsHighlightTest < Test::Unit::TestCase
|
|
|
108
104
|
end
|
|
109
105
|
|
|
110
106
|
def test_highlight_still_works_with_invalid_code
|
|
111
|
-
code = P.highlight(
|
|
112
|
-
assert_match
|
|
107
|
+
code = P.highlight('importr python; wat?', lexer: 'py')
|
|
108
|
+
assert_match '>importr</span>', code
|
|
113
109
|
end
|
|
114
110
|
|
|
115
111
|
def test_highlight_on_multi_threads
|
|
112
|
+
omit 'We do not actually support multithreading'
|
|
113
|
+
|
|
116
114
|
10.times.map do
|
|
117
115
|
Thread.new do
|
|
118
116
|
test_full_html_highlight
|
|
119
117
|
end
|
|
120
|
-
end.each
|
|
121
|
-
thread.join
|
|
122
|
-
end
|
|
118
|
+
end.each(&:join)
|
|
123
119
|
end
|
|
124
|
-
|
|
125
120
|
end
|
|
126
121
|
|
|
127
122
|
# Philosophically, I'm not the biggest fan of testing private
|
|
@@ -129,45 +124,23 @@ end
|
|
|
129
124
|
# over the pipe I think it's necessary and informative.
|
|
130
125
|
class PygmentsValidityTest < Test::Unit::TestCase
|
|
131
126
|
def test_add_ids_with_padding
|
|
132
|
-
res =
|
|
133
|
-
assert_equal
|
|
127
|
+
res = PE.send(:add_ids, 'herp derp baz boo foo', 'ABCDEFGH')
|
|
128
|
+
assert_equal 'ABCDEFGH herp derp baz boo foo ABCDEFGH', res
|
|
134
129
|
end
|
|
135
130
|
|
|
136
131
|
def test_add_ids_on_empty_string
|
|
137
|
-
res =
|
|
138
|
-
assert_equal
|
|
132
|
+
res = PE.send(:add_ids, '', 'ABCDEFGH')
|
|
133
|
+
assert_equal 'ABCDEFGH ABCDEFGH', res
|
|
139
134
|
end
|
|
140
135
|
|
|
141
136
|
def test_add_ids_with_unicode_data
|
|
142
|
-
res =
|
|
143
|
-
assert_equal
|
|
137
|
+
res = PE.send(:add_ids, '# ø ø ø', 'ABCDEFGH')
|
|
138
|
+
assert_equal 'ABCDEFGH # ø ø ø ABCDEFGH', res
|
|
144
139
|
end
|
|
145
140
|
|
|
146
141
|
def test_add_ids_with_starting_slashes
|
|
147
|
-
res =
|
|
148
|
-
assert_equal
|
|
149
|
-
end
|
|
150
|
-
|
|
151
|
-
def test_get_fixed_bits_from_header
|
|
152
|
-
bits = P.send(:get_fixed_bits_from_header, '{"herp": "derp"}')
|
|
153
|
-
assert_equal "00000000000000000000000000010000", bits
|
|
154
|
-
end
|
|
155
|
-
|
|
156
|
-
def test_get_fixed_bits_from_header_works_with_large_headers
|
|
157
|
-
bits = P.send(:get_fixed_bits_from_header, '{"herp": "derp"}' * 10000)
|
|
158
|
-
assert_equal "00000000000000100111000100000000", bits
|
|
159
|
-
end
|
|
160
|
-
|
|
161
|
-
def test_size_check
|
|
162
|
-
size = "00000000000000000000000000100110"
|
|
163
|
-
res = P.send(:size_check, size)
|
|
164
|
-
assert_equal res, true
|
|
165
|
-
end
|
|
166
|
-
|
|
167
|
-
def test_size_check_bad
|
|
168
|
-
size = "some random thing"
|
|
169
|
-
res = P.send(:size_check, size)
|
|
170
|
-
assert_equal res, false
|
|
142
|
+
res = PE.send(:add_ids, '\\# ø ø ø..//', 'ABCDEFGH')
|
|
143
|
+
assert_equal 'ABCDEFGH \\# ø ø ø..// ABCDEFGH', res
|
|
171
144
|
end
|
|
172
145
|
end
|
|
173
146
|
|
|
@@ -175,23 +148,23 @@ class PygmentsLexerTest < Test::Unit::TestCase
|
|
|
175
148
|
RUBY_CODE = "#!/usr/bin/ruby\nputs 'foo'"
|
|
176
149
|
|
|
177
150
|
def test_lexer_by_mimetype
|
|
178
|
-
assert_equal 'rb', P.lexer_name_for(:
|
|
179
|
-
assert_equal 'json', P.lexer_name_for(:
|
|
151
|
+
assert_equal 'rb', P.lexer_name_for(mimetype: 'text/x-ruby')
|
|
152
|
+
assert_equal 'json', P.lexer_name_for(mimetype: 'application/json')
|
|
180
153
|
end
|
|
181
154
|
|
|
182
155
|
def test_lexer_by_filename
|
|
183
|
-
assert_equal 'rb', P.lexer_name_for(:
|
|
184
|
-
assert_equal 'scala', P.lexer_name_for(:
|
|
156
|
+
assert_equal 'rb', P.lexer_name_for(filename: 'test.rb')
|
|
157
|
+
assert_equal 'scala', P.lexer_name_for(filename: 'test.scala')
|
|
185
158
|
end
|
|
186
159
|
|
|
187
160
|
def test_lexer_by_name
|
|
188
|
-
assert_equal 'rb', P.lexer_name_for(:
|
|
189
|
-
assert_equal 'python', P.lexer_name_for(:
|
|
190
|
-
assert_equal 'c', P.lexer_name_for(:
|
|
161
|
+
assert_equal 'rb', P.lexer_name_for(lexer: 'ruby')
|
|
162
|
+
assert_equal 'python', P.lexer_name_for(lexer: 'python')
|
|
163
|
+
assert_equal 'c', P.lexer_name_for(lexer: 'c')
|
|
191
164
|
end
|
|
192
165
|
|
|
193
166
|
def test_lexer_by_filename_and_content
|
|
194
|
-
assert_equal 'rb', P.lexer_name_for(RUBY_CODE, :
|
|
167
|
+
assert_equal 'rb', P.lexer_name_for(RUBY_CODE, filename: 'test.rb')
|
|
195
168
|
end
|
|
196
169
|
|
|
197
170
|
def test_lexer_by_content
|
|
@@ -200,7 +173,7 @@ class PygmentsLexerTest < Test::Unit::TestCase
|
|
|
200
173
|
|
|
201
174
|
def test_lexer_by_nothing
|
|
202
175
|
assert_raise MentosError do
|
|
203
|
-
P.lexer_name_for(:
|
|
176
|
+
P.lexer_name_for(invalid: true)
|
|
204
177
|
end
|
|
205
178
|
end
|
|
206
179
|
end
|
|
@@ -237,14 +210,13 @@ class PygmentsLexerClassTest < Test::Unit::TestCase
|
|
|
237
210
|
assert_equal P::Lexer['Java'], P::Lexer.find_by_extname('.java')
|
|
238
211
|
end
|
|
239
212
|
|
|
240
|
-
|
|
213
|
+
def test_find_lexer_by_mimetype
|
|
241
214
|
assert_equal P::Lexer['Ruby'], P::Lexer.find_by_mimetype('text/x-ruby')
|
|
242
215
|
assert_equal P::Lexer['JSON'], P::Lexer.find_by_mimetype('application/json')
|
|
243
216
|
assert_equal P::Lexer['Python'], P::Lexer.find_by_mimetype('text/x-python')
|
|
244
|
-
|
|
217
|
+
end
|
|
245
218
|
end
|
|
246
219
|
|
|
247
|
-
|
|
248
220
|
class PygmentsCssTest < Test::Unit::TestCase
|
|
249
221
|
include Pygments
|
|
250
222
|
|
|
@@ -257,11 +229,11 @@ class PygmentsCssTest < Test::Unit::TestCase
|
|
|
257
229
|
end
|
|
258
230
|
|
|
259
231
|
def test_css_options
|
|
260
|
-
assert_match(/^\.codeerr \{/, P.css(:
|
|
232
|
+
assert_match(/^\.codeerr \{/, P.css(classprefix: 'code'))
|
|
261
233
|
end
|
|
262
234
|
|
|
263
235
|
def test_css_prefix_and_options
|
|
264
|
-
assert_match(/^\.mycode \.codeerr \{/, P.css('.mycode', :
|
|
236
|
+
assert_match(/^\.mycode \.codeerr \{/, P.css('.mycode', classprefix: 'code'))
|
|
265
237
|
end
|
|
266
238
|
|
|
267
239
|
def test_css_default
|
|
@@ -269,7 +241,7 @@ class PygmentsCssTest < Test::Unit::TestCase
|
|
|
269
241
|
end
|
|
270
242
|
|
|
271
243
|
def test_css_colorful
|
|
272
|
-
assert_match '.c { color: #888888 }', P.css(:
|
|
244
|
+
assert_match '.c { color: #888888 }', P.css(style: 'colorful')
|
|
273
245
|
end
|
|
274
246
|
end
|
|
275
247
|
|
|
@@ -284,15 +256,13 @@ class PygmentsConfigTest < Test::Unit::TestCase
|
|
|
284
256
|
|
|
285
257
|
def test_lexers
|
|
286
258
|
list = P.lexers
|
|
287
|
-
assert list.
|
|
259
|
+
assert list.key?('Ruby')
|
|
288
260
|
assert list['Ruby'][:aliases].include?('duby')
|
|
289
261
|
end
|
|
290
262
|
|
|
291
263
|
def test_formatters
|
|
292
264
|
list = P.formatters
|
|
293
|
-
assert list.
|
|
265
|
+
assert list.key?('Html')
|
|
294
266
|
assert list['Html'][:aliases].include?('html')
|
|
295
267
|
end
|
|
296
268
|
end
|
|
297
|
-
|
|
298
|
-
|
|
@@ -7,7 +7,8 @@ Other contributors, listed alphabetically, are:
|
|
|
7
7
|
|
|
8
8
|
* Sam Aaron -- Ioke lexer
|
|
9
9
|
* Ali Afshar -- image formatter
|
|
10
|
-
* Thomas Aglassinger -- Easytrieve, JCL, Rexx
|
|
10
|
+
* Thomas Aglassinger -- Easytrieve, JCL, Rexx, Transact-SQL and VBScript
|
|
11
|
+
lexers
|
|
11
12
|
* Muthiah Annamalai -- Ezhil lexer
|
|
12
13
|
* Kumar Appaiah -- Debian control lexer
|
|
13
14
|
* Andreas Amann -- AppleScript lexer
|
|
@@ -31,8 +32,10 @@ Other contributors, listed alphabetically, are:
|
|
|
31
32
|
* Sébastien Bigaret -- QVT Operational lexer
|
|
32
33
|
* Jarrett Billingsley -- MiniD lexer
|
|
33
34
|
* Adam Blinkinsop -- Haskell, Redcode lexers
|
|
35
|
+
* Stéphane Blondon -- SGF and Sieve lexers
|
|
34
36
|
* Frits van Bommel -- assembler lexers
|
|
35
37
|
* Pierre Bourdon -- bugfixes
|
|
38
|
+
* Martijn Braam -- Kernel log lexer, BARE lexer
|
|
36
39
|
* Matthias Bussonnier -- ANSI style handling for terminal-256 formatter
|
|
37
40
|
* chebee7i -- Python traceback lexer improvements
|
|
38
41
|
* Hiram Chirino -- Scaml and Jade lexers
|
|
@@ -53,26 +56,30 @@ Other contributors, listed alphabetically, are:
|
|
|
53
56
|
* Sven Efftinge -- Xtend lexer
|
|
54
57
|
* Artem Egorkine -- terminal256 formatter
|
|
55
58
|
* Matthew Fernandez -- CAmkES lexer
|
|
59
|
+
* Paweł Fertyk -- GDScript lexer, HTML formatter improvements
|
|
56
60
|
* Michael Ficarra -- CPSA lexer
|
|
57
61
|
* James H. Fisher -- PostScript lexer
|
|
58
62
|
* William S. Fulton -- SWIG lexer
|
|
59
63
|
* Carlos Galdino -- Elixir and Elixir Console lexers
|
|
60
64
|
* Michael Galloy -- IDL lexer
|
|
61
65
|
* Naveen Garg -- Autohotkey lexer
|
|
66
|
+
* Simon Garnotel -- FreeFem++ lexer
|
|
62
67
|
* Laurent Gautier -- R/S lexer
|
|
63
68
|
* Alex Gaynor -- PyPy log lexer
|
|
64
69
|
* Richard Gerkin -- Igor Pro lexer
|
|
65
70
|
* Alain Gilbert -- TypeScript lexer
|
|
66
71
|
* Alex Gilding -- BlitzBasic lexer
|
|
72
|
+
* GitHub, Inc -- DASM16, Augeas, TOML, and Slash lexers
|
|
67
73
|
* Bertrand Goetzmann -- Groovy lexer
|
|
68
74
|
* Krzysiek Goj -- Scala lexer
|
|
75
|
+
* Rostyslav Golda -- FloScript lexer
|
|
69
76
|
* Andrey Golovizin -- BibTeX lexers
|
|
70
77
|
* Matt Good -- Genshi, Cheetah lexers
|
|
71
78
|
* Michał Górny -- vim modeline support
|
|
72
79
|
* Alex Gosse -- TrafficScript lexer
|
|
73
80
|
* Patrick Gotthardt -- PHP namespaces support
|
|
74
81
|
* Olivier Guibe -- Asymptote lexer
|
|
75
|
-
*
|
|
82
|
+
* Phil Hagelberg -- Fennel lexer
|
|
76
83
|
* Florian Hahn -- Boogie lexer
|
|
77
84
|
* Martin Harriman -- SNOBOL lexer
|
|
78
85
|
* Matthew Harrison -- SVG formatter
|
|
@@ -81,7 +88,9 @@ Other contributors, listed alphabetically, are:
|
|
|
81
88
|
* Aslak Hellesøy -- Gherkin lexer
|
|
82
89
|
* Greg Hendershott -- Racket lexer
|
|
83
90
|
* Justin Hendrick -- ParaSail lexer
|
|
91
|
+
* Jordi Gutiérrez Hermoso -- Octave lexer
|
|
84
92
|
* David Hess, Fish Software, Inc. -- Objective-J lexer
|
|
93
|
+
* Ken Hilton -- Typographic Number Theory and Arrow lexers
|
|
85
94
|
* Varun Hiremath -- Debian control lexer
|
|
86
95
|
* Rob Hoelz -- Perl 6 lexer
|
|
87
96
|
* Doug Hogan -- Mscgen lexer
|
|
@@ -98,6 +107,7 @@ Other contributors, listed alphabetically, are:
|
|
|
98
107
|
* Dennis Kaarsemaker -- sources.list lexer
|
|
99
108
|
* Dmitri Kabak -- Inferno Limbo lexer
|
|
100
109
|
* Igor Kalnitsky -- vhdl lexer
|
|
110
|
+
* Colin Kennedy - USD lexer
|
|
101
111
|
* Alexander Kit -- MaskJS lexer
|
|
102
112
|
* Pekka Klärck -- Robot Framework lexer
|
|
103
113
|
* Gerwin Klein -- Isabelle lexer
|
|
@@ -129,6 +139,7 @@ Other contributors, listed alphabetically, are:
|
|
|
129
139
|
* Stephen McKamey -- Duel/JBST lexer
|
|
130
140
|
* Brian McKenna -- F# lexer
|
|
131
141
|
* Charles McLaughlin -- Puppet lexer
|
|
142
|
+
* Kurt McKee -- Tera Term macro lexer, PostgreSQL updates, MySQL overhaul
|
|
132
143
|
* Lukas Meuser -- BBCode formatter, Lua lexer
|
|
133
144
|
* Cat Miller -- Pig lexer
|
|
134
145
|
* Paul Miller -- LiveScript lexer
|
|
@@ -145,6 +156,7 @@ Other contributors, listed alphabetically, are:
|
|
|
145
156
|
* Nam T. Nguyen -- Monokai style
|
|
146
157
|
* Jesper Noehr -- HTML formatter "anchorlinenos"
|
|
147
158
|
* Mike Nolta -- Julia lexer
|
|
159
|
+
* Avery Nortonsmith -- Pointless lexer
|
|
148
160
|
* Jonas Obrist -- BBCode lexer
|
|
149
161
|
* Edward O'Callaghan -- Cryptol lexer
|
|
150
162
|
* David Oliva -- Rebol lexer
|
|
@@ -155,10 +167,14 @@ Other contributors, listed alphabetically, are:
|
|
|
155
167
|
* Dominik Picheta -- Nimrod lexer
|
|
156
168
|
* Andrew Pinkham -- RTF Formatter Refactoring
|
|
157
169
|
* Clément Prévost -- UrbiScript lexer
|
|
170
|
+
* Tanner Prynn -- cmdline -x option and loading lexers from files
|
|
158
171
|
* Oleh Prypin -- Crystal lexer (based on Ruby lexer)
|
|
172
|
+
* Xidorn Quan -- Web IDL lexer
|
|
159
173
|
* Elias Rabel -- Fortran fixed form lexer
|
|
160
174
|
* raichoo -- Idris lexer
|
|
175
|
+
* Daniel Ramirez -- GDScript lexer
|
|
161
176
|
* Kashif Rasul -- CUDA lexer
|
|
177
|
+
* Nathan Reed -- HLSL lexer
|
|
162
178
|
* Justin Reidy -- MXML lexer
|
|
163
179
|
* Norman Richards -- JSON lexer
|
|
164
180
|
* Corey Richardson -- Rust lexer updates
|
|
@@ -172,9 +188,12 @@ Other contributors, listed alphabetically, are:
|
|
|
172
188
|
* Stou Sandalski -- NumPy, FORTRAN, tcsh and XSLT lexers
|
|
173
189
|
* Matteo Sasso -- Common Lisp lexer
|
|
174
190
|
* Joe Schafer -- Ada lexer
|
|
191
|
+
* Max Schillinger -- TiddlyWiki5 lexer
|
|
175
192
|
* Ken Schutte -- Matlab lexers
|
|
193
|
+
* René Schwaiger -- Rainbow Dash style
|
|
176
194
|
* Sebastian Schweizer -- Whiley lexer
|
|
177
195
|
* Tassilo Schweyer -- Io, MOOCode lexers
|
|
196
|
+
* Pablo Seminario -- PromQL lexer
|
|
178
197
|
* Ted Shaw -- AutoIt lexer
|
|
179
198
|
* Joerg Sieker -- ABAP lexer
|
|
180
199
|
* Robert Simmons -- Standard ML lexer
|
|
@@ -183,7 +202,7 @@ Other contributors, listed alphabetically, are:
|
|
|
183
202
|
* Alexander Smishlajev -- Visual FoxPro lexer
|
|
184
203
|
* Steve Spigarelli -- XQuery lexer
|
|
185
204
|
* Jerome St-Louis -- eC lexer
|
|
186
|
-
* Camil Staps -- Clean and NuSMV lexers
|
|
205
|
+
* Camil Staps -- Clean and NuSMV lexers; Solarized style
|
|
187
206
|
* James Strachan -- Kotlin lexer
|
|
188
207
|
* Tom Stuart -- Treetop lexer
|
|
189
208
|
* Colin Sullivan -- SuperCollider lexer
|
|
@@ -214,5 +233,6 @@ Other contributors, listed alphabetically, are:
|
|
|
214
233
|
* Alex Zimin -- Nemerle lexer
|
|
215
234
|
* Rob Zimmerman -- Kal lexer
|
|
216
235
|
* Vincent Zurczak -- Roboconf lexer
|
|
236
|
+
* Hubert Gruniaux -- C and C++ lexer improvements
|
|
217
237
|
|
|
218
238
|
Many thanks for all contributions!
|