📜  Vim-差异

📅  最后修改于: 2020-10-14 08:25:42             🧑  作者: Mango


与UNIX diff命令类似,我们可以使用Vim以更好的方式显示diff。它将以彩色方式显示差异。在本章中,我们将讨论以下项目-

  • 显示文件之间的差异
  • 激活和停用差异模式
  • 在差异模式下导航
  • 从差异窗口应用更改

显示差异

要显示文件之间的差异,请执行以下命令-

$ vimdiff   
OR 
$ vim –d  

例如下面的命令显示差异-

显示

在上图中,以洋红色突出显示的文本很常见。其余文本以红色突出显示,表示普通文本后有一些差异。

激活和停用差异模式

如果您已经在vim中并且想要执行diff操作,请使用以下命令之一-

弥散

使用以下命令执行水平分割-

:diffsplit filename

分裂

上图显示我们正在比较两个文件,即message-1.txt和message-2.txt。

垂直扩散

要执行垂直拆分,请使用以下命令-

:vert diffsplit 

它在以下窗口中打开-

垂直

上图显示我们正在比较两个文件,即message-1.txt和message-2.txt。

在差异模式下导航

差异模式下的导航有些不同。例如,当您从一个窗口滚动文本时,相邻窗口的文本也会滚动。这称为滚动绑定。要启用此用途-

:set scrollbind

要禁用此用途-

:set noscrollbind

如果您在此模式下编辑文件,请使用以下命令更新diff-

:diffupdate

在差异窗口之间切换

要在差异窗口之间切换,请执行以下命令-

Ctrl + w Ctrl + w

请注意,我们必须按Ctrl + w 2次。

跳至上一个更改

在差异窗口中,执行以下命令以跳至上一个更改-

[c

跳到下一个变化

在差异窗口中,执行以下命令以跳转到下一个更改-

]c

从差异窗口应用更改

在当前差异窗口中应用更改

要将更改从相邻差异窗口应用于当前差异窗口,请执行-

:diffget

例如,如果您在左侧窗口中,并且想要从右侧窗口更改为当前窗口,则将执行上述命令。

将更改从当前窗格应用于另一个

要将更改从当前差异窗口应用于相邻差异窗口,请执行-

:diffput

例如,如果您在左侧窗口中,并且想要将更改从当前窗口应用于右侧窗口,则将执行上述命令。