在Vim中同时向下滚动拆分窗口的两个部分

LB4*_*B40 114 vim

是否可以在Vim中向下滚动垂直分割窗口的左右部分?我有两个文件,我想粗略比较一下.这些文件的每一行看起来几乎相同.

小智 175

转到第一个拆分,然后输入

:set scrollbind
Run Code Online (Sandbox Code Playgroud)

转到下一个(ctrl+ w),并执行相同操作.

要禁用:

:set noscrollbind
Run Code Online (Sandbox Code Playgroud)

有关更多信息,请查看滚动绑定的文档 - http://vimdoc.sourceforge.net/htmldoc/scroll.html#scroll-binding

  • 如果你打开了所有文件,你也可以`:windo set scrollbind`,一次为所有分割设置它. (55认同)

Bri*_*new 87

有关滚动绑定的信息,请参阅文档.您需要为每个要绑定的窗口设置此值(例如,至少为2)

但是,如果您要比较2个文件,vimdiff可能会更有用

  • Vimdiff ......你一生都在哪里? (4认同)

Vih*_*rma 47

:windo set scrollbind
Run Code Online (Sandbox Code Playgroud)

将在所有窗口中设置scrollbind.

  • 如果你发现自己这么做了,那么像'nmap <F5>这样的东西可能会很有用:windo set scrollbind!<cr>`在所有打开的窗口中切换滚动条. (2认同)

Rob*_*lls 10

天儿真好,

尝试在这两个文件上使用vimdiff?

vimdiff file1 file2
Run Code Online (Sandbox Code Playgroud)

这将默认为您提供滚动绑定.


noa*_*oah 6

在命令行中:

vim -O file1 file2 -c 'windo set scb!'
Run Code Online (Sandbox Code Playgroud)

-O =并排打开。

-c =引号后面的内容被视为vim选项。

'windo'=适用于所有面板。

'scb'=滚动绑定的简写。保存一些输入,但是两者可以互换。

'!' =切换。这样,您可以选择使用同一命令在以后将其关闭。


Sam*_*iel 5

为了后代,这是我需要做的,因为我不是从vimdiff开始的。

我加载了一个文件。然后:vsp加载另一个。

它们是完全不同的文件,但是我想看看它们之间的共同点。

所以...

:set diff
:set diffopt=iwhite
:set scrollbind
Run Code Online (Sandbox Code Playgroud)

  • 您可以在一个命令中用给定的缓冲区(:diff,:diffopt,:scrollbind)来获取所有缓冲区,其中每个缓冲区都包含:diffthis (3认同)