我今天开始使用 vimdiff,并且想做一些我在基于 Windows 的差异编辑器上认为理所当然的事情(例如展开/折叠差异部分,具有完整的文件扩展/仅具有以上三个上下文行的差异或下面等)。我目前只知道以下命令:
键盘快捷键:
d``o- 从其他窗口获取更改到当前窗口。
d``o
d``p- 将当前窗口的更改放入另一个窗口。
d``p
]``c- 跳转到下一个更改。
]``c
[``c- 跳转到上一个更改。
[``c
Ctrl+ W, w- 切换到另一个拆分窗口(Ctrl+ W, Ctrl+做同样的事情,以防你稍后W放开键)Ctrl
Ctrl
W
w
有人可以指出我正确的方向,以便我可以复制类似的功能吗?
例如,如果我可以在差异周围展开/折叠线,那就太好了。
除了你提到的那些,我只在比较时经常使用以下内容:
:diffupdate
:diffu
:e
:set noscrollbind
:set scrollbind
您要求的大部分内容都是折叠:Vim 用户手册的折叠章节。在差异之外,我有时会使用:
zo
zc
但您可能会得到更好的服务:
zr
zm
甚至:
zR
zM
您要求的另一件事,使用 n 行折叠,可以在Vim 参考手册的 options 部分找到,通过diff 部分:
set diffopt=<TAB>
context:n
您还应该查看diff 的用户手册部分。