From a98b5ea6fe8e8cc98a55e0fd793e6e8660ea31c1 Mon Sep 17 00:00:00 2001 From: Armand Philippot Date: Thu, 30 Dec 2021 19:47:21 +0100 Subject: chore: add prismjs for syntax highlighting --- public/prism/prism-j.js | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 public/prism/prism-j.js (limited to 'public/prism/prism-j.js') diff --git a/public/prism/prism-j.js b/public/prism/prism-j.js new file mode 100644 index 0000000..8eff628 --- /dev/null +++ b/public/prism/prism-j.js @@ -0,0 +1,31 @@ +Prism.languages.j = { + comment: { + pattern: /\bNB\..*/, + greedy: true, + }, + string: { + pattern: /'(?:''|[^'\r\n])*'/, + greedy: true, + }, + keyword: + /\b(?:(?:CR|LF|adverb|conjunction|def|define|dyad|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+)?(?:(?:ad|ar|[ejpx])_?\d+(?:\.\d+)?)*(?:b_?[\da-z]+(?:\.[\da-z]+)?)?|_\b(?!\.))/, + adverb: { + pattern: /[~}]|[\/\\]\.?|[bfM]\.|t[.:]/, + alias: 'builtin', + }, + operator: /[=a][.:]|_\./, + conjunction: { + pattern: /&(?:\.:?|:)?|[.:@][.:]?|[!D][.:]|[;dHT]\.|`:?|[\^LS]:|"/, + alias: 'variable', + }, + punctuation: /[()]/, +}; -- cgit v1.2.3