假设我在文件中包含此文本:
/home is where the heart is.
例如,如果我选择/home
文本,使用C-spc,有没有办法将它发送到ls,那么最终是否会执行ls /home
? M-|
不起作用。
答案 0 :(得分:5)
据我所知,直接在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))))))
答案 1 :(得分:5)
尝试
M- | xargs ls
。也就是说,在所选区域上传递“xargs ls
”作为shell命令。
请参阅xargs。
答案 2 :(得分:3)
对于您提出的问题,Victor的回答很好,但在您的具体情况下,您可以考虑使用M-x ffap
(find-file-at-point)。这将为dired
目录提供/home
缓冲区。