26 lines
966 B
JavaScript
26 lines
966 B
JavaScript
Prism.languages.j = {
|
|
'comment': /\bNB\..*/,
|
|
'string': {
|
|
pattern: /'(?:''|[^'\r\n])*'/,
|
|
greedy: true
|
|
},
|
|
'keyword': /\b(?:(?:adverb|conjunction|CR|def|define|dyad|LF|monad|noun|verb)\b|(?:assert|break|case|catch[dt]?|continue|do|else|elseif|end|fcase|for|for_\w+|goto_\w+|if|label_\w+|return|select|throw|try|while|whilst)\.)/,
|
|
'verb': {
|
|
// Negative look-ahead prevents bad highlighting
|
|
// of ^: ;. =. =: !. !:
|
|
pattern: /(?!\^:|;\.|[=!][.:])(?:\{(?:\.|::?)?|p(?:\.\.?|:)|[=!\]]|[<>+*\-%$|,#][.:]?|[?^]\.?|[;\[]:?|[~}"i][.:]|[ACeEIjLor]\.|(?:[_\/\\qsux]|_?\d):)/,
|
|
alias: 'keyword'
|
|
},
|
|
'number': /\b_?(?:(?!\d:)\d+(?:\.\d+)?(?:(?:[ejpx]|ad|ar)_?\d+(?:\.\d+)?)*(?:b_?[\da-z]+(?:\.[\da-z]+)?)?|_\b(?!\.))/,
|
|
'adverb': {
|
|
pattern: /[~}]|[\/\\]\.?|[bfM]\.|t[.:]/,
|
|
alias: 'builtin'
|
|
},
|
|
'operator': /[=a][.:]|_\./,
|
|
'conjunction': {
|
|
pattern: /&(?:\.:?|:)?|[.:@][.:]?|[!D][.:]|[;dHT]\.|`:?|[\^LS]:|"/,
|
|
alias: 'variable'
|
|
},
|
|
'punctuation': /[()]/
|
|
};
|