什么工具可以对同一文件中的两个部分进行视觉比较?

8
已经讨论过了好的文件比较工具,但我的问题更为特殊。是否有任何可视化文本比较工具(如WinMerge),可以让我在同一文件中轻松地对两个部分进行可视化比较?
我在vcproj文件中有多个配置,并且需要维护它们。手动完成这项工作非常麻烦--拆分窗口,逐字符滚动。此外,xml非常冗长,占用大量屏幕空间。我无法相信没有工具可以自动比较文件节,因为这听起来像是一个非常普遍的问题。
请不要向我提供使用属性页的建议,我不想增加复杂性,我想要减少复杂性。手动将其拆分为文件,然后再进行比较也太古老了(我现在仍在这样做)。

它不能在同一文件中对两个文本块进行文本比较吗? - defmeta
4个回答

6

我使用Beyond Compare(非免费,但我认为有共享版可用)。你可以选择同一文件作为左右两侧,然后在每侧的部分开头右键单击并选择“手动对齐”。这将使您相对容易地比较同一文件的两个部分。

总的来说,我强烈推荐该产品。我没有尝试过他们当前网站上的版本3,但版本2是一个绝妙的工具。A+。


Beyond Compare是一款非常好用的工具,花费几美元也是值得的。 - JoshBerke

3

具体来说:M-x ediff-regions-wordwiseM-x ediff-regions-linewise。您还可以使用 M-x compare-windows 来比较当前窗口与“其他窗口”(从每个点位置开始),并将光标留在两者之间的第一个差异处。重复以继续到下一个差异。我将其绑定为 C-M-=,以便轻松重复。由于每个窗口都可以显示相同的缓冲区,因此这是另一种快速比较同一缓冲区中的两个区域的方法。 - phils

2

您可以使用Meld来实现这一点

  1. 打开Meld而不指定文件名
  2. Meld将提示您要选择哪种类型的比较。选择文件比较
  3. Meld会呈现图标以选择文件名。在下面它会提示进行空白比较。选择那个。
    1. 在文件比较窗口中,粘贴您想要比较的文件部分。

2
我使用UltraEdit进行大多数文本编辑,他们有一个名为UltraCompare的产品,可以进行可视化比较。

Mofi 更新

UltraCompare Professional 还支持文本片段的比较,除了整个文件。

启动 UltraCompare 后,如果尚未选择,请在菜单模式中选择文本比较。在文本编辑器中选择要比较的第一个文本块,按 Ctrl+C,切换回 UC 并使用 Ctrl+V 将块粘贴到左侧文本区域窗格中。再次切换到文本编辑器,在同一文件中选择另一个块,按 Ctrl+C,切换回 UC,单击右窗格并使用 Ctrl+V 粘贴该块。两个块立即进行比较,并显示差异。

这样,可以直接从 UltraEdit 中开始对同一文件中两个块进行文本片段比较。选择文件中的第一个块,按 Ctrl+C,Ctrl+N,Ctrl+V 和 Ctrl+A 进行复制、粘贴和重新选择此块以在新文件中。选择文件中的第二个块。在 UltraEdit 中执行文件菜单中的比较命令,并自动启用选项比较所选文本,然后单击比较按钮。UC Professional 会使用所选的 2 个块进行比较。


它是否可以在同一文件中的部分进行可视化比较? - Ignas Limanauskas
看起来不像...我在尝试过的许多Mac平台上的文本编辑器中从未见过这个功能。虽然这肯定会很有用! - defmeta
我从未用过它做那个,我不知道。 - bendewey

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