mirror of
https://github.com/nvim-treesitter/nvim-treesitter.git
synced 2026-07-16 02:10:15 -04:00
Add python locals.scm
This commit is contained in:
parent
45400888ad
commit
a5c50262d9
2 changed files with 66 additions and 1 deletions
|
|
@ -158,7 +158,7 @@ List of currently supported languages:
|
||||||
- [ ] go
|
- [ ] go
|
||||||
- [ ] cpp
|
- [ ] cpp
|
||||||
- [ ] rust
|
- [ ] rust
|
||||||
- [ ] python
|
- [x] python (maintained by @theHamsta)
|
||||||
- [ ] javascript
|
- [ ] javascript
|
||||||
- [ ] typescript
|
- [ ] typescript
|
||||||
- [ ] tsx
|
- [ ] tsx
|
||||||
|
|
|
||||||
65
queries/python/locals.scm
Normal file
65
queries/python/locals.scm
Normal file
|
|
@ -0,0 +1,65 @@
|
||||||
|
;;; Programm structure
|
||||||
|
(module) @scope
|
||||||
|
|
||||||
|
(class_definition
|
||||||
|
body: (block
|
||||||
|
(expression_statement
|
||||||
|
(assignment
|
||||||
|
left: (expression_list
|
||||||
|
(identifier) @definition.associated))))) @scope
|
||||||
|
|
||||||
|
; Function with parameters, defines parameters
|
||||||
|
(function_definition
|
||||||
|
name: (identifier)
|
||||||
|
parameters: (parameters
|
||||||
|
(identifier) @definition.var))
|
||||||
|
|
||||||
|
; Function defines function and scope
|
||||||
|
(function_definition
|
||||||
|
name: (identifier) @definition.function) @scope
|
||||||
|
|
||||||
|
(class_definition
|
||||||
|
name: (identifier) @definition.type) @scope
|
||||||
|
|
||||||
|
(class_definition
|
||||||
|
body: (block
|
||||||
|
(function_definition
|
||||||
|
name: (identifier) @definition.method)))
|
||||||
|
|
||||||
|
;;; Loops
|
||||||
|
; not a scope!
|
||||||
|
(for_statement
|
||||||
|
left: (variables
|
||||||
|
(identifier) @definition.var))
|
||||||
|
|
||||||
|
; not a scope!
|
||||||
|
;(while_statement) @scope
|
||||||
|
|
||||||
|
; for in list comprehension
|
||||||
|
(for_in_clause
|
||||||
|
left: (variables
|
||||||
|
(identifier) @definition.var))
|
||||||
|
|
||||||
|
(dictionary_comprehension) @scope
|
||||||
|
(list_comprehension) @scope
|
||||||
|
(set_comprehension) @scope
|
||||||
|
|
||||||
|
;;; Assignments
|
||||||
|
|
||||||
|
(assignment
|
||||||
|
left: (expression_list
|
||||||
|
(identifier) @definition.var))
|
||||||
|
|
||||||
|
(assignment
|
||||||
|
left: (expression_list
|
||||||
|
(attribute
|
||||||
|
(identifier)
|
||||||
|
(identifier) @definition.field)))
|
||||||
|
|
||||||
|
; Walrus operator x := 1
|
||||||
|
(named_expression
|
||||||
|
(identifier) @definition.var)
|
||||||
|
|
||||||
|
|
||||||
|
;;; REFERENCES
|
||||||
|
(identifier) @reference
|
||||||
Loading…
Add table
Add a link
Reference in a new issue