vim-python/python-syntax

matrix multiplication vs decorator

anntzer opened this issue · 1 comments

Currently, something like

(foo
 @ bar)

incorrectly highlights bar as a decorator, when it is in fact an operand of a matrix multiplication (note that this code conforms to the "new" PEP8 which suggests breaking before operators).

While a general solution may be tricky, it seems reasonable to only highlight as decorators when the @ is immediately followed by a letter (or underscore), without spaces in between. Spaces after the @ in a decorator are legal, but I have never seen cases where they are used...