Если у меня есть несколько отмеченных файлов, как я могу найти/посетить все эти помеченные файлы в emacs, помимо запуска dired-find-file
для каждого из них?
Есть ли встроенная команда или мне нужен дополнительный код lisp?
Если у меня есть несколько отмеченных файлов, как я могу найти/посетить все эти помеченные файлы в emacs, помимо запуска dired-find-file
для каждого из них?
Есть ли встроенная команда или мне нужен дополнительный код lisp?
Если вы добавите это в свои .emacs, вы сможете открыть файлы с помощью ключевого слова "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)))))
Очевидно, вы можете просто переопределить встроенный 'f', если хотите.
В Emacs 23.2 и выше доступен модуль dired-x.el
, и он дает вам доступ к команде, которая делает именно то, что вы хотите. После его загрузки (просто (load "dired-x")
, обычно) вы сможете вызвать функцию dired-do-find-marked-files
. Вот его встроенная документация:
(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.
Итак, после загрузки dired-x
вы можете просто использовать M-x dired-do-find-marked-files
RET, и вы получите именно то, что задает ваш вопрос: все отмеченные файлы будут посещаться так, как если бы вы запускали dired-find-file
на всех из них.
Вы можете попробовать dired +, который предоставляет много расширений для прошивки, включая возможность выбора нескольких файлов и поиска/просмотра всех них.