2022-03-30 17:08:07 +02:00
|
|
|
[
|
|
|
|
(list)
|
|
|
|
(tuple)
|
|
|
|
(dictionary)
|
|
|
|
(set)
|
|
|
|
|
|
|
|
(if_statement)
|
|
|
|
(for_statement)
|
|
|
|
(while_statement)
|
|
|
|
(with_statement)
|
|
|
|
(try_statement)
|
2022-11-01 18:49:33 +01:00
|
|
|
(match_statement)
|
|
|
|
(case_clause)
|
2022-03-30 17:08:07 +02:00
|
|
|
(import_from_statement)
|
|
|
|
|
|
|
|
(parenthesized_expression)
|
|
|
|
(generator_expression)
|
|
|
|
(list_comprehension)
|
|
|
|
(set_comprehension)
|
|
|
|
(dictionary_comprehension)
|
|
|
|
|
|
|
|
(tuple_pattern)
|
|
|
|
(list_pattern)
|
|
|
|
(argument_list)
|
|
|
|
(parameters)
|
|
|
|
(binary_operator)
|
|
|
|
|
|
|
|
(function_definition)
|
|
|
|
(class_definition)
|
|
|
|
] @indent
|
|
|
|
|
2023-01-07 06:39:31 +01:00
|
|
|
; Workaround for the tree-sitter grammar creating large errors when a
|
|
|
|
; try_statement is missing the except/finally clause
|
|
|
|
(ERROR
|
|
|
|
"try"
|
|
|
|
.
|
|
|
|
":" @indent @extend)
|
|
|
|
(ERROR
|
|
|
|
.
|
|
|
|
"def") @indent @extend
|
|
|
|
(ERROR
|
|
|
|
(block) @indent @extend
|
|
|
|
(#set! "scope" "all"))
|
|
|
|
|
2022-08-09 22:32:13 +02:00
|
|
|
[
|
|
|
|
(if_statement)
|
|
|
|
(for_statement)
|
|
|
|
(while_statement)
|
|
|
|
(with_statement)
|
|
|
|
(try_statement)
|
2022-11-01 18:49:33 +01:00
|
|
|
(match_statement)
|
|
|
|
(case_clause)
|
2022-08-09 22:32:13 +02:00
|
|
|
|
|
|
|
(function_definition)
|
|
|
|
(class_definition)
|
2022-10-08 11:04:11 +02:00
|
|
|
] @extend
|
2022-08-09 22:32:13 +02:00
|
|
|
|
|
|
|
[
|
|
|
|
(return_statement)
|
|
|
|
(break_statement)
|
|
|
|
(continue_statement)
|
|
|
|
(raise_statement)
|
|
|
|
(pass_statement)
|
2022-10-08 11:04:11 +02:00
|
|
|
] @extend.prevent-once
|
2022-08-09 22:32:13 +02:00
|
|
|
|
2022-03-30 17:08:07 +02:00
|
|
|
[
|
|
|
|
")"
|
|
|
|
"]"
|
|
|
|
"}"
|
|
|
|
] @outdent
|
2022-08-09 22:32:13 +02:00
|
|
|
(elif_clause
|
|
|
|
"elif" @outdent)
|
|
|
|
(else_clause
|
|
|
|
"else" @outdent)
|
2022-03-30 17:08:07 +02:00
|
|
|
|