summaryrefslogtreecommitdiff
path: root/includes/js/dojox/highlight/languages/python.js
blob: eaffd1f232c13781a45f83940bcbb34b03f36ab3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
if(!dojo._hasResource["dojox.highlight.languages.python"]){ //_hasResource checks added by build. Do not use _hasResource directly in your code.
dojo._hasResource["dojox.highlight.languages.python"] = true;
dojo.provide("dojox.highlight.languages.python"); 

dojo.require("dojox.highlight._base");

(function(){
	var dh = dojox.highlight, dhc = dh.constants;
	dh.languages.python = {
	    // summary: Python highlight definitions 
        defaultMode: {
          lexems: [dhc.UNDERSCORE_IDENT_RE],
          illegal: '(</|->)',
          contains: ['comment', 'string', 'function', 'class', 'number', 'decorator'],
          keywords: {'and': 1, 'elif': 1, 'is': 1, 'global': 1, 'as': 1, 'in': 1, 'if': 1, 
		  	'from': 1, 'raise': 1, 'for': 1, 'except': 1, 'finally': 1, 'print': 1, 
			'import': 1, 'pass': 1, 'None': 1, 'return': 1, 'exec': 1, 'else': 1, 
			'break': 1, 'not': 1, 'with': 1, 'class': 1, 'assert': 1, 'yield': 1, 
			'try': 1, 'while': 1, 'continue': 1, 'del': 1, 'or': 1, 'def': 1, 'lambda': 1}
        },
        modes: [
          {
            className: 'function',
            lexems: [dhc.UNDERSCORE_IDENT_RE],
            begin: '\\bdef ', end: ':',
            illegal: '$',
            keywords: {'def': 1},
            contains: ['title', 'params'],
            relevance: 10
          }, 
          {
            className: 'class',
            lexems: [dhc.UNDERSCORE_IDENT_RE],
            begin: '\\bclass ', end: ':',
            illegal: '[${]',
            keywords: {'class': 1},
            contains: ['title', 'params',],
            relevance: 10
          },
          {
          className: 'title',
          begin: dhc.UNDERSCORE_IDENT_RE, end: '^'
        },
        {
          className: 'params',
          begin: '\\(', end: '\\)',
          contains: ['string']
        },
        dhc.HASH_COMMENT_MODE,
        dhc.C_NUMBER_MODE,
        {
          className: 'string',
          begin: '\'\'\'', end: '\'\'\'',
          relevance: 10
        },
        {
          className: 'string',
          begin: '"""', end: '"""',
          relevance: 10
        },
        dhc.APOS_STRING_MODE,
        dhc.QUOTE_STRING_MODE,
        dhc.BACKSLASH_ESCAPE,
        {
          className: 'string',
          begin: 'r\'', end: '\'',
          relevance: 10
        },
        {
          className: 'string',
          begin: 'r"', end: '"',
          relevance: 10
        },
        {
          className: 'string',
          begin: 'u\'', end: '(^|[^\\\\])\'',
          relevance: 10
        },
        {
          className: 'string',
          begin: 'u"', end: '(^|[^\\\\])"',
          relevance: 10
        },
        {
          className: 'string',
          begin: 'ur\'', end: '\'',
          relevance: 10
        },
        {
          className: 'string',
          begin: 'ur"', end: '"',
          relevance: 10
        },
        {
          className: 'decorator',
          begin: '@', end: '$'
        }
      ]
    };
})();

}