On Wed, Sep 12, 2018 at 11:19 AM Igor Forca <[email protected]> wrote: > > Now I set > :set diffopt+=internal diffexpr= > in $VIMRC file, > restarted the gVim and now it works fine. > > Still it is interesting gVim v8.1.0359 works fine without above setting, > but v8.1.0366 only works if above setting is set.
Until 8.1.359, there was no diff code inside Vim, do :vimdiff had to rely on some external diff. On Unix-like systems (including Cygwin) an external diff program can be expected to exist and Vim used that. IIUC, on Windows systems an external diff could not be expected to be part of the OS so Vim came with its own diff.exe. Starting at Vim 8.1.360, the diff code is compiled inside Vim (for speed, and for cross-platform uniformity) so no diff executable needs to be published with Vim anymore: it uses its internal diff code by default (the new default for 'diffopt' is "filler,internal"). It is possible to disable this internal diff code though, by ":set diffopt-=internal", and it is not used if the 'diffexpr' option has been set (because the latter can bypass the standard diff executable altogether). If you use a 'diffexpr', and Cygwin diff.exe doesn't work for you, you might need to get some diff executable that does (possibly, but not necessarily, from a Vim 8.1.359 or earlier distribution) and copy that somewhere in your $PATH before Cygwin diff bout outside the $VIMRUNTIME tree. Best regards, Tony. -- -- You received this message from the "vim_dev" 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_dev" 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.
