fix(python): better try-except indentation (#6097)

This commit is contained in:
Riley Bruins 2024-02-14 09:39:59 -08:00 committed by GitHub
parent 5a5cabd712
commit d96bf9d522
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 21 additions and 2 deletions

View file

@ -38,8 +38,19 @@
(ERROR
"try"
":" @indent.begin
(#set! indent.immediate 1))
.
":"
(#set! indent.immediate 1)) @indent.begin
(ERROR
"try"
.
":"
(ERROR
(block
(expression_statement
(identifier) @_except) @indent.branch))
(#eq? @_except "except"))
((function_definition) @indent.begin
(#set! indent.immediate 1))

View file

@ -26,3 +26,10 @@ while (a > 4 and
pass
try:
def foo():
print('indentme')
# comment
if True:
pass

View file

@ -39,6 +39,7 @@ describe("indent Python:", function()
run:new_line("control_flow.py", { on_line = 24, text = "c < 6 and", indent = 7 })
run:new_line("control_flow.py", { on_line = 26, text = "x = 4", indent = 4 })
run:new_line("control_flow.py", { on_line = 28, text = "x = 4", indent = 4 })
run:new_line("control_flow.py", { on_line = 31, text = "try:", indent = 4 })
run:new_line("branches.py", { on_line = 25, text = "x > 9 and", indent = 4 })
run:new_line("branches.py", { on_line = 29, text = "and x > 9", indent = 4 })
run:new_line("hanging_indent.py", { on_line = 1, text = "arg0,", indent = 4 })