diff options
| author | George Harker <george@george-graphics.co.uk> | 2023-03-14 12:25:38 -0700 |
|---|---|---|
| committer | Stephan Seitz <stephan.seitz@fau.de> | 2023-03-15 22:44:59 +0100 |
| commit | fa0644667ea7ee7a72efdb69c471de4953a11019 (patch) | |
| tree | f36f6f5a20ed8e3ffb5aa60578efaa32c7b8452c /queries/python | |
| parent | Update parsers: elixir, haskell, php, sql (diff) | |
| download | nvim-treesitter-fa0644667ea7ee7a72efdb69c471de4953a11019.tar nvim-treesitter-fa0644667ea7ee7a72efdb69c471de4953a11019.tar.gz nvim-treesitter-fa0644667ea7ee7a72efdb69c471de4953a11019.tar.bz2 nvim-treesitter-fa0644667ea7ee7a72efdb69c471de4953a11019.tar.lz nvim-treesitter-fa0644667ea7ee7a72efdb69c471de4953a11019.tar.xz nvim-treesitter-fa0644667ea7ee7a72efdb69c471de4953a11019.tar.zst nvim-treesitter-fa0644667ea7ee7a72efdb69c471de4953a11019.zip | |
fix: change folding algorithm to fix Python indents
Diffstat (limited to 'queries/python')
| -rw-r--r-- | queries/python/indents.scm | 38 |
1 files changed, 27 insertions, 11 deletions
diff --git a/queries/python/indents.scm b/queries/python/indents.scm index 3032cedfb..da37c1f30 100644 --- a/queries/python/indents.scm +++ b/queries/python/indents.scm @@ -3,11 +3,6 @@ (dictionary) (set) - (if_statement) - (for_statement) - (while_statement) - (with_statement) - (try_statement) (import_from_statement) (parenthesized_expression) @@ -21,24 +16,45 @@ (binary_operator) (lambda) - (function_definition) - (class_definition) (concatenated_string) ] @indent - + +((for_statement) @indent + (#set! "immediate_indent" 1)) +((if_statement) @indent + (#set! "immediate_indent" 1)) +((while_statement) @indent + (#set! "immediate_indent" 1)) +((try_statement) @indent + (#set! "immediate_indent" 1)) +((ERROR "try" ":") @indent + (#set! "immediate_indent" 1)) +((function_definition) @indent + (#set! "immediate_indent" 1)) +((class_definition) @indent + (#set! "immediate_indent" 1)) +((with_statement) @indent + (#set! "immediate_indent" 1)) + (if_statement condition: (parenthesized_expression) @aligned_indent (#set! "delimiter" "()") + (#set! "final_line_indent" 1) ; parenthesized_expression already indented +) +(while_statement + condition: (parenthesized_expression) @aligned_indent + (#set! "delimiter" "()") + (#set! "final_line_indent" 1) ; parenthesized_expression already indented ) + ((ERROR "(" . (_)) @aligned_indent (#set! "delimiter" "()")) ((argument_list) @aligned_indent (#set! "delimiter" "()")) -((argument_list) @aligned_indent - (#set! "delimiter" "()")) ((parameters) @aligned_indent - (#set! "delimiter" "()")) + (#set! "delimiter" "()") + (#set! "final_line_indent" 1)) ((tuple) @aligned_indent (#set! "delimiter" "()")) |
