質問
私は学校のサーバーでEmacsの実装を使用するクラスにいます。 Snow Leopardを実行しているMacで、Emacsを独自に実装しています。サーバーEmacsにアクセスするには、サーバーにsshし、その場所からEmacsを起動します。
私はemacsが比較的新しいので、local-emacsのシェルモードからserver-emacsにアクセスしてsshしてサーバーにアクセスしようとすると、特定の問題が発生します。 「画面サイズ-1x80が小さすぎる」というエラーが表示され、サーバーEmacsが起動しません。
Appleの端末でこれを行おうとするとサーバーemacsが起動するという別の問題がありますが、端末内でemacsを起動したときのインターフェイスは本当に嫌いです。
両方のシナリオで、新しいウィンドウ内でサーバーEmacsを起動しようと数回試みましたが、どうやら正しくないようです。
解決
私は、Trey Jackson(またはより古風な 'ange-ftp)のTrey Jacksonの提案がおそらく最善の策だと思います。
一般に、emacs内でemacsを実行するのは良い考えではありません。サーバー上でemacsを実行するか(端末内で-nwモードで、または$ DISPLAYマジックを使用して)、Macでemacsを実行します(trampを介して)。両方を行う良い方法は本当にありません。
他のヒント
あなたがやろうとしていることを理解することは有益だと思います。
サーバー上のファイルを編集するだけですか?その場合は、 tramp のドキュメントを読み、次のことを試してください。
C-x C-f //user@server:/path/to/file
サーバーで実行されているemacsを本当に使用したい場合は、フレームを作成してみてください
(もしそうなら、 tramp
を調べてください)実際にサーバーからemacsを使用したいが、Macでウィンドウを表示したい場合:
ssh server
setenv DISPLAY mymac:0
emacsclient file &
これは、X11を実行していることを前提としており、Macのディスプレイを解決する方法を知っています。 Mac用のX11はこちらで入手できます。 a>。
何をしているのかを伝えるのは少し難しいですが、おそらくXトンネルを使用してサーバーにsshし、そこでemacsを実行して、Macのウィンドウをポップアップします。
最初に、ターミナルを使用しないでください。
MacでX11を起動します(XQuartzをまだお持ちでない場合はグーグル)。 XTermを起動します(デフォルトでこれを行う必要があります)。そのXTermから、-Yオプションを使用してサーバーにsshします。
ssh -Y me@server.something
これにより、リモートシェルが取得され、DISPLAY環境がセットアップされて、MacのXサーバーにトンネルされます。そこからxtermを実行してテストします。それが機能する場合は、代わりにemacsを実行できます。それが機能する場合は、ssh呼び出しと組み合わせることができます。
ssh -Y me@server.something / usr / bin / emacs#または必要なパス
パスワードを要求しないようにsshを設定する必要がありますが、それはあなたが要求した以上のものです。