GNU Emacs 32.0.50 (9008bf64c3) のマニュアルを PLaMo 翻訳で機械翻訳したものです。誤訳を含むことがあります。原文: https://www.gnu.org/software/emacs/manual/html_node/elisp/Recursive-Mini.html ・ emacs-doc.conao3.com

21.13 再帰的ミニバッファ

これらの関数と変数は、再帰的なミニバッファを扱います(再帰的編集を参照):

関数: minibuffer-depth

この関数は、ミニバッファのアクティベーションの現在の深度を非負整数として返します。アクティブなミニバッファがない場合は、0を返します。

ユーザーオプション: enable-recursive-minibuffers

この変数が nil 以外の場合、ミニバッファがアクティブな状態でも、ミニバッファを使用するコマンド(find-file など)を呼び出すことができます。このような呼び出しを行うと、新しいミニバッファに対して再帰的な編集レベルが生成されます。デフォルトでは、内側のミニバッファを編集している間、外側のミニバッファは非表示になります。minibuffer-follows-selected-frame に nil を設定すれば、複数のフレームで同時にミニバッファを表示させることができます。(emacs)Basic Minibuffer を参照してください。

この変数が nil の場合、ミニバッファがアクティブな間は、別のウィンドウに切り替えて操作したとしても、ミニバッファコマンドを呼び出すことはできません。

コマンド名に nil 以外のプロパティ enable-recursive-minibuffers がある場合、そのコマンドはミニバッファから呼び出された場合でも、ミニバッファを使用して引数を読み取ることができます。また、インタラクティブ宣言において enable-recursive-minibuffers を t にバインドすることでもこれを実現できます(interactive の使用 を参照)。ミニバッファコマンド next-matching-history-element(通常はミニバッファ内では M-s)は、後者の方法を採用しています。