Как игнорировать подкаталоги .svn при использовании dired

Мне нужно заменить строку во многих файлах в дереве каталогов.

Итак, я планирую использовать dired, чтобы сначала найти все файлы, содержащие строку (с % g), а затем заменить строку на Q.

Чтобы показать все подкаталоги в дереве, я использую C-u lR. Проблема в том, что здесь показаны также каталоги .svn, и я не хочу в них заходить.

Есть ли способ сказать dired игнорировать данный каталог (или просто скрытые каталоги в целом)?

Я использую Emacs 23.1.1.


person Jasancos    schedule 01.08.2014    source источник
comment
PS Вашей версии Emacs 5 лет! Вы можете подумать об обновлении до последней версии (24.4 выйдет довольно скоро).   -  person Dan    schedule 01.08.2014


Ответы (1)


Вы можете добавить расширение .svn к dired-omit-files с помощью:

(setq dired-omit-files (concat dired-omit-files "\\|\\.svn$"))

См. Также эту связанную ветку для Дополнительная информация.

Однако обратите внимание, что вы можете просто скрыть их (dired-hide-dir, привязанный к $ и dired-hide-all, привязанный к M-$). Согласно руководству :

Обычные команды Dired никогда не рассматривают файлы внутри скрытого подкаталога. Например, команды для работы с отмеченными файлами игнорируют файлы в скрытых каталогах, даже если они отмечены. Таким образом, вы можете использовать скрытие, чтобы временно исключить подкаталоги из операций, не удаляя метки Dired с файлов в этих подкаталогах.

person Dan    schedule 01.08.2014