2009-10-05 67 views
2

我需要一些腳本來查找和打開當前目錄下的給定模式文件,它的子目錄,GEdit的Snap Open,VIM和TextMate的打開文件模糊查找器。Snap for Emacs?

有什麼想法?

回答

3

不熟悉任何引用的庫,我不知道這是否是一個確切的答案,但它聽起來像ido模式將至少做一些你要求的東西,它與Emacs從版本22開始.Ido更改默認Emacs find-file和find-buffer keybindings的工作方式,爲您鍵入的字符串提供完成列表,並使用Enter鍵接受當前選擇(可以是目錄,允許你可以從minibuffer瀏覽目錄結構)。詳情請查閱Ido EmacsWiki page

1

不完全是你要求的,但是關閉是ifind.el。要查找在名稱中frog所有文件和文件後綴.el

M-x ifind /some/path/*frog*.el 

這並通過所有子目錄做一個搜索下/some/path

它不會自動打開所有文件,而是彈出一個*compilation*緩衝區,允許您通過點擊文件或通過執行M-x next-error(又名「C-x`」)打開它們。

這個程序將打開每個查找結果:

(defun visit-all-ifind-results() 
    "do next-error until there are no more" 
    (interactive) 
    (condition-case nil 
     (while t 
     (next-error)) 
    (error nil))) 

所以,與,你可以只是跟進M-x visit-all-ifind-results

5

你也可以在標準dired中做到這一點。

首先做

C-u s 

它讓你改變dired ls命令來-lR。現在你將在dired緩衝區中有子目錄。

% m 

讓我們來標記所有匹配正則表達式的文件。

要打開文件使用命令

`dired-do-find-marked-files' 

你需要(需要「dired-X)這一個。

+0

C-美 給了我4個字母小號 – Daniel 2009-10-07 12:03:22

+0

在dired窗口?它不應該。 您可以使用 M-x dired-sort-toggle-or-edit – justinhj 2009-10-07 14:21:45

3

不能滿足您的所有要求,但打開多個文件的一個非常簡單的選項是在打開文件(C-x C-f)時使用全局模式,如~/prj/*/*.[hc]

+0

不錯。不知道那個。 – 2009-10-07 20:58:08

0

你必須自己寫這個。

我偶爾喜歡打開項目中的所有相關文件;爲此,我使用eprojecteproject-open-all-project-files命令。