aboutsummaryrefslogtreecommitdiffstats
path: root/public/prism/prism-bqn.js
diff options
context:
space:
mode:
Diffstat (limited to 'public/prism/prism-bqn.js')
-rw-r--r--public/prism/prism-bqn.js64
1 files changed, 64 insertions, 0 deletions
diff --git a/public/prism/prism-bqn.js b/public/prism/prism-bqn.js
new file mode 100644
index 0000000..34b8f5a
--- /dev/null
+++ b/public/prism/prism-bqn.js
@@ -0,0 +1,64 @@
+Prism.languages.bqn = {
+ shebang: {
+ pattern: /^#![ \t]*\/.*/,
+ alias: 'important',
+ greedy: true,
+ },
+ comment: {
+ pattern: /#.*/,
+ greedy: true,
+ },
+ 'string-literal': {
+ pattern: /"(?:[^"]|"")*"/,
+ greedy: true,
+ alias: 'string',
+ },
+ 'character-literal': {
+ pattern: /'(?:[\s\S]|[\uD800-\uDBFF][\uDC00-\uDFFF])'/,
+ greedy: true,
+ alias: 'char',
+ },
+ function: /•[\w¯.∞π]+[\w¯.∞π]*/,
+ 'dot-notation-on-brackets': {
+ pattern: /\{(?=.*\}\.)|\}\./,
+ alias: 'namespace',
+ },
+ 'special-name': {
+ pattern: /(?:𝕨|𝕩|𝕗|𝕘|𝕤|𝕣|𝕎|𝕏|𝔽|𝔾|𝕊|_𝕣_|_𝕣)/,
+ alias: 'keyword',
+ },
+ 'dot-notation-on-name': {
+ pattern: /[A-Za-z_][\w¯∞π]*\./,
+ alias: 'namespace',
+ },
+ 'word-number-scientific': {
+ pattern: /\d+(?:\.\d+)?[eE]¯?\d+/,
+ alias: 'number',
+ },
+ 'word-name': {
+ pattern: /[A-Za-z_][\w¯∞π]*/,
+ alias: 'symbol',
+ },
+ 'word-number': {
+ pattern:
+ /[¯∞π]?(?:\d*\.?\b\d+(?:e[+¯]?\d+|E[+¯]?\d+)?|¯|∞|π)(?:j¯?(?:(?:\d+(?:\.\d+)?|\.\d+)(?:e[+¯]?\d+|E[+¯]?\d+)?|¯|∞|π))?/,
+ alias: 'number',
+ },
+ 'null-literal': {
+ pattern: /@/,
+ alias: 'char',
+ },
+ 'primitive-functions': {
+ pattern: /[-+×÷⋆√⌊⌈|¬∧∨<>≠=≤≥≡≢⊣⊢⥊∾≍⋈↑↓↕«»⌽⍉/⍋⍒⊏⊑⊐⊒∊⍷⊔!]/,
+ alias: 'operator',
+ },
+ 'primitive-1-operators': {
+ pattern: /[`˜˘¨⁼⌜´˝˙]/,
+ alias: 'operator',
+ },
+ 'primitive-2-operators': {
+ pattern: /[∘⊸⟜○⌾⎉⚇⍟⊘◶⎊]/,
+ alias: 'operator',
+ },
+ punctuation: /[←⇐↩(){}⟨⟩[\]‿·⋄,.;:?]/,
+};