pygments.rb 1.1.2 → 1.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +8 -1
- data/Rakefile +1 -0
- data/lib/pygments/version.rb +1 -1
- data/pygments.rb.gemspec +1 -2
- data/vendor/pygments-main/AUTHORS +2 -0
- data/vendor/pygments-main/CHANGES +27 -4
- data/vendor/pygments-main/LICENSE +1 -1
- data/vendor/pygments-main/MANIFEST.in +1 -1
- data/vendor/pygments-main/Makefile +1 -1
- data/vendor/pygments-main/REVISION +1 -1
- data/vendor/pygments-main/doc/_themes/pygments14/layout.html +1 -1
- data/vendor/pygments-main/doc/_themes/pygments14/static/pygments14.css_t +1 -1
- data/vendor/pygments-main/doc/docs/api.rst +23 -0
- data/vendor/pygments-main/doc/docs/cmdline.rst +17 -0
- data/vendor/pygments-main/doc/docs/lexerdevelopment.rst +42 -3
- data/vendor/pygments-main/external/autopygmentize +28 -11
- data/vendor/pygments-main/external/markdown-processor.py +1 -1
- data/vendor/pygments-main/external/moin-parser.py +1 -1
- data/vendor/pygments-main/external/rst-directive.py +1 -1
- data/vendor/pygments-main/pygments/__init__.py +2 -2
- data/vendor/pygments-main/pygments/cmdline.py +61 -17
- data/vendor/pygments-main/pygments/console.py +1 -1
- data/vendor/pygments-main/pygments/filter.py +1 -1
- data/vendor/pygments-main/pygments/filters/__init__.py +1 -1
- data/vendor/pygments-main/pygments/formatter.py +1 -1
- data/vendor/pygments-main/pygments/formatters/__init__.py +37 -2
- data/vendor/pygments-main/pygments/formatters/_mapping.py +1 -1
- data/vendor/pygments-main/pygments/formatters/bbcode.py +1 -1
- data/vendor/pygments-main/pygments/formatters/html.py +1 -1
- data/vendor/pygments-main/pygments/formatters/img.py +38 -1
- data/vendor/pygments-main/pygments/formatters/irc.py +1 -1
- data/vendor/pygments-main/pygments/formatters/latex.py +1 -1
- data/vendor/pygments-main/pygments/formatters/other.py +1 -1
- data/vendor/pygments-main/pygments/formatters/rtf.py +1 -1
- data/vendor/pygments-main/pygments/formatters/svg.py +1 -1
- data/vendor/pygments-main/pygments/formatters/terminal.py +1 -1
- data/vendor/pygments-main/pygments/formatters/terminal256.py +1 -1
- data/vendor/pygments-main/pygments/lexer.py +1 -1
- data/vendor/pygments-main/pygments/lexers/__init__.py +39 -5
- data/vendor/pygments-main/pygments/lexers/_asy_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_cl_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_cocoa_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_csound_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_lasso_builtins.py +8 -1
- data/vendor/pygments-main/pygments/lexers/_lua_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_mapping.py +6 -5
- data/vendor/pygments-main/pygments/lexers/_mql_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_openedge_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_php_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_postgres_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_scilab_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_sourcemod_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_stan_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_stata_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_tsql_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/_vim_builtins.py +1 -1
- data/vendor/pygments-main/pygments/lexers/actionscript.py +1 -1
- data/vendor/pygments-main/pygments/lexers/agile.py +1 -1
- data/vendor/pygments-main/pygments/lexers/algebra.py +1 -1
- data/vendor/pygments-main/pygments/lexers/ambient.py +1 -1
- data/vendor/pygments-main/pygments/lexers/ampl.py +1 -1
- data/vendor/pygments-main/pygments/lexers/apl.py +1 -1
- data/vendor/pygments-main/pygments/lexers/archetype.py +1 -1
- data/vendor/pygments-main/pygments/lexers/asm.py +21 -10
- data/vendor/pygments-main/pygments/lexers/automation.py +3 -3
- data/vendor/pygments-main/pygments/lexers/basic.py +1 -1
- data/vendor/pygments-main/pygments/lexers/bibtex.py +9 -5
- data/vendor/pygments-main/pygments/lexers/business.py +53 -35
- data/vendor/pygments-main/pygments/lexers/c_cpp.py +1 -1
- data/vendor/pygments-main/pygments/lexers/c_like.py +2 -2
- data/vendor/pygments-main/pygments/lexers/capnproto.py +14 -15
- data/vendor/pygments-main/pygments/lexers/chapel.py +4 -3
- data/vendor/pygments-main/pygments/lexers/clean.py +11 -11
- data/vendor/pygments-main/pygments/lexers/compiled.py +1 -1
- data/vendor/pygments-main/pygments/lexers/configs.py +3 -3
- data/vendor/pygments-main/pygments/lexers/console.py +1 -1
- data/vendor/pygments-main/pygments/lexers/crystal.py +29 -20
- data/vendor/pygments-main/pygments/lexers/csound.py +1 -1
- data/vendor/pygments-main/pygments/lexers/css.py +1 -1
- data/vendor/pygments-main/pygments/lexers/d.py +1 -1
- data/vendor/pygments-main/pygments/lexers/dalvik.py +1 -1
- data/vendor/pygments-main/pygments/lexers/data.py +1 -1
- data/vendor/pygments-main/pygments/lexers/diff.py +1 -1
- data/vendor/pygments-main/pygments/lexers/dotnet.py +1 -1
- data/vendor/pygments-main/pygments/lexers/dsls.py +4 -4
- data/vendor/pygments-main/pygments/lexers/dylan.py +1 -1
- data/vendor/pygments-main/pygments/lexers/ecl.py +1 -1
- data/vendor/pygments-main/pygments/lexers/eiffel.py +1 -1
- data/vendor/pygments-main/pygments/lexers/elm.py +1 -1
- data/vendor/pygments-main/pygments/lexers/erlang.py +1 -1
- data/vendor/pygments-main/pygments/lexers/esoteric.py +9 -7
- data/vendor/pygments-main/pygments/lexers/ezhil.py +4 -3
- 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/forth.py +1 -1
- data/vendor/pygments-main/pygments/lexers/fortran.py +1 -1
- data/vendor/pygments-main/pygments/lexers/foxpro.py +1 -1
- data/vendor/pygments-main/pygments/lexers/functional.py +1 -1
- data/vendor/pygments-main/pygments/lexers/go.py +1 -1
- data/vendor/pygments-main/pygments/lexers/grammar_notation.py +2 -2
- data/vendor/pygments-main/pygments/lexers/graph.py +1 -1
- data/vendor/pygments-main/pygments/lexers/graphics.py +1 -1
- data/vendor/pygments-main/pygments/lexers/haskell.py +5 -2
- data/vendor/pygments-main/pygments/lexers/haxe.py +1 -1
- data/vendor/pygments-main/pygments/lexers/hdl.py +1 -1
- data/vendor/pygments-main/pygments/lexers/hexdump.py +18 -12
- data/vendor/pygments-main/pygments/lexers/html.py +1 -1
- data/vendor/pygments-main/pygments/lexers/idl.py +2 -2
- data/vendor/pygments-main/pygments/lexers/igor.py +1 -1
- data/vendor/pygments-main/pygments/lexers/inferno.py +1 -1
- data/vendor/pygments-main/pygments/lexers/installers.py +1 -1
- data/vendor/pygments-main/pygments/lexers/int_fiction.py +1 -1
- data/vendor/pygments-main/pygments/lexers/iolang.py +1 -1
- data/vendor/pygments-main/pygments/lexers/j.py +1 -1
- data/vendor/pygments-main/pygments/lexers/javascript.py +56 -37
- data/vendor/pygments-main/pygments/lexers/julia.py +3 -3
- data/vendor/pygments-main/pygments/lexers/jvm.py +1 -1
- data/vendor/pygments-main/pygments/lexers/lisp.py +1 -1
- data/vendor/pygments-main/pygments/lexers/make.py +1 -1
- data/vendor/pygments-main/pygments/lexers/markup.py +1 -1
- data/vendor/pygments-main/pygments/lexers/math.py +1 -1
- data/vendor/pygments-main/pygments/lexers/matlab.py +1 -1
- data/vendor/pygments-main/pygments/lexers/ml.py +1 -1
- data/vendor/pygments-main/pygments/lexers/modeling.py +1 -1
- data/vendor/pygments-main/pygments/lexers/modula2.py +1 -1
- data/vendor/pygments-main/pygments/lexers/monte.py +4 -3
- data/vendor/pygments-main/pygments/lexers/ncl.py +85 -244
- data/vendor/pygments-main/pygments/lexers/nimrod.py +1 -1
- 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 +1 -1
- data/vendor/pygments-main/pygments/lexers/objective.py +1 -1
- 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 +1 -1
- data/vendor/pygments-main/pygments/lexers/pascal.py +2 -2
- data/vendor/pygments-main/pygments/lexers/pawn.py +1 -1
- data/vendor/pygments-main/pygments/lexers/perl.py +17 -13
- data/vendor/pygments-main/pygments/lexers/php.py +1 -1
- data/vendor/pygments-main/pygments/lexers/praat.py +1 -1
- data/vendor/pygments-main/pygments/lexers/prolog.py +1 -1
- data/vendor/pygments-main/pygments/lexers/python.py +2 -1
- data/vendor/pygments-main/pygments/lexers/qvt.py +1 -1
- data/vendor/pygments-main/pygments/lexers/r.py +1 -1
- data/vendor/pygments-main/pygments/lexers/rdf.py +1 -1
- data/vendor/pygments-main/pygments/lexers/rebol.py +1 -1
- data/vendor/pygments-main/pygments/lexers/resource.py +1 -1
- 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 +1 -1
- data/vendor/pygments-main/pygments/lexers/ruby.py +1 -1
- data/vendor/pygments-main/pygments/lexers/rust.py +41 -30
- data/vendor/pygments-main/pygments/lexers/sas.py +7 -7
- data/vendor/pygments-main/pygments/lexers/scripting.py +1 -1
- data/vendor/pygments-main/pygments/lexers/shell.py +14 -10
- data/vendor/pygments-main/pygments/lexers/smalltalk.py +1 -1
- data/vendor/pygments-main/pygments/lexers/smv.py +28 -24
- data/vendor/pygments-main/pygments/lexers/snobol.py +1 -1
- data/vendor/pygments-main/pygments/lexers/special.py +1 -1
- data/vendor/pygments-main/pygments/lexers/sql.py +1 -1
- data/vendor/pygments-main/pygments/lexers/stata.py +9 -7
- data/vendor/pygments-main/pygments/lexers/supercollider.py +1 -1
- data/vendor/pygments-main/pygments/lexers/tcl.py +1 -1
- data/vendor/pygments-main/pygments/lexers/templates.py +48 -17
- data/vendor/pygments-main/pygments/lexers/testing.py +1 -1
- data/vendor/pygments-main/pygments/lexers/text.py +1 -1
- data/vendor/pygments-main/pygments/lexers/textedit.py +1 -1
- data/vendor/pygments-main/pygments/lexers/textfmts.py +1 -1
- data/vendor/pygments-main/pygments/lexers/theorem.py +1 -1
- data/vendor/pygments-main/pygments/lexers/trafficscript.py +1 -1
- data/vendor/pygments-main/pygments/lexers/typoscript.py +8 -7
- data/vendor/pygments-main/pygments/lexers/urbi.py +1 -1
- data/vendor/pygments-main/pygments/lexers/varnish.py +3 -3
- data/vendor/pygments-main/pygments/lexers/verification.py +3 -3
- data/vendor/pygments-main/pygments/lexers/web.py +1 -1
- data/vendor/pygments-main/pygments/lexers/webmisc.py +20 -11
- data/vendor/pygments-main/pygments/lexers/whiley.py +7 -8
- data/vendor/pygments-main/pygments/lexers/x10.py +1 -1
- data/vendor/pygments-main/pygments/lexers/xorg.py +36 -0
- data/vendor/pygments-main/pygments/modeline.py +6 -5
- data/vendor/pygments-main/pygments/plugin.py +12 -18
- data/vendor/pygments-main/pygments/regexopt.py +1 -1
- data/vendor/pygments-main/pygments/scanner.py +1 -1
- data/vendor/pygments-main/pygments/sphinxext.py +1 -1
- data/vendor/pygments-main/pygments/style.py +1 -1
- data/vendor/pygments-main/pygments/styles/__init__.py +4 -2
- data/vendor/pygments-main/pygments/styles/abap.py +29 -0
- data/vendor/pygments-main/pygments/styles/algol.py +1 -1
- data/vendor/pygments-main/pygments/styles/algol_nu.py +1 -1
- data/vendor/pygments-main/pygments/styles/arduino.py +1 -1
- 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/lovelace.py +1 -1
- data/vendor/pygments-main/pygments/styles/manni.py +1 -1
- data/vendor/pygments-main/pygments/styles/monokai.py +1 -1
- data/vendor/pygments-main/pygments/styles/murphy.py +1 -1
- data/vendor/pygments-main/pygments/styles/native.py +1 -1
- data/vendor/pygments-main/pygments/styles/paraiso_dark.py +1 -1
- data/vendor/pygments-main/pygments/styles/paraiso_light.py +1 -1
- data/vendor/pygments-main/pygments/styles/pastie.py +1 -1
- data/vendor/pygments-main/pygments/styles/perldoc.py +1 -1
- data/vendor/pygments-main/pygments/styles/rainbow_dash.py +89 -0
- data/vendor/pygments-main/pygments/styles/rrt.py +1 -1
- data/vendor/pygments-main/pygments/styles/sas.py +3 -0
- data/vendor/pygments-main/pygments/styles/stata.py +3 -0
- data/vendor/pygments-main/pygments/styles/tango.py +1 -1
- data/vendor/pygments-main/pygments/styles/trac.py +1 -1
- data/vendor/pygments-main/pygments/styles/vim.py +1 -1
- data/vendor/pygments-main/pygments/styles/vs.py +1 -1
- data/vendor/pygments-main/pygments/styles/xcode.py +1 -1
- data/vendor/pygments-main/pygments/token.py +1 -1
- data/vendor/pygments-main/pygments/unistring.py +1 -1
- data/vendor/pygments-main/pygments/util.py +5 -4
- data/vendor/pygments-main/scripts/check_sources.py +2 -2
- data/vendor/pygments-main/scripts/debug_lexer.py +1 -1
- data/vendor/pygments-main/scripts/get_vimkw.py +1 -1
- data/vendor/pygments-main/setup.cfg +2 -2
- data/vendor/pygments-main/setup.py +3 -3
- metadata +6 -4
- data/vendor/pygments-main/scripts/find_error.py +0 -1
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
Lexers for various shells.
|
7
7
|
|
8
|
-
:copyright: Copyright 2006-
|
8
|
+
:copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS.
|
9
9
|
:license: BSD, see LICENSE for details.
|
10
10
|
"""
|
11
11
|
|
@@ -27,16 +27,17 @@ line_re = re.compile('.*?\n')
|
|
27
27
|
|
28
28
|
class BashLexer(RegexLexer):
|
29
29
|
"""
|
30
|
-
Lexer for (ba|k|)sh shell scripts.
|
30
|
+
Lexer for (ba|k|z|)sh shell scripts.
|
31
31
|
|
32
32
|
.. versionadded:: 0.6
|
33
33
|
"""
|
34
34
|
|
35
35
|
name = 'Bash'
|
36
|
-
aliases = ['bash', 'sh', 'ksh', 'shell']
|
36
|
+
aliases = ['bash', 'sh', 'ksh', 'zsh', 'shell']
|
37
37
|
filenames = ['*.sh', '*.ksh', '*.bash', '*.ebuild', '*.eclass',
|
38
|
-
'*.exheres-0', '*.exlib',
|
39
|
-
'.bashrc', 'bashrc', '.bash_*', 'bash_*', '
|
38
|
+
'*.exheres-0', '*.exlib', '*.zsh',
|
39
|
+
'.bashrc', 'bashrc', '.bash_*', 'bash_*', 'zshrc', '.zshrc',
|
40
|
+
'PKGBUILD']
|
40
41
|
mimetypes = ['application/x-sh', 'application/x-shellscript']
|
41
42
|
|
42
43
|
tokens = {
|
@@ -50,7 +51,7 @@ class BashLexer(RegexLexer):
|
|
50
51
|
(r'\$\(\(', Keyword, 'math'),
|
51
52
|
(r'\$\(', Keyword, 'paren'),
|
52
53
|
(r'\$\{#?', String.Interpol, 'curly'),
|
53
|
-
(r'\$[a-zA-Z_]
|
54
|
+
(r'\$[a-zA-Z_]\w*', Name.Variable), # user variable
|
54
55
|
(r'\$(?:\d+|[#$?!_*@-])', Name.Variable), # builtin
|
55
56
|
(r'\$', Text),
|
56
57
|
],
|
@@ -478,13 +479,16 @@ class BatchLexer(RegexLexer):
|
|
478
479
|
using(this, state='variable')), '#pop'),
|
479
480
|
(r'(exist%s)(%s%s)' % (_token_terminator, _space, _stoken),
|
480
481
|
bygroups(Keyword, using(this, state='text')), '#pop'),
|
481
|
-
(r'(%s%s?)(==)(%s?%s)' % (_stoken, _space, _space, _stoken),
|
482
|
-
bygroups(using(this, state='text'), Operator,
|
483
|
-
using(this, state='text')), '#pop'),
|
484
482
|
(r'(%s%s)(%s)(%s%s)' % (_number, _space, _opword, _space, _number),
|
485
483
|
bygroups(using(this, state='arithmetic'), Operator.Word,
|
486
484
|
using(this, state='arithmetic')), '#pop'),
|
487
|
-
(
|
485
|
+
(_stoken, using(this, state='text'), ('#pop', 'if2')),
|
486
|
+
],
|
487
|
+
'if2': [
|
488
|
+
(r'(%s?)(==)(%s?%s)' % (_space, _space, _stoken),
|
489
|
+
bygroups(using(this, state='text'), Operator,
|
490
|
+
using(this, state='text')), '#pop'),
|
491
|
+
(r'(%s)(%s)(%s%s)' % (_space, _opword, _space, _stoken),
|
488
492
|
bygroups(using(this, state='text'), Operator.Word,
|
489
493
|
using(this, state='text')), '#pop')
|
490
494
|
],
|
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
Lexers for the SMV languages.
|
7
7
|
|
8
|
-
:copyright: Copyright 2006-
|
8
|
+
:copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS.
|
9
9
|
:license: BSD, see LICENSE for details.
|
10
10
|
"""
|
11
11
|
|
@@ -19,6 +19,8 @@ __all__ = ['NuSMVLexer']
|
|
19
19
|
class NuSMVLexer(RegexLexer):
|
20
20
|
"""
|
21
21
|
Lexer for the NuSMV language.
|
22
|
+
|
23
|
+
.. versionadded:: 2.2
|
22
24
|
"""
|
23
25
|
|
24
26
|
name = 'NuSMV'
|
@@ -33,43 +35,45 @@ class NuSMVLexer(RegexLexer):
|
|
33
35
|
(r'--.*\n', Comment),
|
34
36
|
|
35
37
|
# Reserved
|
36
|
-
(words(('MODULE','DEFINE','MDEFINE','CONSTANTS','VAR','IVAR',
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
38
|
+
(words(('MODULE', 'DEFINE', 'MDEFINE', 'CONSTANTS', 'VAR', 'IVAR',
|
39
|
+
'FROZENVAR', 'INIT', 'TRANS', 'INVAR', 'SPEC', 'CTLSPEC',
|
40
|
+
'LTLSPEC', 'PSLSPEC', 'COMPUTE', 'NAME', 'INVARSPEC',
|
41
|
+
'FAIRNESS', 'JUSTICE', 'COMPASSION', 'ISA', 'ASSIGN',
|
42
|
+
'CONSTRAINT', 'SIMPWFF', 'CTLWFF', 'LTLWFF', 'PSLWFF',
|
43
|
+
'COMPWFF', 'IN', 'MIN', 'MAX', 'MIRROR', 'PRED',
|
44
|
+
'PREDICATES'), suffix=r'(?![\w$#-])'),
|
45
|
+
Keyword.Declaration),
|
42
46
|
(r'process(?![\w$#-])', Keyword),
|
43
|
-
(words(('array','of','boolean','integer','real','word'),
|
44
|
-
|
45
|
-
(words(('case','esac'), suffix=r'(?![\w$#-])'), Keyword),
|
46
|
-
(words(('word1','bool','signed','unsigned','extend','resize',
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
47
|
+
(words(('array', 'of', 'boolean', 'integer', 'real', 'word'),
|
48
|
+
suffix=r'(?![\w$#-])'), Keyword.Type),
|
49
|
+
(words(('case', 'esac'), suffix=r'(?![\w$#-])'), Keyword),
|
50
|
+
(words(('word1', 'bool', 'signed', 'unsigned', 'extend', 'resize',
|
51
|
+
'sizeof', 'uwconst', 'swconst', 'init', 'self', 'count',
|
52
|
+
'abs', 'max', 'min'), suffix=r'(?![\w$#-])'),
|
53
|
+
Name.Builtin),
|
54
|
+
(words(('EX', 'AX', 'EF', 'AF', 'EG', 'AG', 'E', 'F', 'O', 'G',
|
55
|
+
'H', 'X', 'Y', 'Z', 'A', 'U', 'S', 'V', 'T', 'BU', 'EBF',
|
56
|
+
'ABF', 'EBG', 'ABG', 'next', 'mod', 'union', 'in', 'xor',
|
57
|
+
'xnor'), suffix=r'(?![\w$#-])'),
|
52
58
|
Operator.Word),
|
53
|
-
(words(('TRUE','FALSE'), suffix=r'(?![\w$#-])'), Keyword.Constant),
|
59
|
+
(words(('TRUE', 'FALSE'), suffix=r'(?![\w$#-])'), Keyword.Constant),
|
54
60
|
|
55
61
|
# Names
|
56
62
|
(r'[a-zA-Z_][\w$#-]*', Name.Variable),
|
57
|
-
|
63
|
+
|
58
64
|
# Operators
|
59
65
|
(r':=', Operator),
|
60
|
-
(r'[
|
66
|
+
(r'[-&|+*/<>!=]', Operator),
|
61
67
|
|
62
68
|
# Literals
|
63
69
|
(r'\-?\d+\b', Number.Integer),
|
64
70
|
(r'0[su][bB]\d*_[01_]+', Number.Bin),
|
65
|
-
(r'0[su][oO]\d*_[
|
71
|
+
(r'0[su][oO]\d*_[0-7_]+', Number.Oct),
|
66
72
|
(r'0[su][dD]\d*_[\d_]+', Number.Dec),
|
67
73
|
(r'0[su][hH]\d*_[\da-fA-F_]+', Number.Hex),
|
68
74
|
|
69
75
|
# Whitespace, punctuation and the rest
|
70
76
|
(r'\s+', Text.Whitespace),
|
71
|
-
(r'[
|
72
|
-
|
73
|
-
]
|
77
|
+
(r'[()\[\]{};?:.,]', Punctuation),
|
78
|
+
],
|
74
79
|
}
|
75
|
-
|
@@ -34,7 +34,7 @@
|
|
34
34
|
The ``tests/examplefiles`` contains a few test files with data to be
|
35
35
|
parsed by these lexers.
|
36
36
|
|
37
|
-
:copyright: Copyright 2006-
|
37
|
+
:copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS.
|
38
38
|
:license: BSD, see LICENSE for details.
|
39
39
|
"""
|
40
40
|
|
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
Lexer for Stata
|
7
7
|
|
8
|
-
:copyright: Copyright 2006-
|
8
|
+
:copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS.
|
9
9
|
:license: BSD, see LICENSE for details.
|
10
10
|
"""
|
11
11
|
|
@@ -17,6 +17,7 @@ from pygments.lexers._stata_builtins import builtins_base, builtins_functions
|
|
17
17
|
|
18
18
|
__all__ = ['StataLexer']
|
19
19
|
|
20
|
+
|
20
21
|
class StataLexer(RegexLexer):
|
21
22
|
"""
|
22
23
|
For `Stata <http://www.stata.com/>`_ do files.
|
@@ -43,8 +44,8 @@ class StataLexer(RegexLexer):
|
|
43
44
|
],
|
44
45
|
# Global and local macros; regular and special strings
|
45
46
|
'vars-strings': [
|
46
|
-
(r'\$[
|
47
|
-
(r'
|
47
|
+
(r'\$[\w{]', Name.Variable.Global, 'var_validglobal'),
|
48
|
+
(r'`\w{0,31}\'', Name.Variable),
|
48
49
|
(r'"', String, 'string_dquote'),
|
49
50
|
(r'`"', String, 'string_mquote'),
|
50
51
|
],
|
@@ -54,7 +55,7 @@ class StataLexer(RegexLexer):
|
|
54
55
|
(r'\\\\|\\"|\\\n', String.Escape),
|
55
56
|
(r'\$', Name.Variable.Global, 'var_validglobal'),
|
56
57
|
(r'`', Name.Variable, 'var_validlocal'),
|
57
|
-
(r'[
|
58
|
+
(r'[^$`"\\]+', String),
|
58
59
|
(r'[$"\\]', String),
|
59
60
|
],
|
60
61
|
'string_mquote': [
|
@@ -62,14 +63,15 @@ class StataLexer(RegexLexer):
|
|
62
63
|
(r'\\\\|\\"|\\\n', String.Escape),
|
63
64
|
(r'\$', Name.Variable.Global, 'var_validglobal'),
|
64
65
|
(r'`', Name.Variable, 'var_validlocal'),
|
65
|
-
(r'[
|
66
|
+
(r'[^$`"\\]+', String),
|
66
67
|
(r'[$"\\]', String),
|
67
68
|
],
|
68
69
|
'var_validglobal': [
|
69
|
-
(r'\{
|
70
|
+
(r'\{\w{0,32}\}', Name.Variable.Global, '#pop'),
|
71
|
+
(r'\w{1,32}', Name.Variable.Global, '#pop'),
|
70
72
|
],
|
71
73
|
'var_validlocal': [
|
72
|
-
(r'
|
74
|
+
(r'\w{0,31}\'', Name.Variable, '#pop'),
|
73
75
|
],
|
74
76
|
# * only OK at line start, // OK anywhere
|
75
77
|
'comments': [
|
@@ -5,7 +5,7 @@
|
|
5
5
|
|
6
6
|
Lexers for various template engines' markup.
|
7
7
|
|
8
|
-
:copyright: Copyright 2006-
|
8
|
+
:copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS.
|
9
9
|
:license: BSD, see LICENSE for details.
|
10
10
|
"""
|
11
11
|
|
@@ -1814,8 +1814,9 @@ class HandlebarsLexer(RegexLexer):
|
|
1814
1814
|
(r'\}\}', Comment.Preproc, '#pop'),
|
1815
1815
|
|
1816
1816
|
# Handlebars
|
1817
|
-
(r'([#/]*)(each|if|unless|else|with|log|in)', bygroups(Keyword,
|
1817
|
+
(r'([#/]*)(each|if|unless|else|with|log|in(line)?)', bygroups(Keyword,
|
1818
1818
|
Keyword)),
|
1819
|
+
(r'#\*inline', Keyword),
|
1819
1820
|
|
1820
1821
|
# General {{#block}}
|
1821
1822
|
(r'([#/])([\w-]+)', bygroups(Name.Function, Name.Function)),
|
@@ -1823,11 +1824,37 @@ class HandlebarsLexer(RegexLexer):
|
|
1823
1824
|
# {{opt=something}}
|
1824
1825
|
(r'([\w-]+)(=)', bygroups(Name.Attribute, Operator)),
|
1825
1826
|
|
1827
|
+
# Partials {{> ...}}
|
1828
|
+
(r'(>)(\s*)(@partial-block)', bygroups(Keyword, Text, Keyword)),
|
1829
|
+
(r'(#?>)(\s*)([\w-]+)', bygroups(Keyword, Text, Name.Variable)),
|
1830
|
+
(r'(>)(\s*)(\()', bygroups(Keyword, Text, Punctuation),
|
1831
|
+
'dynamic-partial'),
|
1832
|
+
|
1833
|
+
include('generic'),
|
1834
|
+
],
|
1835
|
+
'dynamic-partial': [
|
1836
|
+
(r'\s+', Text),
|
1837
|
+
(r'\)', Punctuation, '#pop'),
|
1838
|
+
|
1839
|
+
(r'(lookup)(\s+)(\.|this)(\s+)', bygroups(Keyword, Text,
|
1840
|
+
Name.Variable, Text)),
|
1841
|
+
(r'(lookup)(\s+)(\S+)', bygroups(Keyword, Text,
|
1842
|
+
using(this, state='variable'))),
|
1843
|
+
(r'[\w-]+', Name.Function),
|
1844
|
+
|
1845
|
+
include('generic'),
|
1846
|
+
],
|
1847
|
+
'variable': [
|
1848
|
+
(r'[a-zA-Z][\w-]*', Name.Variable),
|
1849
|
+
(r'\.[\w-]+', Name.Variable),
|
1850
|
+
(r'(this\/|\.\/|(\.\.\/)+)[\w-]+', Name.Variable),
|
1851
|
+
],
|
1852
|
+
'generic': [
|
1853
|
+
include('variable'),
|
1854
|
+
|
1826
1855
|
# borrowed from DjangoLexer
|
1827
1856
|
(r':?"(\\\\|\\"|[^"])*"', String.Double),
|
1828
1857
|
(r":?'(\\\\|\\'|[^'])*'", String.Single),
|
1829
|
-
(r'[a-zA-Z][\w-]*', Name.Variable),
|
1830
|
-
(r'\.[\w-]+', Name.Variable),
|
1831
1858
|
(r"[0-9](\.[0-9]*)?(eE[+-][0-9])?[flFLdD]?|"
|
1832
1859
|
r"0[xX][0-9a-fA-F]+[Ll]?", Number),
|
1833
1860
|
]
|
@@ -2175,16 +2202,18 @@ class TwigHtmlLexer(DelegatingLexer):
|
|
2175
2202
|
def __init__(self, **options):
|
2176
2203
|
super(TwigHtmlLexer, self).__init__(HtmlLexer, TwigLexer, **options)
|
2177
2204
|
|
2178
|
-
|
2205
|
+
|
2179
2206
|
class Angular2Lexer(RegexLexer):
|
2180
2207
|
"""
|
2181
|
-
Generic
|
2208
|
+
Generic
|
2209
|
+
`angular2 <http://victorsavkin.com/post/119943127151/angular-2-template-syntax>`_
|
2210
|
+
template lexer.
|
2182
2211
|
|
2183
|
-
Highlights only the Angular template tags (stuff between `{{` and `}}` and
|
2212
|
+
Highlights only the Angular template tags (stuff between `{{` and `}}` and
|
2184
2213
|
special attributes: '(event)=', '[property]=', '[(twoWayBinding)]=').
|
2185
2214
|
Everything else is left for a delegating lexer.
|
2186
2215
|
|
2187
|
-
.. versionadded:: 2.
|
2216
|
+
.. versionadded:: 2.1
|
2188
2217
|
"""
|
2189
2218
|
|
2190
2219
|
name = "Angular2"
|
@@ -2196,37 +2225,39 @@ class Angular2Lexer(RegexLexer):
|
|
2196
2225
|
|
2197
2226
|
# {{meal.name}}
|
2198
2227
|
(r'(\{\{)(\s*)', bygroups(Comment.Preproc, Text), 'ngExpression'),
|
2199
|
-
|
2228
|
+
|
2200
2229
|
# (click)="deleteOrder()"; [value]="test"; [(twoWayTest)]="foo.bar"
|
2201
2230
|
(r'([([]+)([\w:.-]+)([\])]+)(\s*)(=)(\s*)',
|
2202
|
-
bygroups(Punctuation, Name.Attribute, Punctuation, Text, Operator, Text),
|
2231
|
+
bygroups(Punctuation, Name.Attribute, Punctuation, Text, Operator, Text),
|
2232
|
+
'attr'),
|
2203
2233
|
(r'([([]+)([\w:.-]+)([\])]+)(\s*)',
|
2204
2234
|
bygroups(Punctuation, Name.Attribute, Punctuation, Text)),
|
2205
|
-
|
2235
|
+
|
2206
2236
|
# *ngIf="..."; #f="ngForm"
|
2207
2237
|
(r'([*#])([\w:.-]+)(\s*)(=)(\s*)',
|
2208
2238
|
bygroups(Punctuation, Name.Attribute, Punctuation, Operator), 'attr'),
|
2209
2239
|
(r'([*#])([\w:.-]+)(\s*)',
|
2210
2240
|
bygroups(Punctuation, Name.Attribute, Punctuation)),
|
2211
2241
|
],
|
2212
|
-
|
2242
|
+
|
2213
2243
|
'ngExpression': [
|
2214
2244
|
(r'\s+(\|\s+)?', Text),
|
2215
2245
|
(r'\}\}', Comment.Preproc, '#pop'),
|
2216
|
-
|
2246
|
+
|
2217
2247
|
# Literals
|
2218
2248
|
(r':?(true|false)', String.Boolean),
|
2219
2249
|
(r':?"(\\\\|\\"|[^"])*"', String.Double),
|
2220
2250
|
(r":?'(\\\\|\\'|[^'])*'", String.Single),
|
2221
2251
|
(r"[0-9](\.[0-9]*)?(eE[+-][0-9])?[flFLdD]?|"
|
2222
2252
|
r"0[xX][0-9a-fA-F]+[Ll]?", Number),
|
2223
|
-
|
2253
|
+
|
2224
2254
|
# Variabletext
|
2225
2255
|
(r'[a-zA-Z][\w-]*(\(.*\))?', Name.Variable),
|
2226
2256
|
(r'\.[\w-]+(\(.*\))?', Name.Variable),
|
2227
|
-
|
2257
|
+
|
2228
2258
|
# inline If
|
2229
|
-
(r'(\?)(\s*)([^}\s]+)(\s*)(:)(\s*)([^}\s]+)(\s*)',
|
2259
|
+
(r'(\?)(\s*)([^}\s]+)(\s*)(:)(\s*)([^}\s]+)(\s*)',
|
2260
|
+
bygroups(Operator, Text, String, Text, Operator, Text, String, Text)),
|
2230
2261
|
],
|
2231
2262
|
'attr': [
|
2232
2263
|
('".*?"', String, '#pop'),
|
@@ -2249,4 +2280,4 @@ class Angular2HtmlLexer(DelegatingLexer):
|
|
2249
2280
|
filenames = ['*.ng2']
|
2250
2281
|
|
2251
2282
|
def __init__(self, **options):
|
2252
|
-
super(Angular2HtmlLexer, self).__init__(HtmlLexer, Angular2Lexer, **options)
|
2283
|
+
super(Angular2HtmlLexer, self).__init__(HtmlLexer, Angular2Lexer, **options)
|