Update highlights for golang (#6204)

- update tree-sitter-go
- refine keywords
- set package as namespace
- add label
pull/5893/head^2
Erasin Wang 2 years ago committed by GitHub
parent 622f90a157
commit 0e5a4e55a4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -324,7 +324,7 @@ args = { mode = "local", processId = "{0}" }
[[grammar]] [[grammar]]
name = "go" name = "go"
source = { git = "https://github.com/tree-sitter/tree-sitter-go", rev = "05900faa3cdb5d2d8c8bd5e77ee698487e0a8611" } source = { git = "https://github.com/tree-sitter/tree-sitter-go", rev = "64457ea6b73ef5422ed1687178d4545c3e91334a" }
[[language]] [[language]]
name = "gomod" name = "gomod"

@ -19,6 +19,9 @@
(method_declaration (method_declaration
name: (field_identifier) @function.method) name: (field_identifier) @function.method)
(method_spec
name: (field_identifier) @function.method)
; Identifiers ; Identifiers
((identifier) @constant (match? @constant "^[A-Z][A-Z\\d_]+$")) ((identifier) @constant (match? @constant "^[A-Z][A-Z\\d_]+$"))
@ -32,10 +35,19 @@
(match? @type.builtin "^(any|bool|byte|comparable|complex128|complex64|error|float32|float64|int|int16|int32|int64|int8|rune|string|uint|uint16|uint32|uint64|uint8|uintptr)$")) (match? @type.builtin "^(any|bool|byte|comparable|complex128|complex64|error|float32|float64|int|int16|int32|int64|int8|rune|string|uint|uint16|uint32|uint64|uint8|uintptr)$"))
(type_identifier) @type (type_identifier) @type
(type_spec
name: (type_identifier) @constructor)
(field_identifier) @variable.other.member (field_identifier) @variable.other.member
(identifier) @variable (identifier) @variable
(package_identifier) @variable (package_identifier) @namespace
(parameter_declaration (identifier) @variable.parameter)
(variadic_parameter_declaration (identifier) @variable.parameter)
(label_name) @label
(const_spec
name: (identifier) @constant)
; Operators ; Operators
@ -82,36 +94,57 @@
; Keywords ; Keywords
[ [
"break"
"case"
"chan"
"const"
"continue"
"default" "default"
"defer" "type"
] @keyword
[
"if"
"else" "else"
"fallthrough" "switch"
"select"
"case"
] @keyword.control.conditional
[
"for" "for"
"func"
"go"
"goto"
"if"
"interface"
"map"
"range" "range"
"return" ] @keyword.control.repeat
"select"
"struct"
"switch"
"type"
"var"
] @keyword
[ [
"import" "import"
"package" "package"
] @keyword.control.import ] @keyword.control.import
[
"return"
"continue"
"break"
"fallthrough"
] @keyword.control.return
[
"func"
] @keyword.function
[
"var"
"chan"
"interface"
"map"
"struct"
] @keyword.storage.type
[
"const"
] @keyword.storage.modifier
[
"defer"
"goto"
"go"
] @function.macro
; Delimiters ; Delimiters
[ [

Loading…
Cancel
Save