在Sublime Text中比较两个文件的内容,使用并排视图。

7

我已经阅读了比较Sublime Text中两个文件内容的问题,但是答案(无论是本地的"文件夹 > 比较文件"功能还是使用FileDiffs)都像diff工具一样显示2个文件之间的差异,这不是我想要的:

 --- file1.py
 +++ file2.py
 @@ -1,21 +1,19 @@
 -import os
 +import os, sys
 import numpy as np
 -print('hello')
 +print('hello world')
 -import sys

相反,我想要像PSPad本地diff工具一样进行并排比较:

enter image description here

如何在Sublime Text(2或3)中实现这种打开两个文件的并排比较?

是否可以使用Sublime Text内置功能实现?


我曾使用的 Sublime 独家并排差异包是 Sublimerge 3(不要与 Sublime Merge 混淆)。还有 Sublimerge Pro 适用于 ST2。它们都是商业软件,但有免费试用版。可能还有其他一些能进行并排差异比较的软件包,但在我购买此软件时不记得有其他的了。 - OdatNurd
@OdatNurd 噢,原来有 Sublimerge Sublime Merge 两个东西啊?我还以为它们是同一个东西呢!后者是 Git 客户端,对吧?也许它还可以进行带颜色的并排比较,是这样吗? - Basj
Sublime Merge 是一个 git 客户端,它可以进行并排差异比较,但只能针对源代码控制的内容(你可以通过一些设置将其用作独立的合并工具,但这会让你得到一个无法关闭的合并窗格)。Sublimerge 3Sublimerge Pro 是 Sublime Text 的插件,提供并排差异比较/合并功能,并且如果需要,可以与源代码控制集成。 - OdatNurd
2个回答

7

Windows和Linux的安装方式:

  • 按下 CTRL + SHIFT + P
  • 输入 Package Control: Install Package
  • 按下 ENTER
  • 输入 Compare Side
  • 选择名为 Compare Side-By-Side 的插件包

如何使用?

  • 选择要比较的一个选项卡
  • 右键单击您想要比较的第二个选项卡
  • 选择 Compare with active tab

它是什么样子的?

Compare Side-By-Side example


3

是的,您可以不使用插件来完成这个操作。首先,选择查看 → 布局 → 列:2

View -> Layout -> Columns: 2 screenshot

使窗口变成这样

2 columns screenshot

然后将所需标签拖到另一个面板中

2 panes, 2 files screenshot

完成以上步骤后,您就可以了。


1
这已经很有趣了,但是如果能够突出显示修改的行/具有彩色背景会更好(请参见我原始帖子中的PSPad截图)。 - Basj
Sublime Text 4 版本在左侧边栏上添加了标记,用于指示已添加、更改和删除的行,前提是您的配色方案支持它们。它不会实时显示差异,但正如 OdatNurd 提到的那样,可能有其他资源可供尝试。 - MattDMo
这是一张图片 https://i.stack.imgur.com/wweCO.png - MattDMo
这很有趣,@MattDMo,也许你可以编辑你的答案,包括这个截图,对未来参考很有用。 - Basj

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接