短い形式: http://emacsformacosx.com/ にあるMac OSXバージョンのEmacsをデーモンとして実行し、グラフィカルクライアントとテキストクライアントを必要に応じて実行します。
詳細には、ここに私が望むワークフローがあります:
ログイン時に、/Applications/Emacs.app/Contents/MacOS/Emacs --daemon
を実行して、emacsをデーモンとして起動します。 私はすでにこれを行う方法を知っています。
ローカルターミナルからemacsを実行する場合、次のいずれかが必要です。
emacs
を実行する場合は、選択したファイルで新しいフレームを開きます。emacsclient
を実行した場合は、選択したファイルで新しいフレームを開きます。リモート端末からemacsを実行する場合、デーモンプロセスに接続してテキストモードのemacsを起動したいと思います。
Emacs.app
を実行する場合、新しいインスタンスを起動して新しいウィンドウを開く代わりに、バックグラウンドで実行されているemacsデーモンを再利用します。
これまでのところ、上記の#1と#2.2しか達成できませんが、これらは簡単な部分です。 #3と#4は、これを機能させるために最も必要なものです。誰かがこれらのことを達成する方法を知っていますか?
はい、emacsclientを使用することをお勧めします。新しいフレームを取得するには、-cオプションを追加します。私はそれをより速くし、emacsclientがemacsサーバーが戻るのを待たないように言うためのエイリアスを持っています:
alias em='emacsclient -n'
emacsclient -nw
em
エイリアスを使用して新しいファイルをロードします。更新:
このヒント をチェックして、 Platypus を使用してemacsclientの周りにアプリラッパーを作成する方法を説明します。次に、 "Open With ..."を使用して、新しいアプリラッパーを使用して起動できます。
はい、これはこれをうまく行う方法についてのかなり包括的な説明です。私はそれをうまく機能させるためにいくつかの方法を試しましたが、ここで説明したものよりも優れていません。
https://Gist.github.com/304964
乾杯!
4.の場合、これを.emacsに入れます。
(setq ns-pop-up-frames nil)
Macが同じアプリケーションを2度開かないため、Mac .app(Platypusを使用)を作成するソリューションは機能しません。