¿Navegador de directorio basado en árbol?


38

Me encanta dired, pero a veces (particularmente cuando filmo screencasts) quiero ver la estructura de árbol de un directorio y sus elementos secundarios, como el comando tree (1). ¿Existe un navegador de directorios orientado a árboles para Emacs?


Estoy bastante seguro de que ECB puede hacer esto.
Edgar Aroutiounian

2
@EdgarAroutiounian Si ese es el caso, recomiendo hacer una respuesta de ella :)
Trevoke

Respuestas:


23

Además, puede usar dired-subtree desde dired-hacks repo.

Aquí tiene una breve demostración y captura de pantalla de mi configuración, donde presiono ipara desglosar la carpeta y ;regresar:

  (define-key dired-mode-map "i" 'dired-subtree-insert)
  (define-key dired-mode-map ";" 'dired-subtree-remove)

dired-subtree

PD: También conozco el direx que se ve así direx:


Intenté dired-subtree pero la estructura de árbol no era tan visualmente aparente como estaba buscando. Direx se ve perfecto aunque, voy a intentarlo.
Avdi

Soy este porque la sugerencia de Direx parece ideal para mi caso de uso de poner una visualización del árbol de directorios al frente y al centro. Sin embargo, eso no es para descartar las excelentes sugerencias de @ keelerm.
Avdi

Puede obtener una funcionalidad equivalente utilizando un enlace de tecla: (define-key dired-mode-map "i" 'dired-subtree-toggle). Sin embargo, me gusta asignarlo a "Cc i" ya que dired también inserta el subdirectorio usando "i".
Joe

22

Hay un par de opciones para esto.

Puede consultar dirtree , que se basa en dired.

También hay un puerto emacs de NERDTree de vim llamado neotree .

Ambos son paquetes excelentes, aunque tiendo a favorecer neotree ya que tiene enlaces convenientes para permitirme crear y eliminar archivos y directorios. No creo que dirtree tenga este apoyo, aunque podría estar equivocado. Ha pasado un tiempo desde la última vez que lo usé.


Gracias, aunque direx parece ser ideal para mi necesidad inmediata, me ha recordado que necesito pasar un tiempo con neotree.
Avdi

9

Puede invocar diredcon un argumento, es decir. C-u C-x dy después de solicitar el directorio, también le permitirá modificar los interruptores pasados ls. Agregue Ry diredenumerará recursivamente todos los subdirectorios, cada uno en su propia sección.

Si solo desea ver el contenido de algunos subdirectorios, presione icuando el punto esté en el nombre de un directorio.

También puede usar el find-diredcomando, con o sin interruptores. En lugar de mostrar subdirectorios en su propia sección, imprime la ruta completa de cada archivo. Puede alternar la visualización de los detalles del archivo (para que las rutas largas quepan horizontalmente en la pantalla.

Todos estos están integrados.


7

¿Alguna vez has probado Emacs M-x speedbar? :-) antes de instalar algún paquete nuevo, probaría una solución incorporada ...


1
... y un voto más por sugerir un incorporado.
GergelyPolonkai

4

También hay ztree . Lo uso cuando necesito echar un vistazo a la estructura del directorio, aunque generalmente uso Vanilla Dired para todas las demás cosas.


1

Echa un vistazo a sidebar.el .

Como dijo el repositorio, es un explorador de archivos personalizable con integración git, pero no solo eso. También puede obtener la lista de buffers y sus maildirs con mu4e.

ingrese la descripción de la imagen aquí


1

¿ Funciona Treemacs ? Te permite tener una estructura en forma de árbol.


¿Es esta una respuesta o una pregunta (dos preguntas)? Es prácticamente una respuesta de solo enlace, si es una respuesta. Como tal, corre el riesgo de ser eliminado. Ver emacs.stackexchange.com/help/how-to-ask .
Dibujó el

1
@Drew, fwiw Creo que esto es solo un problema de lenguaje / interpretación. Treemacs es una sugerencia absolutamente aceptable para la pregunta del OP.
EdwardGarson
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.