summaryrefslogtreecommitdiff
path: root/runtime/queries/go
diff options
context:
space:
mode:
Diffstat (limited to 'runtime/queries/go')
-rw-r--r--runtime/queries/go/highlights.scm6
-rw-r--r--runtime/queries/go/locals.scm30
2 files changed, 33 insertions, 3 deletions
diff --git a/runtime/queries/go/highlights.scm b/runtime/queries/go/highlights.scm
index 6e5d65a0..3129c4b2 100644
--- a/runtime/queries/go/highlights.scm
+++ b/runtime/queries/go/highlights.scm
@@ -21,14 +21,14 @@
(const_spec
name: (identifier) @constant)
+(parameter_declaration (identifier) @variable.parameter)
+(variadic_parameter_declaration (identifier) @variable.parameter)
+
(type_identifier) @type
(field_identifier) @property
(identifier) @variable
(package_identifier) @variable
-(parameter_declaration (identifier) @variable.parameter)
-(variadic_parameter_declaration (identifier) @variable.parameter)
-
; Operators
diff --git a/runtime/queries/go/locals.scm b/runtime/queries/go/locals.scm
new file mode 100644
index 00000000..d240e2b7
--- /dev/null
+++ b/runtime/queries/go/locals.scm
@@ -0,0 +1,30 @@
+; Scopes
+
+(block) @local.scope
+
+; Definitions
+
+(parameter_declaration (identifier) @local.definition)
+(variadic_parameter_declaration (identifier) @local.definition)
+
+(short_var_declaration
+ left: (expression_list
+ (identifier) @local.definition))
+
+(var_spec
+ name: (identifier) @local.definition)
+
+(for_statement
+ (range_clause
+ left: (expression_list
+ (identifier) @local.definition)))
+
+(const_declaration
+ (const_spec
+ name: (identifier) @local.definition))
+
+; References
+
+(identifier) @local.reference
+(field_identifier) @local.reference
+