![有没有一种快速的方法可以在 VimDiff 中使用自动换行功能进行水平滚动?](https://linux22.com/image/1336024/%E6%9C%89%E6%B2%A1%E6%9C%89%E4%B8%80%E7%A7%8D%E5%BF%AB%E9%80%9F%E7%9A%84%E6%96%B9%E6%B3%95%E5%8F%AF%E4%BB%A5%E5%9C%A8%20VimDiff%20%E4%B8%AD%E4%BD%BF%E7%94%A8%E8%87%AA%E5%8A%A8%E6%8D%A2%E8%A1%8C%E5%8A%9F%E8%83%BD%E8%BF%9B%E8%A1%8C%E6%B0%B4%E5%B9%B3%E6%BB%9A%E5%8A%A8%EF%BC%9F.png)
VimDiff 似乎是一个有用的工具,但我似乎找不到在将自动换行设置为“关闭”时快速有效地水平滚动的方法。我目前使用“zh”和“zl”,但它们只能通过单击来工作。
我不想使用 sublime 来进行差异比较,但我可能不得不这么做!
答案1
zh
除了和之外,还有其他选项zl
;检查zH
和zL
一次跳转半屏,或zs
和ze
分别移动到行首和行末。
更好的是,如果您在使用时的限制最严重vim -d
:将窗口设置为全部一起滚动:scrollbind
(使用 查看所有选项:help scrollbind
)。
好奇:它是否不允许您使用自动换行,为什么?:)
我不知道这是否会起作用,但考虑到您的局限性, :setglobal textwidth=foo
(或:setlocal
)也可能有用......
答案2
您可以在 .vimrc 中将 Shif-MouseWheel 事件重新映射到水平滚动:
map <S-ScrollWheelUp> <ScrollWheelLeft>
map <S-ScrollWheelDown> <ScrollWheelRight>
因此,鼠标滚轮将垂直移动,而 Shift+鼠标滚轮将水平滚动