home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: gnu.emacs.sources
- Path: sparky!uunet!ferkel.ucsb.edu!taco!rock!stanford.edu!agate!spool.mu.edu!uwm.edu!zaphod.mps.ohio-state.edu!cis.ohio-state.edu!news.sei.cmu.edu!fs7.ece.cmu.edu!crabapple.srv.cs.cmu.edu!spot
- From: spot@CS.CMU.EDU (Scott Draves)
- Subject: Re: REQUEST: find-multiple-buffers.el
- In-Reply-To: spot@CS.CMU.EDU's message of Sun, 20 Dec 1992 18:57:08 GMT
- Message-ID: <BzKns5.Bu9.1@cs.cmu.edu>
- Originator: spot@COBOL.FOX.CS.CMU.EDU
- Sender: news@cs.cmu.edu (Usenet News System)
- Nntp-Posting-Host: cobol.fox.cs.cmu.edu
- Organization: School of Computer Science, Carnegie Mellon University
- References: <1992Dec20.054956.24937@murdoch.acc.Virginia.EDU>
- <BzKnBA.BLr.1@cs.cmu.edu>
- Date: Sun, 20 Dec 1992 19:07:16 GMT
- Lines: 34
-
- oops, sorry, i forgot the support functions. btw, i didn't write this
- code, but i don't know who did. it's been in my .emacs for years...
-
- (defun csh-re-to-regexp (reg)
- "Convert a C-shell regular expression to a true r.e."
- (concat "^" (mapconcat 'convert-csh-re-to-regexp reg "") "$"))
-
- (defun convert-csh-re-to-regexp (ch)
- "Convert a C-shell wildcard to its regular expression counterpart"
- (cond ((equal ch ?.) "\\.")
- ((equal ch ?*) ".*")
- ((equal ch ??) ".")
- (t (char-to-string ch))))
-
- ;;; should derive default RE from mode-alist
- (defun find-regexp-files (prefix dir reg)
- "Prompt for a directory and a regular expression. Open
- buffers for all the files matching that regular expression in the
- directory. The default RE is *.{c,h,y,l,sml,sig}."
- (interactive "p\nDDirectory: \nsRegexp: ")
- (if (equal reg "")
- (setq reg ".*\\.\\(c\\|h\\|y\\|l\\|sml\\|sig\\)$")
- (if (equal prefix 1)
- (setq reg (csh-re-to-regexp reg))))
- (setq files (directory-files dir t reg))
- (if (not files)
- (message "no matching files"))
- (while files
- (find-file (car files))
- (setq files (cdr files))))
- --
- orgasm
- Scott Draves nitrous
- spot@cs.cmu.edu death
-