(編集:このアプローチをEmacsWikiに追加したシェル スクリプトにまとめました。)
$HOME
環境変数を使用する傾向があります。
最初に、「ディストリビューション」(より適切な用語が必要なため) を、そのディストリビューション.emacs.d
の代わりとして機能するディレクトリのサブディレクトリにコピーします。$HOME
すなわち/path/to/(distribution)/.emacs.d
:
$ git clone https://github.com/bbatsov/prelude.git ~/emacs/prelude/.emacs.d
$ git clone https://github.com/overtone/emacs-live.git ~/emacs/emacs-live/.emacs.d
次に、そのコマンドの環境変数をローカルenv
に設定するために使用して emacs を開始できます。HOME
$ env HOME=$HOME/emacs/prelude emacs
$ env HOME=$HOME/emacs/emacs-live emacs
それらは相互に作用してはならないため、それらを一緒に実行して、それぞれが異なる構成を使用する複数の横並びの emacs インスタンスを持つことができます。
グラフェンは実際には ELPA パッケージであるため、init.el
ファイルがなく、パッケージ マネージャーを介してインストールする必要があることがわかりました。~/emacs/graphene/.emacs.d/init.el
ただし、同じ手法を使用して別のクリーンな構成でインストールすることもできます。他のディレクトリ構造と同様のディレクトリ構造を作成し、グラフェンのインストール手順のコードを含むinit.el ファイル (例: ) を作成し、emacs を実行します (例env HOME=$HOME/emacs/graphene emacs
)、残りのインストール手順を完了します。
この手法の欠点は、Emacs が他のすべてのドット ファイルを認識しないことです ( $HOME
. しかし、実験するだけであれば、それは大きな問題になる可能性は低く、必要なビットをいつでもシンボリックリンクまたはコピーできます。
あなたはそれを好むかもしれません - 利点は、試用しているディストリビューションの何かがホームディレクトリにファイルを書き込む場合、実際のファイルを壊すことはないということです.
これは、Emacs を新しいリリースにアップグレードするときにも役立つ可能性があります (古いバージョンと新しいバージョンの両方を並べて実行できる場合)。すべてが機能していると確信しており、既存の構成を壊すリスクなしに新しい構成を編集できます。または、それを裏返して、バックアップとして必要な場合に備えて、元の構成を新しい/代替の場所に保持します。