cshやbashを含むさまざまなシェルは、‘!’や‘^’で始まるヒストリー参照(history references)をサポートします。Shellモードはこれらを認識して、ヒストリーの置き換える処理をします。
ヒストリー参照を挿入してTABとタイプすると、これは入力ヒストリーからマッチするコマンドを検索して、必要なら置換を行い、結果をバッファー内のヒストリー参照の場所に配します。たとえば、一番最近の‘mv’で始まるコマンドを取り出すには、! m v TABとタイプします。必要ならコマンドを編集して、RETでシェルにたいしてコマンドを再実行できます。
Shellモードはヒストリー参照をシェルに送るとき、オプションでヒストリー参照を展開できます。これを行なうには、変数comint-input-autoexpand
をinput
にセットします。SPCをcomint-magic-space
にバインドすれば、SPCでヒストリー参照を展開できます。対話的なキーバインディングの変更を参照してください。
Shellモードは、ヒストリー参照がプロンプトの後にあればヒストリー参照を認識します。Shellモードがプロンプトを認識する方法については、Shellプロンプトを参照してください。