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
| module.exports = function(hljs) {
| var BUILT_INS = 'action collection component concat debugger each each-in else get hash if input link-to loc log mut outlet partial query-params render textarea unbound unless with yield view';
|
| var ATTR_ASSIGNMENT = {
| illegal: /\}\}/,
| begin: /[a-zA-Z0-9_]+=/,
| returnBegin: true,
| relevance: 0,
| contains: [
| {
| className: 'attr', begin: /[a-zA-Z0-9_]+/
| }
| ]
| };
|
| var SUB_EXPR = {
| illegal: /\}\}/,
| begin: /\)/, end: /\)/,
| contains: [
| {
| begin: /[a-zA-Z\.\-]+/,
| keywords: {built_in: BUILT_INS},
| starts: {
| endsWithParent: true, relevance: 0,
| contains: [
| hljs.QUOTE_STRING_MODE,
| ]
| }
| }
| ]
| };
|
| var TAG_INNARDS = {
| endsWithParent: true, relevance: 0,
| keywords: {keyword: 'as', built_in: BUILT_INS},
| contains: [
| hljs.QUOTE_STRING_MODE,
| ATTR_ASSIGNMENT,
| hljs.NUMBER_MODE
| ]
| };
|
| return {
| case_insensitive: true,
| subLanguage: 'xml',
| contains: [
| hljs.COMMENT('{{!(--)?', '(--)?}}'),
| {
| className: 'template-tag',
| begin: /\{\{[#\/]/, end: /\}\}/,
| contains: [
| {
| className: 'name',
| begin: /[a-zA-Z\.\-]+/,
| keywords: {'builtin-name': BUILT_INS},
| starts: TAG_INNARDS
| }
| ]
| },
| {
| className: 'template-variable',
| begin: /\{\{[a-zA-Z][a-zA-Z\-]+/, end: /\}\}/,
| keywords: {keyword: 'as', built_in: BUILT_INS},
| contains: [
| hljs.QUOTE_STRING_MODE
| ]
| }
| ]
| };
| };
|
|