From 644991fa35920f8ccdf9af66f1e6f90f79c1cf87 Mon Sep 17 00:00:00 2001 From: Barry Warsaw Date: Mon, 21 Oct 2002 15:58:29 +0000 Subject: [PATCH] (py-parse-state-re): Remove the "if" from the regular expression. This fixes an indentation bug reported by Jeremy when seeing multiple list comprehensions like so: [x for x in seq if blah(x)] # ... [y for y in seq if blah(y)] The reason this broke is because this regexp caused the "find a safe parsing start location higher up in the file" test to erroneously find the if in the listcomp. I think the other keywords in this regexp are fine and good enough. After a weekend of testing, I can't find any adverse effects. --- Misc/python-mode.el | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Misc/python-mode.el b/Misc/python-mode.el index bf4c4d5f605a..6ae0c9b77216 100644 --- a/Misc/python-mode.el +++ b/Misc/python-mode.el @@ -3148,7 +3148,7 @@ local bindings to py-newline-and-indent.")) ;; Helper functions (defvar py-parse-state-re (concat - "^[ \t]*\\(if\\|elif\\|else\\|while\\|def\\|class\\)\\>" + "^[ \t]*\\(elif\\|else\\|while\\|def\\|class\\)\\>" "\\|" "^[^ #\t\n]"))