在两个Vim窗口之间同步编辑



是否有一种方法可以在两个不同的vim窗口中编辑相同的文件,并在两者之间同步更改?

我想为同一个文件设置两个窗口的原因是,这样我就可以同时查看两个不同的部分,并可能同时编辑。

背景:我在Mac OSX上使用术语来容纳多个窗口。这些vim选项卡分别启动,每次调用vim [file]。

如果您使用其内置窗口支持,Vim自然会这样做。使用:help window查找更多信息(或在线查看窗口文档)。简而言之:

^W^N   create a new window
^W^W   switch between windows
^W^C   close a window

如果您在两个窗口中打开相同的文件,当您键入时,更新将反映在每个窗口中。如果您喜欢,可以使用命令进行水平和垂直拆分。

如果我理解正确,有一个选项:scrollbind同步两个窗口。

在垂直窗口中打开文件:

vim -O file file

:set scrollbind在两个窗口(或事先添加到您的vimrc文件)

您可以使用Vim内置的--servername, --remote-send和相关的CLI参数使两个独立的Vim实例相互通信,但这对我来说似乎并不实际。

你应该做的是按照设计来使用Vim:在iTerm甚至Mac OS X出现之前,Vim就有分屏窗口,这里的其他答案给出了如何使用这个功能的所有基本信息。

另外,您的两个Vim会话不共享寄存器和宏等。

最新更新