diff options
| author | Armand Philippot <git@armandphilippot.com> | 2021-12-30 19:47:21 +0100 |
|---|---|---|
| committer | Armand Philippot <git@armandphilippot.com> | 2021-12-30 19:47:21 +0100 |
| commit | a98b5ea6fe8e8cc98a55e0fd793e6e8660ea31c1 (patch) | |
| tree | 542810ab5aef99150db228bb54fd58303dcb31c7 /public/prism/prism-erlang.js | |
| parent | ab355897a12b7bda1089a44de326d41455a0f7a3 (diff) | |
chore: add prismjs for syntax highlighting
Diffstat (limited to 'public/prism/prism-erlang.js')
| -rw-r--r-- | public/prism/prism-erlang.js | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/public/prism/prism-erlang.js b/public/prism/prism-erlang.js new file mode 100644 index 0000000..bfd4aa3 --- /dev/null +++ b/public/prism/prism-erlang.js @@ -0,0 +1,43 @@ +Prism.languages.erlang = { + comment: /%.+/, + string: { + pattern: /"(?:\\.|[^\\"\r\n])*"/, + greedy: true, + }, + 'quoted-function': { + pattern: /'(?:\\.|[^\\'\r\n])+'(?=\()/, + alias: 'function', + }, + 'quoted-atom': { + pattern: /'(?:\\.|[^\\'\r\n])+'/, + alias: 'atom', + }, + boolean: /\b(?:false|true)\b/, + keyword: /\b(?:after|case|catch|end|fun|if|of|receive|try|when)\b/, + number: [ + /\$\\?./, + /\b\d+#[a-z0-9]+/i, + /(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i, + ], + function: /\b[a-z][\w@]*(?=\()/, + variable: { + // Look-behind is used to prevent wrong highlighting of atoms containing "@" + pattern: /(^|[^@])(?:\b|\?)[A-Z_][\w@]*/, + lookbehind: true, + }, + operator: [ + /[=\/<>:]=|=[:\/]=|\+\+?|--?|[=*\/!]|\b(?:and|andalso|band|bnot|bor|bsl|bsr|bxor|div|not|or|orelse|rem|xor)\b/, + { + // We don't want to match << + pattern: /(^|[^<])<(?!<)/, + lookbehind: true, + }, + { + // We don't want to match >> + pattern: /(^|[^>])>(?!>)/, + lookbehind: true, + }, + ], + atom: /\b[a-z][\w@]*/, + punctuation: /[()[\]{}:;,.#|]|<<|>>/, +}; |
