En Emacs dired, ¿cómo encontrar/visitar múltiples archivos?
(3)
Si tengo varios archivos marcados, ¿cómo encuentro / visito todos los archivos marcados en emacs, además de ejecutar dired-find-file
en cada uno de ellos?
¿Hay un comando de compilación, o necesito un código de lisp adicional?
En Emacs 23.2 y superior, el módulo dired-x.el
está disponible y le da acceso a un comando que hace exactamente lo que usted desea. Después de cargarlo (solo (load "dired-x")
, normalmente), podrás invocar la función dired-do-find-marked-files
. Aquí está su documentación incorporada:
(dired-do-find-marked-files &optional NOSELECT)
Find all marked files displaying all of them simultaneously.
With optional NOSELECT just find files but do not select them.
The current window is split across all files marked, as evenly as possible.
Remaining lines go to bottom-most window. The number of files that can be
displayed this way is restricted by the height of the current window and
`window-min-height''.
To keep dired buffer displayed, type C-x 2 first.
To display just marked files, type C-x 1 first.
Así que después de que se dired-x
, puedes usar dired-do-find-marked-files
RET y obtendrás exactamente lo que tu pregunta te pide: todos los archivos marcados serán visitados como si dired-find-file
ejecutado dired-find-file
en todos ellos.
Podría probar dired+ que proporciona muchas extensiones para dired, incluida la posibilidad de seleccionar múltiples archivos y encontrarlos / verlos todos.
Si agrega esto a sus archivos .emacs, podrá abrir los archivos mediante la combinación de teclas ''F''.
(eval-after-load "dired"
''(progn
(define-key dired-mode-map "F" ''my-dired-find-file)
(defun my-dired-find-file (&optional arg)
"Open each of the marked files, or the file under the point, or when prefix arg, the next N files "
(interactive "P")
(let* ((fn-list (dired-get-marked-files nil arg)))
(mapc ''find-file fn-list)))))
Obviamente, puede anular la ''f'' incorporada si lo desea.