pygments.rb 2.0.0.rc3 → 2.3.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 +4 -4
- data/.github/workflows/ci.yml +13 -1
- data/.gitignore +0 -1
- data/.rubocop.yml +16 -0
- data/CHANGELOG.adoc +19 -0
- data/README.adoc +1 -3
- data/Rakefile +0 -14
- data/bench.rb +11 -6
- data/lib/pygments/lexer.rb +84 -62
- data/lib/pygments/mentos.py +7 -49
- data/lib/pygments/popen.rb +133 -173
- data/lib/pygments/version.rb +1 -1
- data/lib/pygments.rb +15 -6
- data/pygments.rb.gemspec +16 -11
- data/test/test_pygments.rb +19 -40
- data/vendor/pygments-main/{Pygments-2.7.3.dist-info → Pygments-2.10.0.dist-info}/AUTHORS +13 -1
- data/vendor/pygments-main/{Pygments-2.7.3.dist-info → Pygments-2.10.0.dist-info}/INSTALLER +0 -0
- data/vendor/pygments-main/{Pygments-2.7.3.dist-info → Pygments-2.10.0.dist-info}/LICENSE +1 -1
- data/vendor/pygments-main/{Pygments-2.7.3.dist-info → Pygments-2.10.0.dist-info}/METADATA +8 -9
- data/vendor/pygments-main/Pygments-2.10.0.dist-info/RECORD +524 -0
- data/vendor/pygments-main/{Pygments-2.7.3.dist-info → Pygments-2.10.0.dist-info}/REQUESTED +0 -0
- data/vendor/pygments-main/{Pygments-2.7.3.dist-info → Pygments-2.10.0.dist-info}/WHEEL +0 -0
- data/vendor/pygments-main/{Pygments-2.7.3.dist-info → Pygments-2.10.0.dist-info}/entry_points.txt +0 -0
- data/vendor/pygments-main/{Pygments-2.7.3.dist-info → Pygments-2.10.0.dist-info}/top_level.txt +0 -0
- data/vendor/pygments-main/bin/pygmentize +1 -1
- data/vendor/pygments-main/pygments/__init__.py +2 -3
- data/vendor/pygments-main/pygments/__main__.py +1 -2
- data/vendor/pygments-main/pygments/cmdline.py +179 -159
- data/vendor/pygments-main/pygments/console.py +1 -2
- data/vendor/pygments-main/pygments/filter.py +1 -2
- data/vendor/pygments-main/pygments/filters/__init__.py +1 -2
- data/vendor/pygments-main/pygments/formatter.py +1 -2
- data/vendor/pygments-main/pygments/formatters/__init__.py +2 -3
- data/vendor/pygments-main/pygments/formatters/_mapping.py +2 -2
- data/vendor/pygments-main/pygments/formatters/bbcode.py +1 -2
- data/vendor/pygments-main/pygments/formatters/html.py +53 -25
- data/vendor/pygments-main/pygments/formatters/img.py +24 -10
- data/vendor/pygments-main/pygments/formatters/irc.py +1 -2
- data/vendor/pygments-main/pygments/formatters/latex.py +8 -9
- data/vendor/pygments-main/pygments/formatters/other.py +7 -10
- data/vendor/pygments-main/pygments/formatters/pangomarkup.py +83 -0
- data/vendor/pygments-main/pygments/formatters/rtf.py +1 -2
- data/vendor/pygments-main/pygments/formatters/svg.py +5 -4
- data/vendor/pygments-main/pygments/formatters/terminal.py +1 -2
- data/vendor/pygments-main/pygments/formatters/terminal256.py +24 -3
- data/vendor/pygments-main/pygments/lexer.py +7 -6
- data/vendor/pygments-main/pygments/lexers/__init__.py +2 -3
- data/vendor/pygments-main/pygments/lexers/_asy_builtins.py +1 -2
- data/vendor/pygments-main/pygments/lexers/_cl_builtins.py +1 -2
- data/vendor/pygments-main/pygments/lexers/_cocoa_builtins.py +16 -12
- data/vendor/pygments-main/pygments/lexers/_csound_builtins.py +56 -16
- data/vendor/pygments-main/pygments/lexers/_julia_builtins.py +401 -0
- data/vendor/pygments-main/pygments/lexers/_lasso_builtins.py +1 -2
- data/vendor/pygments-main/pygments/lexers/_lua_builtins.py +1 -2
- data/vendor/pygments-main/pygments/lexers/_mapping.py +73 -54
- data/vendor/pygments-main/pygments/lexers/_mql_builtins.py +1 -2
- data/vendor/pygments-main/pygments/lexers/_mysql_builtins.py +2 -3
- data/vendor/pygments-main/pygments/lexers/_openedge_builtins.py +439 -386
- data/vendor/pygments-main/pygments/lexers/_php_builtins.py +1 -2
- data/vendor/pygments-main/pygments/lexers/_postgres_builtins.py +1 -2
- data/vendor/pygments-main/pygments/lexers/_scilab_builtins.py +1 -2
- data/vendor/pygments-main/pygments/lexers/_sourcemod_builtins.py +1 -2
- data/vendor/pygments-main/pygments/lexers/_stan_builtins.py +1 -2
- data/vendor/pygments-main/pygments/lexers/_stata_builtins.py +91 -55
- data/vendor/pygments-main/pygments/lexers/_tsql_builtins.py +1 -2
- data/vendor/pygments-main/pygments/lexers/_usd_builtins.py +1 -2
- data/vendor/pygments-main/pygments/lexers/_vbscript_builtins.py +1 -2
- data/vendor/pygments-main/pygments/lexers/_vim_builtins.py +1 -2
- data/vendor/pygments-main/pygments/lexers/actionscript.py +9 -10
- data/vendor/pygments-main/pygments/lexers/agile.py +1 -2
- data/vendor/pygments-main/pygments/lexers/algebra.py +1 -2
- data/vendor/pygments-main/pygments/lexers/ambient.py +3 -4
- data/vendor/pygments-main/pygments/lexers/amdgpu.py +53 -0
- data/vendor/pygments-main/pygments/lexers/ampl.py +1 -2
- data/vendor/pygments-main/pygments/lexers/apdlexer.py +448 -0
- data/vendor/pygments-main/pygments/lexers/apl.py +7 -5
- data/vendor/pygments-main/pygments/lexers/archetype.py +2 -3
- data/vendor/pygments-main/pygments/lexers/arrow.py +1 -2
- data/vendor/pygments-main/pygments/lexers/asc.py +51 -0
- data/vendor/pygments-main/pygments/lexers/asm.py +87 -60
- data/vendor/pygments-main/pygments/lexers/automation.py +8 -3
- data/vendor/pygments-main/pygments/lexers/bare.py +1 -2
- data/vendor/pygments-main/pygments/lexers/basic.py +3 -4
- data/vendor/pygments-main/pygments/lexers/bibtex.py +3 -4
- data/vendor/pygments-main/pygments/lexers/boa.py +4 -5
- data/vendor/pygments-main/pygments/lexers/business.py +3 -4
- data/vendor/pygments-main/pygments/lexers/c_cpp.py +61 -36
- data/vendor/pygments-main/pygments/lexers/c_like.py +103 -5
- data/vendor/pygments-main/pygments/lexers/capnproto.py +1 -2
- data/vendor/pygments-main/pygments/lexers/cddl.py +190 -0
- data/vendor/pygments-main/pygments/lexers/chapel.py +52 -29
- data/vendor/pygments-main/pygments/lexers/clean.py +7 -8
- data/vendor/pygments-main/pygments/lexers/compiled.py +1 -2
- data/vendor/pygments-main/pygments/lexers/configs.py +139 -48
- data/vendor/pygments-main/pygments/lexers/console.py +1 -2
- data/vendor/pygments-main/pygments/lexers/crystal.py +53 -79
- data/vendor/pygments-main/pygments/lexers/csound.py +3 -4
- data/vendor/pygments-main/pygments/lexers/css.py +11 -8
- data/vendor/pygments-main/pygments/lexers/d.py +3 -4
- data/vendor/pygments-main/pygments/lexers/dalvik.py +1 -2
- data/vendor/pygments-main/pygments/lexers/data.py +2 -3
- data/vendor/pygments-main/pygments/lexers/devicetree.py +2 -3
- data/vendor/pygments-main/pygments/lexers/diff.py +1 -2
- data/vendor/pygments-main/pygments/lexers/dotnet.py +7 -8
- data/vendor/pygments-main/pygments/lexers/dsls.py +3 -4
- data/vendor/pygments-main/pygments/lexers/dylan.py +1 -2
- data/vendor/pygments-main/pygments/lexers/ecl.py +4 -6
- data/vendor/pygments-main/pygments/lexers/eiffel.py +2 -3
- data/vendor/pygments-main/pygments/lexers/elm.py +1 -2
- data/vendor/pygments-main/pygments/lexers/email.py +1 -2
- data/vendor/pygments-main/pygments/lexers/erlang.py +2 -3
- data/vendor/pygments-main/pygments/lexers/esoteric.py +1 -2
- data/vendor/pygments-main/pygments/lexers/ezhil.py +1 -2
- data/vendor/pygments-main/pygments/lexers/factor.py +3 -4
- data/vendor/pygments-main/pygments/lexers/fantom.py +1 -2
- data/vendor/pygments-main/pygments/lexers/felix.py +1 -2
- data/vendor/pygments-main/pygments/lexers/floscript.py +2 -3
- data/vendor/pygments-main/pygments/lexers/forth.py +2 -3
- data/vendor/pygments-main/pygments/lexers/fortran.py +9 -7
- data/vendor/pygments-main/pygments/lexers/foxpro.py +1 -2
- data/vendor/pygments-main/pygments/lexers/freefem.py +1 -2
- data/vendor/pygments-main/pygments/lexers/functional.py +1 -2
- data/vendor/pygments-main/pygments/lexers/futhark.py +111 -0
- data/vendor/pygments-main/pygments/lexers/gcodelexer.py +36 -0
- data/vendor/pygments-main/pygments/lexers/gdscript.py +1 -2
- data/vendor/pygments-main/pygments/lexers/go.py +3 -4
- data/vendor/pygments-main/pygments/lexers/grammar_notation.py +1 -2
- data/vendor/pygments-main/pygments/lexers/graph.py +1 -2
- data/vendor/pygments-main/pygments/lexers/graphics.py +4 -5
- data/vendor/pygments-main/pygments/lexers/graphviz.py +58 -0
- data/vendor/pygments-main/pygments/lexers/gsql.py +92 -0
- data/vendor/pygments-main/pygments/lexers/haskell.py +5 -6
- data/vendor/pygments-main/pygments/lexers/haxe.py +4 -5
- data/vendor/pygments-main/pygments/lexers/hdl.py +2 -6
- data/vendor/pygments-main/pygments/lexers/hexdump.py +1 -2
- data/vendor/pygments-main/pygments/lexers/html.py +7 -8
- data/vendor/pygments-main/pygments/lexers/idl.py +1 -2
- data/vendor/pygments-main/pygments/lexers/igor.py +1 -2
- data/vendor/pygments-main/pygments/lexers/inferno.py +1 -2
- data/vendor/pygments-main/pygments/lexers/installers.py +3 -4
- data/vendor/pygments-main/pygments/lexers/int_fiction.py +1 -2
- data/vendor/pygments-main/pygments/lexers/iolang.py +2 -3
- data/vendor/pygments-main/pygments/lexers/j.py +2 -3
- data/vendor/pygments-main/pygments/lexers/javascript.py +170 -156
- data/vendor/pygments-main/pygments/lexers/jslt.py +94 -0
- data/vendor/pygments-main/pygments/lexers/julia.py +136 -185
- data/vendor/pygments-main/pygments/lexers/jvm.py +433 -307
- data/vendor/pygments-main/pygments/lexers/kuin.py +299 -0
- data/vendor/pygments-main/pygments/lexers/lisp.py +25 -23
- data/vendor/pygments-main/pygments/lexers/make.py +3 -4
- data/vendor/pygments-main/pygments/lexers/markup.py +13 -16
- data/vendor/pygments-main/pygments/lexers/math.py +1 -2
- data/vendor/pygments-main/pygments/lexers/matlab.py +2666 -93
- data/vendor/pygments-main/pygments/lexers/meson.py +155 -0
- data/vendor/pygments-main/pygments/lexers/mime.py +7 -23
- data/vendor/pygments-main/pygments/lexers/ml.py +8 -9
- data/vendor/pygments-main/pygments/lexers/modeling.py +1 -2
- data/vendor/pygments-main/pygments/lexers/modula2.py +3 -4
- data/vendor/pygments-main/pygments/lexers/monte.py +1 -2
- data/vendor/pygments-main/pygments/lexers/mosel.py +1 -2
- data/vendor/pygments-main/pygments/lexers/ncl.py +1 -2
- data/vendor/pygments-main/pygments/lexers/nimrod.py +2 -3
- data/vendor/pygments-main/pygments/lexers/nit.py +1 -2
- data/vendor/pygments-main/pygments/lexers/nix.py +1 -2
- data/vendor/pygments-main/pygments/lexers/oberon.py +1 -2
- data/vendor/pygments-main/pygments/lexers/objective.py +6 -7
- data/vendor/pygments-main/pygments/lexers/ooc.py +1 -2
- data/vendor/pygments-main/pygments/lexers/other.py +1 -2
- data/vendor/pygments-main/pygments/lexers/parasail.py +1 -2
- data/vendor/pygments-main/pygments/lexers/parsers.py +26 -27
- data/vendor/pygments-main/pygments/lexers/pascal.py +1 -2
- data/vendor/pygments-main/pygments/lexers/pawn.py +2 -5
- data/vendor/pygments-main/pygments/lexers/perl.py +1 -2
- data/vendor/pygments-main/pygments/lexers/php.py +3 -4
- data/vendor/pygments-main/pygments/lexers/pointless.py +1 -2
- data/vendor/pygments-main/pygments/lexers/pony.py +1 -2
- data/vendor/pygments-main/pygments/lexers/praat.py +1 -2
- data/vendor/pygments-main/pygments/lexers/procfile.py +43 -0
- data/vendor/pygments-main/pygments/lexers/prolog.py +3 -4
- data/vendor/pygments-main/pygments/lexers/promql.py +2 -3
- data/vendor/pygments-main/pygments/lexers/python.py +38 -17
- data/vendor/pygments-main/pygments/lexers/qvt.py +1 -2
- data/vendor/pygments-main/pygments/lexers/r.py +1 -2
- data/vendor/pygments-main/pygments/lexers/rdf.py +1 -2
- data/vendor/pygments-main/pygments/lexers/rebol.py +1 -2
- data/vendor/pygments-main/pygments/lexers/resource.py +2 -3
- data/vendor/pygments-main/pygments/lexers/ride.py +1 -2
- data/vendor/pygments-main/pygments/lexers/rnc.py +2 -3
- data/vendor/pygments-main/pygments/lexers/roboconf.py +1 -2
- data/vendor/pygments-main/pygments/lexers/robotframework.py +1 -2
- data/vendor/pygments-main/pygments/lexers/ruby.py +31 -25
- data/vendor/pygments-main/pygments/lexers/rust.py +10 -12
- data/vendor/pygments-main/pygments/lexers/sas.py +1 -2
- data/vendor/pygments-main/pygments/lexers/scdoc.py +1 -2
- data/vendor/pygments-main/pygments/lexers/scripting.py +12 -13
- data/vendor/pygments-main/pygments/lexers/sgf.py +1 -2
- data/vendor/pygments-main/pygments/lexers/shell.py +15 -17
- data/vendor/pygments-main/pygments/lexers/sieve.py +1 -2
- data/vendor/pygments-main/pygments/lexers/slash.py +1 -2
- data/vendor/pygments-main/pygments/lexers/smalltalk.py +1 -2
- data/vendor/pygments-main/pygments/lexers/smithy.py +79 -0
- data/vendor/pygments-main/pygments/lexers/smv.py +2 -3
- data/vendor/pygments-main/pygments/lexers/snobol.py +1 -2
- data/vendor/pygments-main/pygments/lexers/solidity.py +1 -2
- data/vendor/pygments-main/pygments/lexers/special.py +44 -30
- data/vendor/pygments-main/pygments/lexers/sql.py +8 -13
- data/vendor/pygments-main/pygments/lexers/stata.py +1 -2
- data/vendor/pygments-main/pygments/lexers/supercollider.py +4 -5
- data/vendor/pygments-main/pygments/lexers/tcl.py +4 -5
- data/vendor/pygments-main/pygments/lexers/teal.py +88 -0
- data/vendor/pygments-main/pygments/lexers/templates.py +34 -35
- data/vendor/pygments-main/pygments/lexers/teraterm.py +2 -3
- data/vendor/pygments-main/pygments/lexers/testing.py +2 -3
- data/vendor/pygments-main/pygments/lexers/text.py +1 -2
- data/vendor/pygments-main/pygments/lexers/textedit.py +3 -4
- data/vendor/pygments-main/pygments/lexers/textfmts.py +1 -2
- data/vendor/pygments-main/pygments/lexers/theorem.py +11 -7
- data/vendor/pygments-main/pygments/lexers/thingsdb.py +118 -0
- data/vendor/pygments-main/pygments/lexers/tnt.py +26 -17
- data/vendor/pygments-main/pygments/lexers/trafficscript.py +2 -3
- data/vendor/pygments-main/pygments/lexers/typoscript.py +1 -2
- data/vendor/pygments-main/pygments/lexers/unicon.py +1 -2
- data/vendor/pygments-main/pygments/lexers/urbi.py +3 -4
- data/vendor/pygments-main/pygments/lexers/usd.py +1 -2
- data/vendor/pygments-main/pygments/lexers/varnish.py +2 -3
- data/vendor/pygments-main/pygments/lexers/verification.py +1 -2
- data/vendor/pygments-main/pygments/lexers/web.py +1 -2
- data/vendor/pygments-main/pygments/lexers/webassembly.py +120 -0
- data/vendor/pygments-main/pygments/lexers/webidl.py +1 -2
- data/vendor/pygments-main/pygments/lexers/webmisc.py +5 -5
- data/vendor/pygments-main/pygments/lexers/whiley.py +1 -2
- data/vendor/pygments-main/pygments/lexers/x10.py +2 -3
- data/vendor/pygments-main/pygments/lexers/xorg.py +1 -2
- data/vendor/pygments-main/pygments/lexers/yang.py +1 -2
- data/vendor/pygments-main/pygments/lexers/zig.py +1 -2
- data/vendor/pygments-main/pygments/modeline.py +1 -2
- data/vendor/pygments-main/pygments/plugin.py +2 -3
- data/vendor/pygments-main/pygments/regexopt.py +2 -3
- data/vendor/pygments-main/pygments/scanner.py +1 -2
- data/vendor/pygments-main/pygments/sphinxext.py +1 -2
- data/vendor/pygments-main/pygments/style.py +4 -5
- data/vendor/pygments-main/pygments/styles/__init__.py +5 -2
- data/vendor/pygments-main/pygments/styles/abap.py +1 -2
- data/vendor/pygments-main/pygments/styles/algol.py +1 -2
- data/vendor/pygments-main/pygments/styles/algol_nu.py +1 -2
- data/vendor/pygments-main/pygments/styles/arduino.py +1 -2
- data/vendor/pygments-main/pygments/styles/autumn.py +1 -2
- data/vendor/pygments-main/pygments/styles/borland.py +1 -2
- data/vendor/pygments-main/pygments/styles/bw.py +1 -2
- data/vendor/pygments-main/pygments/styles/colorful.py +1 -2
- data/vendor/pygments-main/pygments/styles/default.py +1 -2
- data/vendor/pygments-main/pygments/styles/emacs.py +1 -2
- data/vendor/pygments-main/pygments/styles/friendly.py +2 -2
- data/vendor/pygments-main/pygments/styles/fruity.py +1 -2
- data/vendor/pygments-main/pygments/styles/gruvbox.py +107 -0
- data/vendor/pygments-main/pygments/styles/igor.py +1 -2
- data/vendor/pygments-main/pygments/styles/inkpot.py +1 -2
- data/vendor/pygments-main/pygments/styles/lovelace.py +1 -2
- data/vendor/pygments-main/pygments/styles/manni.py +1 -2
- data/vendor/pygments-main/pygments/styles/material.py +118 -0
- data/vendor/pygments-main/pygments/styles/monokai.py +1 -2
- data/vendor/pygments-main/pygments/styles/murphy.py +1 -2
- data/vendor/pygments-main/pygments/styles/native.py +2 -2
- data/vendor/pygments-main/pygments/styles/paraiso_dark.py +1 -2
- data/vendor/pygments-main/pygments/styles/paraiso_light.py +1 -2
- data/vendor/pygments-main/pygments/styles/pastie.py +1 -2
- data/vendor/pygments-main/pygments/styles/perldoc.py +1 -2
- data/vendor/pygments-main/pygments/styles/rainbow_dash.py +1 -2
- data/vendor/pygments-main/pygments/styles/rrt.py +1 -2
- data/vendor/pygments-main/pygments/styles/sas.py +1 -2
- data/vendor/pygments-main/pygments/styles/solarized.py +4 -2
- data/vendor/pygments-main/pygments/styles/stata_dark.py +1 -2
- data/vendor/pygments-main/pygments/styles/stata_light.py +1 -2
- data/vendor/pygments-main/pygments/styles/tango.py +1 -2
- data/vendor/pygments-main/pygments/styles/trac.py +1 -2
- data/vendor/pygments-main/pygments/styles/vim.py +1 -2
- data/vendor/pygments-main/pygments/styles/vs.py +1 -2
- data/vendor/pygments-main/pygments/styles/xcode.py +1 -2
- data/vendor/pygments-main/pygments/styles/zenburn.py +80 -0
- data/vendor/pygments-main/pygments/token.py +1 -2
- data/vendor/pygments-main/pygments/unistring.py +1 -2
- data/vendor/pygments-main/pygments/util.py +2 -5
- metadata +48 -23
- data/cache-lexers.rb +0 -9
- data/lexers +0 -0
- data/vendor/pygments-main/Pygments-2.7.3.dist-info/RECORD +0 -482
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
1
|
"""
|
|
3
2
|
pygments.lexers.stata
|
|
4
3
|
~~~~~~~~~~~~~~~~~~~~~
|
|
5
4
|
|
|
6
5
|
Lexer for Stata
|
|
7
6
|
|
|
8
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
|
|
9
8
|
:license: BSD, see LICENSE for details.
|
|
10
9
|
"""
|
|
11
10
|
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
1
|
"""
|
|
3
2
|
pygments.lexers.supercollider
|
|
4
3
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
5
4
|
|
|
6
5
|
Lexer for SuperCollider
|
|
7
6
|
|
|
8
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
|
|
9
8
|
:license: BSD, see LICENSE for details.
|
|
10
9
|
"""
|
|
11
10
|
|
|
@@ -26,7 +25,7 @@ class SuperColliderLexer(RegexLexer):
|
|
|
26
25
|
"""
|
|
27
26
|
|
|
28
27
|
name = 'SuperCollider'
|
|
29
|
-
aliases = ['
|
|
28
|
+
aliases = ['supercollider', 'sc']
|
|
30
29
|
filenames = ['*.sc', '*.scd']
|
|
31
30
|
mimetypes = ['application/supercollider', 'text/supercollider', ]
|
|
32
31
|
|
|
@@ -84,8 +83,8 @@ class SuperColliderLexer(RegexLexer):
|
|
|
84
83
|
(r'[0-9][0-9]*\.[0-9]+([eE][0-9]+)?[fd]?', Number.Float),
|
|
85
84
|
(r'0x[0-9a-fA-F]+', Number.Hex),
|
|
86
85
|
(r'[0-9]+', Number.Integer),
|
|
87
|
-
(r'"(\\\\|\\
|
|
88
|
-
(r"'(\\\\|\\
|
|
86
|
+
(r'"(\\\\|\\[^\\]|[^"\\])*"', String.Double),
|
|
87
|
+
(r"'(\\\\|\\[^\\]|[^'\\])*'", String.Single),
|
|
89
88
|
]
|
|
90
89
|
}
|
|
91
90
|
|
|
@@ -1,17 +1,16 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
1
|
"""
|
|
3
2
|
pygments.lexers.tcl
|
|
4
3
|
~~~~~~~~~~~~~~~~~~~
|
|
5
4
|
|
|
6
5
|
Lexers for Tcl and related languages.
|
|
7
6
|
|
|
8
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
|
|
9
8
|
:license: BSD, see LICENSE for details.
|
|
10
9
|
"""
|
|
11
10
|
|
|
12
11
|
from pygments.lexer import RegexLexer, include, words
|
|
13
12
|
from pygments.token import Text, Comment, Operator, Keyword, Name, String, \
|
|
14
|
-
Number
|
|
13
|
+
Number, Whitespace
|
|
15
14
|
from pygments.util import shebang_matches
|
|
16
15
|
|
|
17
16
|
__all__ = ['TclLexer']
|
|
@@ -80,13 +79,13 @@ class TclLexer(RegexLexer):
|
|
|
80
79
|
(r'!=|==|<<|>>|<=|>=|&&|\|\||\*\*|[-+~!*/%<>&^|?:]', Operator),
|
|
81
80
|
],
|
|
82
81
|
'data': [
|
|
83
|
-
(r'\s+',
|
|
82
|
+
(r'\s+', Whitespace),
|
|
84
83
|
(r'0x[a-fA-F0-9]+', Number.Hex),
|
|
85
84
|
(r'0[0-7]+', Number.Oct),
|
|
86
85
|
(r'\d+\.\d+', Number.Float),
|
|
87
86
|
(r'\d+', Number.Integer),
|
|
88
87
|
(r'\$([\w.:-]+)', Name.Variable),
|
|
89
|
-
(r'([\w
|
|
88
|
+
(r'([\w.,@:-]+)', Text),
|
|
90
89
|
],
|
|
91
90
|
'params': [
|
|
92
91
|
(r';', Keyword, '#pop'),
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
"""
|
|
3
|
+
pygments.lexers.teal
|
|
4
|
+
~~~~~~~~~~~~~~~~~~~~
|
|
5
|
+
|
|
6
|
+
Lexer for TEAL.
|
|
7
|
+
|
|
8
|
+
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
|
|
9
|
+
:license: BSD, see LICENSE for details.
|
|
10
|
+
"""
|
|
11
|
+
|
|
12
|
+
from pygments.lexer import RegexLexer, bygroups, include, words
|
|
13
|
+
from pygments.token import Comment, Name, Number, String, Text, Keyword
|
|
14
|
+
|
|
15
|
+
__all__ = ['TealLexer']
|
|
16
|
+
|
|
17
|
+
class TealLexer(RegexLexer):
|
|
18
|
+
"""
|
|
19
|
+
For the `Transaction Execution Approval Language (TEAL)
|
|
20
|
+
<https://developer.algorand.org/docs/reference/teal/specification/>`
|
|
21
|
+
|
|
22
|
+
For more information about the grammar, see:
|
|
23
|
+
https://github.com/algorand/go-algorand/blob/master/data/transactions/logic/assembler.go
|
|
24
|
+
|
|
25
|
+
.. versionadded:: 2.9
|
|
26
|
+
"""
|
|
27
|
+
name = 'teal'
|
|
28
|
+
aliases = ['teal']
|
|
29
|
+
filenames = ['*.teal']
|
|
30
|
+
|
|
31
|
+
keywords = words({
|
|
32
|
+
'Sender', 'Fee', 'FirstValid', 'FirstValidTime', 'LastValid', 'Note',
|
|
33
|
+
'Lease', 'Receiver', 'Amount', 'CloseRemainderTo', 'VotePK',
|
|
34
|
+
'SelectionPK', 'VoteFirst', 'VoteLast', 'VoteKeyDilution', 'Type',
|
|
35
|
+
'TypeEnum', 'XferAsset', 'AssetAmount', 'AssetSender', 'AssetReceiver',
|
|
36
|
+
'AssetCloseTo', 'GroupIndex', 'TxID', 'ApplicationID', 'OnCompletion',
|
|
37
|
+
'ApplicationArgs', 'NumAppArgs', 'Accounts', 'NumAccounts',
|
|
38
|
+
'ApprovalProgram', 'ClearStateProgram', 'RekeyTo', 'ConfigAsset',
|
|
39
|
+
'ConfigAssetTotal', 'ConfigAssetDecimals', 'ConfigAssetDefaultFrozen',
|
|
40
|
+
'ConfigAssetUnitName', 'ConfigAssetName', 'ConfigAssetURL',
|
|
41
|
+
'ConfigAssetMetadataHash', 'ConfigAssetManager', 'ConfigAssetReserve',
|
|
42
|
+
'ConfigAssetFreeze', 'ConfigAssetClawback', 'FreezeAsset',
|
|
43
|
+
'FreezeAssetAccount', 'FreezeAssetFrozen',
|
|
44
|
+
'NoOp', 'OptIn', 'CloseOut', 'ClearState', 'UpdateApplication',
|
|
45
|
+
'DeleteApplication',
|
|
46
|
+
'MinTxnFee', 'MinBalance', 'MaxTxnLife', 'ZeroAddress', 'GroupSize',
|
|
47
|
+
'LogicSigVersion', 'Round', 'LatestTimestamp', 'CurrentApplicationID',
|
|
48
|
+
'AssetBalance', 'AssetFrozen',
|
|
49
|
+
'AssetTotal', 'AssetDecimals', 'AssetDefaultFrozen', 'AssetUnitName',
|
|
50
|
+
'AssetName', 'AssetURL', 'AssetMetadataHash', 'AssetManager',
|
|
51
|
+
'AssetReserve', 'AssetFreeze', 'AssetClawback',
|
|
52
|
+
}, suffix = r'\b')
|
|
53
|
+
|
|
54
|
+
identifier = r'[^ \t\n]+(?=\/\/)|[^ \t\n]+'
|
|
55
|
+
newline = r'\r?\n'
|
|
56
|
+
tokens = {
|
|
57
|
+
'root': [
|
|
58
|
+
include('whitespace'),
|
|
59
|
+
# pragmas match specifically on the space character
|
|
60
|
+
(r'^#pragma .*' + newline, Comment.Directive),
|
|
61
|
+
# labels must be followed by a space,
|
|
62
|
+
# but anything after that is ignored
|
|
63
|
+
('(' + identifier + ':' + ')' + '([ \t].*)',
|
|
64
|
+
bygroups(Name.Label, Comment.Single)),
|
|
65
|
+
(identifier, Name.Function, 'function-args'),
|
|
66
|
+
],
|
|
67
|
+
'function-args': [
|
|
68
|
+
include('whitespace'),
|
|
69
|
+
(r'"', String, 'string'),
|
|
70
|
+
(r'(b(?:ase)?(?:32|64) ?)(\(?[a-zA-Z0-9+/=]+\)?)',
|
|
71
|
+
bygroups(String.Affix, String.Other)),
|
|
72
|
+
(r'[A-Z2-7]{58}', Number), # address
|
|
73
|
+
(r'0x[\da-fA-F]+', Number.Hex),
|
|
74
|
+
(r'\d+', Number.Integer),
|
|
75
|
+
(keywords, Keyword),
|
|
76
|
+
(identifier, Name.Attributes), # branch targets
|
|
77
|
+
(newline, Text, '#pop'),
|
|
78
|
+
],
|
|
79
|
+
'string': [
|
|
80
|
+
(r'\\(?:["nrt\\]|x\d\d)', String.Escape),
|
|
81
|
+
(r'[^\\\"\n]+', String),
|
|
82
|
+
(r'"', String, '#pop'),
|
|
83
|
+
],
|
|
84
|
+
'whitespace': [
|
|
85
|
+
(r'[ \t]+', Text),
|
|
86
|
+
(r'//[^\n]+', Comment.Single),
|
|
87
|
+
],
|
|
88
|
+
}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
1
|
"""
|
|
3
2
|
pygments.lexers.templates
|
|
4
3
|
~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
5
4
|
|
|
6
5
|
Lexers for various template engines' markup.
|
|
7
6
|
|
|
8
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
|
|
9
8
|
:license: BSD, see LICENSE for details.
|
|
10
9
|
"""
|
|
11
10
|
|
|
@@ -179,8 +178,8 @@ class SmartyLexer(RegexLexer):
|
|
|
179
178
|
(r'(true|false|null)\b', Keyword.Constant),
|
|
180
179
|
(r"[0-9](\.[0-9]*)?(eE[+-][0-9])?[flFLdD]?|"
|
|
181
180
|
r"0[xX][0-9a-fA-F]+[Ll]?", Number),
|
|
182
|
-
(r'"(\\\\|\\
|
|
183
|
-
(r"'(\\\\|\\
|
|
181
|
+
(r'"(\\\\|\\[^\\]|[^"\\])*"', String.Double),
|
|
182
|
+
(r"'(\\\\|\\[^\\]|[^'\\])*'", String.Single),
|
|
184
183
|
(r'[a-zA-Z_]\w*', Name.Attribute)
|
|
185
184
|
]
|
|
186
185
|
}
|
|
@@ -252,8 +251,8 @@ class VelocityLexer(RegexLexer):
|
|
|
252
251
|
(r'\$!?\{?', Punctuation, 'variable'),
|
|
253
252
|
(r'\s+', Text),
|
|
254
253
|
(r'[,:]', Punctuation),
|
|
255
|
-
(r'"(\\\\|\\
|
|
256
|
-
(r"'(\\\\|\\
|
|
254
|
+
(r'"(\\\\|\\[^\\]|[^"\\])*"', String.Double),
|
|
255
|
+
(r"'(\\\\|\\[^\\]|[^'\\])*'", String.Single),
|
|
257
256
|
(r"0[xX][0-9a-fA-F]+[Ll]?", Number),
|
|
258
257
|
(r"\b[0-9]+\b", Number),
|
|
259
258
|
(r'(true|false|null)\b', Keyword.Constant),
|
|
@@ -268,11 +267,11 @@ class VelocityLexer(RegexLexer):
|
|
|
268
267
|
|
|
269
268
|
def analyse_text(text):
|
|
270
269
|
rv = 0.0
|
|
271
|
-
if re.search(r'#\{?macro\}?\(.*?\).*?#\{?end\}?', text):
|
|
270
|
+
if re.search(r'#\{?macro\}?\(.*?\).*?#\{?end\}?', text, re.DOTALL):
|
|
272
271
|
rv += 0.25
|
|
273
|
-
if re.search(r'#\{?if\}?\(.+?\).*?#\{?end\}?', text):
|
|
272
|
+
if re.search(r'#\{?if\}?\(.+?\).*?#\{?end\}?', text, re.DOTALL):
|
|
274
273
|
rv += 0.15
|
|
275
|
-
if re.search(r'#\{?foreach\}?\(.+?\).*?#\{?end\}?', text):
|
|
274
|
+
if re.search(r'#\{?foreach\}?\(.+?\).*?#\{?end\}?', text, re.DOTALL):
|
|
276
275
|
rv += 0.15
|
|
277
276
|
if re.search(r'\$!?\{?[a-zA-Z_]\w*(\([^)]*\))?'
|
|
278
277
|
r'(\.\w+(\([^)]*\))?)*\}?', text):
|
|
@@ -371,8 +370,8 @@ class DjangoLexer(RegexLexer):
|
|
|
371
370
|
(r'(loop|block|super|forloop)\b', Name.Builtin),
|
|
372
371
|
(r'[a-zA-Z_][\w-]*', Name.Variable),
|
|
373
372
|
(r'\.\w+', Name.Variable),
|
|
374
|
-
(r':?"(\\\\|\\
|
|
375
|
-
(r":?'(\\\\|\\
|
|
373
|
+
(r':?"(\\\\|\\[^\\]|[^"\\])*"', String.Double),
|
|
374
|
+
(r":?'(\\\\|\\[^\\]|[^'\\])*'", String.Single),
|
|
376
375
|
(r'([{}()\[\]+\-*/%,:~]|[><=]=?|!=)', Operator),
|
|
377
376
|
(r"[0-9](\.[0-9]*)?(eE[+-][0-9])?[flFLdD]?|"
|
|
378
377
|
r"0[xX][0-9a-fA-F]+[Ll]?", Number),
|
|
@@ -490,7 +489,7 @@ class MyghtyJavascriptLexer(DelegatingLexer):
|
|
|
490
489
|
"""
|
|
491
490
|
|
|
492
491
|
name = 'JavaScript+Myghty'
|
|
493
|
-
aliases = ['
|
|
492
|
+
aliases = ['javascript+myghty', 'js+myghty']
|
|
494
493
|
mimetypes = ['application/x-javascript+myghty',
|
|
495
494
|
'text/x-javascript+myghty',
|
|
496
495
|
'text/javascript+mygthy']
|
|
@@ -589,12 +588,12 @@ class MakoLexer(RegexLexer):
|
|
|
589
588
|
tokens = {
|
|
590
589
|
'root': [
|
|
591
590
|
(r'(\s*)(%)(\s*end(?:\w+))(\n|\Z)',
|
|
592
|
-
bygroups(Text, Comment.Preproc, Keyword, Other)),
|
|
591
|
+
bygroups(Text.Whitespace, Comment.Preproc, Keyword, Other)),
|
|
593
592
|
(r'(\s*)(%)([^\n]*)(\n|\Z)',
|
|
594
|
-
bygroups(Text, Comment.Preproc, using(PythonLexer), Other)),
|
|
593
|
+
bygroups(Text.Whitespace, Comment.Preproc, using(PythonLexer), Other)),
|
|
595
594
|
(r'(\s*)(##[^\n]*)(\n|\Z)',
|
|
596
|
-
bygroups(Text, Comment.
|
|
597
|
-
(r'(?s)<%doc>.*?</%doc>', Comment.
|
|
595
|
+
bygroups(Text.Whitespace, Comment.Single, Text.Whitespace)),
|
|
596
|
+
(r'(?s)<%doc>.*?</%doc>', Comment.Multiline),
|
|
598
597
|
(r'(<%)([\w.:]+)',
|
|
599
598
|
bygroups(Comment.Preproc, Name.Builtin), 'tag'),
|
|
600
599
|
(r'(</%)([\w.:]+)(>)',
|
|
@@ -680,7 +679,7 @@ class MakoJavascriptLexer(DelegatingLexer):
|
|
|
680
679
|
"""
|
|
681
680
|
|
|
682
681
|
name = 'JavaScript+Mako'
|
|
683
|
-
aliases = ['
|
|
682
|
+
aliases = ['javascript+mako', 'js+mako']
|
|
684
683
|
mimetypes = ['application/x-javascript+mako',
|
|
685
684
|
'text/x-javascript+mako',
|
|
686
685
|
'text/javascript+mako']
|
|
@@ -799,8 +798,8 @@ class CheetahJavascriptLexer(DelegatingLexer):
|
|
|
799
798
|
"""
|
|
800
799
|
|
|
801
800
|
name = 'JavaScript+Cheetah'
|
|
802
|
-
aliases = ['
|
|
803
|
-
'
|
|
801
|
+
aliases = ['javascript+cheetah', 'js+cheetah',
|
|
802
|
+
'javascript+spitfire', 'js+spitfire']
|
|
804
803
|
mimetypes = ['application/x-javascript+cheetah',
|
|
805
804
|
'text/x-javascript+cheetah',
|
|
806
805
|
'text/javascript+cheetah',
|
|
@@ -1027,7 +1026,7 @@ class XmlErbLexer(DelegatingLexer):
|
|
|
1027
1026
|
"""
|
|
1028
1027
|
|
|
1029
1028
|
name = 'XML+Ruby'
|
|
1030
|
-
aliases = ['xml+
|
|
1029
|
+
aliases = ['xml+ruby', 'xml+erb']
|
|
1031
1030
|
alias_filenames = ['*.xml']
|
|
1032
1031
|
mimetypes = ['application/xml+ruby']
|
|
1033
1032
|
|
|
@@ -1047,7 +1046,7 @@ class CssErbLexer(DelegatingLexer):
|
|
|
1047
1046
|
"""
|
|
1048
1047
|
|
|
1049
1048
|
name = 'CSS+Ruby'
|
|
1050
|
-
aliases = ['css+
|
|
1049
|
+
aliases = ['css+ruby', 'css+erb']
|
|
1051
1050
|
alias_filenames = ['*.css']
|
|
1052
1051
|
mimetypes = ['text/css+ruby']
|
|
1053
1052
|
|
|
@@ -1065,7 +1064,7 @@ class JavascriptErbLexer(DelegatingLexer):
|
|
|
1065
1064
|
"""
|
|
1066
1065
|
|
|
1067
1066
|
name = 'JavaScript+Ruby'
|
|
1068
|
-
aliases = ['
|
|
1067
|
+
aliases = ['javascript+ruby', 'js+ruby', 'javascript+erb', 'js+erb']
|
|
1069
1068
|
alias_filenames = ['*.js']
|
|
1070
1069
|
mimetypes = ['application/x-javascript+ruby',
|
|
1071
1070
|
'text/x-javascript+ruby',
|
|
@@ -1148,7 +1147,7 @@ class JavascriptPhpLexer(DelegatingLexer):
|
|
|
1148
1147
|
"""
|
|
1149
1148
|
|
|
1150
1149
|
name = 'JavaScript+PHP'
|
|
1151
|
-
aliases = ['
|
|
1150
|
+
aliases = ['javascript+php', 'js+php']
|
|
1152
1151
|
alias_filenames = ['*.js']
|
|
1153
1152
|
mimetypes = ['application/x-javascript+php',
|
|
1154
1153
|
'text/x-javascript+php',
|
|
@@ -1230,7 +1229,7 @@ class JavascriptSmartyLexer(DelegatingLexer):
|
|
|
1230
1229
|
"""
|
|
1231
1230
|
|
|
1232
1231
|
name = 'JavaScript+Smarty'
|
|
1233
|
-
aliases = ['
|
|
1232
|
+
aliases = ['javascript+smarty', 'js+smarty']
|
|
1234
1233
|
alias_filenames = ['*.js', '*.tpl']
|
|
1235
1234
|
mimetypes = ['application/x-javascript+smarty',
|
|
1236
1235
|
'text/x-javascript+smarty',
|
|
@@ -1312,8 +1311,8 @@ class JavascriptDjangoLexer(DelegatingLexer):
|
|
|
1312
1311
|
"""
|
|
1313
1312
|
|
|
1314
1313
|
name = 'JavaScript+Django/Jinja'
|
|
1315
|
-
aliases = ['
|
|
1316
|
-
'
|
|
1314
|
+
aliases = ['javascript+django', 'js+django',
|
|
1315
|
+
'javascript+jinja', 'js+jinja']
|
|
1317
1316
|
alias_filenames = ['*.js']
|
|
1318
1317
|
mimetypes = ['application/x-javascript+django',
|
|
1319
1318
|
'application/x-javascript+jinja',
|
|
@@ -1405,7 +1404,7 @@ class EvoqueLexer(RegexLexer):
|
|
|
1405
1404
|
# see doc for handling first name arg: /directives/evoque/
|
|
1406
1405
|
# + minor inconsistency: the "name" in e.g. $overlay{name=site_base}
|
|
1407
1406
|
# should be using(PythonLexer), not passed out as String
|
|
1408
|
-
(r'(\$)(evoque|overlay)(\{(%)?)(\s*[#\w\-"\'.]+
|
|
1407
|
+
(r'(\$)(evoque|overlay)(\{(%)?)(\s*[#\w\-"\'.]+)?'
|
|
1409
1408
|
r'(.*?)((?(4)%)\})',
|
|
1410
1409
|
bygroups(Punctuation, Name.Builtin, Punctuation, None,
|
|
1411
1410
|
String, using(PythonLexer), Punctuation)),
|
|
@@ -1735,7 +1734,7 @@ class LassoCssLexer(DelegatingLexer):
|
|
|
1735
1734
|
|
|
1736
1735
|
def analyse_text(text):
|
|
1737
1736
|
rv = LassoLexer.analyse_text(text) - 0.05
|
|
1738
|
-
if re.search(r'\w
|
|
1737
|
+
if re.search(r'\w+:[^;]+;', text):
|
|
1739
1738
|
rv += 0.1
|
|
1740
1739
|
if 'padding:' in text:
|
|
1741
1740
|
rv += 0.1
|
|
@@ -1751,7 +1750,7 @@ class LassoJavascriptLexer(DelegatingLexer):
|
|
|
1751
1750
|
"""
|
|
1752
1751
|
|
|
1753
1752
|
name = 'JavaScript+Lasso'
|
|
1754
|
-
aliases = ['
|
|
1753
|
+
aliases = ['javascript+lasso', 'js+lasso']
|
|
1755
1754
|
alias_filenames = ['*.js']
|
|
1756
1755
|
mimetypes = ['application/x-javascript+lasso',
|
|
1757
1756
|
'text/x-javascript+lasso',
|
|
@@ -1834,8 +1833,8 @@ class HandlebarsLexer(RegexLexer):
|
|
|
1834
1833
|
include('variable'),
|
|
1835
1834
|
|
|
1836
1835
|
# borrowed from DjangoLexer
|
|
1837
|
-
(r':?"(\\\\|\\
|
|
1838
|
-
(r":?'(\\\\|\\
|
|
1836
|
+
(r':?"(\\\\|\\[^\\]|[^"\\])*"', String.Double),
|
|
1837
|
+
(r":?'(\\\\|\\[^\\]|[^'\\])*'", String.Single),
|
|
1839
1838
|
(r"[0-9](\.[0-9]*)?(eE[+-][0-9])?[flFLdD]?|"
|
|
1840
1839
|
r"0[xX][0-9a-fA-F]+[Ll]?", Number),
|
|
1841
1840
|
]
|
|
@@ -2147,8 +2146,8 @@ class TwigLexer(RegexLexer):
|
|
|
2147
2146
|
(_ident_inner, Name.Variable),
|
|
2148
2147
|
(r'\.' + _ident_inner, Name.Variable),
|
|
2149
2148
|
(r'\.[0-9]+', Number),
|
|
2150
|
-
(r':?"(\\\\|\\
|
|
2151
|
-
(r":?'(\\\\|\\
|
|
2149
|
+
(r':?"(\\\\|\\[^\\]|[^"\\])*"', String.Double),
|
|
2150
|
+
(r":?'(\\\\|\\[^\\]|[^'\\])*'", String.Single),
|
|
2152
2151
|
(r'([{}()\[\]+\-*/,:~%]|\.\.|\?|:|\*\*|\/\/|!=|[><=]=?)', Operator),
|
|
2153
2152
|
(r"[0-9](\.[0-9]*)?(eE[+-][0-9])?[flFLdD]?|"
|
|
2154
2153
|
r"0[xX][0-9a-fA-F]+[Ll]?", Number),
|
|
@@ -2227,8 +2226,8 @@ class Angular2Lexer(RegexLexer):
|
|
|
2227
2226
|
|
|
2228
2227
|
# Literals
|
|
2229
2228
|
(r':?(true|false)', String.Boolean),
|
|
2230
|
-
(r':?"(\\\\|\\
|
|
2231
|
-
(r":?'(\\\\|\\
|
|
2229
|
+
(r':?"(\\\\|\\[^\\]|[^"\\])*"', String.Double),
|
|
2230
|
+
(r":?'(\\\\|\\[^\\]|[^'\\])*'", String.Single),
|
|
2232
2231
|
(r"[0-9](\.[0-9]*)?(eE[+-][0-9])?[flFLdD]?|"
|
|
2233
2232
|
r"0[xX][0-9a-fA-F]+[Ll]?", Number),
|
|
2234
2233
|
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
1
|
"""
|
|
3
2
|
pygments.lexers.teraterm
|
|
4
3
|
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
5
4
|
|
|
6
5
|
Lexer for Tera Term macro files.
|
|
7
6
|
|
|
8
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
|
|
9
8
|
:license: BSD, see LICENSE for details.
|
|
10
9
|
"""
|
|
11
10
|
|
|
@@ -25,7 +24,7 @@ class TeraTermLexer(RegexLexer):
|
|
|
25
24
|
.. versionadded:: 2.4
|
|
26
25
|
"""
|
|
27
26
|
name = 'Tera Term macro'
|
|
28
|
-
aliases = ['
|
|
27
|
+
aliases = ['teratermmacro', 'teraterm', 'ttl']
|
|
29
28
|
filenames = ['*.ttl']
|
|
30
29
|
mimetypes = ['text/x-teratermmacro']
|
|
31
30
|
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
1
|
"""
|
|
3
2
|
pygments.lexers.testing
|
|
4
3
|
~~~~~~~~~~~~~~~~~~~~~~~
|
|
5
4
|
|
|
6
5
|
Lexers for testing languages.
|
|
7
6
|
|
|
8
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
|
|
9
8
|
:license: BSD, see LICENSE for details.
|
|
10
9
|
"""
|
|
11
10
|
|
|
@@ -22,7 +21,7 @@ class GherkinLexer(RegexLexer):
|
|
|
22
21
|
.. versionadded:: 1.2
|
|
23
22
|
"""
|
|
24
23
|
name = 'Gherkin'
|
|
25
|
-
aliases = ['
|
|
24
|
+
aliases = ['gherkin', 'cucumber']
|
|
26
25
|
filenames = ['*.feature']
|
|
27
26
|
mimetypes = ['text/x-gherkin']
|
|
28
27
|
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
1
|
"""
|
|
3
2
|
pygments.lexers.text
|
|
4
3
|
~~~~~~~~~~~~~~~~~~~~
|
|
5
4
|
|
|
6
5
|
Lexers for non-source code file types.
|
|
7
6
|
|
|
8
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
|
|
9
8
|
:license: BSD, see LICENSE for details.
|
|
10
9
|
"""
|
|
11
10
|
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
1
|
"""
|
|
3
2
|
pygments.lexers.textedit
|
|
4
3
|
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
5
4
|
|
|
6
5
|
Lexers for languages related to text processing.
|
|
7
6
|
|
|
8
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
|
|
9
8
|
:license: BSD, see LICENSE for details.
|
|
10
9
|
"""
|
|
11
10
|
|
|
@@ -69,8 +68,8 @@ class AwkLexer(RegexLexer):
|
|
|
69
68
|
(r'[0-9][0-9]*\.[0-9]+([eE][0-9]+)?[fd]?', Number.Float),
|
|
70
69
|
(r'0x[0-9a-fA-F]+', Number.Hex),
|
|
71
70
|
(r'[0-9]+', Number.Integer),
|
|
72
|
-
(r'"(\\\\|\\
|
|
73
|
-
(r"'(\\\\|\\
|
|
71
|
+
(r'"(\\\\|\\[^\\]|[^"\\])*"', String.Double),
|
|
72
|
+
(r"'(\\\\|\\[^\\]|[^'\\])*'", String.Single),
|
|
74
73
|
]
|
|
75
74
|
}
|
|
76
75
|
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
1
|
"""
|
|
3
2
|
pygments.lexers.textfmts
|
|
4
3
|
~~~~~~~~~~~~~~~~~~~~~~~~
|
|
5
4
|
|
|
6
5
|
Lexers for various text formats.
|
|
7
6
|
|
|
8
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
|
|
9
8
|
:license: BSD, see LICENSE for details.
|
|
10
9
|
"""
|
|
11
10
|
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
# -*- coding: utf-8 -*-
|
|
2
1
|
"""
|
|
3
2
|
pygments.lexers.theorem
|
|
4
3
|
~~~~~~~~~~~~~~~~~~~~~~~
|
|
5
4
|
|
|
6
5
|
Lexers for theorem-proving languages.
|
|
7
6
|
|
|
8
|
-
:copyright: Copyright 2006-
|
|
7
|
+
:copyright: Copyright 2006-2021 by the Pygments team, see AUTHORS.
|
|
9
8
|
:license: BSD, see LICENSE for details.
|
|
10
9
|
"""
|
|
11
10
|
|
|
@@ -30,6 +29,8 @@ class CoqLexer(RegexLexer):
|
|
|
30
29
|
filenames = ['*.v']
|
|
31
30
|
mimetypes = ['text/x-coq']
|
|
32
31
|
|
|
32
|
+
flags = re.UNICODE
|
|
33
|
+
|
|
33
34
|
keywords1 = (
|
|
34
35
|
# Vernacular commands
|
|
35
36
|
'Section', 'Module', 'End', 'Require', 'Import', 'Export', 'Variable',
|
|
@@ -42,6 +43,7 @@ class CoqLexer(RegexLexer):
|
|
|
42
43
|
'Canonical', 'Coercion', 'Theorem', 'Lemma', 'Corollary',
|
|
43
44
|
'Proposition', 'Fact', 'Remark', 'Example', 'Proof', 'Goal', 'Save',
|
|
44
45
|
'Qed', 'Defined', 'Hint', 'Resolve', 'Rewrite', 'View', 'Search',
|
|
46
|
+
'Abort', 'Admitted',
|
|
45
47
|
'Show', 'Print', 'Printing', 'All', 'Graph', 'Projections', 'inside',
|
|
46
48
|
'outside', 'Check', 'Global', 'Instance', 'Class', 'Existing',
|
|
47
49
|
'Universe', 'Polymorphic', 'Monomorphic', 'Context'
|
|
@@ -54,7 +56,7 @@ class CoqLexer(RegexLexer):
|
|
|
54
56
|
)
|
|
55
57
|
keywords3 = (
|
|
56
58
|
# Sorts
|
|
57
|
-
'Type', 'Prop',
|
|
59
|
+
'Type', 'Prop', 'SProp',
|
|
58
60
|
)
|
|
59
61
|
keywords4 = (
|
|
60
62
|
# Tactics
|
|
@@ -93,7 +95,8 @@ class CoqLexer(RegexLexer):
|
|
|
93
95
|
'<->', '=', '>', '>]', r'>\}', r'\?', r'\?\?', r'\[', r'\[<', r'\[>',
|
|
94
96
|
r'\[\|', ']', '_', '`', r'\{', r'\{<', r'\|', r'\|]', r'\}', '~', '=>',
|
|
95
97
|
r'/\\', r'\\/', r'\{\|', r'\|\}',
|
|
96
|
-
'Π', '
|
|
98
|
+
# 'Π', 'Σ', # Not defined in the standard library
|
|
99
|
+
'λ', '¬', '∧', '∨', '∀', '∃', '→', '↔', '≠', '≤', '≥',
|
|
97
100
|
)
|
|
98
101
|
operators = r'[!$%&*+\./:<=>?@^|~-]'
|
|
99
102
|
prefix_syms = r'[!?~]'
|
|
@@ -123,14 +126,15 @@ class CoqLexer(RegexLexer):
|
|
|
123
126
|
(r'0[bB][01][01_]*', Number.Bin),
|
|
124
127
|
(r'-?\d[\d_]*(.[\d_]*)?([eE][+\-]?\d[\d_]*)', Number.Float),
|
|
125
128
|
|
|
126
|
-
(r"'(?:(\\[\\\"'ntbr ])|(\\[0-9]{3})|(\\x[0-9a-fA-F]{2}))'",
|
|
127
|
-
|
|
129
|
+
(r"'(?:(\\[\\\"'ntbr ])|(\\[0-9]{3})|(\\x[0-9a-fA-F]{2}))'", String.Char),
|
|
130
|
+
|
|
128
131
|
(r"'.'", String.Char),
|
|
129
132
|
(r"'", Keyword), # a stray quote is another syntax element
|
|
130
133
|
|
|
131
134
|
(r'"', String.Double, 'string'),
|
|
132
135
|
|
|
133
136
|
(r'[~?][a-z][\w\']*:', Name),
|
|
137
|
+
(r'\S', Name.Builtin.Pseudo),
|
|
134
138
|
],
|
|
135
139
|
'comment': [
|
|
136
140
|
(r'[^(*)]+', Comment),
|
|
@@ -154,7 +158,7 @@ class CoqLexer(RegexLexer):
|
|
|
154
158
|
}
|
|
155
159
|
|
|
156
160
|
def analyse_text(text):
|
|
157
|
-
if '
|
|
161
|
+
if 'Qed' in text and 'Proof' in text:
|
|
158
162
|
return 1
|
|
159
163
|
|
|
160
164
|
|