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-avro-idl.js | |
| parent | ab355897a12b7bda1089a44de326d41455a0f7a3 (diff) | |
chore: add prismjs for syntax highlighting
Diffstat (limited to 'public/prism/prism-avro-idl.js')
| -rw-r--r-- | public/prism/prism-avro-idl.js | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/public/prism/prism-avro-idl.js b/public/prism/prism-avro-idl.js new file mode 100644 index 0000000..6bb8615 --- /dev/null +++ b/public/prism/prism-avro-idl.js @@ -0,0 +1,52 @@ +// GitHub: https://github.com/apache/avro +// Docs: https://avro.apache.org/docs/current/idl.html + +Prism.languages['avro-idl'] = { + comment: { + pattern: /\/\/.*|\/\*[\s\S]*?\*\//, + greedy: true, + }, + string: { + pattern: /(^|[^\\])"(?:[^\r\n"\\]|\\.)*"/, + lookbehind: true, + greedy: true, + }, + + annotation: { + pattern: /@(?:[$\w.-]|`[^\r\n`]+`)+/, + greedy: true, + alias: 'function', + }, + 'function-identifier': { + pattern: /`[^\r\n`]+`(?=\s*\()/, + greedy: true, + alias: 'function', + }, + identifier: { + pattern: /`[^\r\n`]+`/, + greedy: true, + }, + + 'class-name': { + pattern: /(\b(?:enum|error|protocol|record|throws)\b\s+)[$\w]+/, + lookbehind: true, + greedy: true, + }, + keyword: + /\b(?:array|boolean|bytes|date|decimal|double|enum|error|false|fixed|float|idl|import|int|local_timestamp_ms|long|map|null|oneway|protocol|record|schema|string|throws|time_ms|timestamp_ms|true|union|uuid|void)\b/, + function: /\b[a-z_]\w*(?=\s*\()/i, + + number: [ + { + pattern: + /(^|[^\w.])-?(?:(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?|0x(?:[a-f0-9]+(?:\.[a-f0-9]*)?|\.[a-f0-9]+)(?:p[+-]?\d+)?)[dfl]?(?![\w.])/i, + lookbehind: true, + }, + /-?\b(?:Infinity|NaN)\b/, + ], + + operator: /=/, + punctuation: /[()\[\]{}<>.:,;-]/, +}; + +Prism.languages.avdl = Prism.languages['avro-idl']; |
