1 | Prism.languages.icon = {
|
2 | 'comment': /#.*/,
|
3 | 'string': {
|
4 | pattern: /(["'])(?:(?!\1)[^\\\r\n_]|\\.|_(?!\1)(?:\r\n|[\s\S]))*\1/,
|
5 | greedy: true
|
6 | },
|
7 | 'number': /\b(?:\d+r[a-z\d]+|\d+(?:\.\d+)?(?:e[+-]?\d+)?)\b|\.\d+\b/i,
|
8 | 'builtin-keyword': {
|
9 | pattern: /&(?:allocated|ascii|clock|collections|cset|current|date|dateline|digits|dump|e|error(?:number|text|value)?|errout|fail|features|file|host|input|lcase|letters|level|line|main|null|output|phi|pi|pos|progname|random|regions|source|storage|subject|time|trace|ucase|version)\b/,
|
10 | alias: 'variable'
|
11 | },
|
12 | 'directive': {
|
13 | pattern: /\$\w+/,
|
14 | alias: 'builtin'
|
15 | },
|
16 | 'keyword': /\b(?:break|by|case|create|default|do|else|end|every|fail|global|if|initial|invocable|link|local|next|not|of|procedure|record|repeat|return|static|suspend|then|to|until|while)\b/,
|
17 | 'function': /(?!\d)\w+(?=\s*[({]|\s*!\s*\[)/,
|
18 | 'operator': /[+-]:(?!=)|(?:[\/?@^%&]|\+\+?|--?|==?=?|~==?=?|\*\*?|\|\|\|?|<(?:->?|<?=?)|>>?=?)(?::=)?|:(?:=:?)?|[!.\\|~]/,
|
19 | 'punctuation': /[\[\](){},;]/
|
20 | }; |
\ | No newline at end of file |