1
プログラムからエラーからバックトレースを取得する
エラーがEmacs Lispのコードに合図し、されている場合debug-on-errorでt、私はエラーが発生した場所、それが簡単に把握することができますバックトレースバッファを取得します。ただし、ネットワークからの応答を非同期で処理しているときに発生するエラーの場合、バックトレースバッファーをポップアップ表示するのは面倒なので、エラーをキャッチしcondition-caseてログに記録します。 だから、でエラーを処理しているときに、エラーcondition-caseのポイントでバックトレースにアクセスする方法はありますか?backtrace関数を呼び出すと、ハンドラー内のコードのバックトレースが取得されますが、これは私が探しているものではありません。 (condition-case e (do-something-that-might-fail) (error (message "%s" ;; This gets the wrong backtrace! (with-temp-buffer (let ((standard-output (current-buffer))) (backtrace) (buffer-string))))))