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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
| module.exports = function(hljs) {
| var STRINGS = {
| className: 'string',
| variants: [
| hljs.inherit(hljs.QUOTE_STRING_MODE, { begin: '((u8?|U)|L)?"' }),
| {
| begin: '(u8?|U)?R"', end: '"',
| contains: [hljs.BACKSLASH_ESCAPE]
| },
| {
| begin: '\'\\\\?.', end: '\'',
| illegal: '.'
| }
| ]
| };
|
| var NUMBERS = {
| className: 'number',
| variants: [
| { begin: '\\b(\\d+(\\.\\d*)?|\\.\\d+)(u|U|l|L|ul|UL|f|F)' },
| { begin: hljs.C_NUMBER_RE }
| ],
| relevance: 0
| };
|
| var PREPROCESSOR = {
| className: 'meta',
| begin: '#', end: '$',
| keywords: {'meta-keyword': 'if else elif endif define undef ifdef ifndef'},
| contains: [
| {
| begin: /\\\n/, relevance: 0
| },
| {
| beginKeywords: 'include', end: '$',
| keywords: {'meta-keyword': 'include'},
| contains: [
| hljs.inherit(STRINGS, {className: 'meta-string'}),
| {
| className: 'meta-string',
| begin: '<', end: '>',
| illegal: '\\n'
| }
| ]
| },
| STRINGS,
| hljs.C_LINE_COMMENT_MODE,
| hljs.C_BLOCK_COMMENT_MODE
| ]
| };
|
| var DTS_REFERENCE = {
| className: 'variable',
| begin: '\\&[a-z\\d_]*\\b'
| };
|
| var DTS_KEYWORD = {
| className: 'meta-keyword',
| begin: '/[a-z][a-z\\d-]*/'
| };
|
| var DTS_LABEL = {
| className: 'symbol',
| begin: '^\\s*[a-zA-Z_][a-zA-Z\\d_]*:'
| };
|
| var DTS_CELL_PROPERTY = {
| className: 'params',
| begin: '<',
| end: '>',
| contains: [
| NUMBERS,
| DTS_REFERENCE
| ]
| };
|
| var DTS_NODE = {
| className: 'class',
| begin: /[a-zA-Z_][a-zA-Z\d_@]*\s{/,
| end: /[{;=]/,
| returnBegin: true,
| excludeEnd: true
| };
|
| var DTS_ROOT_NODE = {
| className: 'class',
| begin: '/\\s*{',
| end: '};',
| relevance: 10,
| contains: [
| DTS_REFERENCE,
| DTS_KEYWORD,
| DTS_LABEL,
| DTS_NODE,
| DTS_CELL_PROPERTY,
| hljs.C_LINE_COMMENT_MODE,
| hljs.C_BLOCK_COMMENT_MODE,
| NUMBERS,
| STRINGS
| ]
| };
|
| return {
| keywords: "",
| contains: [
| DTS_ROOT_NODE,
| DTS_REFERENCE,
| DTS_KEYWORD,
| DTS_LABEL,
| DTS_NODE,
| DTS_CELL_PROPERTY,
| hljs.C_LINE_COMMENT_MODE,
| hljs.C_BLOCK_COMMENT_MODE,
| NUMBERS,
| STRINGS,
| PREPROCESSOR,
| {
| begin: hljs.IDENT_RE + '::',
| keywords: ""
| }
| ]
| };
| };
|
|