1 | define(["../_base"], function(dh){ |
---|
2 | |
---|
3 | var dhc = dh.constants; |
---|
4 | dh.languages.python = { |
---|
5 | // summary: |
---|
6 | // Python highlight definitions |
---|
7 | defaultMode: { |
---|
8 | lexems: [dhc.UNDERSCORE_IDENT_RE], |
---|
9 | illegal: '(</|->)', |
---|
10 | contains: ['comment', 'string', 'function', 'class', 'number', 'decorator'], |
---|
11 | keywords: {'and': 1, 'elif': 1, 'is': 1, 'global': 1, 'as': 1, 'in': 1, 'if': 1, |
---|
12 | 'from': 1, 'raise': 1, 'for': 1, 'except': 1, 'finally': 1, 'print': 1, |
---|
13 | 'import': 1, 'pass': 1, 'None': 1, 'return': 1, 'exec': 1, 'else': 1, |
---|
14 | 'break': 1, 'not': 1, 'with': 1, 'class': 1, 'assert': 1, 'yield': 1, |
---|
15 | 'try': 1, 'while': 1, 'continue': 1, 'del': 1, 'or': 1, 'def': 1, 'lambda': 1 |
---|
16 | } |
---|
17 | }, |
---|
18 | modes: [ |
---|
19 | { |
---|
20 | className: 'function', |
---|
21 | lexems: [dhc.UNDERSCORE_IDENT_RE], |
---|
22 | begin: '\\bdef ', end: ':', |
---|
23 | illegal: '$', |
---|
24 | keywords: {'def': 1}, |
---|
25 | contains: ['title', 'params'], |
---|
26 | relevance: 10 |
---|
27 | }, |
---|
28 | { |
---|
29 | className: 'class', |
---|
30 | lexems: [dhc.UNDERSCORE_IDENT_RE], |
---|
31 | begin: '\\bclass ', end: ':', |
---|
32 | illegal: '[${]', |
---|
33 | keywords: {'class': 1}, |
---|
34 | contains: ['title', 'params'], |
---|
35 | relevance: 10 |
---|
36 | }, |
---|
37 | { |
---|
38 | className: 'title', |
---|
39 | begin: dhc.UNDERSCORE_IDENT_RE, end: '^' |
---|
40 | }, |
---|
41 | { |
---|
42 | className: 'params', |
---|
43 | begin: '\\(', end: '\\)', |
---|
44 | contains: ['string'] |
---|
45 | }, |
---|
46 | dhc.HASH_COMMENT_MODE, |
---|
47 | dhc.C_NUMBER_MODE, |
---|
48 | { |
---|
49 | className: 'string', |
---|
50 | begin: '\'\'\'', end: '\'\'\'', |
---|
51 | relevance: 10 |
---|
52 | }, |
---|
53 | { |
---|
54 | className: 'string', |
---|
55 | begin: '"""', end: '"""', |
---|
56 | relevance: 10 |
---|
57 | }, |
---|
58 | dhc.APOS_STRING_MODE, |
---|
59 | dhc.QUOTE_STRING_MODE, |
---|
60 | dhc.BACKSLASH_ESCAPE, |
---|
61 | { |
---|
62 | className: 'string', |
---|
63 | begin: 'r\'', end: '\'', |
---|
64 | relevance: 10 |
---|
65 | }, |
---|
66 | { |
---|
67 | className: 'string', |
---|
68 | begin: 'r"', end: '"', |
---|
69 | relevance: 10 |
---|
70 | }, |
---|
71 | { |
---|
72 | className: 'string', |
---|
73 | begin: 'u\'', end: '(^|[^\\\\])\'', |
---|
74 | relevance: 10 |
---|
75 | }, |
---|
76 | { |
---|
77 | className: 'string', |
---|
78 | begin: 'u"', end: '(^|[^\\\\])"', |
---|
79 | relevance: 10 |
---|
80 | }, |
---|
81 | { |
---|
82 | className: 'string', |
---|
83 | begin: 'ur\'', end: '\'', |
---|
84 | relevance: 10 |
---|
85 | }, |
---|
86 | { |
---|
87 | className: 'string', |
---|
88 | begin: 'ur"', end: '"', |
---|
89 | relevance: 10 |
---|
90 | }, |
---|
91 | { |
---|
92 | className: 'decorator', |
---|
93 | begin: '@', end: '$' |
---|
94 | } |
---|
95 | ] |
---|
96 | }; |
---|
97 | |
---|
98 | return dh.languages.python; |
---|
99 | }); |
---|