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

40.5.3 シェル履歴の参照

cshやbashをはじめとする各種シェルは、‘!’および‘^’で始まる履歴参照をサポートしています。シェルモードはこれらの構文を認識し、履歴置換を実行できます。

履歴参照を挿入して TAB と入力すると、入力履歴から一致するコマンドが検索され、必要に応じて置換が行われ、その結果が履歴参照に代わってバッファに配置されます。例えば、! m v TAB を使って ‘mv’ で始まる直近のコマンドを取得できます。必要に応じてコマンドを編集し、その後 RET と入力してコマンドをシェルに再送信できます。

シェルモードでは、履歴参照をシェルに送信する際に、バッファ内でそれらを展開することを任意で設定できます。この機能を有効にするには、変数 comint-input-autoexpand に input を設定してください。また、SPC をコマンド comint-magic-space にバインドすることで、SPC に履歴展開を行わせることができます。キーバインドのインタラクティブな変更を参照してください。

シェルモードでは、プロンプトの後に履歴参照が続く場合にそれを認識します。シェルモードがどのようにプロンプトを認識するかについては、シェルプロンプトを参照してください。