Sun, 16 May 2021 20:07:24 +0200
Replaced all imports of PyQt5 to PyQt6 and started to replace code using obsoleted methods and adapt to the PyQt6 enum usage.
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2 | |
7923
91e843545d9a
Updated copyright for 2021.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7900
diff
changeset
|
3 | # Copyright (c) 2008 - 2021 Detlev Offenbach <detlev@die-offenbachs.de> |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4 | # |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7 | Module implementing a custom lexer using pygments. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9 | |
8240
93b8a353c4bf
Applied some more code simplifications suggested by the new Simplify checker (Y105: use contextlib.suppress) (batch 1).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8218
diff
changeset
|
10 | import contextlib |
93b8a353c4bf
Applied some more code simplifications suggested by the new Simplify checker (Y105: use contextlib.suppress) (batch 1).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8218
diff
changeset
|
11 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
12 | from pygments.token import Token |
7267
aedc309827c7
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
13 | from pygments.lexers import ( |
aedc309827c7
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
14 | guess_lexer_for_filename, guess_lexer, find_lexer_class |
aedc309827c7
Continued to resolve code style issue M841.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7229
diff
changeset
|
15 | ) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
16 | from pygments.util import ClassNotFound |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
17 | |
8318
962bce857696
Replaced all imports of PyQt5 to PyQt6 and started to replace code using obsoleted methods and adapt to the PyQt6 enum usage.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8312
diff
changeset
|
18 | from PyQt6.QtGui import QColor, QFont |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
19 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
20 | from QScintilla.Lexers.LexerContainer import LexerContainer |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
22 | import Utilities |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
23 | |
3042
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
24 | PYGMENTS_DEFAULT = 0 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
25 | PYGMENTS_COMMENT = 1 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
26 | PYGMENTS_PREPROCESSOR = 2 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
27 | PYGMENTS_KEYWORD = 3 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
28 | PYGMENTS_PSEUDOKEYWORD = 4 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
29 | PYGMENTS_TYPEKEYWORD = 5 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
30 | PYGMENTS_OPERATOR = 6 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
31 | PYGMENTS_WORD = 7 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
32 | PYGMENTS_BUILTIN = 8 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
33 | PYGMENTS_FUNCTION = 9 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
34 | PYGMENTS_CLASS = 10 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
35 | PYGMENTS_NAMESPACE = 11 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
36 | PYGMENTS_EXCEPTION = 12 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
37 | PYGMENTS_VARIABLE = 13 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
38 | PYGMENTS_CONSTANT = 14 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
39 | PYGMENTS_LABEL = 15 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
40 | PYGMENTS_ENTITY = 16 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
41 | PYGMENTS_ATTRIBUTE = 17 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
42 | PYGMENTS_TAG = 18 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
43 | PYGMENTS_DECORATOR = 19 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
44 | PYGMENTS_STRING = 20 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
45 | PYGMENTS_DOCSTRING = 21 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
46 | PYGMENTS_SCALAR = 22 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
47 | PYGMENTS_ESCAPE = 23 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
48 | PYGMENTS_REGEX = 24 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
49 | PYGMENTS_SYMBOL = 25 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
50 | PYGMENTS_OTHER = 26 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
51 | PYGMENTS_NUMBER = 27 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
52 | PYGMENTS_HEADING = 28 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
53 | PYGMENTS_SUBHEADING = 29 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
54 | PYGMENTS_DELETED = 30 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
55 | PYGMENTS_INSERTED = 31 |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
56 | # 32 to 39 are reserved for QScintilla internal styles |
3042
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
57 | PYGMENTS_GENERIC_ERROR = 40 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
58 | PYGMENTS_EMPHASIZE = 41 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
59 | PYGMENTS_STRONG = 42 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
60 | PYGMENTS_PROMPT = 43 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
61 | PYGMENTS_OUTPUT = 44 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
62 | PYGMENTS_TRACEBACK = 45 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
63 | PYGMENTS_ERROR = 46 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
64 | PYGMENTS_MULTILINECOMMENT = 47 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
65 | PYGMENTS_PROPERTY = 48 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
66 | PYGMENTS_CHAR = 49 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
67 | PYGMENTS_HEREDOC = 50 |
c9c3c0982145
Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3039
diff
changeset
|
68 | PYGMENTS_PUNCTUATION = 51 |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
69 | # added with Pygments 2.1 |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
70 | PYGMENTS_HASHBANG = 52 |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
71 | PYGMENTS_RESERVEDKEYWORD = 53 |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
72 | PYGMENTS_LITERAL = 54 |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
73 | PYGMENTS_DOUBLESTRING = 55 |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
74 | PYGMENTS_SINGLESTRING = 56 |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
75 | PYGMENTS_BACKTICKSTRING = 57 |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
76 | PYGMENTS_WHITESPACE = 58 |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
77 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
78 | #-----------------------------------------------------------------------------# |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
79 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
80 | TOKEN_MAP = { |
3539
0c2dc1446ebf
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
81 | Token.Comment: PYGMENTS_COMMENT, |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
82 | Token.Comment.Hashbang: PYGMENTS_HASHBANG, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
83 | Token.Comment.Multiline: PYGMENTS_MULTILINECOMMENT, |
3539
0c2dc1446ebf
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
84 | Token.Comment.Preproc: PYGMENTS_PREPROCESSOR, |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
85 | Token.Comment.PreprocFile: PYGMENTS_PREPROCESSOR, |
3539
0c2dc1446ebf
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
86 | Token.Comment.Single: PYGMENTS_COMMENT, |
0c2dc1446ebf
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
87 | Token.Comment.Special: PYGMENTS_COMMENT, |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
88 | |
7525
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
89 | Token.Escape: PYGMENTS_ESCAPE, |
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
90 | |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
91 | Token.Error: PYGMENTS_ERROR, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
92 | |
7525
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
93 | Token.Generic: PYGMENTS_DEFAULT, |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
94 | Token.Generic.Deleted: PYGMENTS_DELETED, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
95 | Token.Generic.Emph: PYGMENTS_EMPHASIZE, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
96 | Token.Generic.Error: PYGMENTS_GENERIC_ERROR, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
97 | Token.Generic.Heading: PYGMENTS_HEADING, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
98 | Token.Generic.Inserted: PYGMENTS_INSERTED, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
99 | Token.Generic.Output: PYGMENTS_OUTPUT, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
100 | Token.Generic.Prompt: PYGMENTS_PROMPT, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
101 | Token.Generic.Strong: PYGMENTS_STRONG, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
102 | Token.Generic.Subheading: PYGMENTS_SUBHEADING, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
103 | Token.Generic.Traceback: PYGMENTS_TRACEBACK, |
7525
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
104 | |
3539
0c2dc1446ebf
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
105 | Token.Keyword: PYGMENTS_KEYWORD, |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
106 | Token.Keyword.Constant: PYGMENTS_KEYWORD, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
107 | Token.Keyword.Declaration: PYGMENTS_KEYWORD, |
3539
0c2dc1446ebf
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
108 | Token.Keyword.Namespace: PYGMENTS_KEYWORD, |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
109 | Token.Keyword.Pseudo: PYGMENTS_PSEUDOKEYWORD, |
4724
682f009d086d
Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4697
diff
changeset
|
110 | Token.Keyword.Reserved: PYGMENTS_RESERVEDKEYWORD, |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
111 | Token.Keyword.Type: PYGMENTS_TYPEKEYWORD, |
7525
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
112 | |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
113 | Token.Literal: PYGMENTS_LITERAL, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
114 | Token.Literal.Date: PYGMENTS_LITERAL, |
7525
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
115 | |
3539
0c2dc1446ebf
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
116 | Token.Name: PYGMENTS_DEFAULT, |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
117 | Token.Name.Attribute: PYGMENTS_ATTRIBUTE, |
3539
0c2dc1446ebf
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
118 | Token.Name.Builtin: PYGMENTS_BUILTIN, |
0c2dc1446ebf
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
119 | Token.Name.Builtin.Pseudo: PYGMENTS_BUILTIN, |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
120 | Token.Name.Class: PYGMENTS_CLASS, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
121 | Token.Name.Constant: PYGMENTS_CONSTANT, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
122 | Token.Name.Decorator: PYGMENTS_DECORATOR, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
123 | Token.Name.Entity: PYGMENTS_ENTITY, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
124 | Token.Name.Exception: PYGMENTS_EXCEPTION, |
3539
0c2dc1446ebf
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
125 | Token.Name.Function: PYGMENTS_FUNCTION, |
7525
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
126 | Token.Name.Function.Magic: PYGMENTS_FUNCTION, |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
127 | Token.Name.Label: PYGMENTS_LABEL, |
3539
0c2dc1446ebf
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
128 | Token.Name.Namespace: PYGMENTS_NAMESPACE, |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
129 | Token.Name.Other: PYGMENTS_VARIABLE, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
130 | Token.Name.Property: PYGMENTS_PROPERTY, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
131 | Token.Name.Tag: PYGMENTS_TAG, |
3539
0c2dc1446ebf
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
132 | Token.Name.Variable: PYGMENTS_VARIABLE, |
0c2dc1446ebf
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
133 | Token.Name.Variable.Class: PYGMENTS_VARIABLE, |
0c2dc1446ebf
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
134 | Token.Name.Variable.Global: PYGMENTS_VARIABLE, |
0c2dc1446ebf
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
135 | Token.Name.Variable.Instance: PYGMENTS_VARIABLE, |
7525
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
136 | Token.Name.Variable.Magic: PYGMENTS_VARIABLE, |
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
137 | |
3539
0c2dc1446ebf
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
138 | Token.Number: PYGMENTS_NUMBER, |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
139 | Token.Number.Bin: PYGMENTS_NUMBER, |
3539
0c2dc1446ebf
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
140 | Token.Number.Float: PYGMENTS_NUMBER, |
0c2dc1446ebf
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
141 | Token.Number.Hex: PYGMENTS_NUMBER, |
0c2dc1446ebf
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
142 | Token.Number.Integer: PYGMENTS_NUMBER, |
0c2dc1446ebf
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
143 | Token.Number.Integer.Long: PYGMENTS_NUMBER, |
0c2dc1446ebf
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
144 | Token.Number.Oct: PYGMENTS_NUMBER, |
7525
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
145 | |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
146 | Token.Operator: PYGMENTS_OPERATOR, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
147 | Token.Operator.Word: PYGMENTS_WORD, |
7525
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
148 | |
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
149 | Token.Other: PYGMENTS_DEFAULT, |
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
150 | |
3539
0c2dc1446ebf
Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3484
diff
changeset
|
151 | Token.Punctuation: PYGMENTS_PUNCTUATION, |
7525
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
152 | |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
153 | Token.String: PYGMENTS_STRING, |
7525
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
154 | Token.String.Affix: PYGMENTS_STRING, |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
155 | Token.String.Backtick: PYGMENTS_BACKTICKSTRING, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
156 | Token.String.Char: PYGMENTS_CHAR, |
7525
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
157 | Token.String.Delimiter: PYGMENTS_STRING, |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
158 | Token.String.Doc: PYGMENTS_DOCSTRING, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
159 | Token.String.Double: PYGMENTS_DOUBLESTRING, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
160 | Token.String.Escape: PYGMENTS_ESCAPE, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
161 | Token.String.Heredoc: PYGMENTS_HEREDOC, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
162 | Token.String.Interpol: PYGMENTS_SCALAR, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
163 | Token.String.Other: PYGMENTS_OTHER, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
164 | Token.String.Regex: PYGMENTS_REGEX, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
165 | Token.String.Single: PYGMENTS_SINGLESTRING, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
166 | Token.String.Symbol: PYGMENTS_SYMBOL, |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
167 | |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
168 | Token.Whitespace: PYGMENTS_WHITESPACE, |
7525
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
169 | |
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
170 | Token.Text: PYGMENTS_DEFAULT, |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
171 | } |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
172 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
173 | #-----------------------------------------------------------------------------# |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
174 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
175 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
176 | class LexerPygments(LexerContainer): |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
177 | """ |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
178 | Class implementing a custom lexer using pygments. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
179 | """ |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
180 | def __init__(self, parent=None, name=""): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
181 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
182 | Constructor |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
183 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
184 | @param parent parent widget of this lexer |
7900
72b88fb20261
Corrected the use of '@keyparam' in the source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7781
diff
changeset
|
185 | @param name name of the pygments lexer to use (string) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
186 | """ |
8218
7c09585bd960
Applied some more code simplifications suggested by the new Simplify checker (super(Foo, self) => super()).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8169
diff
changeset
|
187 | super().__init__(parent) |
8158
16a34a0167ba
LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8027
diff
changeset
|
188 | |
16a34a0167ba
LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8027
diff
changeset
|
189 | self.__inReadSettings = False |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
190 | |
7525
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
191 | if name.startswith("Pygments|"): |
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
192 | self.__forcedPygmentsName = True |
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
193 | self.__pygmentsName = name.replace("Pygments|", "") |
8027
ccbfefe5bc5a
Lexers: corrected the handling of Pygments lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
194 | elif name: |
7525
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
195 | self.__pygmentsName = name |
6d1f954947bc
LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7360
diff
changeset
|
196 | self.__forcedPygmentsName = True |
8027
ccbfefe5bc5a
Lexers: corrected the handling of Pygments lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
197 | else: |
ccbfefe5bc5a
Lexers: corrected the handling of Pygments lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
198 | self.__pygmentsName = "" |
ccbfefe5bc5a
Lexers: corrected the handling of Pygments lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
199 | self.__forcedPygmentsName = False |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
200 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
201 | self.descriptions = { |
3190
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
202 | PYGMENTS_DEFAULT: self.tr("Default"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
203 | PYGMENTS_COMMENT: self.tr("Comment"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
204 | PYGMENTS_PREPROCESSOR: self.tr("Preprocessor"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
205 | PYGMENTS_KEYWORD: self.tr("Keyword"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
206 | PYGMENTS_PSEUDOKEYWORD: self.tr("Pseudo Keyword"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
207 | PYGMENTS_TYPEKEYWORD: self.tr("Type Keyword"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
208 | PYGMENTS_OPERATOR: self.tr("Operator"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
209 | PYGMENTS_WORD: self.tr("Word"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
210 | PYGMENTS_BUILTIN: self.tr("Builtin"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
211 | PYGMENTS_FUNCTION: self.tr("Function or method name"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
212 | PYGMENTS_CLASS: self.tr("Class name"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
213 | PYGMENTS_NAMESPACE: self.tr("Namespace"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
214 | PYGMENTS_EXCEPTION: self.tr("Exception"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
215 | PYGMENTS_VARIABLE: self.tr("Identifier"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
216 | PYGMENTS_CONSTANT: self.tr("Constant"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
217 | PYGMENTS_LABEL: self.tr("Label"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
218 | PYGMENTS_ENTITY: self.tr("Entity"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
219 | PYGMENTS_ATTRIBUTE: self.tr("Attribute"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
220 | PYGMENTS_TAG: self.tr("Tag"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
221 | PYGMENTS_DECORATOR: self.tr("Decorator"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
222 | PYGMENTS_STRING: self.tr("String"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
223 | PYGMENTS_DOCSTRING: self.tr("Documentation string"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
224 | PYGMENTS_SCALAR: self.tr("Scalar"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
225 | PYGMENTS_ESCAPE: self.tr("Escape"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
226 | PYGMENTS_REGEX: self.tr("Regular expression"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
227 | PYGMENTS_SYMBOL: self.tr("Symbol"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
228 | PYGMENTS_OTHER: self.tr("Other string"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
229 | PYGMENTS_NUMBER: self.tr("Number"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
230 | PYGMENTS_HEADING: self.tr("Heading"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
231 | PYGMENTS_SUBHEADING: self.tr("Subheading"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
232 | PYGMENTS_DELETED: self.tr("Deleted"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
233 | PYGMENTS_INSERTED: self.tr("Inserted"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
234 | PYGMENTS_GENERIC_ERROR: self.tr("Generic error"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
235 | PYGMENTS_EMPHASIZE: self.tr("Emphasized text"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
236 | PYGMENTS_STRONG: self.tr("Strong text"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
237 | PYGMENTS_PROMPT: self.tr("Prompt"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
238 | PYGMENTS_OUTPUT: self.tr("Output"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
239 | PYGMENTS_TRACEBACK: self.tr("Traceback"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
240 | PYGMENTS_ERROR: self.tr("Error"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
241 | PYGMENTS_MULTILINECOMMENT: self.tr("Comment block"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
242 | PYGMENTS_PROPERTY: self.tr("Property"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
243 | PYGMENTS_CHAR: self.tr("Character"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
244 | PYGMENTS_HEREDOC: self.tr("Here document"), |
a9a94491c4fd
Changed the code to use QObject.tr() instead of QObject.trUtf8().
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3160
diff
changeset
|
245 | PYGMENTS_PUNCTUATION: self.tr("Punctuation"), |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
246 | PYGMENTS_HASHBANG: self.tr("Hashbang"), |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
247 | PYGMENTS_RESERVEDKEYWORD: self.tr("Reserved Keyword"), |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
248 | PYGMENTS_LITERAL: self.tr("Literal"), |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
249 | PYGMENTS_DOUBLESTRING: self.tr("Double quoted string"), |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
250 | PYGMENTS_SINGLESTRING: self.tr("Single quoted string"), |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
251 | PYGMENTS_BACKTICKSTRING: self.tr("Backtick string"), |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
252 | PYGMENTS_WHITESPACE: self.tr("Whitespace"), |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
253 | } |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
254 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
255 | self.defaultColors = { |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
256 | PYGMENTS_DEFAULT: QColor("#000000"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
257 | PYGMENTS_COMMENT: QColor("#408080"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
258 | PYGMENTS_PREPROCESSOR: QColor("#BC7A00"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
259 | PYGMENTS_KEYWORD: QColor("#008000"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
260 | PYGMENTS_PSEUDOKEYWORD: QColor("#008000"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
261 | PYGMENTS_TYPEKEYWORD: QColor("#B00040"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
262 | PYGMENTS_OPERATOR: QColor("#666666"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
263 | PYGMENTS_WORD: QColor("#AA22FF"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
264 | PYGMENTS_BUILTIN: QColor("#008000"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
265 | PYGMENTS_FUNCTION: QColor("#0000FF"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
266 | PYGMENTS_CLASS: QColor("#0000FF"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
267 | PYGMENTS_NAMESPACE: QColor("#0000FF"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
268 | PYGMENTS_EXCEPTION: QColor("#D2413A"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
269 | PYGMENTS_VARIABLE: QColor("#19177C"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
270 | PYGMENTS_CONSTANT: QColor("#880000"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
271 | PYGMENTS_LABEL: QColor("#A0A000"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
272 | PYGMENTS_ENTITY: QColor("#999999"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
273 | PYGMENTS_ATTRIBUTE: QColor("#7D9029"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
274 | PYGMENTS_TAG: QColor("#008000"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
275 | PYGMENTS_DECORATOR: QColor("#AA22FF"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
276 | PYGMENTS_STRING: QColor("#BA2121"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
277 | PYGMENTS_DOCSTRING: QColor("#BA2121"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
278 | PYGMENTS_SCALAR: QColor("#BB6688"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
279 | PYGMENTS_ESCAPE: QColor("#BB6622"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
280 | PYGMENTS_REGEX: QColor("#BB6688"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
281 | PYGMENTS_SYMBOL: QColor("#19177C"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
282 | PYGMENTS_OTHER: QColor("#008000"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
283 | PYGMENTS_NUMBER: QColor("#666666"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
284 | PYGMENTS_HEADING: QColor("#000080"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
285 | PYGMENTS_SUBHEADING: QColor("#800080"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
286 | PYGMENTS_DELETED: QColor("#A00000"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
287 | PYGMENTS_INSERTED: QColor("#00A000"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
288 | PYGMENTS_GENERIC_ERROR: QColor("#FF0000"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
289 | PYGMENTS_PROMPT: QColor("#000080"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
290 | PYGMENTS_OUTPUT: QColor("#808080"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
291 | PYGMENTS_TRACEBACK: QColor("#0040D0"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
292 | PYGMENTS_MULTILINECOMMENT: QColor("#007F00"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
293 | PYGMENTS_PROPERTY: QColor("#00A0E0"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
294 | PYGMENTS_CHAR: QColor("#7F007F"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
295 | PYGMENTS_HEREDOC: QColor("#7F007F"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
296 | PYGMENTS_PUNCTUATION: QColor("#000000"), |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
297 | PYGMENTS_HASHBANG: QColor("#00C000"), |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
298 | PYGMENTS_RESERVEDKEYWORD: QColor("#A90D91"), |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
299 | PYGMENTS_LITERAL: QColor("#1C01CE"), |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
300 | PYGMENTS_DOUBLESTRING: QColor("#7F007F"), |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
301 | PYGMENTS_SINGLESTRING: QColor("#7F007F"), |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
302 | PYGMENTS_BACKTICKSTRING: QColor("#FFFF00"), |
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
303 | PYGMENTS_WHITESPACE: QColor("#BBBBBB"), |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
304 | } |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
305 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
306 | self.defaultPapers = { |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
307 | PYGMENTS_ERROR: QColor("#FF0000"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
308 | PYGMENTS_MULTILINECOMMENT: QColor("#A8FFA8"), |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
309 | PYGMENTS_HEREDOC: QColor("#DDD0DD"), |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
310 | PYGMENTS_BACKTICKSTRING: QColor("#a08080"), |
808
8f85926125ef
Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
311 | } |
8f85926125ef
Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
312 | |
815
093b3b8204d1
Fixed an issue in the new code where two names overlapped each other.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
808
diff
changeset
|
313 | self.defaultEolFills = { |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
314 | PYGMENTS_ERROR: True, |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
315 | PYGMENTS_MULTILINECOMMENT: True, |
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
316 | PYGMENTS_HEREDOC: True, |
4697
c2e9bf425554
Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
4631
diff
changeset
|
317 | PYGMENTS_BACKTICKSTRING: True, |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
318 | } |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
319 | |
8169
139bd30c52c2
Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8158
diff
changeset
|
320 | def readSettings(self, qs, prefix="/Scintilla"): |
8158
16a34a0167ba
LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8027
diff
changeset
|
321 | """ |
16a34a0167ba
LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8027
diff
changeset
|
322 | Public method to read the lexer settings. |
16a34a0167ba
LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8027
diff
changeset
|
323 | |
16a34a0167ba
LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8027
diff
changeset
|
324 | Note: Overridden to treat the Pygments lexer specially. |
16a34a0167ba
LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8027
diff
changeset
|
325 | |
16a34a0167ba
LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8027
diff
changeset
|
326 | @param qs reference to the settings object |
16a34a0167ba
LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8027
diff
changeset
|
327 | @type QSettings |
16a34a0167ba
LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8027
diff
changeset
|
328 | @param prefix prefix for the settings key (defaults to "/Scintilla") |
16a34a0167ba
LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8027
diff
changeset
|
329 | @type str (optional) |
16a34a0167ba
LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8027
diff
changeset
|
330 | """ |
16a34a0167ba
LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8027
diff
changeset
|
331 | self.__inReadSettings = True |
8218
7c09585bd960
Applied some more code simplifications suggested by the new Simplify checker (super(Foo, self) => super()).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8169
diff
changeset
|
332 | super().readSettings(qs, prefix=prefix) |
8158
16a34a0167ba
LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8027
diff
changeset
|
333 | self.__inReadSettings = False |
16a34a0167ba
LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8027
diff
changeset
|
334 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
335 | def language(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
336 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
337 | Public method returning the language of the lexer. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
338 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
339 | @return language of the lexer (string) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
340 | """ |
8158
16a34a0167ba
LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8027
diff
changeset
|
341 | if self.__pygmentsName and not self.__inReadSettings: |
8027
ccbfefe5bc5a
Lexers: corrected the handling of Pygments lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
7923
diff
changeset
|
342 | return self.__pygmentsName |
6851
036535d1dd88
LexerPygments: fixed an issue causing it to return the wrong language if one was set specifically.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6645
diff
changeset
|
343 | else: |
036535d1dd88
LexerPygments: fixed an issue causing it to return the wrong language if one was set specifically.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6645
diff
changeset
|
344 | return "Guessed" |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
345 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
346 | def description(self, style): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
347 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
348 | Public method returning the descriptions of the styles supported |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
349 | by the lexer. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
350 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
351 | @param style style number (integer) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
352 | @return description for the style (string) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
353 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
354 | try: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
355 | return self.descriptions[style] |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
356 | except KeyError: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
357 | return "" |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
358 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
359 | def defaultColor(self, style): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
360 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
361 | Public method to get the default foreground color for a style. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
362 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
363 | @param style style number (integer) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
364 | @return foreground color (QColor) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
365 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
366 | try: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
367 | return self.defaultColors[style] |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
368 | except KeyError: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
369 | return LexerContainer.defaultColor(self, style) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
370 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
371 | def defaultPaper(self, style): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
372 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
373 | Public method to get the default background color for a style. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
374 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
375 | @param style style number (integer) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
376 | @return background color (QColor) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
377 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
378 | try: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
379 | return self.defaultPapers[style] |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
380 | except KeyError: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
381 | return LexerContainer.defaultPaper(self, style) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
382 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
383 | def defaultFont(self, style): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
384 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
385 | Public method to get the default font for a style. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
386 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
387 | @param style style number (integer) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
388 | @return font (QFont) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
389 | """ |
3011
18292228c724
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2965
diff
changeset
|
390 | if style in [PYGMENTS_COMMENT, PYGMENTS_PREPROCESSOR, |
18292228c724
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2965
diff
changeset
|
391 | PYGMENTS_MULTILINECOMMENT]: |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
392 | if Utilities.isWindowsPlatform(): |
8318
962bce857696
Replaced all imports of PyQt5 to PyQt6 and started to replace code using obsoleted methods and adapt to the PyQt6 enum usage.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8312
diff
changeset
|
393 | f = QFont(["Comic Sans MS"], 9) |
5571
2e4084a51721
Little change to the Pygments lexer to adjust some default fonts on macOS.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5389
diff
changeset
|
394 | elif Utilities.isMacPlatform(): |
8318
962bce857696
Replaced all imports of PyQt5 to PyQt6 and started to replace code using obsoleted methods and adapt to the PyQt6 enum usage.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8312
diff
changeset
|
395 | f = QFont(["Courier"], 11) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
396 | else: |
8318
962bce857696
Replaced all imports of PyQt5 to PyQt6 and started to replace code using obsoleted methods and adapt to the PyQt6 enum usage.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8312
diff
changeset
|
397 | f = QFont(["Bitstream Vera Serif"], 9) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
398 | if style == PYGMENTS_PREPROCESSOR: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
399 | f.setItalic(True) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
400 | return f |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
401 | |
808
8f85926125ef
Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
402 | if style in [PYGMENTS_STRING, PYGMENTS_CHAR]: |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
403 | if Utilities.isWindowsPlatform(): |
8318
962bce857696
Replaced all imports of PyQt5 to PyQt6 and started to replace code using obsoleted methods and adapt to the PyQt6 enum usage.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8312
diff
changeset
|
404 | return QFont(["Comic Sans MS"], 10) |
5571
2e4084a51721
Little change to the Pygments lexer to adjust some default fonts on macOS.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
5389
diff
changeset
|
405 | elif Utilities.isMacPlatform(): |
8318
962bce857696
Replaced all imports of PyQt5 to PyQt6 and started to replace code using obsoleted methods and adapt to the PyQt6 enum usage.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8312
diff
changeset
|
406 | f = QFont(["Courier"], 11) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
407 | else: |
8318
962bce857696
Replaced all imports of PyQt5 to PyQt6 and started to replace code using obsoleted methods and adapt to the PyQt6 enum usage.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8312
diff
changeset
|
408 | return QFont(["Bitstream Vera Serif"], 10) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
409 | |
3011
18292228c724
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2965
diff
changeset
|
410 | if style in [PYGMENTS_KEYWORD, PYGMENTS_OPERATOR, PYGMENTS_WORD, |
18292228c724
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2965
diff
changeset
|
411 | PYGMENTS_BUILTIN, PYGMENTS_ATTRIBUTE, PYGMENTS_FUNCTION, |
18292228c724
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2965
diff
changeset
|
412 | PYGMENTS_CLASS, PYGMENTS_NAMESPACE, PYGMENTS_EXCEPTION, |
18292228c724
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2965
diff
changeset
|
413 | PYGMENTS_ENTITY, PYGMENTS_TAG, PYGMENTS_SCALAR, |
18292228c724
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2965
diff
changeset
|
414 | PYGMENTS_ESCAPE, PYGMENTS_HEADING, PYGMENTS_SUBHEADING, |
18292228c724
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2965
diff
changeset
|
415 | PYGMENTS_STRONG, PYGMENTS_PROMPT]: |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
416 | f = LexerContainer.defaultFont(self, style) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
417 | f.setBold(True) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
418 | return f |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
419 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
420 | if style in [PYGMENTS_DOCSTRING, PYGMENTS_EMPHASIZE]: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
421 | f = LexerContainer.defaultFont(self, style) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
422 | f.setItalic(True) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
423 | return f |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
424 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
425 | return LexerContainer.defaultFont(self, style) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
426 | |
808
8f85926125ef
Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
427 | def defaultEolFill(self, style): |
8f85926125ef
Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
428 | """ |
8f85926125ef
Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
429 | Public method to get the default fill to eol flag. |
8f85926125ef
Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
430 | |
8f85926125ef
Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
431 | @param style style number (integer) |
8f85926125ef
Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
432 | @return fill to eol flag (boolean) |
8f85926125ef
Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
433 | """ |
8f85926125ef
Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
434 | try: |
815
093b3b8204d1
Fixed an issue in the new code where two names overlapped each other.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
808
diff
changeset
|
435 | return self.defaultEolFills[style] |
808
8f85926125ef
Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
436 | except KeyError: |
8f85926125ef
Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
437 | return LexerContainer.defaultEolFill(self, style) |
8f85926125ef
Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
791
diff
changeset
|
438 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
439 | def __guessLexer(self, text): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
440 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
441 | Private method to guess a pygments lexer. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
442 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
443 | @param text text to base guessing on (string) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
444 | @return reference to the guessed lexer (pygments.lexer) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
445 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
446 | lexer = None |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
447 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
448 | if self.__pygmentsName: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
449 | lexerClass = find_lexer_class(self.__pygmentsName) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
450 | if lexerClass is not None: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
451 | lexer = lexerClass() |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
452 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
453 | elif text: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
454 | # step 1: guess based on filename and text |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
455 | if self.editor is not None: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
456 | fn = self.editor.getFileName() |
871
fbbcef4f43fb
Fixed an issue detecting a lexer for a new (unsaved) editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
815
diff
changeset
|
457 | if fn: |
8240
93b8a353c4bf
Applied some more code simplifications suggested by the new Simplify checker (Y105: use contextlib.suppress) (batch 1).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8218
diff
changeset
|
458 | with contextlib.suppress(ClassNotFound): |
871
fbbcef4f43fb
Fixed an issue detecting a lexer for a new (unsaved) editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
815
diff
changeset
|
459 | lexer = guess_lexer_for_filename(fn, text) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
460 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
461 | # step 2: guess on text only |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
462 | if lexer is None: |
8240
93b8a353c4bf
Applied some more code simplifications suggested by the new Simplify checker (Y105: use contextlib.suppress) (batch 1).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
8218
diff
changeset
|
463 | with contextlib.suppress(ClassNotFound): |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
464 | lexer = guess_lexer(text) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
465 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
466 | return lexer |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
467 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
468 | def canStyle(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
469 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
470 | Public method to check, if the lexer is able to style the text. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
471 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
472 | @return flag indicating the lexer capability (boolean) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
473 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
474 | if self.editor is None: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
475 | return True |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
476 | |
12
1d8dd9706f46
First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
0
diff
changeset
|
477 | text = self.editor.text() |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
478 | self.__lexer = self.__guessLexer(text) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
479 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
480 | return self.__lexer is not None |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
481 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
482 | def name(self): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
483 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
484 | Public method to get the name of the pygments lexer. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
485 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
486 | @return name of the pygments lexer (string) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
487 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
488 | if self.__lexer is None: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
489 | return "" |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
490 | else: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
491 | return self.__lexer.name |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
492 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
493 | def styleText(self, start, end): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
494 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
495 | Public method to perform the styling. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
496 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
497 | @param start position of first character to be styled (integer) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
498 | @param end position of last character to be styled (integer) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
499 | """ |
12
1d8dd9706f46
First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
0
diff
changeset
|
500 | text = self.editor.text()[:end + 1] |
2519
e245447026ad
Fixed an issue in the Pygments lexer, that could cause a segmentation fault, if the file doesn't end with a newline.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
501 | textLen = len(text.encode("utf-8")) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
502 | self.__lexer = self.__guessLexer(text) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
503 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
504 | cpos = 0 |
3011
18292228c724
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2965
diff
changeset
|
505 | # adjust start position because pygments ignores empty line at |
18292228c724
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2965
diff
changeset
|
506 | # start of text |
1563
9d2cccd2074e
Fixed an issue with the Pygments lexer because it is ignoring trailing empty lines.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
507 | for c in text: |
9d2cccd2074e
Fixed an issue with the Pygments lexer because it is ignoring trailing empty lines.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
508 | if c == "\n": |
9d2cccd2074e
Fixed an issue with the Pygments lexer because it is ignoring trailing empty lines.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
509 | cpos += 1 |
9d2cccd2074e
Fixed an issue with the Pygments lexer because it is ignoring trailing empty lines.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
510 | else: |
9d2cccd2074e
Fixed an issue with the Pygments lexer because it is ignoring trailing empty lines.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
511 | break |
9d2cccd2074e
Fixed an issue with the Pygments lexer because it is ignoring trailing empty lines.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1509
diff
changeset
|
512 | |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
513 | self.editor.startStyling(cpos, 0x3f) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
514 | if self.__lexer is None: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
515 | self.editor.setStyling(len(text), PYGMENTS_DEFAULT) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
516 | else: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
517 | eolLen = len(self.editor.getLineSeparator()) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
518 | for token, txt in self.__lexer.get_tokens(text): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
519 | style = TOKEN_MAP.get(token, PYGMENTS_DEFAULT) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
520 | |
684
2f29a0b6e1c7
Updated Pygments to version 1.3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
167
diff
changeset
|
521 | tlen = len(txt.encode('utf-8')) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
522 | if eolLen > 1: |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
523 | tlen += txt.count('\n') |
2519
e245447026ad
Fixed an issue in the Pygments lexer, that could cause a segmentation fault, if the file doesn't end with a newline.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
524 | cpos += tlen |
e245447026ad
Fixed an issue in the Pygments lexer, that could cause a segmentation fault, if the file doesn't end with a newline.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
525 | if tlen and cpos < textLen: |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
526 | self.editor.setStyling(tlen, style) |
2657
eb87b82eca17
Fixed an issue in the Pygments lexer causing highlighting to stop prematurely.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2519
diff
changeset
|
527 | if cpos >= textLen: |
2519
e245447026ad
Fixed an issue in the Pygments lexer, that could cause a segmentation fault, if the file doesn't end with a newline.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2302
diff
changeset
|
528 | break |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
529 | self.editor.startStyling(cpos, 0x3f) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
530 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
531 | def isCommentStyle(self, style): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
532 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
533 | Public method to check, if a style is a comment style. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
534 | |
2965
d133c7edd88a
Continued correcting doc strings by using the new doc string checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2657
diff
changeset
|
535 | @param style style to check (integer) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
536 | @return flag indicating a comment style (boolean) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
537 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
538 | return style in [PYGMENTS_COMMENT] |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
539 | |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
540 | def isStringStyle(self, style): |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
541 | """ |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
542 | Public method to check, if a style is a string style. |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
543 | |
2965
d133c7edd88a
Continued correcting doc strings by using the new doc string checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2657
diff
changeset
|
544 | @param style style to check (integer) |
0
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
545 | @return flag indicating a string style (boolean) |
de9c2efb9d02
Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
546 | """ |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
547 | return style in [PYGMENTS_STRING, PYGMENTS_DOCSTRING, PYGMENTS_OTHER, |
3011
18292228c724
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2965
diff
changeset
|
548 | PYGMENTS_HEADING, PYGMENTS_SUBHEADING, |
18292228c724
Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
2965
diff
changeset
|
549 | PYGMENTS_EMPHASIZE, PYGMENTS_STRONG] |
167
7508e44f4853
Fixed an issue with a missing method in LexerPygments.py and corrected some source docu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
550 | |
7508e44f4853
Fixed an issue with a missing method in LexerPygments.py and corrected some source docu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
551 | def defaultKeywords(self, kwSet): |
7508e44f4853
Fixed an issue with a missing method in LexerPygments.py and corrected some source docu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
552 | """ |
7508e44f4853
Fixed an issue with a missing method in LexerPygments.py and corrected some source docu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
553 | Public method to get the default keywords. |
7508e44f4853
Fixed an issue with a missing method in LexerPygments.py and corrected some source docu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
554 | |
945
8cd4d08fa9f6
Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
871
diff
changeset
|
555 | @param kwSet number of the keyword set (integer) |
167
7508e44f4853
Fixed an issue with a missing method in LexerPygments.py and corrected some source docu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
556 | @return string giving the keywords (string) or None |
7508e44f4853
Fixed an issue with a missing method in LexerPygments.py and corrected some source docu.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
97
diff
changeset
|
557 | """ |
6891
93f82da09f22
Fixed some code style issues detected by the new 'return' checker.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
6851
diff
changeset
|
558 | return None # __IGNORE_WARNING_M831__ |