Tue, 21 Apr 2020 19:47:10 +0200
Pygments: updated Pygments to 2.3.1
4172
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | """ |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
3 | pygments.lexers.julia |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4 | ~~~~~~~~~~~~~~~~~~~~~ |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | Lexers for the Julia language. |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | |
7547
21b0534faebc
Pygments: updated Pygments to 2.3.1
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6942
diff
changeset
|
8 | :copyright: Copyright 2006-2019 by the Pygments team, see AUTHORS. |
4172
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | :license: BSD, see LICENSE for details. |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
10 | """ |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
11 | |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
12 | import re |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
13 | |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
14 | from pygments.lexer import Lexer, RegexLexer, bygroups, do_insertions, \ |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
15 | words, include |
4172
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
16 | from pygments.token import Text, Comment, Operator, Keyword, Name, String, \ |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
17 | Number, Punctuation, Generic |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4172
diff
changeset
|
18 | from pygments.util import shebang_matches, unirange |
4172
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
19 | |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
20 | __all__ = ['JuliaLexer', 'JuliaConsoleLexer'] |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21 | |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
22 | allowed_variable = ( |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
23 | u'(?:[a-zA-Z_\u00A1-\uffff]|%s)(?:[a-zA-Z_0-9\u00A1-\uffff]|%s)*!*' % |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
24 | ((unirange(0x10000, 0x10ffff),) * 2)) |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
25 | |
4172
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
26 | |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
27 | class JuliaLexer(RegexLexer): |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
28 | """ |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
29 | For `Julia <http://julialang.org/>`_ source code. |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
30 | |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
31 | .. versionadded:: 1.6 |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
32 | """ |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
33 | |
4172
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
34 | name = 'Julia' |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
35 | aliases = ['julia', 'jl'] |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
36 | filenames = ['*.jl'] |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
37 | mimetypes = ['text/x-julia', 'application/x-julia'] |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
38 | |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4172
diff
changeset
|
39 | flags = re.MULTILINE | re.UNICODE |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4172
diff
changeset
|
40 | |
4172
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
41 | tokens = { |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
42 | 'root': [ |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
43 | (r'\n', Text), |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
44 | (r'[^\S\n]+', Text), |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
45 | (r'#=', Comment.Multiline, "blockcomment"), |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
46 | (r'#.*$', Comment), |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
47 | (r'[\[\]{}(),;]', Punctuation), |
4172
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
48 | |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
49 | # keywords |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
50 | (r'in\b', Keyword.Pseudo), |
7547
21b0534faebc
Pygments: updated Pygments to 2.3.1
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6942
diff
changeset
|
51 | (r'isa\b', Keyword.Pseudo), |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
52 | (r'(true|false)\b', Keyword.Constant), |
4172
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
53 | (r'(local|global|const)\b', Keyword.Declaration), |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
54 | (words([ |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
55 | 'function', 'type', 'typealias', 'abstract', 'immutable', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
56 | 'baremodule', 'begin', 'bitstype', 'break', 'catch', 'ccall', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
57 | 'continue', 'do', 'else', 'elseif', 'end', 'export', 'finally', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
58 | 'for', 'if', 'import', 'importall', 'let', 'macro', 'module', |
7547
21b0534faebc
Pygments: updated Pygments to 2.3.1
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6942
diff
changeset
|
59 | 'mutable', 'primitive', 'quote', 'return', 'struct', 'try', |
21b0534faebc
Pygments: updated Pygments to 2.3.1
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6942
diff
changeset
|
60 | 'using', 'while'], |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
61 | suffix=r'\b'), Keyword), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
62 | |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
63 | # NOTE |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
64 | # Patterns below work only for definition sites and thus hardly reliable. |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
65 | # |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
66 | # functions |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
67 | # (r'(function)(\s+)(' + allowed_variable + ')', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
68 | # bygroups(Keyword, Text, Name.Function)), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
69 | # |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
70 | # types |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
71 | # (r'(type|typealias|abstract|immutable)(\s+)(' + allowed_variable + ')', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
72 | # bygroups(Keyword, Text, Name.Class)), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
73 | |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
74 | # type names |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
75 | (words([ |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
76 | 'ANY', 'ASCIIString', 'AbstractArray', 'AbstractChannel', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
77 | 'AbstractFloat', 'AbstractMatrix', 'AbstractRNG', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
78 | 'AbstractSparseArray', 'AbstractSparseMatrix', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
79 | 'AbstractSparseVector', 'AbstractString', 'AbstractVecOrMat', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
80 | 'AbstractVector', 'Any', 'ArgumentError', 'Array', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
81 | 'AssertionError', 'Associative', 'Base64DecodePipe', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
82 | 'Base64EncodePipe', 'Bidiagonal', 'BigFloat', 'BigInt', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
83 | 'BitArray', 'BitMatrix', 'BitVector', 'Bool', 'BoundsError', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
84 | 'Box', 'BufferStream', 'CapturedException', 'CartesianIndex', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
85 | 'CartesianRange', 'Cchar', 'Cdouble', 'Cfloat', 'Channel', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
86 | 'Char', 'Cint', 'Cintmax_t', 'Clong', 'Clonglong', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
87 | 'ClusterManager', 'Cmd', 'Coff_t', 'Colon', 'Complex', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
88 | 'Complex128', 'Complex32', 'Complex64', 'CompositeException', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
89 | 'Condition', 'Cptrdiff_t', 'Cshort', 'Csize_t', 'Cssize_t', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
90 | 'Cstring', 'Cuchar', 'Cuint', 'Cuintmax_t', 'Culong', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
91 | 'Culonglong', 'Cushort', 'Cwchar_t', 'Cwstring', 'DataType', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
92 | 'Date', 'DateTime', 'DenseArray', 'DenseMatrix', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
93 | 'DenseVecOrMat', 'DenseVector', 'Diagonal', 'Dict', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
94 | 'DimensionMismatch', 'Dims', 'DirectIndexString', 'Display', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
95 | 'DivideError', 'DomainError', 'EOFError', 'EachLine', 'Enum', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
96 | 'Enumerate', 'ErrorException', 'Exception', 'Expr', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
97 | 'Factorization', 'FileMonitor', 'FileOffset', 'Filter', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
98 | 'Float16', 'Float32', 'Float64', 'FloatRange', 'Function', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
99 | 'GenSym', 'GlobalRef', 'GotoNode', 'HTML', 'Hermitian', 'IO', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
100 | 'IOBuffer', 'IOStream', 'IPv4', 'IPv6', 'InexactError', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
101 | 'InitError', 'Int', 'Int128', 'Int16', 'Int32', 'Int64', 'Int8', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
102 | 'IntSet', 'Integer', 'InterruptException', 'IntrinsicFunction', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
103 | 'InvalidStateException', 'Irrational', 'KeyError', 'LabelNode', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
104 | 'LambdaStaticData', 'LinSpace', 'LineNumberNode', 'LoadError', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
105 | 'LocalProcess', 'LowerTriangular', 'MIME', 'Matrix', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
106 | 'MersenneTwister', 'Method', 'MethodError', 'MethodTable', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
107 | 'Module', 'NTuple', 'NewvarNode', 'NullException', 'Nullable', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
108 | 'Number', 'ObjectIdDict', 'OrdinalRange', 'OutOfMemoryError', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
109 | 'OverflowError', 'Pair', 'ParseError', 'PartialQuickSort', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
110 | 'Pipe', 'PollingFileWatcher', 'ProcessExitedException', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
111 | 'ProcessGroup', 'Ptr', 'QuoteNode', 'RandomDevice', 'Range', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
112 | 'Rational', 'RawFD', 'ReadOnlyMemoryError', 'Real', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
113 | 'ReentrantLock', 'Ref', 'Regex', 'RegexMatch', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
114 | 'RemoteException', 'RemoteRef', 'RepString', 'RevString', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
115 | 'RopeString', 'RoundingMode', 'SegmentationFault', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
116 | 'SerializationState', 'Set', 'SharedArray', 'SharedMatrix', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
117 | 'SharedVector', 'Signed', 'SimpleVector', 'SparseMatrixCSC', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
118 | 'StackOverflowError', 'StatStruct', 'StepRange', 'StridedArray', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
119 | 'StridedMatrix', 'StridedVecOrMat', 'StridedVector', 'SubArray', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
120 | 'SubString', 'SymTridiagonal', 'Symbol', 'SymbolNode', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
121 | 'Symmetric', 'SystemError', 'TCPSocket', 'Task', 'Text', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
122 | 'TextDisplay', 'Timer', 'TopNode', 'Tridiagonal', 'Tuple', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
123 | 'Type', 'TypeConstructor', 'TypeError', 'TypeName', 'TypeVar', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
124 | 'UDPSocket', 'UInt', 'UInt128', 'UInt16', 'UInt32', 'UInt64', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
125 | 'UInt8', 'UTF16String', 'UTF32String', 'UTF8String', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
126 | 'UndefRefError', 'UndefVarError', 'UnicodeError', 'UniformScaling', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
127 | 'Union', 'UnitRange', 'Unsigned', 'UpperTriangular', 'Val', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
128 | 'Vararg', 'VecOrMat', 'Vector', 'VersionNumber', 'Void', 'WString', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
129 | 'WeakKeyDict', 'WeakRef', 'WorkerConfig', 'Zip'], suffix=r'\b'), |
4172
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
130 | Keyword.Type), |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
131 | |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
132 | # builtins |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
133 | (words([ |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
134 | u'ARGS', u'CPU_CORES', u'C_NULL', u'DevNull', u'ENDIAN_BOM', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
135 | u'ENV', u'I', u'Inf', u'Inf16', u'Inf32', u'Inf64', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
136 | u'InsertionSort', u'JULIA_HOME', u'LOAD_PATH', u'MergeSort', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
137 | u'NaN', u'NaN16', u'NaN32', u'NaN64', u'OS_NAME', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
138 | u'QuickSort', u'RoundDown', u'RoundFromZero', u'RoundNearest', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
139 | u'RoundNearestTiesAway', u'RoundNearestTiesUp', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
140 | u'RoundToZero', u'RoundUp', u'STDERR', u'STDIN', u'STDOUT', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
141 | u'VERSION', u'WORD_SIZE', u'catalan', u'e', u'eu', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
142 | u'eulergamma', u'golden', u'im', u'nothing', u'pi', u'γ', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
143 | u'π', u'φ'], |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
144 | suffix=r'\b'), Name.Builtin), |
4172
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
145 | |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
146 | # operators |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
147 | # see: https://github.com/JuliaLang/julia/blob/master/src/julia-parser.scm |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
148 | (words([ |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
149 | # prec-assignment |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
150 | u'=', u':=', u'+=', u'-=', u'*=', u'/=', u'//=', u'.//=', u'.*=', u'./=', |
6651
e8f3b5568b21
pygments: updated Pygments to 2.3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5713
diff
changeset
|
151 | u'\\=', u'.\\=', u'^=', u'.^=', u'÷=', u'.÷=', u'%=', u'.%=', u'|=', u'&=', |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
152 | u'$=', u'=>', u'<<=', u'>>=', u'>>>=', u'~', u'.+=', u'.-=', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
153 | # prec-conditional |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
154 | u'?', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
155 | # prec-arrow |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
156 | u'--', u'-->', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
157 | # prec-lazy-or |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
158 | u'||', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
159 | # prec-lazy-and |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
160 | u'&&', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
161 | # prec-comparison |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
162 | u'>', u'<', u'>=', u'≥', u'<=', u'≤', u'==', u'===', u'≡', u'!=', u'≠', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
163 | u'!==', u'≢', u'.>', u'.<', u'.>=', u'.≥', u'.<=', u'.≤', u'.==', u'.!=', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
164 | u'.≠', u'.=', u'.!', u'<:', u'>:', u'∈', u'∉', u'∋', u'∌', u'⊆', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
165 | u'⊈', u'⊂', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
166 | u'⊄', u'⊊', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
167 | # prec-pipe |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
168 | u'|>', u'<|', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
169 | # prec-colon |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
170 | u':', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
171 | # prec-plus |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
172 | u'+', u'-', u'.+', u'.-', u'|', u'∪', u'$', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
173 | # prec-bitshift |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
174 | u'<<', u'>>', u'>>>', u'.<<', u'.>>', u'.>>>', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
175 | # prec-times |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
176 | u'*', u'/', u'./', u'÷', u'.÷', u'%', u'⋅', u'.%', u'.*', u'\\', u'.\\', u'&', u'∩', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
177 | # prec-rational |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
178 | u'//', u'.//', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
179 | # prec-power |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
180 | u'^', u'.^', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
181 | # prec-decl |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
182 | u'::', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
183 | # prec-dot |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
184 | u'.', |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
185 | # unary op |
6651
e8f3b5568b21
pygments: updated Pygments to 2.3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5713
diff
changeset
|
186 | u'+', u'-', u'!', u'√', u'∛', u'∜' |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
187 | ]), Operator), |
4172
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
188 | |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
189 | # chars |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
190 | (r"'(\\.|\\[0-7]{1,3}|\\x[a-fA-F0-9]{1,3}|\\u[a-fA-F0-9]{1,4}|" |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
191 | r"\\U[a-fA-F0-9]{1,6}|[^\\\'\n])'", String.Char), |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
192 | |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
193 | # try to match trailing transpose |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
194 | (r'(?<=[.\w)\]])\'+', Operator), |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
195 | |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
196 | # strings |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
197 | (r'"""', String, 'tqstring'), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
198 | (r'"', String, 'string'), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
199 | |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
200 | # regular expressions |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
201 | (r'r"""', String.Regex, 'tqregex'), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
202 | (r'r"', String.Regex, 'regex'), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
203 | |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
204 | # backticks |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
205 | (r'`', String.Backtick, 'command'), |
4172
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
206 | |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
207 | # names |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
208 | (allowed_variable, Name), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
209 | (r'@' + allowed_variable, Name.Decorator), |
4172
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
210 | |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
211 | # numbers |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
212 | (r'(\d+(_\d+)+\.\d*|\d*\.\d+(_\d+)+)([eEf][+-]?[0-9]+)?', Number.Float), |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
213 | (r'(\d+\.\d*|\d*\.\d+)([eEf][+-]?[0-9]+)?', Number.Float), |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
214 | (r'\d+(_\d+)+[eEf][+-]?[0-9]+', Number.Float), |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
215 | (r'\d+[eEf][+-]?[0-9]+', Number.Float), |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
216 | (r'0b[01]+(_[01]+)+', Number.Bin), |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
217 | (r'0b[01]+', Number.Bin), |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
218 | (r'0o[0-7]+(_[0-7]+)+', Number.Oct), |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
219 | (r'0o[0-7]+', Number.Oct), |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
220 | (r'0x[a-fA-F0-9]+(_[a-fA-F0-9]+)+', Number.Hex), |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
221 | (r'0x[a-fA-F0-9]+', Number.Hex), |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
222 | (r'\d+(_\d+)+', Number.Integer), |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
223 | (r'\d+', Number.Integer) |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
224 | ], |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
225 | |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
226 | "blockcomment": [ |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
227 | (r'[^=#]', Comment.Multiline), |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
228 | (r'#=', Comment.Multiline, '#push'), |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
229 | (r'=#', Comment.Multiline, '#pop'), |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
230 | (r'[=#]', Comment.Multiline), |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
231 | ], |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
232 | |
4172
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
233 | 'string': [ |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
234 | (r'"', String, '#pop'), |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
235 | # FIXME: This escape pattern is not perfect. |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
236 | (r'\\([\\"\'$nrbtfav]|(x|u|U)[a-fA-F0-9]+|\d+)', String.Escape), |
5072
aab59042fefb
Updated Pygments to 2.1.3.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4697
diff
changeset
|
237 | # Interpolation is defined as "$" followed by the shortest full |
aab59042fefb
Updated Pygments to 2.1.3.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4697
diff
changeset
|
238 | # expression, which is something we can't parse. |
aab59042fefb
Updated Pygments to 2.1.3.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4697
diff
changeset
|
239 | # Include the most common cases here: $word, and $(paren'd expr). |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
240 | (r'\$' + allowed_variable, String.Interpol), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
241 | # (r'\$[a-zA-Z_]+', String.Interpol), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
242 | (r'(\$)(\()', bygroups(String.Interpol, Punctuation), 'in-intp'), |
5072
aab59042fefb
Updated Pygments to 2.1.3.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4697
diff
changeset
|
243 | # @printf and @sprintf formats |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
244 | (r'%[-#0 +]*([0-9]+|[*])?(\.([0-9]+|[*]))?[hlL]?[E-GXc-giorsux%]', |
5072
aab59042fefb
Updated Pygments to 2.1.3.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4697
diff
changeset
|
245 | String.Interpol), |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
246 | (r'.|\s', String), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
247 | ], |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
248 | |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
249 | 'tqstring': [ |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
250 | (r'"""', String, '#pop'), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
251 | (r'\\([\\"\'$nrbtfav]|(x|u|U)[a-fA-F0-9]+|\d+)', String.Escape), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
252 | (r'\$' + allowed_variable, String.Interpol), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
253 | (r'(\$)(\()', bygroups(String.Interpol, Punctuation), 'in-intp'), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
254 | (r'.|\s', String), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
255 | ], |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
256 | |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
257 | 'regex': [ |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
258 | (r'"', String.Regex, '#pop'), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
259 | (r'\\"', String.Regex), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
260 | (r'.|\s', String.Regex), |
4172
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
261 | ], |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
262 | |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
263 | 'tqregex': [ |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
264 | (r'"""', String.Regex, '#pop'), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
265 | (r'.|\s', String.Regex), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
266 | ], |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
267 | |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
268 | 'command': [ |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
269 | (r'`', String.Backtick, '#pop'), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
270 | (r'\$' + allowed_variable, String.Interpol), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
271 | (r'(\$)(\()', bygroups(String.Interpol, Punctuation), 'in-intp'), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
272 | (r'.|\s', String.Backtick) |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
273 | ], |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
274 | |
5072
aab59042fefb
Updated Pygments to 2.1.3.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4697
diff
changeset
|
275 | 'in-intp': [ |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
276 | (r'\(', Punctuation, '#push'), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
277 | (r'\)', Punctuation, '#pop'), |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
278 | include('root'), |
5072
aab59042fefb
Updated Pygments to 2.1.3.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4697
diff
changeset
|
279 | ] |
4172
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
280 | } |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
281 | |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
282 | def analyse_text(text): |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
283 | return shebang_matches(text, r'julia') |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
284 | |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
285 | |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
286 | class JuliaConsoleLexer(Lexer): |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
287 | """ |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
288 | For Julia console sessions. Modeled after MatlabSessionLexer. |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
289 | |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
290 | .. versionadded:: 1.6 |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
291 | """ |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
292 | name = 'Julia console' |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
293 | aliases = ['jlcon'] |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
294 | |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
295 | def get_tokens_unprocessed(self, text): |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
296 | jllexer = JuliaLexer(**self.options) |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
297 | start = 0 |
4172
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
298 | curcode = '' |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
299 | insertions = [] |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
300 | output = False |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
301 | error = False |
4172
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
302 | |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
303 | for line in text.splitlines(True): |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
304 | if line.startswith('julia>'): |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
305 | insertions.append((len(curcode), [(0, Generic.Prompt, line[:6])])) |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
306 | curcode += line[6:] |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
307 | output = False |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
308 | error = False |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
309 | elif line.startswith('help?>') or line.startswith('shell>'): |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
310 | yield start, Generic.Prompt, line[:6] |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
311 | yield start + 6, Text, line[6:] |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
312 | output = False |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
313 | error = False |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
314 | elif line.startswith(' ') and not output: |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
315 | insertions.append((len(curcode), [(0, Text, line[:6])])) |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
316 | curcode += line[6:] |
4172
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
317 | else: |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
318 | if curcode: |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
319 | for item in do_insertions( |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
320 | insertions, jllexer.get_tokens_unprocessed(curcode)): |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
321 | yield item |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
322 | curcode = '' |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
323 | insertions = [] |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
324 | if line.startswith('ERROR: ') or error: |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
325 | yield start, Generic.Error, line |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
326 | error = True |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
327 | else: |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
328 | yield start, Generic.Output, line |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
329 | output = True |
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
330 | start += len(line) |
4172
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
331 | |
5713
6762afd9f963
Updated Pygments to 2.2.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5072
diff
changeset
|
332 | if curcode: |
4172
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
333 | for item in do_insertions( |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
334 | insertions, jllexer.get_tokens_unprocessed(curcode)): |
4f20dba37ab6
Updated Pygments to 2.0.2.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
335 | yield item |