2

ドキュメントに記載されている問題のいくつかには、すでにEmacsサーバーを使用しています。たとえば(server-start).emacsinitファイルにあり、EDITORenvを設定しています。テキストやログメッセージを入力する必要があるときに、他のプログラムがEmacsの新しいインスタンスを開かないようにするemacsclientための変数。gitこれは今のところうまく機能しています。

私は今、Emacsサーバーを他の目的に使用できるかどうか疑問に思っています。私はssh -Xセッションを通じてリモートでEmacsを起動することがよくあります。時々、sshセッションを閉じて(たとえば、ローカルコンピュータを再起動する必要があります)、再接続する必要があります。このためにEmacsを完全に閉じる代わりに、Emacsから切り離して、後で再接続できれば素晴らしいと思います。

これはEmacsサーバーで可能ですか?私がオンラインで読んだことから、答えはイエスだと信じていますが、:

私の質問:

Emacsサーバーから安全に切り離して後で接続するにはどうすればよいですか?

4

2 に答える 2

8

SSH セッション内から Emacs を直接起動すると、正常にデタッチできません。これは、Emacs プロセスがリモート シェルによって作成されたプロセス グループの一部になり、シェルが存在する場合、そのプロセス グループ内のすべてのプロセスが終了するためです。

ただし、最初に Emacs をデーモン モードで起動するには、emacs --daemon. Emacs は構成をロードし、編集サーバーを開始し ((server-start)構成に明示的でなくても)、端末から切り離します。この Emacs デーモンは、異なる SSH セッション間で存続します。

その後、emacsclient実行中のデーモンに接続するためにのみ使用します。

于 2013-02-26T21:58:24.043 に答える
4

emacs --daemonまたは(server-start).emacs

次の使用emacsclient fileemacsclient -n fileまたはemacsclient -c単に取り付けるため。

いつものように添付を残しC-x C-cます。

于 2014-03-14T11:26:50.697 に答える