on master help sign in
Improve Python queries, add locals (#3284)
1136748ChrHorn
runtime/queries/python/highlights.scm+8−1
@@ -1,5 +1,10 @@
1+; Imports
2+
1(dotted_name
3(dotted_name
2 (identifier)* @namespace)
4 (identifier)* @namespace)
5+
6+(aliased_import
7+ alias: (identifier) @namespace)
3
8
4; Builtin functions
9; Builtin functions
5
10
@@ -55,7 +60,6 @@
55(parameters (typed_parameter (identifier) @variable.parameter))
60(parameters (typed_parameter (identifier) @variable.parameter))
56(parameters (default_parameter name: (identifier) @variable.parameter))
61(parameters (default_parameter name: (identifier) @variable.parameter))
57(parameters (typed_default_parameter name: (identifier) @variable.parameter))
62(parameters (typed_default_parameter name: (identifier) @variable.parameter))
58−(keyword_argument name: (identifier) @variable.parameter)
59
63
60(parameters
64(parameters
61 (list_splat_pattern ; *args
65 (list_splat_pattern ; *args
@@ -63,6 +67,9 @@
63(parameters
67(parameters
64 (dictionary_splat_pattern ; **kwargs
68 (dictionary_splat_pattern ; **kwargs
65 (identifier) @variable.parameter))
69 (identifier) @variable.parameter))
70+
71+(lambda_parameters
72+ (identifier) @variable.parameter)
66
73
67; Types
74; Types
68
75
runtime/queries/python/locals.scmnew file+44
@@ -0,0 +1,44 @@
1+;; Scopes
2+
3+[
4+ (module)
5+ (function_definition)
6+ (lambda)
7+] @local.scope
8+
9+;; Definitions
10+
11+; Parameters
12+(parameters
13+ (identifier) @local.definition)
14+(parameters
15+ (typed_parameter
16+ (identifier) @local.definition))
17+(parameters
18+ (default_parameter
19+ name: (identifier) @local.definition))
20+(parameters
21+ (typed_default_parameter
22+ name: (identifier) @local.definition))
23+(parameters
24+ (list_splat_pattern ; *args
25+ (identifier) @local.definition))
26+(parameters
27+ (dictionary_splat_pattern ; **kwargs
28+ (identifier) @local.definition))
29+
30+(lambda_parameters
31+ (identifier) @local.definition)
32+
33+; Imports
34+(import_statement
35+ name: (dotted_name
36+ (identifier) @local.definition))
37+
38+(aliased_import
39+ alias: (identifier) @local.definition)
40+
41+;; References
42+
43+(identifier) @local.reference
44+