Emacsでフルパスの代わりにファイル名でファイルを開く

Emacsでフルパスの代わりにファイル名でファイルを開く

複数のディレクトリがあり、2つのディレクトリに共通のファイル名がないことが保証されます(つまり、foo/bar存在する場合はbar他のディレクトリには存在しません)。.emacs検索するディレクトリのリストがハードコーディングされているときに毎回指示するのではなく、開くように指示したら、検索するようにbaremacsをどのように設定できますか?何らかの方法で名前の競合を処理することをお勧めしますが(たとえば、一致する可能性のあるリスト)、この場合、ディレクトリに共通のファイル名がないと確信しているため、必須ではありません。foofoo/bar

ベストアンサー1

この記事を書いて知った事実ifind-mode、そうだね。

(setq workspace-dir "/path/to/dir1 /path/to/dir2")
(require 'ifind-mode)
;; maybe change `ifind-command' as well

M-x ifind-mode次に、指定されたディレクトリ(デフォルトではサブディレクトリ)からファイルを検索するには、入力してすばやく完了します。


私が通常行うことはe **/barzshで行われます(エイリアスeはどこにありますかemacsclient?)。しかし、すでにEmacsを使用している場合、これは混乱する可能性があります。また、特定のファイルを頻繁に編集する場合は、そのファイルを開いたままにしてセッションを保存します。

すぐに実行しM-x find-diredて指定できますfind。ただし、少なくとも一致が1つしかない場合は、これは不正です。ifindこれをあまり酷くします。

ido特に便利な機能がたくさんあります。idoを使用してプロジェクト内のファイルを検索する

おすすめ記事