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,372 +0,0 @@
|
|
|
1
|
-
.. -*- mode: rst -*-
|
|
2
|
-
|
|
3
|
-
==============
|
|
4
|
-
Builtin Tokens
|
|
5
|
-
==============
|
|
6
|
-
|
|
7
|
-
.. module:: pygments.token
|
|
8
|
-
|
|
9
|
-
In the :mod:`pygments.token` module, there is a special object called `Token`
|
|
10
|
-
that is used to create token types.
|
|
11
|
-
|
|
12
|
-
You can create a new token type by accessing an attribute of `Token`:
|
|
13
|
-
|
|
14
|
-
.. sourcecode:: pycon
|
|
15
|
-
|
|
16
|
-
>>> from pygments.token import Token
|
|
17
|
-
>>> Token.String
|
|
18
|
-
Token.String
|
|
19
|
-
>>> Token.String is Token.String
|
|
20
|
-
True
|
|
21
|
-
|
|
22
|
-
Note that tokens are singletons so you can use the ``is`` operator for comparing
|
|
23
|
-
token types.
|
|
24
|
-
|
|
25
|
-
As of Pygments 0.7 you can also use the ``in`` operator to perform set tests:
|
|
26
|
-
|
|
27
|
-
.. sourcecode:: pycon
|
|
28
|
-
|
|
29
|
-
>>> from pygments.token import Comment
|
|
30
|
-
>>> Comment.Single in Comment
|
|
31
|
-
True
|
|
32
|
-
>>> Comment in Comment.Multi
|
|
33
|
-
False
|
|
34
|
-
|
|
35
|
-
This can be useful in :doc:`filters <filters>` and if you write lexers on your
|
|
36
|
-
own without using the base lexers.
|
|
37
|
-
|
|
38
|
-
You can also split a token type into a hierarchy, and get the parent of it:
|
|
39
|
-
|
|
40
|
-
.. sourcecode:: pycon
|
|
41
|
-
|
|
42
|
-
>>> String.split()
|
|
43
|
-
[Token, Token.Literal, Token.Literal.String]
|
|
44
|
-
>>> String.parent
|
|
45
|
-
Token.Literal
|
|
46
|
-
|
|
47
|
-
In principle, you can create an unlimited number of token types but nobody can
|
|
48
|
-
guarantee that a style would define style rules for a token type. Because of
|
|
49
|
-
that, Pygments proposes some global token types defined in the
|
|
50
|
-
`pygments.token.STANDARD_TYPES` dict.
|
|
51
|
-
|
|
52
|
-
For some tokens aliases are already defined:
|
|
53
|
-
|
|
54
|
-
.. sourcecode:: pycon
|
|
55
|
-
|
|
56
|
-
>>> from pygments.token import String
|
|
57
|
-
>>> String
|
|
58
|
-
Token.Literal.String
|
|
59
|
-
|
|
60
|
-
Inside the :mod:`pygments.token` module the following aliases are defined:
|
|
61
|
-
|
|
62
|
-
============= ============================ ====================================
|
|
63
|
-
`Text` `Token.Text` for any type of text data
|
|
64
|
-
`Whitespace` `Token.Text.Whitespace` for specially highlighted whitespace
|
|
65
|
-
`Error` `Token.Error` represents lexer errors
|
|
66
|
-
`Other` `Token.Other` special token for data not
|
|
67
|
-
matched by a parser (e.g. HTML
|
|
68
|
-
markup in PHP code)
|
|
69
|
-
`Keyword` `Token.Keyword` any kind of keywords
|
|
70
|
-
`Name` `Token.Name` variable/function names
|
|
71
|
-
`Literal` `Token.Literal` Any literals
|
|
72
|
-
`String` `Token.Literal.String` string literals
|
|
73
|
-
`Number` `Token.Literal.Number` number literals
|
|
74
|
-
`Operator` `Token.Operator` operators (``+``, ``not``...)
|
|
75
|
-
`Punctuation` `Token.Punctuation` punctuation (``[``, ``(``...)
|
|
76
|
-
`Comment` `Token.Comment` any kind of comments
|
|
77
|
-
`Generic` `Token.Generic` generic tokens (have a look at
|
|
78
|
-
the explanation below)
|
|
79
|
-
============= ============================ ====================================
|
|
80
|
-
|
|
81
|
-
The `Whitespace` token type is new in Pygments 0.8. It is used only by the
|
|
82
|
-
`VisibleWhitespaceFilter` currently.
|
|
83
|
-
|
|
84
|
-
Normally you just create token types using the already defined aliases. For each
|
|
85
|
-
of those token aliases, a number of subtypes exists (excluding the special tokens
|
|
86
|
-
`Token.Text`, `Token.Error` and `Token.Other`)
|
|
87
|
-
|
|
88
|
-
The `is_token_subtype()` function in the `pygments.token` module can be used to
|
|
89
|
-
test if a token type is a subtype of another (such as `Name.Tag` and `Name`).
|
|
90
|
-
(This is the same as ``Name.Tag in Name``. The overloaded `in` operator was newly
|
|
91
|
-
introduced in Pygments 0.7, the function still exists for backwards
|
|
92
|
-
compatibility.)
|
|
93
|
-
|
|
94
|
-
With Pygments 0.7, it's also possible to convert strings to token types (for example
|
|
95
|
-
if you want to supply a token from the command line):
|
|
96
|
-
|
|
97
|
-
.. sourcecode:: pycon
|
|
98
|
-
|
|
99
|
-
>>> from pygments.token import String, string_to_tokentype
|
|
100
|
-
>>> string_to_tokentype("String")
|
|
101
|
-
Token.Literal.String
|
|
102
|
-
>>> string_to_tokentype("Token.Literal.String")
|
|
103
|
-
Token.Literal.String
|
|
104
|
-
>>> string_to_tokentype(String)
|
|
105
|
-
Token.Literal.String
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
Keyword Tokens
|
|
109
|
-
==============
|
|
110
|
-
|
|
111
|
-
`Keyword`
|
|
112
|
-
For any kind of keyword (especially if it doesn't match any of the
|
|
113
|
-
subtypes of course).
|
|
114
|
-
|
|
115
|
-
`Keyword.Constant`
|
|
116
|
-
For keywords that are constants (e.g. ``None`` in future Python versions).
|
|
117
|
-
|
|
118
|
-
`Keyword.Declaration`
|
|
119
|
-
For keywords used for variable declaration (e.g. ``var`` in some programming
|
|
120
|
-
languages like JavaScript).
|
|
121
|
-
|
|
122
|
-
`Keyword.Namespace`
|
|
123
|
-
For keywords used for namespace declarations (e.g. ``import`` in Python and
|
|
124
|
-
Java and ``package`` in Java).
|
|
125
|
-
|
|
126
|
-
`Keyword.Pseudo`
|
|
127
|
-
For keywords that aren't really keywords (e.g. ``None`` in old Python
|
|
128
|
-
versions).
|
|
129
|
-
|
|
130
|
-
`Keyword.Reserved`
|
|
131
|
-
For reserved keywords.
|
|
132
|
-
|
|
133
|
-
`Keyword.Type`
|
|
134
|
-
For builtin types that can't be used as identifiers (e.g. ``int``,
|
|
135
|
-
``char`` etc. in C).
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
Name Tokens
|
|
139
|
-
===========
|
|
140
|
-
|
|
141
|
-
`Name`
|
|
142
|
-
For any name (variable names, function names, classes).
|
|
143
|
-
|
|
144
|
-
`Name.Attribute`
|
|
145
|
-
For all attributes (e.g. in HTML tags).
|
|
146
|
-
|
|
147
|
-
`Name.Builtin`
|
|
148
|
-
Builtin names; names that are available in the global namespace.
|
|
149
|
-
|
|
150
|
-
`Name.Builtin.Pseudo`
|
|
151
|
-
Builtin names that are implicit (e.g. ``self`` in Ruby, ``this`` in Java).
|
|
152
|
-
|
|
153
|
-
`Name.Class`
|
|
154
|
-
Class names. Because no lexer can know if a name is a class or a function
|
|
155
|
-
or something else this token is meant for class declarations.
|
|
156
|
-
|
|
157
|
-
`Name.Constant`
|
|
158
|
-
Token type for constants. In some languages you can recognise a token by the
|
|
159
|
-
way it's defined (the value after a ``const`` keyword for example). In
|
|
160
|
-
other languages constants are uppercase by definition (Ruby).
|
|
161
|
-
|
|
162
|
-
`Name.Decorator`
|
|
163
|
-
Token type for decorators. Decorators are syntactic elements in the Python
|
|
164
|
-
language. Similar syntax elements exist in C# and Java.
|
|
165
|
-
|
|
166
|
-
`Name.Entity`
|
|
167
|
-
Token type for special entities. (e.g. `` `` in HTML).
|
|
168
|
-
|
|
169
|
-
`Name.Exception`
|
|
170
|
-
Token type for exception names (e.g. ``RuntimeError`` in Python). Some languages
|
|
171
|
-
define exceptions in the function signature (Java). You can highlight
|
|
172
|
-
the name of that exception using this token then.
|
|
173
|
-
|
|
174
|
-
`Name.Function`
|
|
175
|
-
Token type for function names.
|
|
176
|
-
|
|
177
|
-
`Name.Function.Magic`
|
|
178
|
-
same as `Name.Function` but for special function names that have an implicit use
|
|
179
|
-
in a language (e.g. ``__init__`` method in Python).
|
|
180
|
-
|
|
181
|
-
`Name.Label`
|
|
182
|
-
Token type for label names (e.g. in languages that support ``goto``).
|
|
183
|
-
|
|
184
|
-
`Name.Namespace`
|
|
185
|
-
Token type for namespaces. (e.g. import paths in Java/Python), names following
|
|
186
|
-
the ``module``/``namespace`` keyword in other languages.
|
|
187
|
-
|
|
188
|
-
`Name.Other`
|
|
189
|
-
Other names. Normally unused.
|
|
190
|
-
|
|
191
|
-
`Name.Tag`
|
|
192
|
-
Tag names (in HTML/XML markup or configuration files).
|
|
193
|
-
|
|
194
|
-
`Name.Variable`
|
|
195
|
-
Token type for variables. Some languages have prefixes for variable names
|
|
196
|
-
(PHP, Ruby, Perl). You can highlight them using this token.
|
|
197
|
-
|
|
198
|
-
`Name.Variable.Class`
|
|
199
|
-
same as `Name.Variable` but for class variables (also static variables).
|
|
200
|
-
|
|
201
|
-
`Name.Variable.Global`
|
|
202
|
-
same as `Name.Variable` but for global variables (used in Ruby, for
|
|
203
|
-
example).
|
|
204
|
-
|
|
205
|
-
`Name.Variable.Instance`
|
|
206
|
-
same as `Name.Variable` but for instance variables.
|
|
207
|
-
|
|
208
|
-
`Name.Variable.Magic`
|
|
209
|
-
same as `Name.Variable` but for special variable names that have an implicit use
|
|
210
|
-
in a language (e.g. ``__doc__`` in Python).
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
Literals
|
|
214
|
-
========
|
|
215
|
-
|
|
216
|
-
`Literal`
|
|
217
|
-
For any literal (if not further defined).
|
|
218
|
-
|
|
219
|
-
`Literal.Date`
|
|
220
|
-
for date literals (e.g. ``42d`` in Boo).
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
`String`
|
|
224
|
-
For any string literal.
|
|
225
|
-
|
|
226
|
-
`String.Affix`
|
|
227
|
-
Token type for affixes that further specify the type of the string they're
|
|
228
|
-
attached to (e.g. the prefixes ``r`` and ``u8`` in ``r"foo"`` and ``u8"foo"``).
|
|
229
|
-
|
|
230
|
-
`String.Backtick`
|
|
231
|
-
Token type for strings enclosed in backticks.
|
|
232
|
-
|
|
233
|
-
`String.Char`
|
|
234
|
-
Token type for single characters (e.g. Java, C).
|
|
235
|
-
|
|
236
|
-
`String.Delimiter`
|
|
237
|
-
Token type for delimiting identifiers in "heredoc", raw and other similar
|
|
238
|
-
strings (e.g. the word ``END`` in Perl code ``print <<'END';``).
|
|
239
|
-
|
|
240
|
-
`String.Doc`
|
|
241
|
-
Token type for documentation strings (for example Python).
|
|
242
|
-
|
|
243
|
-
`String.Double`
|
|
244
|
-
Double quoted strings.
|
|
245
|
-
|
|
246
|
-
`String.Escape`
|
|
247
|
-
Token type for escape sequences in strings.
|
|
248
|
-
|
|
249
|
-
`String.Heredoc`
|
|
250
|
-
Token type for "heredoc" strings (e.g. in Ruby or Perl).
|
|
251
|
-
|
|
252
|
-
`String.Interpol`
|
|
253
|
-
Token type for interpolated parts in strings (e.g. ``#{foo}`` in Ruby).
|
|
254
|
-
|
|
255
|
-
`String.Other`
|
|
256
|
-
Token type for any other strings (for example ``%q{foo}`` string constructs
|
|
257
|
-
in Ruby).
|
|
258
|
-
|
|
259
|
-
`String.Regex`
|
|
260
|
-
Token type for regular expression literals (e.g. ``/foo/`` in JavaScript).
|
|
261
|
-
|
|
262
|
-
`String.Single`
|
|
263
|
-
Token type for single quoted strings.
|
|
264
|
-
|
|
265
|
-
`String.Symbol`
|
|
266
|
-
Token type for symbols (e.g. ``:foo`` in LISP or Ruby).
|
|
267
|
-
|
|
268
|
-
|
|
269
|
-
`Number`
|
|
270
|
-
Token type for any number literal.
|
|
271
|
-
|
|
272
|
-
`Number.Bin`
|
|
273
|
-
Token type for binary literals (e.g. ``0b101010``).
|
|
274
|
-
|
|
275
|
-
`Number.Float`
|
|
276
|
-
Token type for float literals (e.g. ``42.0``).
|
|
277
|
-
|
|
278
|
-
`Number.Hex`
|
|
279
|
-
Token type for hexadecimal number literals (e.g. ``0xdeadbeef``).
|
|
280
|
-
|
|
281
|
-
`Number.Integer`
|
|
282
|
-
Token type for integer literals (e.g. ``42``).
|
|
283
|
-
|
|
284
|
-
`Number.Integer.Long`
|
|
285
|
-
Token type for long integer literals (e.g. ``42L`` in Python).
|
|
286
|
-
|
|
287
|
-
`Number.Oct`
|
|
288
|
-
Token type for octal literals.
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
Operators
|
|
292
|
-
=========
|
|
293
|
-
|
|
294
|
-
`Operator`
|
|
295
|
-
For any punctuation operator (e.g. ``+``, ``-``).
|
|
296
|
-
|
|
297
|
-
`Operator.Word`
|
|
298
|
-
For any operator that is a word (e.g. ``not``).
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
Punctuation
|
|
302
|
-
===========
|
|
303
|
-
|
|
304
|
-
.. versionadded:: 0.7
|
|
305
|
-
|
|
306
|
-
`Punctuation`
|
|
307
|
-
For any punctuation which is not an operator (e.g. ``[``, ``(``...)
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
Comments
|
|
311
|
-
========
|
|
312
|
-
|
|
313
|
-
`Comment`
|
|
314
|
-
Token type for any comment.
|
|
315
|
-
|
|
316
|
-
`Comment.Hashbang`
|
|
317
|
-
Token type for hashbang comments (i.e. first lines of files that start with
|
|
318
|
-
``#!``).
|
|
319
|
-
|
|
320
|
-
`Comment.Multiline`
|
|
321
|
-
Token type for multiline comments.
|
|
322
|
-
|
|
323
|
-
`Comment.Preproc`
|
|
324
|
-
Token type for preprocessor comments (also ``<?php``/``<%`` constructs).
|
|
325
|
-
|
|
326
|
-
`Comment.Single`
|
|
327
|
-
Token type for comments that end at the end of a line (e.g. ``# foo``).
|
|
328
|
-
|
|
329
|
-
`Comment.Special`
|
|
330
|
-
Special data in comments. For example code tags, author and license
|
|
331
|
-
information, etc.
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
Generic Tokens
|
|
335
|
-
==============
|
|
336
|
-
|
|
337
|
-
Generic tokens are for special lexers like the `DiffLexer` that doesn't really
|
|
338
|
-
highlight a programming language but a patch file.
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
`Generic`
|
|
342
|
-
A generic, unstyled token. Normally you don't use this token type.
|
|
343
|
-
|
|
344
|
-
`Generic.Deleted`
|
|
345
|
-
Marks the token value as deleted.
|
|
346
|
-
|
|
347
|
-
`Generic.Emph`
|
|
348
|
-
Marks the token value as emphasized.
|
|
349
|
-
|
|
350
|
-
`Generic.Error`
|
|
351
|
-
Marks the token value as an error message.
|
|
352
|
-
|
|
353
|
-
`Generic.Heading`
|
|
354
|
-
Marks the token value as headline.
|
|
355
|
-
|
|
356
|
-
`Generic.Inserted`
|
|
357
|
-
Marks the token value as inserted.
|
|
358
|
-
|
|
359
|
-
`Generic.Output`
|
|
360
|
-
Marks the token value as program output (e.g. for python cli lexer).
|
|
361
|
-
|
|
362
|
-
`Generic.Prompt`
|
|
363
|
-
Marks the token value as command prompt (e.g. bash lexer).
|
|
364
|
-
|
|
365
|
-
`Generic.Strong`
|
|
366
|
-
Marks the token value as bold (e.g. for rst lexer).
|
|
367
|
-
|
|
368
|
-
`Generic.Subheading`
|
|
369
|
-
Marks the token value as subheadline.
|
|
370
|
-
|
|
371
|
-
`Generic.Traceback`
|
|
372
|
-
Marks the token value as a part of an error traceback.
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
=====================
|
|
2
|
-
Unicode and Encodings
|
|
3
|
-
=====================
|
|
4
|
-
|
|
5
|
-
Since Pygments 0.6, all lexers use unicode strings internally. Because of that
|
|
6
|
-
you might encounter the occasional :exc:`UnicodeDecodeError` if you pass strings
|
|
7
|
-
with the wrong encoding.
|
|
8
|
-
|
|
9
|
-
Per default all lexers have their input encoding set to `guess`. This means
|
|
10
|
-
that the following encodings are tried:
|
|
11
|
-
|
|
12
|
-
* UTF-8 (including BOM handling)
|
|
13
|
-
* The locale encoding (i.e. the result of `locale.getpreferredencoding()`)
|
|
14
|
-
* As a last resort, `latin1`
|
|
15
|
-
|
|
16
|
-
If you pass a lexer a byte string object (not unicode), it tries to decode the
|
|
17
|
-
data using this encoding.
|
|
18
|
-
|
|
19
|
-
You can override the encoding using the `encoding` or `inencoding` lexer
|
|
20
|
-
options. If you have the `chardet`_ library installed and set the encoding to
|
|
21
|
-
``chardet`` if will analyse the text and use the encoding it thinks is the
|
|
22
|
-
right one automatically:
|
|
23
|
-
|
|
24
|
-
.. sourcecode:: python
|
|
25
|
-
|
|
26
|
-
from pygments.lexers import PythonLexer
|
|
27
|
-
lexer = PythonLexer(encoding='chardet')
|
|
28
|
-
|
|
29
|
-
The best way is to pass Pygments unicode objects. In that case you can't get
|
|
30
|
-
unexpected output.
|
|
31
|
-
|
|
32
|
-
The formatters now send Unicode objects to the stream if you don't set the
|
|
33
|
-
output encoding. You can do so by passing the formatters an `encoding` option:
|
|
34
|
-
|
|
35
|
-
.. sourcecode:: python
|
|
36
|
-
|
|
37
|
-
from pygments.formatters import HtmlFormatter
|
|
38
|
-
f = HtmlFormatter(encoding='utf-8')
|
|
39
|
-
|
|
40
|
-
**You will have to set this option if you have non-ASCII characters in the
|
|
41
|
-
source and the output stream does not accept Unicode written to it!**
|
|
42
|
-
This is the case for all regular files and for terminals.
|
|
43
|
-
|
|
44
|
-
Note: The Terminal formatter tries to be smart: if its output stream has an
|
|
45
|
-
`encoding` attribute, and you haven't set the option, it will encode any
|
|
46
|
-
Unicode string with this encoding before writing it. This is the case for
|
|
47
|
-
`sys.stdout`, for example. The other formatters don't have that behavior.
|
|
48
|
-
|
|
49
|
-
Another note: If you call Pygments via the command line (`pygmentize`),
|
|
50
|
-
encoding is handled differently, see :doc:`the command line docs <cmdline>`.
|
|
51
|
-
|
|
52
|
-
.. versionadded:: 0.7
|
|
53
|
-
The formatters now also accept an `outencoding` option which will override
|
|
54
|
-
the `encoding` option if given. This makes it possible to use a single
|
|
55
|
-
options dict with lexers and formatters, and still have different input and
|
|
56
|
-
output encodings.
|
|
57
|
-
|
|
58
|
-
.. _chardet: https://chardet.github.io/
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
Download and installation
|
|
2
|
-
=========================
|
|
3
|
-
|
|
4
|
-
The current release is version |version|.
|
|
5
|
-
|
|
6
|
-
Packaged versions
|
|
7
|
-
-----------------
|
|
8
|
-
|
|
9
|
-
You can download it `from the Python Package Index
|
|
10
|
-
<http://pypi.python.org/pypi/Pygments>`_. For installation of packages from
|
|
11
|
-
PyPI, we recommend `Pip <http://www.pip-installer.org>`_, which works on all
|
|
12
|
-
major platforms.
|
|
13
|
-
|
|
14
|
-
Under Linux, most distributions include a package for Pygments, usually called
|
|
15
|
-
``pygments`` or ``python-pygments``. You can install it with the package
|
|
16
|
-
manager as usual.
|
|
17
|
-
|
|
18
|
-
Development sources
|
|
19
|
-
-------------------
|
|
20
|
-
|
|
21
|
-
We're using the `Mercurial <http://selenic.com/mercurial>`_ version control
|
|
22
|
-
system. You can get the development source using this command::
|
|
23
|
-
|
|
24
|
-
hg clone http://bitbucket.org/birkenfeld/pygments-main pygments
|
|
25
|
-
|
|
26
|
-
Development takes place at `Bitbucket
|
|
27
|
-
<http://bitbucket.org/birkenfeld/pygments-main>`_, you can browse the source
|
|
28
|
-
online `here <http://bitbucket.org/birkenfeld/pygments-main/src>`_.
|
|
29
|
-
|
|
30
|
-
The latest changes in the development source code are listed in the `changelog
|
|
31
|
-
<http://bitbucket.org/birkenfeld/pygments-main/src/tip/CHANGES>`_.
|
|
32
|
-
|
|
33
|
-
.. Documentation
|
|
34
|
-
-------------
|
|
35
|
-
|
|
36
|
-
.. XXX todo
|
|
37
|
-
|
|
38
|
-
You can download the <a href="/docs/">documentation</a> either as
|
|
39
|
-
a bunch of rst files from the Mercurial repository, see above, or
|
|
40
|
-
as a tar.gz containing rendered HTML files:</p>
|
|
41
|
-
<p><a href="/docs/download/pygmentsdocs.tar.gz">pygmentsdocs.tar.gz</a></p>
|
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
:orphan:
|
|
2
|
-
|
|
3
|
-
Pygments FAQ
|
|
4
|
-
=============
|
|
5
|
-
|
|
6
|
-
What is Pygments?
|
|
7
|
-
-----------------
|
|
8
|
-
|
|
9
|
-
Pygments is a syntax highlighting engine written in Python. That means, it will
|
|
10
|
-
take source code (or other markup) in a supported language and output a
|
|
11
|
-
processed version (in different formats) containing syntax highlighting markup.
|
|
12
|
-
|
|
13
|
-
Its features include:
|
|
14
|
-
|
|
15
|
-
* a wide range of common :doc:`languages and markup formats <languages>` is supported
|
|
16
|
-
* new languages and formats are added easily
|
|
17
|
-
* a number of output formats is available, including:
|
|
18
|
-
|
|
19
|
-
- HTML
|
|
20
|
-
- ANSI sequences (console output)
|
|
21
|
-
- LaTeX
|
|
22
|
-
- RTF
|
|
23
|
-
|
|
24
|
-
* it is usable as a command-line tool and as a library
|
|
25
|
-
* parsing and formatting is fast
|
|
26
|
-
|
|
27
|
-
Pygments is licensed under the BSD license.
|
|
28
|
-
|
|
29
|
-
Where does the name Pygments come from?
|
|
30
|
-
---------------------------------------
|
|
31
|
-
|
|
32
|
-
*Py* of course stands for Python, while *pigments* are used for coloring paint,
|
|
33
|
-
and in this case, source code!
|
|
34
|
-
|
|
35
|
-
What are the system requirements?
|
|
36
|
-
---------------------------------
|
|
37
|
-
|
|
38
|
-
Pygments only needs a standard Python install, version 2.6 or higher or version
|
|
39
|
-
3.3 or higher for Python 3. No additional libraries are needed.
|
|
40
|
-
|
|
41
|
-
How can I use Pygments?
|
|
42
|
-
-----------------------
|
|
43
|
-
|
|
44
|
-
Pygments is usable as a command-line tool as well as a library.
|
|
45
|
-
|
|
46
|
-
From the command-line, usage looks like this (assuming the pygmentize script is
|
|
47
|
-
properly installed)::
|
|
48
|
-
|
|
49
|
-
pygmentize -f html /path/to/file.py
|
|
50
|
-
|
|
51
|
-
This will print a HTML-highlighted version of /path/to/file.py to standard output.
|
|
52
|
-
|
|
53
|
-
For a complete help, please run ``pygmentize -h``.
|
|
54
|
-
|
|
55
|
-
Usage as a library is thoroughly demonstrated in the Documentation section.
|
|
56
|
-
|
|
57
|
-
How do I make a new style?
|
|
58
|
-
--------------------------
|
|
59
|
-
|
|
60
|
-
Please see the :doc:`documentation on styles <docs/styles>`.
|
|
61
|
-
|
|
62
|
-
How can I report a bug or suggest a feature?
|
|
63
|
-
--------------------------------------------
|
|
64
|
-
|
|
65
|
-
Please report bugs and feature wishes in the tracker at Bitbucket.
|
|
66
|
-
|
|
67
|
-
You can also e-mail the author or use IRC, see the contact details.
|
|
68
|
-
|
|
69
|
-
I want this support for this language!
|
|
70
|
-
--------------------------------------
|
|
71
|
-
|
|
72
|
-
Instead of waiting for others to include language support, why not write it
|
|
73
|
-
yourself? All you have to know is :doc:`outlined in the docs
|
|
74
|
-
<docs/lexerdevelopment>`.
|
|
75
|
-
|
|
76
|
-
Can I use Pygments for programming language processing?
|
|
77
|
-
-------------------------------------------------------
|
|
78
|
-
|
|
79
|
-
The Pygments lexing machinery is quite powerful can be used to build lexers for
|
|
80
|
-
basically all languages. However, parsing them is not possible, though some
|
|
81
|
-
lexers go some steps in this direction in order to e.g. highlight function names
|
|
82
|
-
differently.
|
|
83
|
-
|
|
84
|
-
Also, error reporting is not the scope of Pygments. It focuses on correctly
|
|
85
|
-
highlighting syntactically valid documents, not finding and compensating errors.
|
|
86
|
-
|
|
87
|
-
Who uses Pygments?
|
|
88
|
-
------------------
|
|
89
|
-
|
|
90
|
-
This is an (incomplete) list of projects and sites known to use the Pygments highlighter.
|
|
91
|
-
|
|
92
|
-
* `Wikipedia <http://en.wikipedia.org>`_
|
|
93
|
-
* `BitBucket <http://bitbucket.org/>`_, a Mercurial and Git hosting site
|
|
94
|
-
* `The Sphinx documentation builder <http://sphinx.pocoo.org/>`_, for embedded source examples
|
|
95
|
-
* `rst2pdf <http://code.google.com/p/rst2pdf/>`_, a reStructuredText to PDF converter
|
|
96
|
-
* `Codecov <http://codecov.io/>`_, a code coverage CI service
|
|
97
|
-
* `Trac <http://trac.edgewall.org/>`_, the universal project management tool
|
|
98
|
-
* `AsciiDoc <http://www.methods.co.nz/asciidoc/>`_, a text-based documentation generator
|
|
99
|
-
* `ActiveState Code <http://code.activestate.com/>`_, the Python Cookbook successor
|
|
100
|
-
* `ViewVC <http://viewvc.org/>`_, a web-based version control repository browser
|
|
101
|
-
* `BzrFruit <http://repo.or.cz/w/bzrfruit.git>`_, a Bazaar branch viewer
|
|
102
|
-
* `QBzr <http://bazaar-vcs.org/QBzr>`_, a cross-platform Qt-based GUI front end for Bazaar
|
|
103
|
-
* `Review Board <http://www.review-board.org/>`_, a collaborative code reviewing tool
|
|
104
|
-
* `Diamanda <http://code.google.com/p/diamanda/>`_, a Django powered wiki system with support for Pygments
|
|
105
|
-
* `Progopedia <http://progopedia.ru/>`_ (`English <http://progopedia.com/>`_),
|
|
106
|
-
an encyclopedia of programming languages
|
|
107
|
-
* `Bruce <http://r1chardj0n3s.googlepages.com/bruce>`_, a reStructuredText presentation tool
|
|
108
|
-
* `PIDA <http://pida.co.uk/>`_, a universal IDE written in Python
|
|
109
|
-
* `BPython <http://www.noiseforfree.com/bpython/>`_, a curses-based intelligent Python shell
|
|
110
|
-
* `PuDB <http://pypi.python.org/pypi/pudb>`_, a console Python debugger
|
|
111
|
-
* `XWiki <http://www.xwiki.org/>`_, a wiki-based development framework in Java, using Jython
|
|
112
|
-
* `roux <http://ananelson.com/software/roux/>`_, a script for running R scripts
|
|
113
|
-
and creating beautiful output including graphs
|
|
114
|
-
* `hurl <http://hurl.it/>`_, a web service for making HTTP requests
|
|
115
|
-
* `wxHTMLPygmentizer <http://colinbarnette.net/projects/wxHTMLPygmentizer>`_ is
|
|
116
|
-
a GUI utility, used to make code-colorization easier
|
|
117
|
-
* `Postmarkup <http://code.google.com/p/postmarkup/>`_, a BBCode to XHTML generator
|
|
118
|
-
* `WpPygments <http://blog.mirotin.net/?page_id=49>`_, and `WPygments
|
|
119
|
-
<https://github.com/capynet/WPygments>`_, highlighter plugins for WordPress
|
|
120
|
-
* `Siafoo <http://siafoo.net>`_, a tool for sharing and storing useful code and programming experience
|
|
121
|
-
* `D source <http://www.dsource.org/>`_, a community for the D programming language
|
|
122
|
-
* `dpaste.com <http://dpaste.com/>`_, another Django pastebin
|
|
123
|
-
* `Django snippets <http://www.djangosnippets.org/>`_, a pastebin for Django code
|
|
124
|
-
* `Fayaa <http://www.fayaa.com/code/>`_, a Chinese pastebin
|
|
125
|
-
* `Incollo.com <http://incollo.com>`_, a free collaborative debugging tool
|
|
126
|
-
* `PasteBox <http://p.boxnet.eu/>`_, a pastebin focused on privacy
|
|
127
|
-
* `hilite.me <http://www.hilite.me/>`_, a site to highlight code snippets
|
|
128
|
-
* `patx.me <http://patx.me/paste>`_, a pastebin
|
|
129
|
-
* `Fluidic <https://github.com/richsmith/fluidic>`_, an experiment in
|
|
130
|
-
integrating shells with a GUI
|
|
131
|
-
* `pygments.rb <https://github.com/tmm1/pygments.rb>`_, a pygments wrapper for Ruby
|
|
132
|
-
* `Clygments <https://github.com/bfontaine/clygments>`_, a pygments wrapper for
|
|
133
|
-
Clojure
|
|
134
|
-
* `PHPygments <https://github.com/capynet/PHPygments>`_, a pygments wrapper for PHP
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
If you have a project or web site using Pygments, drop me a line, and I'll add a
|
|
138
|
-
link here.
|
|
139
|
-
|
|
@@ -1,54 +0,0 @@
|
|
|
1
|
-
Welcome!
|
|
2
|
-
========
|
|
3
|
-
|
|
4
|
-
This is the home of Pygments. It is a generic syntax highlighter suitable for
|
|
5
|
-
use in code hosting, forums, wikis or other applications that need to prettify
|
|
6
|
-
source code. Highlights are:
|
|
7
|
-
|
|
8
|
-
* a wide range of over 300 languages and other text formats is supported
|
|
9
|
-
* special attention is paid to details that increase highlighting quality
|
|
10
|
-
* support for new languages and formats are added easily; most languages use a
|
|
11
|
-
simple regex-based lexing mechanism
|
|
12
|
-
* a number of output formats is available, among them HTML, RTF, LaTeX and ANSI
|
|
13
|
-
sequences
|
|
14
|
-
* it is usable as a command-line tool and as a library
|
|
15
|
-
* ... and it highlights even Perl 6!
|
|
16
|
-
|
|
17
|
-
Read more in the :doc:`FAQ list <faq>` or the :doc:`documentation <docs/index>`,
|
|
18
|
-
or `download the latest release <http://pypi.python.org/pypi/Pygments>`_.
|
|
19
|
-
|
|
20
|
-
.. _contribute:
|
|
21
|
-
|
|
22
|
-
Contribute
|
|
23
|
-
----------
|
|
24
|
-
|
|
25
|
-
Like every open-source project, we are always looking for volunteers to help us
|
|
26
|
-
with programming. Python knowledge is required, but don't fear: Python is a very
|
|
27
|
-
clear and easy to learn language.
|
|
28
|
-
|
|
29
|
-
Development takes place on `Bitbucket
|
|
30
|
-
<https://bitbucket.org/birkenfeld/pygments-main>`_, where the Mercurial
|
|
31
|
-
repository, tickets and pull requests can be viewed.
|
|
32
|
-
|
|
33
|
-
Our primary communication instrument is the IRC channel **#pocoo** on the
|
|
34
|
-
Freenode network. To join it, let your IRC client connect to
|
|
35
|
-
``irc.freenode.net`` and do ``/join #pocoo``.
|
|
36
|
-
|
|
37
|
-
If you found a bug, just open a ticket in the Bitbucket tracker. Be sure to log
|
|
38
|
-
in to be notified when the issue is fixed -- development is not fast-paced as
|
|
39
|
-
the library is quite stable. You can also send an e-mail to the developers, see
|
|
40
|
-
below.
|
|
41
|
-
|
|
42
|
-
The authors
|
|
43
|
-
-----------
|
|
44
|
-
|
|
45
|
-
Pygments is maintained by **Georg Brandl**, e-mail address *georg*\ *@*\ *python.org*.
|
|
46
|
-
|
|
47
|
-
Many lexers and fixes have been contributed by **Armin Ronacher**, the rest of
|
|
48
|
-
the `Pocoo <http://dev.pocoo.org/>`_ team and **Tim Hatch**.
|
|
49
|
-
|
|
50
|
-
.. toctree::
|
|
51
|
-
:maxdepth: 1
|
|
52
|
-
:hidden:
|
|
53
|
-
|
|
54
|
-
docs/index
|