比较 Emacs 中的目录

Ame*_*ina 18 diff emacs

我正在试验ediff-directories,但我不确定我是否正确使用它。

我在文档中读到,一旦我向 提供了两个目录ediff-directories,如果我按下==Emacs 就会递归地比较它们。

但是,如果我按,==我只会=在我运行命令的级别上得到带有符号的文件夹(意味着这两个文件夹具有相同的内容)。如果我想查看文件=夹层次结构中哪些文件夹在更深层次上有标志,我需要==在每个级别重新运行命令。

我如何告诉 emacs 一直递归到叶子,以便我可以看到directory difference buffer(可通过键盘命令访问D)中的所有差异?

如果有人知道有关如何使用的教程ediff-directories(官方文档除外),我会非常感兴趣。


此外,如果我想退出会话组(在一个级别上比较文件夹),但我为更深层次打开了会话,如果我按下q(退出此会话组),Emacs 会抱怨以下消息:

此会话组有活动会话---无法退出

如何退出会话组而不一一退出子会话?

jfs*_*jfs 9

Melpa 提供了一个ztree支持递归目录树比较的软件包:M-x ztree-diff使用 GNUdiff实用程序来比较相应的文件。

如果您使用use-packagethen 来安装和配置ztree软件包,请添加到您的.emacs

;; ** recursive directory tree comparison: M-x ztree-diff
(use-package ztree
  :ensure t) ; needs GNU diff utility
Run Code Online (Sandbox Code Playgroud)


Ste*_*een 6

我使用过M-x dired-compare-directories,但也有EdiffTrees,它可能在您描述的情况下为您提供更好的服务。