2

Я хочу сравнить две директории, которые имеют похожую иерархию.

С помощью «Mx ediff-directoryies» в Emacs мне было предложено ввести регулярное выражение для ограничения имени файлов, которые я хочу сравнить. Например, я хочу сравнить файлы, имя которых заканчивается на .c или .h. Тогда я введу ".*. [ch] ", однако я нахожу, что это влияет только на каталог верхнего уровня, но я хочу, чтобы регулярное выражение воздействовало на файлы, лежащие во всех подкаталогах, независимо от их глубины.

Любая идея?

1 ответ1

0

Насколько я помню, edif-dirs не является рекурсивным. Я не пробовал сам, но этот пакет, кажется, делает то, что вы хотите:

Пакет EdiffTrees - это простой интерфейс EdiffMode, позволяющий упростить сравнение двух одинаковых деревьев каталогов.

Я написал этот пакет, потому что мне часто нужно сравнивать две разные версии одного и того же дерева каталогов, и ediff-каталоги в этом случае не очень полезны. Особенно, когда деревья каталогов для сравнения являются глубокими, и только несколько файлов изменились.

Для дальнейших инструкций, пожалуйста, смотрите комментарий в файле.

В качестве альтернативы, если вы работаете в Unix-подобной ОС, вы можете перейти в режим eshell (Mx eshell) и выполнить:

diff -r dir1 dir2

Что-то вроде хака, но ты все еще в Emacs!

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .