> With this option, you don't need to bother switching which window has diff 
> turned on; you can just look at whichever one you need and it will show how 
> it differs from the single master window.

I think it is sometimes useful but sometimes not.
I can see which lines are different just between 2 windows
among several ones, but can not see what is exactly different
only on one window.
diff-fold may be widely common among all diff mode windows.
diffget/diffput may not be allowed because more than 2 windows
are still in diff mode. So I still use diffthis/diffoff to switch
and compare between 2 windows.

To generally see which lines are different,
it can be used with a sample plugin like below.
Set t:diffmaster variable with a window number and execute it
on a window to be compared. Then sign comes up.
This is restricted only on the changed lines on the same line.


let mw = gettabvar(tabpagenr(), 'diffmaster')
if empty(mw) | finish | endif
let ct = [hlID('DiffChange'), hlID('DiffText')]
let dl = []
for l in range(1, line('$'))
        if index(ct, diff_hlID(l, 1)) != -1 && getline(l) != 
getbufline(winbufnr(mw), l)[0]
                let dl += [l]
        endif
endfor
if !empty(dl)
        sign define diff text=> texthl=Search
        for l in dl
                exe 'sign place ' . l . ' line=' . l . ' name=diff buffer=' . 
bufnr('')
        endfor
endif

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

Raspunde prin e-mail lui