1

私はいつも得ます

Error during redisplay: (wrong-type-argument sequencep 42) [22 times]

emacsメッセージバッファ内。メッセージバッファ全体がこのエラーメッセージです。

基本モードを使用しても、エラーはカウントされます。

バッファを保存し、バッファを変更すると、タイムカウントが発生します。ただし、文字を入力したり、1つのバッファにカーソルを移動したりするだけでは、時間は変わりません。

根本的な原因を見つけるにはどうすればよいですか?emacsの起動時に--debug-initを追加するのと同じように、この問題を便利に見つけるためのより良い方法。少なくとも、どの行でエラーが発生するかを知ることができます。

私の設定:emacs 24.1、24.2(現在)。archlinux。

4

2 に答える 2

0

これError during redisplayは、エラーが再表示中に実行される Elisp コードにあることを意味します。そのため、Emacs は何かを表示する必要があり、それがすでに実行しようとしていることから、多くの情報を簡単に提供することはできません。

于 2012-09-01T13:33:36.997 に答える
0

これは半ば野生の推測です: あなたのコードのいくつかはモードラインテキストに何かをしようとしており、再表示は頻繁に更新しようとします. 文字としての 42 は*であり、文字列はシーケンスです。これは別の半ば野生の推測です: あなたがロードし、モードラインをいじろうとするコードは、その文字 *を string*であるかのように処理し、その (予期される) 文字列に対してシーケンス操作を実行しようとします。

とにかく、問題を見つけるには、原因となるコードが見つかるまで、init ファイル ( ~/.emacs) を再帰的に分割します。(init ファイルなしで Emacs を起動しても問題はないと思います: emacs -Q.)

于 2013-10-28T01:29:00.353 に答える