2011-08-09 15 views
9

私はResharperの "Go To File"機能をEmacs用に実装したいと思います。 1機のショートカットを述べたときは、ReSharperのは、ワイルドカード文字列を受け取り、そのワイルドカード一致するプロジェクト内のすべてのファイル一覧表示自動補完メニュー表示するテキストボックスポップ:今のところemacs - サブディレクトリでのファイル検索の検索方法

"Go To File" dialog http://www.jetbrains.com/resharper/features/screenshots/50/navigation_gotofile.png

を、私は、原油道を知っています多かれ少なかれ同等のものを達成する。 dired-lRで実行してからdired-isearch-filenamesを呼び出すと、特定のルートディレクトリ内のファイルの階層全体にわたって増分検索が開始されます。

upd。私はまた、バッファのロードを開き、それらをすべてメモリに保持し、switch-to-bufferを使用するオプションについて知っています。この解決策は、idoとうまく動作しますが、100%弾丸ではありません(ファイルが追加または削除されるとどうなりますか?)。 tabbarでもうまくいきません。タブにはプロジェクトに含まれているすべてのファイルが表示されますが、現在のコンテキストを表すプロジェクトのサブセットは表示されないためです。

しかし、これは多くの不必要な情報を示し、自動補完機能が不足しています。私はidoiciclesを見てきましたが、現在のディレクトリ内でのみ浅く動作しているようです。私の目標を達成するのに役立つEmacsプラグインはありますか?

答えて

5

開いているバッファの多くを維持したくないかもしれませんが、あなたは最近開いたファイルを追跡する、recentfにIDOをフックすることができますが:

(recentf-mode 1) 
(setq recentf-max-saved-items 300) 

(defun ido-choose-from-recentf() 
    "Use ido to select a recently opened file from the `recentf-list'" 
    (interactive) 
    (find-file (ido-completing-read "Open file: " recentf-list nil t))) 

(global-set-key [(meta f11)] 'ido-choose-from-recentf) 

私は長年、このトリックを使用してきた、そしてそれは99です私が必要とするすべてのファイル切り替えの%。

それ以外では、M-x rgrepを使用していますが、M-x find-diredM-x find-grep-diredもご覧ください。

さらに多くのオプションについては、this similar questionの回答をご覧ください。

+1

私のプロジェクトはそれほど多くのファイルを持っていないので、私は愚かで実用的な解決策に向かいました。私は "find path1 path2 .. pathN -print0"を呼び出し、結果を "\ 0" -sで分割してido-completing-readに送ります。 über-ideaに感謝します! –

3

まだhelmさんを試しましたか?ファイル、バッファ、コマンド、およびその他多くのものを簡単に検索することができます。

4

Projectileは、多かれ少なかれあなたが望むことを実現するprojectile-jump-to-project-fileという機能を持っています。 find-file-in-projectもあります - より簡単なユーティリティですが、GNU findの存在に依存しています。

2

あなたはicicleと記載しましたが、間違って「浅く働いている」と思っていました。それは、あなたがそれが働きたいと思っているどんな方法でも働きます必要に応じて、ファイル名とパスの任意の部分に一致するファイルをシステム上で検索できます。また、特定のファイルやディレクトリのプロジェクトを定義し、その定義を保存し、後でこれらのファイル/ディレクトリのみを検索することもできます。 (Emacsのファイルセットは、この機能の厳密なサブセットですが、あなたは直接同じようにファイルセットを使用することができます。)

これは(そのページの最後にもリンクを参照してください)に役立つはずです。

http://www.emacswiki.org/emacs/Icicles_-_File-Name_Input

関連する問題