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
|
/*
Language: Scala
Author: Jan Berkel <jan.berkel@gmail.com>
*/
this.lang = function(hljs){
hljs.LANGUAGES.scala = {
defaultMode: {
lexems: [hljs.UNDERSCORE_IDENT_RE],
contains: ['javadoc', 'comment', 'string', 'class', 'number', 'annotation'],
keywords: { 'type': 1, 'yield': 1, 'lazy': 1, 'override': 1, 'def': 1, 'with': 1, 'val':1, 'var': 1, 'false': 1, 'true': 1, 'sealed': 1, 'abstract': 1, 'private': 1, 'trait': 1, 'object': 1, 'null': 1, 'if': 1, 'for': 1, 'while': 1, 'throw': 1, 'finally': 1, 'protected': 1, 'extends': 1, 'import': 1, 'final': 1, 'return': 1, 'else': 1, 'break': 1, 'new': 1, 'catch': 1, 'super': 1, 'class': 1, 'case': 1,'package': 1, 'default': 1, 'try': 1, 'this': 1, 'match': 1, 'continue': 1, 'throws': 1}
},
modes: [
{
className: 'class',
lexems: [hljs.UNDERSCORE_IDENT_RE],
begin: '((case )?class |object |trait )', end: '({|$)',
illegal: ':',
keywords: {'case' : 1, 'class': 1, 'trait': 1, 'object': 1},
contains: ['inheritance', 'title', 'params']
},
{
className: 'inheritance',
begin: '(extends|with)', end: '^', noMarkup: true,
lexems: [hljs.IDENT_RE],
keywords: {'extends': 1, 'with': 1},
relevance: 10
},
{
className: 'title',
begin: hljs.UNDERSCORE_IDENT_RE, end: '^'
},
{
className: 'params',
begin: '\\(', end: '\\)',
contains: ['string', 'annotation']
},
hljs.C_NUMBER_MODE,
hljs.APOS_STRING_MODE,
hljs.QUOTE_STRING_MODE,
hljs.BACKSLASH_ESCAPE,
hljs.C_LINE_COMMENT_MODE,
{
className: 'javadoc',
begin: '/\\*\\*', end: '\\*/',
contains: ['javadoctag'],
relevance: 10
},
{
className: 'javadoctag',
begin: '@[A-Za-z]+', end: '^'
},
hljs.C_BLOCK_COMMENT_MODE,
{
className: 'annotation',
begin: '@[A-Za-z]+', end: '^'
},
{
className: 'string',
begin: 'u?r?"""', end: '"""',
relevance: 10
}
]
};
};
|