Thu, 30 Dec 2021 11:20:02 +0100
Updated copyright for 2022.
3
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
1 | # -*- coding: utf-8 -*- |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
2 | |
47
072c7c4791d4
Updated copyright for 2022.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
46
diff
changeset
|
3 | # Copyright (c) 2013 - 2022 Detlev Offenbach <detlev@die-offenbachs.de> |
3
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
4 | # |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
5 | |
13
2edce8c1ad5b
Python 2 compatibility for Eric 5.
T.Rzepka <Tobias.Rzepka@gmail.com>
parents:
11
diff
changeset
|
6 | """ |
3
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
7 | Module implementing a Pygments lexer for the Kivy language. |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
8 | """ |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
9 | |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
10 | # |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
11 | # Lexer class is derived from the highlighter contained in the Kivy package. |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
12 | # Copyright of the original by the Kivy Team. |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
13 | # |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
14 | |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
15 | from pygments.lexer import RegexLexer, bygroups, using |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
16 | from pygments.lexers.agile import PythonLexer |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
17 | from pygments.token import Comment, Text, Name, Punctuation, Operator |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
18 | |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
19 | __all__ = ['KivyLexer'] |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
20 | |
11
a3a738778142
Fixed code style issues.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
3
diff
changeset
|
21 | |
3
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
22 | class KivyLexer(RegexLexer): |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
23 | """ |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
24 | Class implementing a Pygments lexer for the Kivy language. |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
25 | """ |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
26 | name = 'Kivy' |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
27 | aliases = ['kivy', 'kv'] |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
28 | filenames = ['*.kv', '*.kivy'] |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
29 | mimetypes = ['application/x-kivy'] |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
30 | tokens = { |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
31 | 'root': [ |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
32 | (r'#:.*?$', Comment.Preproc), |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
33 | (r'#.*?$', using(PythonLexer)), |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
34 | (r'\s+', Text), |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
35 | (r'<.+>', Name.Namespace), |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
36 | (r'(\[)(\s*)(.*?)(\s*)(@)', |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
37 | bygroups(Punctuation, Text, Name.Class, Text, Operator), |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
38 | 'classList'), |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
39 | (r'[A-Za-z][A-Za-z0-9]*$', Name.Attribute), |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
40 | (r'(.*?)(\s*)(:)(\s*)$', |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
41 | bygroups(Name.Class, Text, Punctuation, Text)), |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
42 | (r'(.*?)(\s*)(:)(\s*)(.*?)$', |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
43 | bygroups(Name.Attribute, Text, Punctuation, Text, |
46
2ff6b838b040
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
43
diff
changeset
|
44 | using(PythonLexer))), |
2ff6b838b040
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
43
diff
changeset
|
45 | (r'[^:]+?$', using(PythonLexer)) |
2ff6b838b040
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
43
diff
changeset
|
46 | ], |
3
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
47 | 'classList': [ |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
48 | (r'(,)(\s*)([A-Z][A-Za-z0-9]*)', |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
49 | bygroups(Punctuation, Text, Name.Class)), |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
50 | (r'(\+)(\s*)([A-Z][A-Za-z0-9]*)', |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
51 | bygroups(Operator, Text, Name.Class)), |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
52 | (r'\s+', Text), |
b7e3e3b131ea
Finished the Kivy project suupport plug-in.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
1
diff
changeset
|
53 | (r'[A-Z][A-Za-z0-9]*', Name.Class), |
46
2ff6b838b040
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
43
diff
changeset
|
54 | (r'\]', Punctuation, '#pop') |
2ff6b838b040
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
43
diff
changeset
|
55 | ], |
2ff6b838b040
Ported the plug-in to PyQt6 for eric7.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
43
diff
changeset
|
56 | } |
32
1264664c5ba9
Fixed a bug in the Kivy lexer causing all strings to be unicodes on Python2, which makes Pygments raise an exception.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
31
diff
changeset
|
57 | |
1264664c5ba9
Fixed a bug in the Kivy lexer causing all strings to be unicodes on Python2, which makes Pygments raise an exception.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
31
diff
changeset
|
58 | # |
1264664c5ba9
Fixed a bug in the Kivy lexer causing all strings to be unicodes on Python2, which makes Pygments raise an exception.
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
31
diff
changeset
|
59 | # eflag: noqa = M702 |