diff options
Diffstat (limited to 'public/prism/prism-chaiscript.min.js')
| -rw-r--r-- | public/prism/prism-chaiscript.min.js | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/public/prism/prism-chaiscript.min.js b/public/prism/prism-chaiscript.min.js new file mode 100644 index 0000000..a64400b --- /dev/null +++ b/public/prism/prism-chaiscript.min.js @@ -0,0 +1,50 @@ +(Prism.languages.chaiscript = Prism.languages.extend('clike', { + string: { + pattern: /(^|[^\\])'(?:[^'\\]|\\[\s\S])*'/, + lookbehind: !0, + greedy: !0, + }, + 'class-name': [ + { pattern: /(\bclass\s+)\w+/, lookbehind: !0 }, + { pattern: /(\b(?:attr|def)\s+)\w+(?=\s*::)/, lookbehind: !0 }, + ], + keyword: + /\b(?:attr|auto|break|case|catch|class|continue|def|default|else|finally|for|fun|global|if|return|switch|this|try|var|while)\b/, + number: [Prism.languages.cpp.number, /\b(?:Infinity|NaN)\b/], + operator: + />>=?|<<=?|\|\||&&|:[:=]?|--|\+\+|[=!<>+\-*/%|&^]=?|[?~]|`[^`\r\n]{1,4}`/, +})), + Prism.languages.insertBefore('chaiscript', 'operator', { + 'parameter-type': { + pattern: /([,(]\s*)\w+(?=\s+\w)/, + lookbehind: !0, + alias: 'class-name', + }, + }), + Prism.languages.insertBefore('chaiscript', 'string', { + 'string-interpolation': { + pattern: + /(^|[^\\])"(?:[^"$\\]|\\[\s\S]|\$(?!\{)|\$\{(?:[^{}]|\{(?:[^{}]|\{[^{}]*\})*\})*\})*"/, + lookbehind: !0, + greedy: !0, + inside: { + interpolation: { + pattern: + /((?:^|[^\\])(?:\\{2})*)\$\{(?:[^{}]|\{(?:[^{}]|\{[^{}]*\})*\})*\}/, + lookbehind: !0, + inside: { + 'interpolation-expression': { + pattern: /(^\$\{)[\s\S]+(?=\}$)/, + lookbehind: !0, + inside: Prism.languages.chaiscript, + }, + 'interpolation-punctuation': { + pattern: /^\$\{|\}$/, + alias: 'punctuation', + }, + }, + }, + string: /[\s\S]+/, + }, + }, + }); |
