chore: query formatting

This commit is contained in:
Pham Huy Hoang 2024-01-06 15:05:50 +09:00 committed by Christian Clason
parent 79975d6557
commit 57a8acf0c4
674 changed files with 18466 additions and 12648 deletions

View file

@ -1,86 +1,109 @@
; Modules
;--------
[(module_name) (module_type_name)] @module
[
(module_name)
(module_type_name)
] @module
; Types
;------
((type_constructor) @type.builtin
(#any-of? @type.builtin "int" "char" "bytes" "string" "float" "bool" "unit" "exn" "array" "list" "option" "int32" "int64" "nativeint" "format6" "lazy_t"))
(
(type_constructor) @type.builtin
(#any-of? @type.builtin
"int" "char" "bytes" "string" "float"
"bool" "unit" "exn" "array" "list" "option"
"int32" "int64" "nativeint" "format6" "lazy_t")
)
[
(class_name)
(class_type_name)
(type_constructor)
] @type
[(class_name) (class_type_name) (type_constructor)] @type
[(constructor_name) (tag)] @constructor
[
(constructor_name)
(tag)
] @constructor
; Variables
;----------
[(value_name) (type_variable)] @variable
[
(value_name)
(type_variable)
] @variable
(value_pattern) @variable.parameter
; Functions
;----------
(let_binding
pattern: (value_name) @function
(parameter))
(let_binding
pattern: (value_name) @function
body: [(fun_expression) (function_expression)])
body:
[
(fun_expression)
(function_expression)
])
(value_specification (value_name) @function)
(value_specification
(value_name) @function)
(external (value_name) @function)
(external
(value_name) @function)
(method_name) @function.method
; Application
;------------
(infix_expression
left: (value_path (value_name) @function.call)
left:
(value_path
(value_name) @function.call)
operator: (concat_operator) @_operator
(#eq? @_operator "@@"))
(infix_expression
operator: (rel_operator) @_operator
right: (value_path (value_name) @function.call)
right:
(value_path
(value_name) @function.call)
(#eq? @_operator "|>"))
(application_expression
function: (value_path (value_name) @function.call))
function:
(value_path
(value_name) @function.call))
((value_name) @function.builtin
(#any-of? @function.builtin "raise" "raise_notrace" "failwith" "invalid_arg"))
; Properties
;-----------
[(label_name) (field_name) (instance_variable_name)] @property
[
(label_name)
(field_name)
(instance_variable_name)
] @property
; Constants
;----------
; Don't let normal parens take priority over this
((unit) @constant.builtin (#set! "priority" 105))
((unit) @constant.builtin
(#set! "priority" 105))
(boolean) @boolean
[(number) (signed_number)] @number
[
(number)
(signed_number)
] @number
(character) @character
(string) @string
(quoted_string "{" @string "}" @string) @string
(quoted_string
"{" @string
"}" @string) @string
(escape_sequence) @string.escape
@ -91,55 +114,162 @@
; Keywords
;---------
[
"and" "as" "assert" "begin" "class"
"constraint" "end" "external" "in"
"inherit" "initializer" "let" "match"
"method" "module" "new" "object" "of"
"sig" "struct" "type" "val" "when" "with"
"and"
"as"
"assert"
"begin"
"class"
"constraint"
"end"
"external"
"in"
"inherit"
"initializer"
"let"
"match"
"method"
"module"
"new"
"object"
"of"
"sig"
"struct"
"type"
"val"
"when"
"with"
] @keyword
[
"lazy" "mutable" "nonrec"
"rec" "private" "virtual"
"lazy"
"mutable"
"nonrec"
"rec"
"private"
"virtual"
] @type.qualifier
["fun" "function" "functor"] @keyword.function
[
"fun"
"function"
"functor"
] @keyword.function
["if" "then" "else"] @keyword.conditional
[
"if"
"then"
"else"
] @keyword.conditional
["exception" "try"] @keyword.exception
[
"exception"
"try"
] @keyword.exception
["include" "open"] @keyword.import
[
"include"
"open"
] @keyword.import
["for" "to" "downto" "while" "do" "done"] @keyword.repeat
[
"for"
"to"
"downto"
"while"
"do"
"done"
] @keyword.repeat
; Punctuation
;------------
(attribute
[
"[@"
"]"
] @punctuation.special)
(attribute ["[@" "]"] @punctuation.special)
(item_attribute ["[@@" "]"] @punctuation.special)
(floating_attribute ["[@@@" "]"] @punctuation.special)
(extension ["[%" "]"] @punctuation.special)
(item_extension ["[%%" "]"] @punctuation.special)
(quoted_extension ["{%" "}"] @punctuation.special)
(quoted_item_extension ["{%%" "}"] @punctuation.special)
(item_attribute
[
"[@@"
"]"
] @punctuation.special)
(floating_attribute
[
"[@@@"
"]"
] @punctuation.special)
(extension
[
"[%"
"]"
] @punctuation.special)
(item_extension
[
"[%%"
"]"
] @punctuation.special)
(quoted_extension
[
"{%"
"}"
] @punctuation.special)
(quoted_item_extension
[
"{%%"
"}"
] @punctuation.special)
"%" @punctuation.special
["(" ")" "[" "]" "{" "}" "[|" "|]" "[<" "[>"] @punctuation.bracket
[
"("
")"
"["
"]"
"{"
"}"
"[|"
"|]"
"[<"
"[>"
] @punctuation.bracket
(object_type ["<" ">"] @punctuation.bracket)
(object_type
[
"<"
">"
] @punctuation.bracket)
[
"," "." ";" ":" "=" "|" "~" "?" "+" "-" "!" ">" "&"
"->" ";;" ":>" "+=" ":=" ".."
","
"."
";"
":"
"="
"|"
"~"
"?"
"+"
"-"
"!"
">"
"&"
"->"
";;"
":>"
"+="
":="
".."
] @punctuation.delimiter
; Operators
;----------
[
(prefix_operator)
(sign_operator)
@ -158,18 +288,31 @@
(match_operator)
] @operator
(match_expression (match_operator) @keyword)
(match_expression
(match_operator) @keyword)
(value_definition [(let_operator) (let_and_operator)] @keyword)
(value_definition
[
(let_operator)
(let_and_operator)
] @keyword)
["*" "#" "::" "<-"] @operator
[
"*"
"#"
"::"
"<-"
] @operator
; Attributes
;-----------
(attribute_id) @property
; Comments
;---------
[(comment) (line_number_directive) (directive) (shebang)] @comment @spell
[
(comment)
(line_number_directive)
(directive)
(shebang)
] @comment @spell

View file

@ -23,48 +23,55 @@
; handle if-else if-else case
(if_expression
condition: (_) @indent.begin)
(then_clause) @indent.begin
((else_clause
(_) @_not_if) @indent.begin
(#not-has-type? @_not_if if_expression))
((else_clause
(_) @_not_if) @indent.begin
(#not-has-type? @_not_if if_expression))
((parameter) @indent.begin
(#set! indent.start_at_same_line))
(#set! indent.start_at_same_line))
(_ (ERROR) @indent.begin
(#set! indent.start_at_same_line))
(ERROR "|" @indent.begin
(#set! indent.start_at_same_line))
(_
(ERROR) @indent.begin
(#set! indent.start_at_same_line))
(ERROR
"|" @indent.begin
(#set! indent.start_at_same_line))
(try_expression
"with" @indent.branch
[
(match_case) @indent.dedent
(match_case
(match_case
[
(parenthesized_expression)
(parenthesized_expression)
(list_expression)
] @indent.dedent)
]
)
])
[
"}"
] @indent.branch @indent.end
"}" @indent.branch @indent.end
(list_expression
"]" @indent.branch)
(list_expression "]" @indent.branch)
(parenthesized_expression ")" @indent.branch)
(parenthesized_expression
")" @indent.branch)
";;" @indent.end
(do_clause "done" @indent.end @indent.branch)
(structure "end" @indent.end @indent.branch)
(signature "end" @indent.end @indent.branch)
(do_clause
"done" @indent.end @indent.branch)
(structure
"end" @indent.end @indent.branch)
(signature
"end" @indent.end @indent.branch)
[
(string)
(comment)
(comment)
] @indent.auto

View file

@ -1,2 +1,2 @@
((comment) @injection.content
(#set! injection.language "comment"))
(#set! injection.language "comment"))

View file

@ -1,6 +1,5 @@
; Scopes
;-------
[
(compilation_unit)
(structure)
@ -22,7 +21,6 @@
; Definitions
;------------
(value_pattern) @local.definition.var
(let_binding
@ -30,37 +28,49 @@
(#set! definition.var.scope "parent"))
(let_binding
pattern: (tuple_pattern (value_name) @local.definition.var)
pattern:
(tuple_pattern
(value_name) @local.definition.var)
(#set! definition.var.scope "parent"))
(let_binding
pattern: (record_pattern (field_pattern (value_name) @local.definition.var))
pattern:
(record_pattern
(field_pattern
(value_name) @local.definition.var))
(#set! definition.var.scope "parent"))
(external (value_name) @local.definition.var)
(external
(value_name) @local.definition.var)
(type_binding (type_constructor) @local.definition.type)
(type_binding
(type_constructor) @local.definition.type)
(abstract_type (type_constructor) @local.definition.type)
(abstract_type
(type_constructor) @local.definition.type)
(method_definition (method_name) @local.definition.method)
(method_definition
(method_name) @local.definition.method)
(module_binding
(module_name) @local.definition.namespace
(#set! definition.namespace.scope "parent"))
(module_parameter (module_name) @local.definition.namespace)
(module_parameter
(module_name) @local.definition.namespace)
(module_type_definition (module_type_name) @local.definition.type)
(module_type_definition
(module_type_name) @local.definition.type)
; References
;------------
(value_path .
(value_path
.
(value_name) @local.reference
(#set! reference.kind "var"))
(type_constructor_path .
(type_constructor_path
.
(type_constructor) @local.reference
(#set! reference.kind "type"))
@ -68,10 +78,12 @@
(method_name) @local.reference
(#set! reference.kind "method"))
(module_path .
(module_path
.
(module_name) @local.reference
(#set! reference.kind "type"))
(module_type_path .
(module_type_path
.
(module_type_name) @local.reference
(#set! reference.kind "type"))