Skip to content Skip to sidebar Skip to footer

Vim Syntax Highlighting 'else:' For Python

I'm getting annoyed with the default python syntax highlighting in Vim. It does not highlight the else: statement correctly. Vim only highlights the else statement if I have some w

Solution 1:

I had below statement in my vimrc file. This made else: be tokenized as one word. After removing that else: syntax highlighting works just fine.

set iskeyword+=:

Solution 2:

This periodically pops up, and I've taken to putting this in my vimrc:

" No seriously, else: is the same as else
autocmd BufEnter,BufRead,BufNewFile *.py    set iskeyword-=:

Solution 3:

It should work by default.

Look for a file that is something like this:

/usr/share/vim/vim72/syntax/python.vim

There should be a line there that looks like this:

syn keyword pythonConditional   ifelifelse

If not, investigate further. Does elif work?

Solution 4:

Note that the file in

/usr/share/vim/vim72/syntax/python.vim

is not up to date for some reason.

Get the most recent version of the syntax highlight file from http://www.vim.org/scripts/script.php?script_id=790

Solution 5:

Enable the filetype stuff so things are setup automatically. I've python auto indenting and syntax highlighting setup for vim here: http://www.pixelbeat.org/settings/.vimrc

Post a Comment for "Vim Syntax Highlighting 'else:' For Python"