mgo*_*uin 31 vim vimdiff word-wrap
在VIM中区分2个文件时,我更喜欢要包装的行.但是,vimdiff默认设置为off.
有没有办法为每个差异自动设置换行?
Nik*_*vda 37
我使用以下内容:
autocmd FilterWritePre * if &diff | setlocal wrap< | endif
Run Code Online (Sandbox Code Playgroud)
FilterWritePre
在生成的diff写入缓冲区之前立即触发,并setlocal wrap<
复制全局值wrap
.当然也可以简单地强迫setlocal wrap
.
小智 24
您可以将以下内容放在vimrc中.
au VimEnter * if &diff | execute 'windo set wrap' | endif
Run Code Online (Sandbox Code Playgroud)
Syl*_*ain 14
当vim已经启动时,在每个拆分窗口文件上启动diff和wrap的命令:
:diffthis
:set wrap
Run Code Online (Sandbox Code Playgroud)
但是,diff + wrap显示不正确:
如果你在一个文件上有一个长行,而另一个文件上有一条短行或缺失行,那么长行将占据第一行的2行,短行或缺失的行仅占用第二行的1行侧.
这导致2个文件的垂直移位.当然,颜色有助于在视觉上弥补这种转变.但是在几行差异上,移位可能高于窗口的高度,使得差异难以理解.
所以问题还没有完全解决......请指教.
你可以运行这个
vimdiff -c 'set wrap' -c 'wincmd w' -c 'set wrap' file1 file2
Run Code Online (Sandbox Code Playgroud)