mirror of
https://github.com/Funkoala14/knowledgebase_law.git
synced 2025-06-09 02:08:16 +08:00
41 lines
1.1 KiB
JavaScript
41 lines
1.1 KiB
JavaScript
'use strict'
|
|
|
|
module.exports = apl
|
|
apl.displayName = 'apl'
|
|
apl.aliases = []
|
|
function apl(Prism) {
|
|
Prism.languages.apl = {
|
|
comment: /(?:⍝|#[! ]).*$/m,
|
|
string: {
|
|
pattern: /'(?:[^'\r\n]|'')*'/,
|
|
greedy: true
|
|
},
|
|
number:
|
|
/¯?(?:\d*\.?\b\d+(?:e[+¯]?\d+)?|¯|∞)(?:j¯?(?:(?:\d+(?:\.\d+)?|\.\d+)(?:e[+¯]?\d+)?|¯|∞))?/i,
|
|
statement: /:[A-Z][a-z][A-Za-z]*\b/,
|
|
'system-function': {
|
|
pattern: /⎕[A-Z]+/i,
|
|
alias: 'function'
|
|
},
|
|
constant: /[⍬⌾#⎕⍞]/,
|
|
function: /[-+×÷⌈⌊∣|⍳⍸?*⍟○!⌹<≤=>≥≠≡≢∊⍷∪∩~∨∧⍱⍲⍴,⍪⌽⊖⍉↑↓⊂⊃⊆⊇⌷⍋⍒⊤⊥⍕⍎⊣⊢⍁⍂≈⍯↗¤→]/,
|
|
'monadic-operator': {
|
|
pattern: /[\\\/⌿⍀¨⍨⌶&∥]/,
|
|
alias: 'operator'
|
|
},
|
|
'dyadic-operator': {
|
|
pattern: /[.⍣⍠⍤∘⌸@⌺⍥]/,
|
|
alias: 'operator'
|
|
},
|
|
assignment: {
|
|
pattern: /←/,
|
|
alias: 'keyword'
|
|
},
|
|
punctuation: /[\[;\]()◇⋄]/,
|
|
dfn: {
|
|
pattern: /[{}⍺⍵⍶⍹∇⍫:]/,
|
|
alias: 'builtin'
|
|
}
|
|
}
|
|
}
|