【问题标题】:find several files with one command in Emacs在 Emacs 中用一个命令查找多个文件
【发布时间】:2010-08-30 03:49:18
【问题描述】:

我想知道 Emacs 相当于 Vim 的 :n,它打开 根据 glob 的几个文件。

假设我有这个目录:

-rw-rw-r-- 1 pablo pablo 31 Jun 25 00:59 /home/pablo/tmp/prueba.php
-rw-rw-r-- 1 pablo pablo 2442 1913 年 5 月 9 日 /home/pablo/tmp/sin_soap.php
-rw-rw-r-- 1 pablo pablo 726 六月 25 15:20 /home/pablo/tmp/verificar.php

我想打开所有这些文件。在 Vim 中,我可以输入

:n *php

这将为每个文件提供一个缓冲区;我不知道怎么做 在 Emacs 中执行此操作(当它已经打开时,我当然可以执行 'emacs *php' 在外壳中)。

我对可以通过 M-x 从任何缓冲区调用的函数感到满意,但是 如果有我可以在 dired-mode 中调用的命令(例如,编辑所有 标记的文件或其他东西),那太酷了。

谢谢。

【问题讨论】:

    标签: emacs


    【解决方案1】:

    普通的find-file 命令C-xC-f 将接受通配符并打开多个缓冲区。来自文档:

    交互方式,或者如果通配符在来自 Lisp 的调用中非零, 展开通配符(如果有)并访问多个文件。你可以 通过将 `find-file-wildcards' 设置为 nil 来抑制通配符扩展。

    在您的示例中,您只需键入 C-xC-f*phpRET

    【讨论】:

    • 老兄。我不知道。我一直希望能够做到这一点
    • 这就是我使用 ido-find-file 得到的结果......另外,我发现了这个:stackoverflow.com/questions/1110118/…
    • 如果您使用ido-find-file,您可以使用C-x C-f ~/path/to/somewhere/*.txt,但不要按回车,而是按C-x C-f 以使用当前输入启动常规查找文件
    【解决方案2】:

    在 dired 中打开目录,或使用 find-dired 使用 Unix find 创建一个 dired 缓冲区(即不是find-file),然后标记要打开的文件(使用m)并按F

    【讨论】:

    • F 在常规 dired 模式下通常是未绑定的。但是,我将它绑定到我在上面评论中发布的问题中找到的 defun。
    • 这需要dired-x。一个简单的(需要'dired-x)就可以了。
    猜你喜欢
    • 2023-02-16
    • 1970-01-01
    • 1970-01-01
    • 2010-12-26
    • 2015-04-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多