Допустим, у меня есть этот текст в файле:
/home is where the heart is.
Если, например, я выбираю текст /home, используя C-spc, есть ли способ отправить его в ls, поэтомучто в итоге если выполнит ls /home?M-| не работает.
/home
ls /home
M-|
Попробуйте M- | xargs ls.То есть передайте «xargs ls» в качестве команды оболочки для выбранного региона.
xargs ls
См. xargs .
Насколько я знаю, в Emacs нет способа сделать это напрямую. Но все возможно с помощью elisp:
(defun region-as-argument-to-command (cmd) (interactive "sCommand: ") (shell-command (format "%s %s" cmd (shell-quote-argument (buffer-substring (region-beginning) (region-end))))))
Ответ Виктора является хорошим ответом на вопрос, который вы задали, но в вашем конкретном случае вы могли бы рассмотреть возможность использования M-x ffap (найти файл в точке). Это даст вам буфер dired для каталога /home.
M-x ffap
dired