src/eric7/QScintilla/Lexers/LexerPygments.py

Mon, 24 Feb 2025 15:43:49 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Mon, 24 Feb 2025 15:43:49 +0100
branch
eric7
changeset 11148
15e30f0c76a8
parent 11090
f5f5f5803935
permissions
-rw-r--r--

Adjusted the code to the modified issue codes.

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
11090
f5f5f5803935 Updated copyright for 2025.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10683
diff changeset
3 # Copyright (c) 2008 - 2025 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
9473
3f23dbf37dbe Resorted the import statements using isort.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9413
diff changeset
12 from pygments.lexers import find_lexer_class, guess_lexer, guess_lexer_for_filename
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
13 from pygments.token import Token
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
14 from pygments.util import ClassNotFound
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
15 from PyQt6.QtGui import QColor, QFont
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
16
9413
80c06d472826 Changed the eric7 import statements to include the package name (i.e. eric7) in order to not fiddle with sys.path.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9295
diff changeset
17 from eric7.QScintilla.Lexers.LexerContainer import LexerContainer
9624
b47dfa7a137d Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9473
diff changeset
18 from eric7.SystemUtilities import OSUtilities
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
19
3042
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
20 PYGMENTS_DEFAULT = 0
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
21 PYGMENTS_COMMENT = 1
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
22 PYGMENTS_PREPROCESSOR = 2
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
23 PYGMENTS_KEYWORD = 3
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
24 PYGMENTS_PSEUDOKEYWORD = 4
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
25 PYGMENTS_TYPEKEYWORD = 5
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
26 PYGMENTS_OPERATOR = 6
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
27 PYGMENTS_WORD = 7
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
28 PYGMENTS_BUILTIN = 8
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
29 PYGMENTS_FUNCTION = 9
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
30 PYGMENTS_CLASS = 10
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
31 PYGMENTS_NAMESPACE = 11
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
32 PYGMENTS_EXCEPTION = 12
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
33 PYGMENTS_VARIABLE = 13
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
34 PYGMENTS_CONSTANT = 14
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
35 PYGMENTS_LABEL = 15
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
36 PYGMENTS_ENTITY = 16
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
37 PYGMENTS_ATTRIBUTE = 17
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
38 PYGMENTS_TAG = 18
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
39 PYGMENTS_DECORATOR = 19
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
40 PYGMENTS_STRING = 20
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
41 PYGMENTS_DOCSTRING = 21
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
42 PYGMENTS_SCALAR = 22
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
43 PYGMENTS_ESCAPE = 23
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
44 PYGMENTS_REGEX = 24
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
45 PYGMENTS_SYMBOL = 25
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
46 PYGMENTS_OTHER = 26
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
47 PYGMENTS_NUMBER = 27
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
48 PYGMENTS_HEADING = 28
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
49 PYGMENTS_SUBHEADING = 29
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
50 PYGMENTS_DELETED = 30
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
51 PYGMENTS_INSERTED = 31
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
52 # 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
53 PYGMENTS_GENERIC_ERROR = 40
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
54 PYGMENTS_EMPHASIZE = 41
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
55 PYGMENTS_STRONG = 42
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
56 PYGMENTS_PROMPT = 43
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
57 PYGMENTS_OUTPUT = 44
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
58 PYGMENTS_TRACEBACK = 45
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
59 PYGMENTS_ERROR = 46
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
60 PYGMENTS_MULTILINECOMMENT = 47
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
61 PYGMENTS_PROPERTY = 48
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
62 PYGMENTS_CHAR = 49
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
63 PYGMENTS_HEREDOC = 50
c9c3c0982145 Updated source docu and changed the pygments lexer definitions.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3039
diff changeset
64 PYGMENTS_PUNCTUATION = 51
4697
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
65 # added with Pygments 2.1
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
66 PYGMENTS_HASHBANG = 52
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
67 PYGMENTS_RESERVEDKEYWORD = 53
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
68 PYGMENTS_LITERAL = 54
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
69 PYGMENTS_DOUBLESTRING = 55
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
70 PYGMENTS_SINGLESTRING = 56
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
71 PYGMENTS_BACKTICKSTRING = 57
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
72 PYGMENTS_WHITESPACE = 58
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
73
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
74 # -----------------------------------------------------------------------------#
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
75
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
76 TOKEN_MAP = {
3539
0c2dc1446ebf Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
77 Token.Comment: PYGMENTS_COMMENT,
4697
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
78 Token.Comment.Hashbang: PYGMENTS_HASHBANG,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
79 Token.Comment.Multiline: PYGMENTS_MULTILINECOMMENT,
3539
0c2dc1446ebf Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
80 Token.Comment.Preproc: PYGMENTS_PREPROCESSOR,
4697
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
81 Token.Comment.PreprocFile: PYGMENTS_PREPROCESSOR,
3539
0c2dc1446ebf Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
82 Token.Comment.Single: PYGMENTS_COMMENT,
0c2dc1446ebf Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
83 Token.Comment.Special: PYGMENTS_COMMENT,
7525
6d1f954947bc LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7360
diff changeset
84 Token.Escape: PYGMENTS_ESCAPE,
4697
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
85 Token.Error: PYGMENTS_ERROR,
7525
6d1f954947bc LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7360
diff changeset
86 Token.Generic: PYGMENTS_DEFAULT,
4697
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
87 Token.Generic.Deleted: PYGMENTS_DELETED,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
88 Token.Generic.Emph: PYGMENTS_EMPHASIZE,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
89 Token.Generic.Error: PYGMENTS_GENERIC_ERROR,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
90 Token.Generic.Heading: PYGMENTS_HEADING,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
91 Token.Generic.Inserted: PYGMENTS_INSERTED,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
92 Token.Generic.Output: PYGMENTS_OUTPUT,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
93 Token.Generic.Prompt: PYGMENTS_PROMPT,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
94 Token.Generic.Strong: PYGMENTS_STRONG,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
95 Token.Generic.Subheading: PYGMENTS_SUBHEADING,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
96 Token.Generic.Traceback: PYGMENTS_TRACEBACK,
3539
0c2dc1446ebf Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
97 Token.Keyword: PYGMENTS_KEYWORD,
4697
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
98 Token.Keyword.Constant: PYGMENTS_KEYWORD,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
99 Token.Keyword.Declaration: PYGMENTS_KEYWORD,
3539
0c2dc1446ebf Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
100 Token.Keyword.Namespace: PYGMENTS_KEYWORD,
4697
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
101 Token.Keyword.Pseudo: PYGMENTS_PSEUDOKEYWORD,
4724
682f009d086d Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4697
diff changeset
102 Token.Keyword.Reserved: PYGMENTS_RESERVEDKEYWORD,
4697
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
103 Token.Keyword.Type: PYGMENTS_TYPEKEYWORD,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
104 Token.Literal: PYGMENTS_LITERAL,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
105 Token.Literal.Date: PYGMENTS_LITERAL,
3539
0c2dc1446ebf Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
106 Token.Name: PYGMENTS_DEFAULT,
4697
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
107 Token.Name.Attribute: PYGMENTS_ATTRIBUTE,
3539
0c2dc1446ebf Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
108 Token.Name.Builtin: PYGMENTS_BUILTIN,
0c2dc1446ebf Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
109 Token.Name.Builtin.Pseudo: PYGMENTS_BUILTIN,
4697
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
110 Token.Name.Class: PYGMENTS_CLASS,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
111 Token.Name.Constant: PYGMENTS_CONSTANT,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
112 Token.Name.Decorator: PYGMENTS_DECORATOR,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
113 Token.Name.Entity: PYGMENTS_ENTITY,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
114 Token.Name.Exception: PYGMENTS_EXCEPTION,
3539
0c2dc1446ebf Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
115 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
116 Token.Name.Function.Magic: PYGMENTS_FUNCTION,
4697
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
117 Token.Name.Label: PYGMENTS_LABEL,
3539
0c2dc1446ebf Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
118 Token.Name.Namespace: PYGMENTS_NAMESPACE,
4697
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
119 Token.Name.Other: PYGMENTS_VARIABLE,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
120 Token.Name.Property: PYGMENTS_PROPERTY,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
121 Token.Name.Tag: PYGMENTS_TAG,
3539
0c2dc1446ebf Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
122 Token.Name.Variable: PYGMENTS_VARIABLE,
0c2dc1446ebf Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
123 Token.Name.Variable.Class: PYGMENTS_VARIABLE,
0c2dc1446ebf Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
124 Token.Name.Variable.Global: PYGMENTS_VARIABLE,
0c2dc1446ebf Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
125 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
126 Token.Name.Variable.Magic: PYGMENTS_VARIABLE,
3539
0c2dc1446ebf Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
127 Token.Number: PYGMENTS_NUMBER,
4697
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
128 Token.Number.Bin: PYGMENTS_NUMBER,
3539
0c2dc1446ebf Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
129 Token.Number.Float: PYGMENTS_NUMBER,
0c2dc1446ebf Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
130 Token.Number.Hex: PYGMENTS_NUMBER,
0c2dc1446ebf Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
131 Token.Number.Integer: PYGMENTS_NUMBER,
0c2dc1446ebf Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
132 Token.Number.Integer.Long: PYGMENTS_NUMBER,
0c2dc1446ebf Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
133 Token.Number.Oct: PYGMENTS_NUMBER,
4697
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
134 Token.Operator: PYGMENTS_OPERATOR,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
135 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
136 Token.Other: PYGMENTS_DEFAULT,
3539
0c2dc1446ebf Fixed a few code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 3484
diff changeset
137 Token.Punctuation: PYGMENTS_PUNCTUATION,
4697
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
138 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
139 Token.String.Affix: PYGMENTS_STRING,
4697
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
140 Token.String.Backtick: PYGMENTS_BACKTICKSTRING,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
141 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
142 Token.String.Delimiter: PYGMENTS_STRING,
4697
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
143 Token.String.Doc: PYGMENTS_DOCSTRING,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
144 Token.String.Double: PYGMENTS_DOUBLESTRING,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
145 Token.String.Escape: PYGMENTS_ESCAPE,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
146 Token.String.Heredoc: PYGMENTS_HEREDOC,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
147 Token.String.Interpol: PYGMENTS_SCALAR,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
148 Token.String.Other: PYGMENTS_OTHER,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
149 Token.String.Regex: PYGMENTS_REGEX,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
150 Token.String.Single: PYGMENTS_SINGLESTRING,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
151 Token.String.Symbol: PYGMENTS_SYMBOL,
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
152 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
153 Token.Text: PYGMENTS_DEFAULT,
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
154 }
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
155
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
156 # -----------------------------------------------------------------------------#
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
157
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 871
diff changeset
158
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
159 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
160 """
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
161 Class implementing a custom lexer using pygments.
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
162 """
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
163
945
8cd4d08fa9f6 Made code mostly PEP 8 compliant (except all whitespace and line length).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 871
diff changeset
164 def __init__(self, parent=None, name=""):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
165 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
166 Constructor
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
167
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
168 @param parent parent widget of this lexer
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
169 @type QWidget
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
170 @param name name of the pygments lexer to use
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
171 @type str
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
172 """
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
173 super().__init__(parent)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
174
8158
16a34a0167ba LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8027
diff changeset
175 self.__inReadSettings = False
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
176
7525
6d1f954947bc LexerPygments: fixed an issue loading styles and added some Pygments token types.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7360
diff changeset
177 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
178 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
179 self.__pygmentsName = name.replace("Pygments|", "")
8027
ccbfefe5bc5a Lexers: corrected the handling of Pygments lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
180 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
181 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
182 self.__forcedPygmentsName = True
8027
ccbfefe5bc5a Lexers: corrected the handling of Pygments lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
183 else:
ccbfefe5bc5a Lexers: corrected the handling of Pygments lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
184 self.__pygmentsName = ""
ccbfefe5bc5a Lexers: corrected the handling of Pygments lexers.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 7923
diff changeset
185 self.__forcedPygmentsName = False
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
186
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
187 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
188 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
189 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
190 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
191 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
192 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
193 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
194 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
195 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
196 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
197 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
198 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
199 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
200 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
201 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
202 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
203 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
204 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
205 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
206 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
207 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
208 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
209 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
210 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
211 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
212 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
213 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
214 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
215 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
216 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
217 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
218 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
219 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
220 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
221 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
222 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
223 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
224 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
225 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
226 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
227 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
228 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
229 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
230 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
231 PYGMENTS_PUNCTUATION: self.tr("Punctuation"),
4697
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
232 PYGMENTS_HASHBANG: self.tr("Hashbang"),
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
233 PYGMENTS_RESERVEDKEYWORD: self.tr("Reserved Keyword"),
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
234 PYGMENTS_LITERAL: self.tr("Literal"),
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
235 PYGMENTS_DOUBLESTRING: self.tr("Double quoted string"),
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
236 PYGMENTS_SINGLESTRING: self.tr("Single quoted string"),
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
237 PYGMENTS_BACKTICKSTRING: self.tr("Backtick string"),
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
238 PYGMENTS_WHITESPACE: self.tr("Whitespace"),
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
239 }
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
240
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
241 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
242 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
243 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
244 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
245 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
246 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
247 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
248 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
249 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
250 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
251 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
252 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
253 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
254 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
255 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
256 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
257 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
258 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
259 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
260 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
261 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
262 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
263 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
264 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
265 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
266 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
267 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
268 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
269 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
270 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
271 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
272 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
273 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
274 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
275 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
276 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
277 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
278 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
279 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
280 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
281 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
282 PYGMENTS_PUNCTUATION: QColor("#000000"),
4697
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
283 PYGMENTS_HASHBANG: QColor("#00C000"),
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
284 PYGMENTS_RESERVEDKEYWORD: QColor("#A90D91"),
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
285 PYGMENTS_LITERAL: QColor("#1C01CE"),
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
286 PYGMENTS_DOUBLESTRING: QColor("#7F007F"),
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
287 PYGMENTS_SINGLESTRING: QColor("#7F007F"),
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
288 PYGMENTS_BACKTICKSTRING: QColor("#FFFF00"),
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
289 PYGMENTS_WHITESPACE: QColor("#BBBBBB"),
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
290 }
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
291
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
292 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
293 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
294 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
295 PYGMENTS_HEREDOC: QColor("#DDD0DD"),
4697
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
296 PYGMENTS_BACKTICKSTRING: QColor("#a08080"),
808
8f85926125ef Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
297 }
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
298
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
299 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
300 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
301 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
302 PYGMENTS_HEREDOC: True,
4697
c2e9bf425554 Updated Pygments to 2.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 4631
diff changeset
303 PYGMENTS_BACKTICKSTRING: True,
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
304 }
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
305
9293
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
306 self.__commentString = {
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
307 "Bash": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
308 "Batchfile": "REM ",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
309 "C": "//",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
310 "C++": "//",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
311 "C#": "//",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
312 "CMake": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
313 "CoffeScript": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
314 "CSS": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
315 "D": "//",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
316 "Fortran": "c ",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
317 "Gettext Catalog": "#",
10682
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
318 "Groovy": "//",
9293
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
319 "IDL": "//",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
320 "INI": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
321 "Java": "//",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
322 "JavaScript": "//",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
323 "JSON": "//",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
324 "Lua": "--",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
325 "Makefile": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
326 "Matlab": "%~",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
327 "Octave": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
328 "Perl": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
329 "PostScript": "%",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
330 "POVRay": "//",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
331 "Properties": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
332 "Python": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
333 "RPMSpec": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
334 "Ruby": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
335 "SQL": "--",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
336 "Tcl": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
337 "TeX": "%",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
338 "TOML": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
339 "YAML": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
340 }
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
341
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
342 self.__streamCommentString = {
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
343 "CoffeScript": {"start": "###\n", "end": "\n###"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
344 "C": {"start": "/* ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
345 "C++": {"start": "/* ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
346 "C#": {"start": "/* ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
347 "CSS": {"start": "/* ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
348 "D": {"start": "/+ ", "end": " +/"},
10682
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
349 "Groovy": {"start": "/* ", "end": " */"},
9293
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
350 "HTML": {"start": "<!-- ", "end": " -->"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
351 "IDL": {"start": "/* ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
352 "Java": {"start": "/* ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
353 "JavaScript": {"start": "/* ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
354 "JSON": {"start": "/* ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
355 "Lua": {"start": "--[[ ", "end": " ]]--"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
356 "POVRay": {"start": "/* ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
357 "XML": {"start": "<!-- ", "end": " -->"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
358 }
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
359
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
360 self.__boxCommentString = {
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
361 "C": {"start": "/* ", "middle": " * ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
362 "C++": {"start": "/* ", "middle": " * ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
363 "C#": {"start": "/* ", "middle": " * ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
364 "D": {"start": "/* ", "middle": " * ", "end": " */"},
10682
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
365 "Groovy": {"start": "/* ", "middle": " * ", "end": " */"},
9293
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
366 "IDL": {"start": "/* ", "middle": " * ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
367 "Java": {"start": "/* ", "middle": " * ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
368 "JavaScript": {"start": "/* ", "middle": " * ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
369 "POVRay": {"start": "/* ", "middle": " * ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
370 }
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
371
8169
139bd30c52c2 Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8158
diff changeset
372 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
373 """
16a34a0167ba LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8027
diff changeset
374 Public method to read the lexer settings.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
375
8158
16a34a0167ba LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8027
diff changeset
376 Note: Overridden to treat the Pygments lexer specially.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
377
8158
16a34a0167ba LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8027
diff changeset
378 @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
379 @type QSettings
16a34a0167ba LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8027
diff changeset
380 @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
381 @type str (optional)
16a34a0167ba LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8027
diff changeset
382 """
16a34a0167ba LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8027
diff changeset
383 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
384 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
385 self.__inReadSettings = False
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
386
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
387 def language(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
388 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
389 Public method returning the language of the lexer.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
390
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
391 @return language of the lexer
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
392 @rtype str
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
393 """
8158
16a34a0167ba LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8027
diff changeset
394 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
395 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
396 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
397 return "Guessed"
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
398
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
399 def description(self, style):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
400 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
401 Public method returning the descriptions of the styles supported
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
402 by the lexer.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
403
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
404 @param style style number
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
405 @type int
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
406 @return description for the style
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
407 @rtype str
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
408 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
409 try:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
410 return self.descriptions[style]
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
411 except KeyError:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
412 return ""
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
413
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
414 def defaultColor(self, style):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
415 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
416 Public method to get the default foreground color for a style.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
417
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
418 @param style style number
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
419 @type int
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
420 @return foreground color
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
421 @rtype QColor
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
422 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
423 try:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
424 return self.defaultColors[style]
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
425 except KeyError:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
426 return LexerContainer.defaultColor(self, style)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
427
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
428 def defaultPaper(self, style):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
429 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
430 Public method to get the default background color for a style.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
431
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
432 @param style style number
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
433 @type int
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
434 @return background color
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
435 @rtype QColor
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
436 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
437 try:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
438 return self.defaultPapers[style]
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
439 except KeyError:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
440 return LexerContainer.defaultPaper(self, style)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
441
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
442 def defaultFont(self, style):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
443 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
444 Public method to get the default font for a style.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
445
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
446 @param style style number
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
447 @type int
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
448 @return font
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
449 @rtype QFont
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
450 """
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
451 if style in [
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
452 PYGMENTS_COMMENT,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
453 PYGMENTS_PREPROCESSOR,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
454 PYGMENTS_MULTILINECOMMENT,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
455 ]:
9624
b47dfa7a137d Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9473
diff changeset
456 if OSUtilities.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
457 f = QFont(["Comic Sans MS"], 9)
9624
b47dfa7a137d Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9473
diff changeset
458 elif OSUtilities.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
459 f = QFont(["Courier"], 11)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
460 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
461 f = QFont(["Bitstream Vera Serif"], 9)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
462 if style == PYGMENTS_PREPROCESSOR:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
463 f.setItalic(True)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
464 return f
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
465
808
8f85926125ef Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
466 if style in [PYGMENTS_STRING, PYGMENTS_CHAR]:
9624
b47dfa7a137d Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9473
diff changeset
467 if OSUtilities.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
468 return QFont(["Comic Sans MS"], 10)
9624
b47dfa7a137d Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9473
diff changeset
469 elif OSUtilities.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
470 f = QFont(["Courier"], 11)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
471 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
472 return QFont(["Bitstream Vera Serif"], 10)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
473
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
474 if style in [
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
475 PYGMENTS_KEYWORD,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
476 PYGMENTS_OPERATOR,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
477 PYGMENTS_WORD,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
478 PYGMENTS_BUILTIN,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
479 PYGMENTS_ATTRIBUTE,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
480 PYGMENTS_FUNCTION,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
481 PYGMENTS_CLASS,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
482 PYGMENTS_NAMESPACE,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
483 PYGMENTS_EXCEPTION,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
484 PYGMENTS_ENTITY,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
485 PYGMENTS_TAG,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
486 PYGMENTS_SCALAR,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
487 PYGMENTS_ESCAPE,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
488 PYGMENTS_HEADING,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
489 PYGMENTS_SUBHEADING,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
490 PYGMENTS_STRONG,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
491 PYGMENTS_PROMPT,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
492 ]:
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
493 f = LexerContainer.defaultFont(self, style)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
494 f.setBold(True)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
495 return f
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
496
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
497 if style in [PYGMENTS_DOCSTRING, PYGMENTS_EMPHASIZE]:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
498 f = LexerContainer.defaultFont(self, style)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
499 f.setItalic(True)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
500 return f
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
501
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
502 return LexerContainer.defaultFont(self, style)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
503
808
8f85926125ef Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
504 def defaultEolFill(self, style):
8f85926125ef Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
505 """
8f85926125ef Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
506 Public method to get the default fill to eol flag.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
507
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
508 @param style style number
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
509 @type int
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
510 @return fill to eol flag
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
511 @rtype bool
808
8f85926125ef Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
512 """
8f85926125ef Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
513 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
514 return self.defaultEolFills[style]
808
8f85926125ef Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
515 except KeyError:
8f85926125ef Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
516 return LexerContainer.defaultEolFill(self, style)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
517
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
518 def __guessLexer(self, text):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
519 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
520 Private method to guess a pygments lexer.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
521
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
522 @param text text to base guessing on
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
523 @type str
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
524 @return reference to the guessed lexer
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
525 @rtype pygments.lexer
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
526 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
527 lexer = None
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
528
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
529 if self.__pygmentsName:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
530 lexerClass = find_lexer_class(self.__pygmentsName)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
531 if lexerClass is not None:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
532 lexer = lexerClass()
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
533
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
534 elif text:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
535 # step 1: guess based on filename and text
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
536 if self.editor is not None:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
537 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
538 if fn:
8407
d6f374ab42eb LexerPygments: implemented a workaround for a Pygments issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8318
diff changeset
539 with contextlib.suppress(ClassNotFound, AttributeError):
871
fbbcef4f43fb Fixed an issue detecting a lexer for a new (unsaved) editor.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 815
diff changeset
540 lexer = guess_lexer_for_filename(fn, text)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
541
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
542 # step 2: guess on text only
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
543 if lexer is None:
8407
d6f374ab42eb LexerPygments: implemented a workaround for a Pygments issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8318
diff changeset
544 with contextlib.suppress(ClassNotFound, AttributeError):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
545 lexer = guess_lexer(text)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
546
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
547 return lexer
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
548
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
549 def canStyle(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
550 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
551 Public method to check, if the lexer is able to style the text.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
552
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
553 @return flag indicating the lexer capability
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
554 @rtype bool
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
555 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
556 if self.editor is None:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
557 return True
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
558
12
1d8dd9706f46 First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
559 text = self.editor.text()
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
560 self.__lexer = self.__guessLexer(text)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
561
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
562 return self.__lexer is not None
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
563
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
564 def name(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
565 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
566 Public method to get the name of the pygments lexer.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
567
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
568 @return name of the pygments lexer
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
569 @rtype str
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
570 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
571 if self.__lexer is None:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
572 return ""
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
573 else:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
574 return self.__lexer.name
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
575
10683
779cda568acb Changed the source code and the source code documentation to improve the indication of unused method/function arguments.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10682
diff changeset
576 def styleText(self, _start, end):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
577 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
578 Public method to perform the styling.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
579
10683
779cda568acb Changed the source code and the source code documentation to improve the indication of unused method/function arguments.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10682
diff changeset
580 @param _start position of first character to be styled (unused)
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
581 @type int
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
582 @param end position of last character to be styled
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
583 @type int
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
584 """
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
585 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
586 textLen = len(text.encode("utf-8"))
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
587 self.__lexer = self.__guessLexer(text)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
588
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
589 cpos = 0
3011
18292228c724 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
590 # 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
591 # 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
592 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
593 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
594 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
595 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
596 break
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
597
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
598 self.editor.startStyling(cpos, 0x3F)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
599 if self.__lexer is None:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
600 self.editor.setStyling(len(text), PYGMENTS_DEFAULT)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
601 else:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
602 eolLen = len(self.editor.getLineSeparator())
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
603 for token, txt in self.__lexer.get_tokens(text):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
604 style = TOKEN_MAP.get(token, PYGMENTS_DEFAULT)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
605
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
606 tlen = len(txt.encode("utf-8"))
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
607 if eolLen > 1:
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
608 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
609 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
610 if tlen and cpos < textLen:
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
611 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
612 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
613 break
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
614 self.editor.startStyling(cpos, 0x3F)
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
615
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
616 def isCommentStyle(self, style):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
617 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
618 Public method to check, if a style is a comment style.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
619
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
620 @param style style to check
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
621 @type int
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
622 @return flag indicating a comment style
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
623 @rtype bool
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
624 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
625 return style in [PYGMENTS_COMMENT]
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
626
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
627 def isStringStyle(self, style):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
628 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
629 Public method to check, if a style is a string style.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
630
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
631 @param style style to check
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
632 @type int
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
633 @return flag indicating a string style
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
634 @rtype bool
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
635 """
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
636 return style in [
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
637 PYGMENTS_STRING,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
638 PYGMENTS_DOCSTRING,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
639 PYGMENTS_OTHER,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
640 PYGMENTS_HEADING,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
641 PYGMENTS_SUBHEADING,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
642 PYGMENTS_EMPHASIZE,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
643 PYGMENTS_STRONG,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
644 ]
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
645
10683
779cda568acb Changed the source code and the source code documentation to improve the indication of unused method/function arguments.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10682
diff changeset
646 def defaultKeywords(self, _kwSet):
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
647 """
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
648 Public method to get the default keywords.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
649
10683
779cda568acb Changed the source code and the source code documentation to improve the indication of unused method/function arguments.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10682
diff changeset
650 @param _kwSet number of the keyword set (unused)
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
651 @type int
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
652 @return string giving the keywords or None
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
653 @rtype str
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
654 """
11148
15e30f0c76a8 Adjusted the code to the modified issue codes.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 11090
diff changeset
655 return None # __IGNORE_WARNING_M-831__
9293
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
656
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
657 def commentStr(self):
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
658 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
659 Public method to return the comment string.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
660
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
661 @return comment string
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
662 @rtype str
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
663 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
664 try:
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
665 return self.__commentString[self.name()]
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
666 except KeyError:
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
667 return ""
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
668
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
669 def canBlockComment(self):
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
670 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
671 Public method to determine, whether the lexer language supports a
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
672 block comment.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
673
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
674 @return flag indicating block comment is available
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
675 @rtype bool
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
676 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
677 return self.name() in self.__commentString
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
678
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
679 def streamCommentStr(self):
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
680 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
681 Public method to return the stream comment strings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
682
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
683 @return dictionary containing the start and end stream comment strings
9295
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9293
diff changeset
684 @rtype dict of {"start": str, "end": str}
9293
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
685 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
686 try:
10682
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
687 return self.__streamCommentString[self.name()]
9293
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
688 except KeyError:
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
689 return {"start": "", "end": ""}
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
690
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
691 def canStreamComment(self):
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
692 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
693 Public method to determine, whether the lexer language supports a
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
694 stream comment.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
695
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
696 @return flag indicating stream comment is available
9295
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9293
diff changeset
697 @rtype bool
9293
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
698 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
699 return self.name() in self.__streamCommentString
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
700
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
701 def boxCommentStr(self):
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
702 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
703 Public method to return the box comment strings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
704
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
705 @return dictionary containing the start, middle and end box comment strings
9295
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9293
diff changeset
706 @rtype dict of {"start": str, "middle": str, "end": str}
9293
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
707 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
708 try:
10682
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10439
diff changeset
709 return self.__boxCommentString[self.name()]
9293
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
710 except KeyError:
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
711 return {"start": "", "middle": "", "end": ""}
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
712
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
713 def canBoxComment(self):
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
714 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
715 Public method to determine, whether the lexer language supports a
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
716 box comment.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
717
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
718 @return flag box comment is available
9295
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9293
diff changeset
719 @rtype bool
9293
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
720 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
721 return self.name() in self.__boxCommentString

eric ide

mercurial