On 2015-09-29, dbr517 wrote:
I would like to set different vimdiff options by filetype . . . in
particular, I would like to ignore whitespace by default, but NOT
ignore whitespace for python files.

I added the following to the rc file, but I still get "iwhite" set
in diffopt for python files:

set diffopt+=iwhite
if  &filetype == 'python'
    set diffopt-=iwhite
endif

I'm probably missing something obvious :-))

It's obvious only after some experience with Vim.  It's in the
documentation, but not in one place.

The problem is that Vim determines filetypes after it reads
~/.vimrc; 'filetype' is not set when that if statement is executed.

One way to fix that is to use these commands instead:

   set diffopt+=iwhite
   au FileType python set diffopt-=iwhite

Note that 'diffopt' is a global option; it can't be set differently
for different buffers.  Therefore, the autocommand above will remove
"iwhite" from 'diffopt' whenever you edit a Python file and not
restore "iwhite" if you later diff two buffers of a different
filetype.  Whether that's a problem for you and how you might fix
that depends on how you use Vim.

Regards,
Gary

Sorry for going off topic a little, but is the order that .vimrc,
.vim/plugin/* etc. are read listed somewhere?

-D

--
--
You received this message from the "vim_use" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php

--- You received this message because you are subscribed to the Google Groups "vim_use" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to