I will remove the comments. To use if condition, we would need equivalent of a break. What is the elisp-y way of breaking out of a loop. Sent from ProtonMail mobile -------- Original Message -------- On Apr 6, 2018, 7:26 PM, Noam Postavsky wrote: > Nitish writes: > >> (when (not arg) >> - (while (and (forward-line -1) >> - (looking-at (python-rx decorator)))) >> - (forward-line 1)) >> + (while (and >> + ;; Make sure forward-line actually moves Point >> + (eq (forward-line -1) 0) >> + ;; If Point is at a decorator, loop. >> + ;; else, move one line down and exit the loop. >> + (or (looking-at (python-rx decorator)) >> + (and (forward-line 1) nil))))) > > Thanks. You could drop the comments, since they just repeat what the > code is saying. And, while I know it's fairly common to use `and' and > `or' like that to encode conditionals, perhaps using `if' directly would > minimize the temptation to rephrase it as an "if" statement in English. @protonmail.com>