pygments.rb 1.2.1 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +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 -6
- data/CHANGELOG.adoc +128 -0
- data/Gemfile +3 -1
- data/LICENSE +1 -1
- data/README.adoc +160 -0
- data/Rakefile +11 -21
- data/bench.rb +8 -7
- data/cache-lexers.rb +3 -2
- data/lexers +0 -0
- data/lib/pygments/lexer.rb +5 -5
- data/lib/pygments/mentos.py +23 -110
- data/lib/pygments/popen.rb +148 -229
- data/lib/pygments/version.rb +2 -2
- data/lib/pygments.rb +10 -11
- data/pygments.rb.gemspec +12 -10
- data/test/test_pygments.rb +46 -104
- data/vendor/pygments-main/{AUTHORS → Pygments-2.7.3.dist-info/AUTHORS} +21 -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 +38 -29
- 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 +9 -8
- 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 +68 -41
- 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 +28 -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 +1 -1
- data/vendor/pygments-main/pygments/lexers/_lua_builtins.py +2 -4
- data/vendor/pygments-main/pygments/lexers/_mapping.py +74 -29
- 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 +440 -76
- data/vendor/pygments-main/pygments/lexers/automation.py +1 -1
- 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 +5 -5
- data/vendor/pygments-main/pygments/lexers/boa.py +102 -0
- data/vendor/pygments-main/pygments/lexers/business.py +17 -2
- data/vendor/pygments-main/pygments/lexers/c_cpp.py +137 -45
- data/vendor/pygments-main/pygments/lexers/c_like.py +67 -42
- data/vendor/pygments-main/pygments/lexers/capnproto.py +7 -7
- data/vendor/pygments-main/pygments/lexers/chapel.py +23 -13
- 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 +187 -36
- data/vendor/pygments-main/pygments/lexers/console.py +1 -1
- data/vendor/pygments-main/pygments/lexers/crystal.py +3 -4
- 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 +144 -62
- 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 +46 -19
- data/vendor/pygments-main/pygments/lexers/ezhil.py +21 -13
- 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 +62 -5
- 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 +48 -21
- 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 +1 -1
- data/vendor/pygments-main/pygments/lexers/html.py +31 -19
- data/vendor/pygments-main/pygments/lexers/idl.py +19 -8
- 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 +60 -45
- data/vendor/pygments-main/pygments/lexers/julia.py +44 -46
- 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 +1 -1
- data/vendor/pygments-main/pygments/lexers/mosel.py +448 -0
- data/vendor/pygments-main/pygments/lexers/ncl.py +1 -1
- 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 +22 -22
- data/vendor/pygments-main/pygments/lexers/pawn.py +30 -24
- data/vendor/pygments-main/pygments/lexers/perl.py +260 -148
- 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 -227
- 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 +76 -72
- data/vendor/pygments-main/pygments/lexers/sas.py +1 -1
- 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 +162 -42
- 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 +3 -3
- 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 -44
- 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 +102 -121
- 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 +4 -11
- 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 +3 -3
- data/vendor/pygments-main/pygments/lexers/verification.py +13 -10
- 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 +31 -28
- data/vendor/pygments-main/pygments/lexers/whiley.py +5 -5
- data/vendor/pygments-main/pygments/lexers/x10.py +1 -1
- data/vendor/pygments-main/pygments/lexers/xorg.py +5 -4
- 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 +1 -1
- data/vendor/pygments-main/pygments/plugin.py +4 -2
- 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 +10 -4
- data/vendor/pygments-main/pygments/styles/abap.py +1 -1
- data/vendor/pygments-main/pygments/styles/algol.py +1 -1
- data/vendor/pygments-main/pygments/styles/algol_nu.py +1 -1
- data/vendor/pygments-main/pygments/styles/arduino.py +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 +1 -1
- data/vendor/pygments-main/pygments/styles/rrt.py +1 -1
- data/vendor/pygments-main/pygments/styles/sas.py +1 -1
- 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.py → stata_light.py} +14 -15
- 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 +15 -92
- metadata +68 -136
- data/CHANGELOG.md +0 -111
- 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,169 +0,0 @@
|
|
|
1
|
-
.. -*- mode: rst -*-
|
|
2
|
-
|
|
3
|
-
========================
|
|
4
|
-
Write your own formatter
|
|
5
|
-
========================
|
|
6
|
-
|
|
7
|
-
As well as creating :doc:`your own lexer <lexerdevelopment>`, writing a new
|
|
8
|
-
formatter for Pygments is easy and straightforward.
|
|
9
|
-
|
|
10
|
-
A formatter is a class that is initialized with some keyword arguments (the
|
|
11
|
-
formatter options) and that must provides a `format()` method.
|
|
12
|
-
Additionally a formatter should provide a `get_style_defs()` method that
|
|
13
|
-
returns the style definitions from the style in a form usable for the
|
|
14
|
-
formatter's output format.
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
Quickstart
|
|
18
|
-
==========
|
|
19
|
-
|
|
20
|
-
The most basic formatter shipped with Pygments is the `NullFormatter`. It just
|
|
21
|
-
sends the value of a token to the output stream:
|
|
22
|
-
|
|
23
|
-
.. sourcecode:: python
|
|
24
|
-
|
|
25
|
-
from pygments.formatter import Formatter
|
|
26
|
-
|
|
27
|
-
class NullFormatter(Formatter):
|
|
28
|
-
def format(self, tokensource, outfile):
|
|
29
|
-
for ttype, value in tokensource:
|
|
30
|
-
outfile.write(value)
|
|
31
|
-
|
|
32
|
-
As you can see, the `format()` method is passed two parameters: `tokensource`
|
|
33
|
-
and `outfile`. The first is an iterable of ``(token_type, value)`` tuples,
|
|
34
|
-
the latter a file like object with a `write()` method.
|
|
35
|
-
|
|
36
|
-
Because the formatter is that basic it doesn't overwrite the `get_style_defs()`
|
|
37
|
-
method.
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
Styles
|
|
41
|
-
======
|
|
42
|
-
|
|
43
|
-
Styles aren't instantiated but their metaclass provides some class functions
|
|
44
|
-
so that you can access the style definitions easily.
|
|
45
|
-
|
|
46
|
-
Styles are iterable and yield tuples in the form ``(ttype, d)`` where `ttype`
|
|
47
|
-
is a token and `d` is a dict with the following keys:
|
|
48
|
-
|
|
49
|
-
``'color'``
|
|
50
|
-
Hexadecimal color value (eg: ``'ff0000'`` for red) or `None` if not
|
|
51
|
-
defined.
|
|
52
|
-
|
|
53
|
-
``'bold'``
|
|
54
|
-
`True` if the value should be bold
|
|
55
|
-
|
|
56
|
-
``'italic'``
|
|
57
|
-
`True` if the value should be italic
|
|
58
|
-
|
|
59
|
-
``'underline'``
|
|
60
|
-
`True` if the value should be underlined
|
|
61
|
-
|
|
62
|
-
``'bgcolor'``
|
|
63
|
-
Hexadecimal color value for the background (eg: ``'eeeeeee'`` for light
|
|
64
|
-
gray) or `None` if not defined.
|
|
65
|
-
|
|
66
|
-
``'border'``
|
|
67
|
-
Hexadecimal color value for the border (eg: ``'0000aa'`` for a dark
|
|
68
|
-
blue) or `None` for no border.
|
|
69
|
-
|
|
70
|
-
Additional keys might appear in the future, formatters should ignore all keys
|
|
71
|
-
they don't support.
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
HTML 3.2 Formatter
|
|
75
|
-
==================
|
|
76
|
-
|
|
77
|
-
For an more complex example, let's implement a HTML 3.2 Formatter. We don't
|
|
78
|
-
use CSS but inline markup (``<u>``, ``<font>``, etc). Because this isn't good
|
|
79
|
-
style this formatter isn't in the standard library ;-)
|
|
80
|
-
|
|
81
|
-
.. sourcecode:: python
|
|
82
|
-
|
|
83
|
-
from pygments.formatter import Formatter
|
|
84
|
-
|
|
85
|
-
class OldHtmlFormatter(Formatter):
|
|
86
|
-
|
|
87
|
-
def __init__(self, **options):
|
|
88
|
-
Formatter.__init__(self, **options)
|
|
89
|
-
|
|
90
|
-
# create a dict of (start, end) tuples that wrap the
|
|
91
|
-
# value of a token so that we can use it in the format
|
|
92
|
-
# method later
|
|
93
|
-
self.styles = {}
|
|
94
|
-
|
|
95
|
-
# we iterate over the `_styles` attribute of a style item
|
|
96
|
-
# that contains the parsed style values.
|
|
97
|
-
for token, style in self.style:
|
|
98
|
-
start = end = ''
|
|
99
|
-
# a style item is a tuple in the following form:
|
|
100
|
-
# colors are readily specified in hex: 'RRGGBB'
|
|
101
|
-
if style['color']:
|
|
102
|
-
start += '<font color="#%s">' % style['color']
|
|
103
|
-
end = '</font>' + end
|
|
104
|
-
if style['bold']:
|
|
105
|
-
start += '<b>'
|
|
106
|
-
end = '</b>' + end
|
|
107
|
-
if style['italic']:
|
|
108
|
-
start += '<i>'
|
|
109
|
-
end = '</i>' + end
|
|
110
|
-
if style['underline']:
|
|
111
|
-
start += '<u>'
|
|
112
|
-
end = '</u>' + end
|
|
113
|
-
self.styles[token] = (start, end)
|
|
114
|
-
|
|
115
|
-
def format(self, tokensource, outfile):
|
|
116
|
-
# lastval is a string we use for caching
|
|
117
|
-
# because it's possible that an lexer yields a number
|
|
118
|
-
# of consecutive tokens with the same token type.
|
|
119
|
-
# to minimize the size of the generated html markup we
|
|
120
|
-
# try to join the values of same-type tokens here
|
|
121
|
-
lastval = ''
|
|
122
|
-
lasttype = None
|
|
123
|
-
|
|
124
|
-
# wrap the whole output with <pre>
|
|
125
|
-
outfile.write('<pre>')
|
|
126
|
-
|
|
127
|
-
for ttype, value in tokensource:
|
|
128
|
-
# if the token type doesn't exist in the stylemap
|
|
129
|
-
# we try it with the parent of the token type
|
|
130
|
-
# eg: parent of Token.Literal.String.Double is
|
|
131
|
-
# Token.Literal.String
|
|
132
|
-
while ttype not in self.styles:
|
|
133
|
-
ttype = ttype.parent
|
|
134
|
-
if ttype == lasttype:
|
|
135
|
-
# the current token type is the same of the last
|
|
136
|
-
# iteration. cache it
|
|
137
|
-
lastval += value
|
|
138
|
-
else:
|
|
139
|
-
# not the same token as last iteration, but we
|
|
140
|
-
# have some data in the buffer. wrap it with the
|
|
141
|
-
# defined style and write it to the output file
|
|
142
|
-
if lastval:
|
|
143
|
-
stylebegin, styleend = self.styles[lasttype]
|
|
144
|
-
outfile.write(stylebegin + lastval + styleend)
|
|
145
|
-
# set lastval/lasttype to current values
|
|
146
|
-
lastval = value
|
|
147
|
-
lasttype = ttype
|
|
148
|
-
|
|
149
|
-
# if something is left in the buffer, write it to the
|
|
150
|
-
# output file, then close the opened <pre> tag
|
|
151
|
-
if lastval:
|
|
152
|
-
stylebegin, styleend = self.styles[lasttype]
|
|
153
|
-
outfile.write(stylebegin + lastval + styleend)
|
|
154
|
-
outfile.write('</pre>\n')
|
|
155
|
-
|
|
156
|
-
The comments should explain it. Again, this formatter doesn't override the
|
|
157
|
-
`get_style_defs()` method. If we would have used CSS classes instead of
|
|
158
|
-
inline HTML markup, we would need to generate the CSS first. For that
|
|
159
|
-
purpose the `get_style_defs()` method exists:
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
Generating Style Definitions
|
|
163
|
-
============================
|
|
164
|
-
|
|
165
|
-
Some formatters like the `LatexFormatter` and the `HtmlFormatter` don't
|
|
166
|
-
output inline markup but reference either macros or css classes. Because
|
|
167
|
-
the definitions of those are not part of the output, the `get_style_defs()`
|
|
168
|
-
method exists. It is passed one parameter (if it's used and how it's used
|
|
169
|
-
is up to the formatter) and has to return a string or ``None``.
|
|
@@ -1,48 +0,0 @@
|
|
|
1
|
-
.. -*- mode: rst -*-
|
|
2
|
-
|
|
3
|
-
====================
|
|
4
|
-
Available formatters
|
|
5
|
-
====================
|
|
6
|
-
|
|
7
|
-
This page lists all builtin formatters.
|
|
8
|
-
|
|
9
|
-
Common options
|
|
10
|
-
==============
|
|
11
|
-
|
|
12
|
-
All formatters support these options:
|
|
13
|
-
|
|
14
|
-
`encoding`
|
|
15
|
-
If given, must be an encoding name (such as ``"utf-8"``). This will
|
|
16
|
-
be used to convert the token strings (which are Unicode strings)
|
|
17
|
-
to byte strings in the output (default: ``None``).
|
|
18
|
-
It will also be written in an encoding declaration suitable for the
|
|
19
|
-
document format if the `full` option is given (e.g. a ``meta
|
|
20
|
-
content-type`` directive in HTML or an invocation of the `inputenc`
|
|
21
|
-
package in LaTeX).
|
|
22
|
-
|
|
23
|
-
If this is ``""`` or ``None``, Unicode strings will be written
|
|
24
|
-
to the output file, which most file-like objects do not support.
|
|
25
|
-
For example, `pygments.highlight()` will return a Unicode string if
|
|
26
|
-
called with no `outfile` argument and a formatter that has `encoding`
|
|
27
|
-
set to ``None`` because it uses a `StringIO.StringIO` object that
|
|
28
|
-
supports Unicode arguments to `write()`. Using a regular file object
|
|
29
|
-
wouldn't work.
|
|
30
|
-
|
|
31
|
-
.. versionadded:: 0.6
|
|
32
|
-
|
|
33
|
-
`outencoding`
|
|
34
|
-
When using Pygments from the command line, any `encoding` option given is
|
|
35
|
-
passed to the lexer and the formatter. This is sometimes not desirable,
|
|
36
|
-
for example if you want to set the input encoding to ``"guess"``.
|
|
37
|
-
Therefore, `outencoding` has been introduced which overrides `encoding`
|
|
38
|
-
for the formatter if given.
|
|
39
|
-
|
|
40
|
-
.. versionadded:: 0.7
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
Formatter classes
|
|
44
|
-
=================
|
|
45
|
-
|
|
46
|
-
All these classes are importable from :mod:`pygments.formatters`.
|
|
47
|
-
|
|
48
|
-
.. pygmentsdoc:: formatters
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
Pygments documentation
|
|
2
|
-
======================
|
|
3
|
-
|
|
4
|
-
**Starting with Pygments**
|
|
5
|
-
|
|
6
|
-
.. toctree::
|
|
7
|
-
:maxdepth: 1
|
|
8
|
-
|
|
9
|
-
../download
|
|
10
|
-
quickstart
|
|
11
|
-
cmdline
|
|
12
|
-
|
|
13
|
-
**Builtin components**
|
|
14
|
-
|
|
15
|
-
.. toctree::
|
|
16
|
-
:maxdepth: 1
|
|
17
|
-
|
|
18
|
-
lexers
|
|
19
|
-
filters
|
|
20
|
-
formatters
|
|
21
|
-
styles
|
|
22
|
-
|
|
23
|
-
**Reference**
|
|
24
|
-
|
|
25
|
-
.. toctree::
|
|
26
|
-
:maxdepth: 1
|
|
27
|
-
|
|
28
|
-
unicode
|
|
29
|
-
tokens
|
|
30
|
-
api
|
|
31
|
-
|
|
32
|
-
**Hacking for Pygments**
|
|
33
|
-
|
|
34
|
-
.. toctree::
|
|
35
|
-
:maxdepth: 1
|
|
36
|
-
|
|
37
|
-
lexerdevelopment
|
|
38
|
-
formatterdevelopment
|
|
39
|
-
filterdevelopment
|
|
40
|
-
plugins
|
|
41
|
-
|
|
42
|
-
**Hints and tricks**
|
|
43
|
-
|
|
44
|
-
.. toctree::
|
|
45
|
-
:maxdepth: 1
|
|
46
|
-
|
|
47
|
-
rstdirective
|
|
48
|
-
moinmoin
|
|
49
|
-
java
|
|
50
|
-
integrate
|
|
51
|
-
|
|
52
|
-
**About Pygments**
|
|
53
|
-
|
|
54
|
-
.. toctree::
|
|
55
|
-
:maxdepth: 1
|
|
56
|
-
|
|
57
|
-
changelog
|
|
58
|
-
authors
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
If you find bugs or have suggestions for the documentation, please look
|
|
62
|
-
:ref:`here <contribute>` for info on how to contact the team.
|
|
63
|
-
|
|
64
|
-
.. XXX You can download an offline version of this documentation from the
|
|
65
|
-
:doc:`download page </download>`.
|
|
66
|
-
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
.. -*- mode: rst -*-
|
|
2
|
-
|
|
3
|
-
===================================
|
|
4
|
-
Using Pygments in various scenarios
|
|
5
|
-
===================================
|
|
6
|
-
|
|
7
|
-
Markdown
|
|
8
|
-
--------
|
|
9
|
-
|
|
10
|
-
Since Pygments 0.9, the distribution ships Markdown_ preprocessor sample code
|
|
11
|
-
that uses Pygments to render source code in
|
|
12
|
-
:file:`external/markdown-processor.py`. You can copy and adapt it to your
|
|
13
|
-
liking.
|
|
14
|
-
|
|
15
|
-
.. _Markdown: http://www.freewisdom.org/projects/python-markdown/
|
|
16
|
-
|
|
17
|
-
TextMate
|
|
18
|
-
--------
|
|
19
|
-
|
|
20
|
-
Antonio Cangiano has created a Pygments bundle for TextMate that allows to
|
|
21
|
-
colorize code via a simple menu option. It can be found here_.
|
|
22
|
-
|
|
23
|
-
.. _here: http://antoniocangiano.com/2008/10/28/pygments-textmate-bundle/
|
|
24
|
-
|
|
25
|
-
Bash completion
|
|
26
|
-
---------------
|
|
27
|
-
|
|
28
|
-
The source distribution contains a file ``external/pygments.bashcomp`` that
|
|
29
|
-
sets up completion for the ``pygmentize`` command in bash.
|
|
30
|
-
|
|
31
|
-
Wrappers for other languages
|
|
32
|
-
----------------------------
|
|
33
|
-
|
|
34
|
-
These libraries provide Pygments highlighting for users of other languages
|
|
35
|
-
than Python:
|
|
36
|
-
|
|
37
|
-
* `pygments.rb <https://github.com/tmm1/pygments.rb>`_, a pygments wrapper for Ruby
|
|
38
|
-
* `Clygments <https://github.com/bfontaine/clygments>`_, a pygments wrapper for
|
|
39
|
-
Clojure
|
|
40
|
-
* `PHPygments <https://github.com/capynet/PHPygments>`_, a pygments wrapper for PHP
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
=====================
|
|
2
|
-
Use Pygments in Java
|
|
3
|
-
=====================
|
|
4
|
-
|
|
5
|
-
Thanks to `Jython <http://www.jython.org>`_ it is possible to use Pygments in
|
|
6
|
-
Java.
|
|
7
|
-
|
|
8
|
-
This page is a simple tutorial to get an idea of how this works. You can
|
|
9
|
-
then look at the `Jython documentation <http://www.jython.org/docs/>`_ for more
|
|
10
|
-
advanced uses.
|
|
11
|
-
|
|
12
|
-
Since version 1.5, Pygments is deployed on `Maven Central
|
|
13
|
-
<http://repo1.maven.org/maven2/org/pygments/pygments/>`_ as a JAR, as is Jython
|
|
14
|
-
which makes it a lot easier to create a Java project.
|
|
15
|
-
|
|
16
|
-
Here is an example of a `Maven <http://www.maven.org>`_ ``pom.xml`` file for a
|
|
17
|
-
project running Pygments:
|
|
18
|
-
|
|
19
|
-
.. sourcecode:: xml
|
|
20
|
-
|
|
21
|
-
<?xml version="1.0" encoding="UTF-8"?>
|
|
22
|
-
|
|
23
|
-
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
|
24
|
-
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
25
|
-
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
|
|
26
|
-
http://maven.apache.org/maven-v4_0_0.xsd">
|
|
27
|
-
<modelVersion>4.0.0</modelVersion>
|
|
28
|
-
<groupId>example</groupId>
|
|
29
|
-
<artifactId>example</artifactId>
|
|
30
|
-
<version>1.0-SNAPSHOT</version>
|
|
31
|
-
<dependencies>
|
|
32
|
-
<dependency>
|
|
33
|
-
<groupId>org.python</groupId>
|
|
34
|
-
<artifactId>jython-standalone</artifactId>
|
|
35
|
-
<version>2.5.3</version>
|
|
36
|
-
</dependency>
|
|
37
|
-
<dependency>
|
|
38
|
-
<groupId>org.pygments</groupId>
|
|
39
|
-
<artifactId>pygments</artifactId>
|
|
40
|
-
<version>1.5</version>
|
|
41
|
-
<scope>runtime</scope>
|
|
42
|
-
</dependency>
|
|
43
|
-
</dependencies>
|
|
44
|
-
</project>
|
|
45
|
-
|
|
46
|
-
The following Java example:
|
|
47
|
-
|
|
48
|
-
.. sourcecode:: java
|
|
49
|
-
|
|
50
|
-
PythonInterpreter interpreter = new PythonInterpreter();
|
|
51
|
-
|
|
52
|
-
// Set a variable with the content you want to work with
|
|
53
|
-
interpreter.set("code", code);
|
|
54
|
-
|
|
55
|
-
// Simple use Pygments as you would in Python
|
|
56
|
-
interpreter.exec("from pygments import highlight\n"
|
|
57
|
-
+ "from pygments.lexers import PythonLexer\n"
|
|
58
|
-
+ "from pygments.formatters import HtmlFormatter\n"
|
|
59
|
-
+ "\nresult = highlight(code, PythonLexer(), HtmlFormatter())");
|
|
60
|
-
|
|
61
|
-
// Get the result that has been set in a variable
|
|
62
|
-
System.out.println(interpreter.get("result", String.class));
|
|
63
|
-
|
|
64
|
-
will print something like:
|
|
65
|
-
|
|
66
|
-
.. sourcecode:: html
|
|
67
|
-
|
|
68
|
-
<div class="highlight">
|
|
69
|
-
<pre><span class="k">print</span> <span class="s">"Hello World"</span></pre>
|
|
70
|
-
</div>
|