aboutsummaryrefslogtreecommitdiff
path: root/static/highlight/highlight-gleam.js
diff options
context:
space:
mode:
Diffstat (limited to 'static/highlight/highlight-gleam.js')
-rw-r--r--static/highlight/highlight-gleam.js119
1 files changed, 0 insertions, 119 deletions
diff --git a/static/highlight/highlight-gleam.js b/static/highlight/highlight-gleam.js
deleted file mode 100644
index 807d9ec..0000000
--- a/static/highlight/highlight-gleam.js
+++ /dev/null
@@ -1,119 +0,0 @@
-/**
- * Registers gleam as a language
- *
- * Largely based off https://github.com/gleam-lang/website/blob/main/javascript/highlightjs-gleam.js
- * Edited to work with minified hightlightjs core v11 (module)
- */
-
-import hljs from "./highlight.core.min.js";
-
-hljs.registerLanguage("gleam", function (hljs) {
- const KEYWORDS = {
- className: "keyword",
- beginKeywords:
- "as assert auto case const delegate derive echo else fn if " +
- "implement import let macro opaque panic pub test todo type use",
- };
- const STRING = {
- className: "string",
- variants: [{ begin: /"/, end: /"/ }],
- contains: [hljs.BACKSLASH_ESCAPE],
- relevance: 0,
- };
- const NAME = {
- className: "variable",
- begin: "\\b[a-z][a-z0-9_]*\\b",
- relevance: 0,
- };
- const DISCARD_NAME = {
- className: "comment",
- begin: "\\b_[a-z][a-z0-9_]*\\b",
- relevance: 0,
- };
- const NUMBER = {
- className: "number",
- variants: [
- {
- // binary
- begin: "\\b0[bB](?:_?[01]+)+",
- },
- {
- // octal
- begin: "\\b0[oO](?:_?[0-7]+)+",
- },
- {
- // hex
- begin: "\\b0[xX](?:_?[0-9a-fA-F]+)+",
- },
- {
- // dec, float
- begin: "\\b\\d(?:_?\\d+)*(?:\\.(?:\\d(?:_?\\d+)*)*)?",
- },
- ],
- relevance: 0,
- };
-
- return {
- name: "Gleam",
- aliases: ["gleam"],
- contains: [
- hljs.C_LINE_COMMENT_MODE,
- STRING,
- {
- // bit array
- begin: "<<",
- end: ">>",
- contains: [
- {
- className: "keyword",
- beginKeywords:
- "binary bits bytes int float bit_string bit_array bits utf8 utf16 " +
- "utf32 utf8_codepoint utf16_codepoint utf32_codepoint signed " +
- "unsigned big little native unit size",
- },
- KEYWORDS,
- STRING,
- NAME,
- DISCARD_NAME,
- NUMBER,
- ],
- relevance: 10,
- },
- {
- className: "function",
- beginKeywords: "fn",
- end: "\\(",
- excludeEnd: true,
- contains: [
- {
- className: "title",
- begin: "[a-z][a-z0-9_]*\\w*",
- relevance: 0,
- },
- ],
- },
- {
- className: "attribute",
- begin: "@",
- end: "\\(",
- excludeEnd: true,
- },
- KEYWORDS,
- {
- // Type names and constructors
- className: "title",
- begin: "\\b[A-Z][A-Za-z0-9]*\\b",
- relevance: 0,
- },
- {
- className: "operator",
- begin: "[+\\-*/%!=<>&|.]+",
- relevance: 0,
- },
- NAME,
- DISCARD_NAME,
- NUMBER,
- ],
- };
-});
-hljs.highlightAll(); \ No newline at end of file