1 | Prism.languages.q = {
|
2 | 'string': /"(?:\\.|[^"\\\r\n])*"/,
|
3 | 'comment': [
|
4 |
|
5 |
|
6 | {
|
7 |
|
8 | pattern: /([\t )\]}])\/.*/,
|
9 | lookbehind: true,
|
10 | greedy: true
|
11 | },
|
12 |
|
13 |
|
14 |
|
15 |
|
16 |
|
17 | {
|
18 | pattern: /(^|\r?\n|\r)\/[\t ]*(?:(?:\r?\n|\r)(?:.*(?:\r?\n|\r(?!\n)))*?(?:\\(?=[\t ]*(?:\r?\n|\r))|$)|\S.*)/,
|
19 | lookbehind: true,
|
20 | greedy: true
|
21 | },
|
22 |
|
23 |
|
24 | {
|
25 | pattern: /^\\[\t ]*(?:\r?\n|\r)[\s\S]+/m,
|
26 | greedy: true
|
27 | },
|
28 | {
|
29 | pattern: /^#!.+/m,
|
30 | greedy: true
|
31 | }
|
32 | ],
|
33 | 'symbol': /`(?::\S+|[\w.]*)/,
|
34 | 'datetime': {
|
35 | pattern: /0N[mdzuvt]|0W[dtz]|\d{4}\.\d\d(?:m|\.\d\d(?:T(?:\d\d(?::\d\d(?::\d\d(?:[.:]\d\d\d)?)?)?)?)?[dz]?)|\d\d:\d\d(?::\d\d(?:[.:]\d\d\d)?)?[uvt]?/,
|
36 | alias: 'number'
|
37 | },
|
38 |
|
39 |
|
40 | 'number': /\b(?![01]:)(?:0N[hje]?|0W[hj]?|0[wn]|0x[\da-fA-F]+|\d+(?:\.\d*)?(?:e[+-]?\d+)?[hjfeb]?)/,
|
41 | 'keyword': /\\\w+\b|\b(?:abs|acos|aj0?|all|and|any|asc|asin|asof|atan|attr|avgs?|binr?|by|ceiling|cols|cor|cos|count|cov|cross|csv|cut|delete|deltas|desc|dev|differ|distinct|div|do|dsave|ej|enlist|eval|except|exec|exit|exp|fby|fills|first|fkeys|flip|floor|from|get|getenv|group|gtime|hclose|hcount|hdel|hopen|hsym|iasc|identity|idesc|if|ij|in|insert|inter|inv|keys?|last|like|list|ljf?|load|log|lower|lsq|ltime|ltrim|mavg|maxs?|mcount|md5|mdev|med|meta|mins?|mmax|mmin|mmu|mod|msum|neg|next|not|null|or|over|parse|peach|pj|plist|prds?|prev|prior|rand|rank|ratios|raze|read0|read1|reciprocal|reval|reverse|rload|rotate|rsave|rtrim|save|scan|scov|sdev|select|set|setenv|show|signum|sin|sqrt|ssr?|string|sublist|sums?|sv|svar|system|tables|tan|til|trim|txf|type|uj|ungroup|union|update|upper|upsert|value|var|views?|vs|wavg|where|while|within|wj1?|wsum|ww|xasc|xbar|xcols?|xdesc|xexp|xgroup|xkey|xlog|xprev|xrank)\b/,
|
42 | 'adverb': {
|
43 | pattern: /['\/\\]:?|\beach\b/,
|
44 | alias: 'function'
|
45 | },
|
46 | 'verb': {
|
47 | pattern: /(?:\B\.\B|\b[01]:|<[=>]?|>=?|[:+\-*%,!?~=|$&#@^]):?|\b_\b:?/,
|
48 | alias: 'operator'
|
49 | },
|
50 | 'punctuation': /[(){}\[\];.]/
|
51 | };
|