The solution seems so easy, that I suspect that I might have fixed
behaviour that is actually desired. However, for me it always seemed
that :diffoff should only act on windows, that have 'diff' set, not ALL
windows in the current tab. The attached patch makes Vim behave so.

-- 
Cheers,
Lech

--~--~---------~--~----~------------~-------~--~----~
You received this message from the "vim_dev" maillist.
For more information, visit http://www.vim.org/maillist.php
-~----------~----~----~----~------~----~------~--~---

Index: src/diff.c
===================================================================
--- src/diff.c	(revision 1393)
+++ src/diff.c	(working copy)
@@ -1153,7 +1153,7 @@
 
     for (wp = firstwin; wp != NULL; wp = wp->w_next)
     {
-	if (wp == curwin || eap->forceit)
+	if (wp->w_p_diff && (wp == curwin || eap->forceit))
 	{
 	    /* Set 'diff', 'scrollbind' off and 'wrap' on. */
 	    wp->w_p_diff = FALSE;

Raspunde prin e-mail lui