vim-python / python-syntax

Python syntax highlighting for Vim
MIT License
438 stars 84 forks source link

matrix multiplication vs decorator #42

Open anntzer opened 6 years ago

anntzer commented 6 years ago

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...

Congee commented 3 years ago

Anything wrong with https://github.com/vim/vim/blob/44d6652d561d628d12e3ff7f6636ea7d1f805ced/runtime/syntax/python.vim#L115? Performance I guess?