Aquamacsのトラブルシューティング方法、または標準のEmacsトラブルシューティング手法はAquamacsでも機能するはずです。この場合、ログレベルを上げたいだけですが、Aquamacs/Emacsに慣れているだけでなく、他の可能性にも興味があります。
私が抱えている実際の問題は、TRAMP(つまり、ssh)を介してファイルを開くとAquamacsがハングすることがあるということです。リモートサーバーからファイルを取得し、flymake(trampでは機能しません)を介して実行できるようですが、新しいタブでファイルを開く直前に何も実行しなくなります。エラー/デバッグ/情報メッセージが表示されません。この後、AquamacsはCPUをほとんど使用しません。続行する唯一の方法は、強制終了して最初からやり直すことです。
MacBookからEmacs/TRAMPでファイルを開くときに同様の問題が発生しました。
~/.emacs
ファイルでTRAMPデバッグをオンにできます。
(setq tramp-verbose 10)
それを挿入した後、Emacsを再起動し、ファイルを再度開いてみてください。 TRAMPがフリーズしたら、C-G
を押してから、バッファ(C-x b
)を*debug tramp/ssh REMOTEHOST*
に切り替えてみてください。考えられる問題がないか調べます。
私の場合、トランプはステータスラインでフリーズしていました:
Tramp: Inserting `ssh:REMOTEHOST:/path/to/FILE'...done
トランプのデバッグログには、次の行が表示されました。
WARNING: terminal is not fully functional
Mercurialのセットアップでページングをオンにしたことを追跡しましたが、less
はTERM=dumb
を警告していました。これは私の~/.hgrc
で簡単に修正されました:
[pager]
pager = LESS='FSRX' less -d
最後に、楽しみのために、これが私の~/.emacs
ファイルのTRAMPセットアップです。これには、処理を高速化するためのいくつかの小さな調整が含まれています。
;; Tramp (http://www.emacswiki.org/emacs/TrampMode) for remote files
(setq tramp-default-method "ssh")
;; Backup (file~) disabled and auto-save (#file#) locally to prevent delays in editing remote files
(add-to-list 'backup-directory-alist
(cons tramp-file-name-regexp nil))
(setq tramp-auto-save-directory temporary-file-directory)
ps
を使用して、Emacsが開始したバックグラウンドタスクを探します。この場合はssh -e none REMOTEHOST
...おそらくアクティビティモニターでも検索できます(Aquamacs.appの子プロセスとしてフラグを立てる必要があります)。
vayo:~ chris$ ps a | grep ssh
14687 s002 Ss+ 0:00.04 ssh -e none REMOTEHOST
14694 s003 R+ 0:00.01 grep ssh
14653 s007 S+ 0:00.15 ssh REMOTEHOST
Aquamacsが開始したタスクを強制終了します(-e none
私の場合)。
vayo:~ chris$ kill 14687
Aquamacsを引き続き使用してください。
TRAMPを使用すると、同様のハングが発生します。通常、マウスをバッファ上に移動してバッファ内のどこかをクリックすると、TRAMPのフリーズが解除されます。なぜこれが起こるのかわかりませんが、あなたはそれを試してみることができます。それがうまくいかない場合は、コマンドがハングしているときにコマンドを渡してみます。コマンドに応答しますか?