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