Unnamed repository; edit this file 'description' to name the repository.
Diffstat (limited to 'runtime/queries/ada/locals.scm')
-rw-r--r--runtime/queries/ada/locals.scm24
1 files changed, 23 insertions, 1 deletions
diff --git a/runtime/queries/ada/locals.scm b/runtime/queries/ada/locals.scm
index 933f1498..e532a2f1 100644
--- a/runtime/queries/ada/locals.scm
+++ b/runtime/queries/ada/locals.scm
@@ -1,3 +1,6 @@
+;; Better highlighting by referencing to the definition, for variable references.
+;; See https://tree-sitter.github.io/tree-sitter/syntax-highlighting#local-variables
+
(compilation) @local.scope
(package_declaration) @local.scope
(package_body) @local.scope
@@ -5,6 +8,25 @@
(subprogram_body) @local.scope
(block_statement) @local.scope
-(parameter_specification . (identifier) @local.definition.variable.parameter)
+(with_clause (_) @local.definition)
+(procedure_specification name: (_) @local.definition)
+(function_specification name: (_) @local.definition)
+(package_declaration name: (_) @local.definition)
+(package_body name: (_) @local.definition)
+(generic_instantiation . name: (_) @local.definition)
+(component_declaration . (identifier) @local.definition)
+(exception_declaration . (identifier) @local.definition)
+(formal_object_declaration . (identifier) @local.definition)
+(object_declaration . (identifier) @local.definition)
+(parameter_specification . (identifier) @local.definition)
+(full_type_declaration . (identifier) @local.definition)
+(private_type_declaration . (identifier) @local.definition)
+(private_extension_declaration . (identifier) @local.definition)
+(incomplete_type_declaration . (identifier) @local.definition)
+(protected_type_declaration . (identifier) @local.definition)
+(formal_complete_type_declaration . (identifier) @local.definition)
+(formal_incomplete_type_declaration . (identifier) @local.definition)
+(task_type_declaration . (identifier) @local.definition)
+(subtype_declaration . (identifier) @local.definition)
(identifier) @local.reference