mirror of https://github.com/helix-editor/helix
feat(lang): Update Nix grammar & improve queries (#2472)
parent
370a16d0f0
commit
eba82250bb
|
@ -439,7 +439,7 @@ indent = { tab-width = 2, unit = " " }
|
||||||
|
|
||||||
[[grammar]]
|
[[grammar]]
|
||||||
name = "nix"
|
name = "nix"
|
||||||
source = { git = "https://github.com/cstrahan/tree-sitter-nix", rev = "50f38ceab667f9d482640edfee803d74f4edeba5" }
|
source = { git = "https://github.com/cstrahan/tree-sitter-nix", rev = "6b71a810c0acd49b980c50fc79092561f7cee307" }
|
||||||
|
|
||||||
[[language]]
|
[[language]]
|
||||||
name = "ruby"
|
name = "ruby"
|
||||||
|
|
|
@ -10,6 +10,7 @@
|
||||||
"rec"
|
"rec"
|
||||||
"with"
|
"with"
|
||||||
"assert"
|
"assert"
|
||||||
|
"or"
|
||||||
] @keyword
|
] @keyword
|
||||||
|
|
||||||
((identifier) @variable.builtin
|
((identifier) @variable.builtin
|
||||||
|
@ -21,25 +22,25 @@
|
||||||
(#is-not? local))
|
(#is-not? local))
|
||||||
|
|
||||||
[
|
[
|
||||||
(string)
|
(string_expression)
|
||||||
(indented_string)
|
(indented_string_expression)
|
||||||
] @string
|
] @string
|
||||||
|
|
||||||
[
|
[
|
||||||
(path)
|
(path_expression)
|
||||||
(hpath)
|
(hpath_expression)
|
||||||
(spath)
|
(spath_expression)
|
||||||
] @string.special.path
|
] @string.special.path
|
||||||
|
|
||||||
(uri) @string.special.uri
|
(uri_expression) @string.special.uri
|
||||||
|
|
||||||
; boolean
|
; boolean
|
||||||
((identifier) @constant.builtin.boolean (#match? @constant.builtin.boolean "^(true|false)$")) @constant.builtin.boolean
|
((identifier) @constant.builtin.boolean (#match? @constant.builtin.boolean "^(true|false)$")) @constant.builtin.boolean
|
||||||
; null
|
; null
|
||||||
((identifier) @constant.builtin (#eq? @constant.builtin "null")) @constant.builtin
|
((identifier) @constant.builtin (#eq? @constant.builtin "null")) @constant.builtin
|
||||||
|
|
||||||
(integer) @constant.numeric.integer
|
(integer_expression) @constant.numeric.integer
|
||||||
(float) @constant.numeric.float
|
(float_expression) @constant.numeric.float
|
||||||
|
|
||||||
(interpolation
|
(interpolation
|
||||||
"${" @punctuation.special
|
"${" @punctuation.special
|
||||||
|
@ -47,7 +48,7 @@
|
||||||
|
|
||||||
(escape_sequence) @constant.character.escape
|
(escape_sequence) @constant.character.escape
|
||||||
|
|
||||||
(function
|
(function_expression
|
||||||
universal: (identifier) @variable.parameter
|
universal: (identifier) @variable.parameter
|
||||||
)
|
)
|
||||||
|
|
||||||
|
@ -55,27 +56,36 @@
|
||||||
name: (identifier) @variable.parameter
|
name: (identifier) @variable.parameter
|
||||||
"?"? @punctuation.delimiter)
|
"?"? @punctuation.delimiter)
|
||||||
|
|
||||||
(app
|
(select_expression
|
||||||
|
attrpath: (attrpath (identifier)) @variable.other.member)
|
||||||
|
|
||||||
|
(apply_expression
|
||||||
function: [
|
function: [
|
||||||
(identifier) @function
|
(variable_expression (identifier)) @function
|
||||||
(select
|
(select_expression
|
||||||
attrpath: (attrpath
|
attrpath: (attrpath
|
||||||
attr: (attr_identifier) @function .))])
|
attr: (identifier) @function .))])
|
||||||
|
|
||||||
|
(unary_expression
|
||||||
(unary
|
|
||||||
operator: _ @operator)
|
operator: _ @operator)
|
||||||
|
|
||||||
(binary
|
(binary_expression
|
||||||
operator: _ @operator)
|
operator: _ @operator)
|
||||||
|
|
||||||
(attr_identifier) @variable.other.member
|
(variable_expression (identifier) @variable)
|
||||||
(inherit attrs: (attrs_inherited (identifier) @variable.other.member) )
|
|
||||||
|
(binding
|
||||||
|
attrpath: (attrpath (identifier)) @variable.other.member)
|
||||||
|
|
||||||
|
(identifier) @variable.other.member
|
||||||
|
|
||||||
|
(inherit_from attrs: (inherited_attrs attr: (identifier) @variable.other.member) )
|
||||||
|
|
||||||
[
|
[
|
||||||
";"
|
";"
|
||||||
"."
|
"."
|
||||||
","
|
","
|
||||||
|
"="
|
||||||
] @punctuation.delimiter
|
] @punctuation.delimiter
|
||||||
|
|
||||||
[
|
[
|
||||||
|
@ -86,5 +96,3 @@
|
||||||
"{"
|
"{"
|
||||||
"}"
|
"}"
|
||||||
] @punctuation.bracket
|
] @punctuation.bracket
|
||||||
|
|
||||||
(identifier) @variable
|
|
||||||
|
|
|
@ -1,18 +1,25 @@
|
||||||
|
|
||||||
[
|
[
|
||||||
; "function",
|
; Bracket like
|
||||||
(bind)
|
|
||||||
(assert)
|
|
||||||
(with)
|
|
||||||
(let)
|
(let)
|
||||||
(if)
|
|
||||||
|
|
||||||
(attrset)
|
(attrset)
|
||||||
(list)
|
(rec_attrset)
|
||||||
(indented_string)
|
(let_attrset)
|
||||||
(parenthesized)
|
(parenthesized)
|
||||||
] @indent
|
(list)
|
||||||
|
|
||||||
[
|
; Binding
|
||||||
"}"
|
(bind)
|
||||||
"]"
|
(inherit)
|
||||||
] @outdent
|
(inherit_from)
|
||||||
|
(formal)
|
||||||
|
|
||||||
|
; Binary operations
|
||||||
|
(binary)
|
||||||
|
(has_attr)
|
||||||
|
(select)
|
||||||
|
(app)
|
||||||
|
|
||||||
|
; Conditional
|
||||||
|
(if)
|
||||||
|
] @indent
|
Loading…
Reference in New Issue