« ^ »

Emacsのmini bufferでの入力待ちを取り消せなくなったらabort-recursive-editする

所要時間: 約 1分

Emacsのmini bufferでの入力待ちを取り消せなくなることがある。これはmini bufferでの入力中に更にEmacsの別の呼び出す際にしばしば発生する。Emacsのコマンド実行中に別のコマンドを呼び出すことははRecursive Edit1 と言う機能でそれ自体は通常の機能なのだが、実装次第でおかしな状態となってしまいmini bufferを閉じれなくなる事象が発生する。

この状況に陥った場合 abort-recursive-edit 2 を呼び出してみると良い。Recursive Editの状態から脱出できる。これはデフォルトでは C-] にバインドされている。

(abort-recursive-edit)

または minibuffer-quit-recursive-edit を使うこともできる。

(minibuffer-quit-recursive-edit)