Next: ミニバッファーでのファイル名, Up: ミニバッファー [Contents][Index]
ミニバッファーを使用中、ミニバッファーはエコーエリアにカーソルとともに表示されます。ミニバッファーは通常、コロンが最後についたプロンプト(prompt)から開始されます。プロンプトはどのような入力が期待されるか、そしてそれがどのように使われるのかを示します。プロンプトは、フェイスminibuffer-prompt
を使ってハイライトされます。
ミニバッファーで入力するもっとも簡単な方法は、テキストを入力してからRETで引数入力を完了してミニバッファーを終了する方法です。かわりにC-gを入力して引数を求めているコマンドをキャンセルし、ミニバッファーを終了することもできます(中止と中断を参照してください)。
コロンの前のカッコ内にデフォルト引数(default
argument)を表示するプロンプトもあります。このデフォルト値は、RETだけを入力したときに引数として使用されます。たとえばバッファー名を読み取るコマンドは、通常はデフォルト値としてバッファー名を表示します。RETを入力することでデフォルトのバッファーにたいして処理を行うことができます。ユーザーオプションminibuffer-default-prompt-format
でデフォルト引数の表示方法をカスタマイズできます。
Minibuffer Electric
Defaultモードというグローバルマイナーモードを有効にしている場合には、ミニバッファーの内容の変更を開始すると、Emacsがデフォルト引数を非表示にします。ミニバッファーのテキストを元に戻せば、ふたたびプロンプトにデフォルト値が表示されます。更に変数minibuffer-eldef-shorten-default
を非nil
値に変更すると、スクリーンのスペースを削減するために‘(default
default-arg)’ではなく、‘[default-arg]’のようにデフォルト値を表示します。このマイナーモードを有効にするには、M-x
minibuffer-electric-default-modeとタイプしてください。
エコーエリアにミニバッファーが表示されると、他のエコーエリアの使用と競合するかもしれません。ミニバッファーがアクティブなときは、メッセージはミニバッファーのテキストの後にカッコ内に数秒、あるいは何かをタイプするまで表示されて、その後消えます。ミニバッファーの使用中、Emacsはキーストロークをエコーしません。
ミニバッファー使用中に、たとえば入力を要するテキストをメモするために別フレームに切り替えることができます(フレームコマンドを参照)。デフォルトではアクティブミニバッファーはその新たなフレームへ移動します。ユーザーオプションminibuffer-follows-selected-frame
をnil
にセットした場合には、ミニバッファーはそれをオープンしたフレームに留まり、カレントコマンドを完了(またはabort)するためにそのフレームに切り替えて戻らなければなりません。このオプションにnil
やt
以外の値をセットすると、ミニバッファーはカレントコマンドでオープンされた再帰的ミニバッファーの後でのみ移動します((elisp)Recursive
Miniを参照)。このオプションは主にEmacs
28.1以前の挙動を(おおよそ)維持するためです。最終的にミニバッファーの使用を終えた際には、そのコマンドの効果は常にミニバッファーをオープンした最初のフレームで発生することに注意してください。唯一の例外はそのフレームがもはや存在しない場合で、そのときは選択されたフレームにたいして処理を行います。