tags:

views:

58

answers:

2

Hi all,

I would like to know Emacs' equivalent of Vim's :n, which opens several files according to a glob.

Say I have this directory:

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

And I want to open all those files. In Vim, I can type

:n *php

and that will give me one buffer for every file; I don't know how to do that in Emacs (when it's already open, of course I can do 'emacs *php' in a shell).

I'm happy with a function that I can call from any buffer via M-x, but if there's a command that I can call in dired-mode (say, edit all marked files or something), that would be beyond cool.

Thanks.

+8  A: 

The ordinary find-file command, C-x C-f, will accept wildcards and open multiple buffers. From the documentation:

Interactively, or if wildcards is non-nil in a call from Lisp, expand wildcards (if any) and visit multiple files. You can suppress wildcard expansion by setting `find-file-wildcards' to nil.

In your example you'd just type C-x C-f *php RET.

Sean
Dude. I had no idea. I've been wanting to be able to do that for *years*.
Zack
That's what I get for using ido-find-file instead... Also, I found this: http://stackoverflow.com/questions/1110118/in-emacs-dired-how-to-find-visit-multiple-files
ptn777
A: 

Open the directory in dired, or use find-dired to create a dired buffer using Unix find (i.e. not find-file), then mark the files you want (with m) to open and press F.

Joel J. Adamson
The F is normally unbound in regular dired-mode. However, I bound it to the defun I found in the question I posted in the comment above.
ptn777
This requires dired-x. A simple (require 'dired-x)does it.
Joel J. Adamson