【Emacs】eglotにプロジェクトのルートディレクトリを認識させるには

Emacsのeglotは,当該のディレクトリに .git があれば、自動的にプロジェクトのルートとして認識してくれる。 これがない場合に、下層のディレクトリにあるファイルは全て、ディレクトリ単位で別プロジェクトとして認識し 、サーバーと接続してしまうので困っていた。

これを解決して、最上位のディレクトリをプロジェクトのルートとして認識させたいときには,例えば

(setq project-vc-extra-root-markers '(".project"))

という設定を書いておき、当該ディレクトリに .project という空のファイルを置けばよい。この設定について、

(setq project-vc-extra-root-markers '(".project.el" ".projectile"))

のように複数指定してもOKである。特にマーカーのファイル名に制限はないが、隠しファイルとしておくのはアリだろう。詳細は project-vc-extra-root-markersドキュメンテーションを見るのがよい。

参考: jmthornton.net