src/eric7/QScintilla/Lexers/LexerPygments.py

Sat, 23 Dec 2023 15:48:12 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Sat, 23 Dec 2023 15:48:12 +0100
branch
eric7
changeset 10439
21c28b0f9e41
parent 10431
64157aeb0312
child 10682
47be220abdaf
permissions
-rw-r--r--

Updated copyright for 2024.

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
10439
21c28b0f9e41 Updated copyright for 2024.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10431
diff changeset
3 # Copyright (c) 2008 - 2024 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": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
318 "IDL": "//",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
319 "INI": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
320 "Java": "//",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
321 "JavaScript": "//",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
322 "JSON": "//",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
323 "Lua": "--",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
324 "Makefile": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
325 "Matlab": "%~",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
326 "Octave": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
327 "Perl": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
328 "PostScript": "%",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
329 "POVRay": "//",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
330 "Properties": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
331 "Python": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
332 "RPMSpec": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
333 "Ruby": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
334 "SQL": "--",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
335 "Tcl": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
336 "TeX": "%",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
337 "TOML": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
338 "YAML": "#",
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
339 }
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
340
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
341 self.__streamCommentString = {
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
342 "CoffeScript": {"start": "###\n", "end": "\n###"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
343 "C": {"start": "/* ", "end": " */"},
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 "CSS": {"start": "/* ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
347 "D": {"start": "/+ ", "end": " +/"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
348 "HTML": {"start": "<!-- ", "end": " -->"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
349 "IDL": {"start": "/* ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
350 "Java": {"start": "/* ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
351 "JavaScript": {"start": "/* ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
352 "JSON": {"start": "/* ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
353 "Lua": {"start": "--[[ ", "end": " ]]--"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
354 "POVRay": {"start": "/* ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
355 "XML": {"start": "<!-- ", "end": " -->"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
356 }
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
357
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
358 self.__boxCommentString = {
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
359 "C": {"start": "/* ", "middle": " * ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
360 "C++": {"start": "/* ", "middle": " * ", "end": " */"},
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 "D": {"start": "/* ", "middle": " * ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
363 "IDL": {"start": "/* ", "middle": " * ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
364 "Java": {"start": "/* ", "middle": " * ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
365 "JavaScript": {"start": "/* ", "middle": " * ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
366 "POVRay": {"start": "/* ", "middle": " * ", "end": " */"},
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
367 }
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
368
8169
139bd30c52c2 Fixed some code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8158
diff changeset
369 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
370 """
16a34a0167ba LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8027
diff changeset
371 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
372
8158
16a34a0167ba LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8027
diff changeset
373 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
374
8158
16a34a0167ba LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8027
diff changeset
375 @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
376 @type QSettings
16a34a0167ba LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8027
diff changeset
377 @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
378 @type str (optional)
16a34a0167ba LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8027
diff changeset
379 """
16a34a0167ba LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8027
diff changeset
380 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
381 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
382 self.__inReadSettings = False
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
383
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
384 def language(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
385 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
386 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
387
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
388 @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
389 @rtype str
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
390 """
8158
16a34a0167ba LexerPygments: fixed the settings handling of the Pygments based lexer.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8027
diff changeset
391 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
392 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
393 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
394 return "Guessed"
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
395
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
396 def description(self, style):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
397 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
398 Public method returning the descriptions of the styles supported
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
399 by the lexer.
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
400
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
401 @param style style number
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
402 @type int
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
403 @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
404 @rtype str
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
405 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
406 try:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
407 return self.descriptions[style]
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
408 except KeyError:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
409 return ""
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
410
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
411 def defaultColor(self, style):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
412 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
413 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
414
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
415 @param style style number
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
416 @type int
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
417 @return foreground color
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
418 @rtype QColor
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
419 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
420 try:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
421 return self.defaultColors[style]
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
422 except KeyError:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
423 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
424
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
425 def defaultPaper(self, style):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
426 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
427 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
428
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
429 @param style style number
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
430 @type int
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
431 @return background color
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
432 @rtype QColor
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
433 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
434 try:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
435 return self.defaultPapers[style]
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
436 except KeyError:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
437 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
438
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
439 def defaultFont(self, style):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
440 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
441 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
442
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
443 @param style style number
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
444 @type int
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
445 @return font
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
446 @rtype QFont
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
447 """
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
448 if style in [
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
449 PYGMENTS_COMMENT,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
450 PYGMENTS_PREPROCESSOR,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
451 PYGMENTS_MULTILINECOMMENT,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
452 ]:
9624
b47dfa7a137d Refactored the Utilities and Globals modules in order to enhance the maintainability.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9473
diff changeset
453 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
454 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
455 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
456 f = QFont(["Courier"], 11)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
457 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
458 f = QFont(["Bitstream Vera Serif"], 9)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
459 if style == PYGMENTS_PREPROCESSOR:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
460 f.setItalic(True)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
461 return f
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
462
808
8f85926125ef Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
463 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
464 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
465 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
466 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
467 f = QFont(["Courier"], 11)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
468 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
469 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
470
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
471 if style in [
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
472 PYGMENTS_KEYWORD,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
473 PYGMENTS_OPERATOR,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
474 PYGMENTS_WORD,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
475 PYGMENTS_BUILTIN,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
476 PYGMENTS_ATTRIBUTE,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
477 PYGMENTS_FUNCTION,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
478 PYGMENTS_CLASS,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
479 PYGMENTS_NAMESPACE,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
480 PYGMENTS_EXCEPTION,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
481 PYGMENTS_ENTITY,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
482 PYGMENTS_TAG,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
483 PYGMENTS_SCALAR,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
484 PYGMENTS_ESCAPE,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
485 PYGMENTS_HEADING,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
486 PYGMENTS_SUBHEADING,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
487 PYGMENTS_STRONG,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
488 PYGMENTS_PROMPT,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
489 ]:
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
490 f = LexerContainer.defaultFont(self, style)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
491 f.setBold(True)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
492 return f
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
493
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
494 if style in [PYGMENTS_DOCSTRING, PYGMENTS_EMPHASIZE]:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
495 f = LexerContainer.defaultFont(self, style)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
496 f.setItalic(True)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
497 return f
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
498
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
499 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
500
808
8f85926125ef Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
501 def defaultEolFill(self, style):
8f85926125ef Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
502 """
8f85926125ef Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
503 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
504
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
505 @param style style number
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
506 @type int
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
507 @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
508 @rtype bool
808
8f85926125ef Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
509 """
8f85926125ef Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
510 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
511 return self.defaultEolFills[style]
808
8f85926125ef Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
512 except KeyError:
8f85926125ef Updated Pygments to version 1.4.0.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 791
diff changeset
513 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
514
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
515 def __guessLexer(self, text):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
516 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
517 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
518
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
519 @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
520 @type str
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
521 @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
522 @rtype pygments.lexer
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
523 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
524 lexer = None
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
525
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
526 if self.__pygmentsName:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
527 lexerClass = find_lexer_class(self.__pygmentsName)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
528 if lexerClass is not None:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
529 lexer = lexerClass()
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
530
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
531 elif text:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
532 # step 1: guess based on filename and text
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
533 if self.editor is not None:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
534 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
535 if fn:
8407
d6f374ab42eb LexerPygments: implemented a workaround for a Pygments issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8318
diff changeset
536 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
537 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
538
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
539 # step 2: guess on text only
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
540 if lexer is None:
8407
d6f374ab42eb LexerPygments: implemented a workaround for a Pygments issue.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 8318
diff changeset
541 with contextlib.suppress(ClassNotFound, AttributeError):
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
542 lexer = guess_lexer(text)
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
543
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
544 return lexer
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
545
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
546 def canStyle(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
547 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
548 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
549
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
550 @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
551 @rtype bool
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
552 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
553 if self.editor is None:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
554 return True
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
555
12
1d8dd9706f46 First commit after changing to Python 3.1.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 0
diff changeset
556 text = self.editor.text()
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
557 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
558
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
559 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
560
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
561 def name(self):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
562 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
563 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
564
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
565 @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
566 @rtype str
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
567 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
568 if self.__lexer is None:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
569 return ""
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
570 else:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
571 return self.__lexer.name
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
572
10069
435cc5875135 Corrected and checked some code style issues (unused function arguments).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9653
diff changeset
573 def styleText(self, start, end): # noqa: U100
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
574 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
575 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
576
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
577 @param start position of first character to be styled
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
578 @type int
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
579 @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
580 @type int
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
581 """
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
582 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
583 textLen = len(text.encode("utf-8"))
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
584 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
585
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
586 cpos = 0
3011
18292228c724 Continued to shorten the code lines to max. 79 characters.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 2965
diff changeset
587 # 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
588 # 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
589 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
590 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
591 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
592 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
593 break
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
594
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
595 self.editor.startStyling(cpos, 0x3F)
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
596 if self.__lexer is None:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
597 self.editor.setStyling(len(text), PYGMENTS_DEFAULT)
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
598 else:
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
599 eolLen = len(self.editor.getLineSeparator())
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
600 for token, txt in self.__lexer.get_tokens(text):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
601 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
602
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
603 tlen = len(txt.encode("utf-8"))
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
604 if eolLen > 1:
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
605 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
606 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
607 if tlen and cpos < textLen:
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
608 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
609 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
610 break
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
611 self.editor.startStyling(cpos, 0x3F)
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
612
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
613 def isCommentStyle(self, style):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
614 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
615 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
616
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
617 @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
618 @type int
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
619 @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
620 @rtype bool
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
621 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
622 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
623
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
624 def isStringStyle(self, style):
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
625 """
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
626 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
627
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
628 @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
629 @type int
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
630 @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
631 @rtype bool
0
de9c2efb9d02 Started porting eric4 to Python3
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff changeset
632 """
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
633 return style in [
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
634 PYGMENTS_STRING,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
635 PYGMENTS_DOCSTRING,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
636 PYGMENTS_OTHER,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
637 PYGMENTS_HEADING,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
638 PYGMENTS_SUBHEADING,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
639 PYGMENTS_EMPHASIZE,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
640 PYGMENTS_STRONG,
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
641 ]
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
642
10069
435cc5875135 Corrected and checked some code style issues (unused function arguments).
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9653
diff changeset
643 def defaultKeywords(self, kwSet): # noqa: U100
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
644 """
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
645 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
646
10431
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
647 @param kwSet number of the keyword set
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
648 @type int
64157aeb0312 Converted some source code documentation to the new style.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 10069
diff changeset
649 @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
650 @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
651 """
9221
bf71ee032bb4 Reformatted the source code using the 'Black' utility.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9209
diff changeset
652 return None # __IGNORE_WARNING_M831__
9293
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
653
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
654 def commentStr(self):
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
655 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
656 Public method to return the comment string.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
657
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
658 @return comment string
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
659 @rtype str
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
660 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
661 try:
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
662 return self.__commentString[self.name()]
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
663 except KeyError:
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
664 return ""
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
665
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
666 def canBlockComment(self):
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
667 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
668 Public method to determine, whether the lexer language supports a
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
669 block comment.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
670
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
671 @return flag indicating block comment is available
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
672 @rtype bool
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
673 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
674 return self.name() in self.__commentString
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
675
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
676 def streamCommentStr(self):
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
677 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
678 Public method to return the stream comment strings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
679
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
680 @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
681 @rtype dict of {"start": str, "end": str}
9293
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
682 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
683 try:
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
684 return self.__streamCommentString
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
685 except KeyError:
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
686 return {"start": "", "end": ""}
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
687
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
688 def canStreamComment(self):
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
689 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
690 Public method to determine, whether the lexer language supports a
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
691 stream comment.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
692
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
693 @return flag indicating stream comment is available
9295
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9293
diff changeset
694 @rtype bool
9293
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
695 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
696 return self.name() in self.__streamCommentString
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
697
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
698 def boxCommentStr(self):
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
699 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
700 Public method to return the box comment strings.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
701
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
702 @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
703 @rtype dict of {"start": str, "middle": str, "end": str}
9293
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
704 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
705 try:
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
706 return self.__boxCommentString
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
707 except KeyError:
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
708 return {"start": "", "middle": "", "end": ""}
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
709
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
710 def canBoxComment(self):
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
711 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
712 Public method to determine, whether the lexer language supports a
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
713 box comment.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
714
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
715 @return flag box comment is available
9295
d14096c04126 Updated source documentation.
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9293
diff changeset
716 @rtype bool
9293
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
717 """
Detlev Offenbach <detlev@die-offenbachs.de>
parents: 9221
diff changeset
718 return self.name() in self.__boxCommentString

eric ide

mercurial