2010-08-23 3 views
8

Voglio mostrare una directory in Dired con alcune sottodirectory aperte in modo ricorsivo (come se avessi passato l'opzione "R" per loro). È possibile farlo in Emacs? Qualche idea su come implementarlo facilmente in Elisp?Apri alcune directory in modo ricorsivo in Dired

In Windows Explorer, premere "*" nella finestra delle cartelle per aprire una directory in modo ricorsivo (ovviamente solo le sottodirectory sono visibili, non i file). Voglio la stessa cosa in Emacs, ma anche i file sono visibili.

risposta

14

prefisso dired-maybe-insert-subdir comando (legato a i in dired-mode) con C-u per aggiungere ricorsiva opzione -R per ls per inserire directory ricorsivamente.

C-u i .. R .. <RET>

+1

Grazie mille !!! è esattamente ciò di cui ho bisogno –

0

giocato con l'idea un po ', ed ecco la mia soluzione, uscita più pulita e l'uso più semplice. Inserisci i tuoi .emacs. Modifica il filtro (man find) in base alle tue esigenze.

(defun find-dired-project (dir) 
    (interactive "D") 
    (find-dired dir "-not -path '*/.svn*' -not -path '*/.git*' -and -not -path '*.o' -and -type f")) 
(global-set-key "\C-xd" 'find-dired-project) 
+2

Puoi usare le variabili 'vc-directory-exclusion-list' e/o' completion-ignored-extensions'. – phils