1 | Prism.languages.lolcode = {
|
2 | 'comment': [
|
3 | /\bOBTW\s[\s\S]*?\sTLDR\b/,
|
4 | /\bBTW.+/
|
5 | ],
|
6 | 'string': {
|
7 | pattern: /"(?::.|[^":])*"/,
|
8 | inside: {
|
9 | 'variable': /:\{[^}]+\}/,
|
10 | 'symbol': [
|
11 | /:\([a-f\d]+\)/i,
|
12 | /:\[[^\]]+\]/,
|
13 | /:[)>o":]/
|
14 | ]
|
15 | },
|
16 | greedy: true
|
17 | },
|
18 | 'number': /(?:\B-)?(?:\b\d+(?:\.\d*)?|\B\.\d+)/,
|
19 | 'symbol': {
|
20 | pattern: /(^|\s)(?:A )?(?:YARN|NUMBR|NUMBAR|TROOF|BUKKIT|NOOB)(?=\s|,|$)/,
|
21 | lookbehind: true,
|
22 | inside: {
|
23 | 'keyword': /A(?=\s)/
|
24 | }
|
25 | },
|
26 | 'label': {
|
27 | pattern: /((?:^|\s)(?:IM IN YR|IM OUTTA YR) )[a-zA-Z]\w*/,
|
28 | lookbehind: true,
|
29 | alias: 'string'
|
30 | },
|
31 | 'function': {
|
32 | pattern: /((?:^|\s)(?:I IZ|HOW IZ I|IZ) )[a-zA-Z]\w*/,
|
33 | lookbehind: true
|
34 | },
|
35 | 'keyword': [
|
36 | {
|
37 | pattern: /(^|\s)(?:O HAI IM|KTHX|HAI|KTHXBYE|I HAS A|ITZ(?: A)?|R|AN|MKAY|SMOOSH|MAEK|IS NOW(?: A)?|VISIBLE|GIMMEH|O RLY\?|YA RLY|NO WAI|OIC|MEBBE|WTF\?|OMG|OMGWTF|GTFO|IM IN YR|IM OUTTA YR|FOUND YR|YR|TIL|WILE|UPPIN|NERFIN|I IZ|HOW IZ I|IF U SAY SO|SRS|HAS A|LIEK(?: A)?|IZ)(?=\s|,|$)/,
|
38 | lookbehind: true
|
39 | },
|
40 | /'Z(?=\s|,|$)/
|
41 | ],
|
42 | 'boolean': {
|
43 | pattern: /(^|\s)(?:WIN|FAIL)(?=\s|,|$)/,
|
44 | lookbehind: true
|
45 | },
|
46 | 'variable': {
|
47 | pattern: /(^|\s)IT(?=\s|,|$)/,
|
48 | lookbehind: true
|
49 | },
|
50 | 'operator': {
|
51 | pattern: /(^|\s)(?:NOT|BOTH SAEM|DIFFRINT|(?:SUM|DIFF|PRODUKT|QUOSHUNT|MOD|BIGGR|SMALLR|BOTH|EITHER|WON|ALL|ANY) OF)(?=\s|,|$)/,
|
52 | lookbehind: true
|
53 | },
|
54 | 'punctuation': /\.{3}|…|,|!/
|
55 | };
|