Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'runtime/queries/bovex/highlights.scm')
| -rw-r--r-- | runtime/queries/bovex/highlights.scm | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/runtime/queries/bovex/highlights.scm b/runtime/queries/bovex/highlights.scm new file mode 100644 index 00000000..cc4ffe0a --- /dev/null +++ b/runtime/queries/bovex/highlights.scm @@ -0,0 +1,88 @@ +[(code_comment) (layout_comment)] @comment.block + +(do_decl "do" @keyword.control) +(val_decl "val" @keyword.storage.type) +(fun_decl ["fun" "and"] @keyword.storage.type) +(datatype_decl ["datatype" "and"] @keyword.storage.type) +(datatype_arm "of" @keyword.storage.type) +(object_decl ["object" "of"] @keyword.storage.type) +(type_decl "type" @keyword.storage.type) +(local_decl ["local" "in" "end"] @keyword.storage.modifier) +(open_decl "open" @keyword.control) +(import_decl "import" @keyword.control.import) +(with_expr ["with" "without"] @keyword.operator) +(orelse_expr ["orelse" "otherwise"] @keyword.operator) +(andalso_expr ["andalso" "andthen"] @keyword.operator) +(fn_expr ["fn" "as"] @keyword.function) +(if_expr ["if" "then" "else"] @keyword.control.conditional) +(case_expr ["case" "of"] @keyword.control) +(fail_expr "fail" @keyword.control) +(let_expr ["let" "in" "end"] @keyword.storage.modifier) +(pat "as" @keyword.operator) + +(boolean_lit) @constant.builtin.boolean +(numeric_lit) @constant.numeric.integer +(float_lit) @constant.numeric.float +(string_lit) @string.quoted.double +(backslash_escape) @constant.character.escape + +["=" ":" ","] @punctuation.delimiter +["->" "=>"] @operator +["(" ")" "[" "]" "{" "}"] @punctuation.bracket + +[(ident) (label)] @variable.other +(type_ident) @type +(atomic_pat (ident) @variable.other) +(pat (app_pat (atomic_pat (ident) @variable.parameter))) + +(type_var) @type.parameter +(atomic_type (type_ident) @type.builtin) +[(record_type) (product_type) (app_type) (arrow_type)] @type + +(atomic_expr (ident) @variable.other) +(project_expr) @variable.member +(field_binding (label) @variable.member.private) +(field_binding (expr) @variable.other) +(record_pat (ident) @variable.member.private) + +(app_expr + (app_expr (atomic_expr (ident) @function.call)) + (atomic_expr)) +(app_expr + _ + [":=" "@" "::" "o" "==" "!=" "==." "!=." + "<" "<=" ">" ">=" "<." "<=." ">." ">=." + "+" "-" "+." "-." "*" "*." "/" "/." "div" "mod" + "shl" "shr" "andb" "xorb" "orb"] @operator + _) + +(app_expr + (app_expr (atomic_expr (ident) @function.builtin (#eq? @function.builtin "b"))) + (atomic_expr (layout_lit (layout_content (layout_text) @markup.bold)))) +(app_expr + (app_expr (atomic_expr (ident) @function.builtin (#eq? @function.builtin "it"))) + (atomic_expr (layout_lit (layout_content (layout_text) @markup.italic)))) +(app_expr + (app_expr (atomic_expr (ident) @function.builtin (#eq? @function.builtin "rm"))) + (atomic_expr (layout_lit))) +(app_expr + (app_expr (atomic_expr (ident) @function.builtin (#match? @function.builtin "^(tt|courier|fixedersys)$"))) + (atomic_expr (layout_lit (layout_content (layout_text) @markup.raw.inline)))) +(app_expr + (app_expr (atomic_expr (ident) @function.builtin (#eq? @function.builtin "title"))) + (atomic_expr (layout_lit (layout_content (layout_text) @markup.heading.1)))) +(app_expr + (app_expr (atomic_expr (ident) @function.builtin (#eq? @function.builtin "section"))) + (atomic_expr (layout_lit (layout_content (layout_text) @markup.heading.2)))) +(app_expr + (app_expr (atomic_expr (ident) @function.builtin (#eq? @function.builtin "subsection"))) + (atomic_expr (layout_lit (layout_content (layout_text) @markup.heading.3)))) +(app_expr + (app_expr (atomic_expr (ident) @function.builtin (#eq? @function.builtin "subsubsection"))) + (atomic_expr (layout_lit (layout_content (layout_text) @markup.heading.4)))) +(app_expr + (app_expr (atomic_expr (ident) @function.builtin (#eq? @function.builtin "paragraph"))) + (atomic_expr (layout_lit (layout_content (layout_text) @markup.heading.5)))) +(app_expr + (app_expr (atomic_expr (ident) @function.builtin (#eq? @function.builtin "blockquote"))) + (atomic_expr (layout_lit (layout_content (layout_text) @markup.quote)))) |