コマンドループでは、実行した複雑なコマンドの履歴を管理していて、
それらのコマンドを簡単に繰り返せるようにしています。
複雑なコマンドとは、ミニバッファを使って引数を読むコマンドです。
これには、任意のM-xコマンド、任意のM-:コマンド、
ミニバッファから引数を読み取るinteractive
指定を持つ任意のコマンドが
含まれます。
コマンド自身の実行中に明示的にミニバッファを使っても、
複雑なコマンドとはみなしません。
この変数の値は、最近使った複雑なコマンドのリストであり、 各要素は評価すべきフォームを表す。 編集セッション中は、すべての複雑なコマンドを集積するが、 (変数
history-length
で指定される)最大サイズに達すると 新しい要素を追加するたびに古い要素を削除する。command-history ⇒ ((switch-to-buffer "chistory.texi") (describe-key "^X^[") (visit-tags-table "~/emacs/src/") (find-tag "repeat-complex-command"))
この履歴リストは、実際にはミニバッファ履歴(see Minibuffer History) の特別な場合です。 要素は文字列ではなく式なのです。
まえのコマンドを編集したり取り出すための専用コマンドがたくさんあります。
コマンドrepeat-complex-command
とlist-command-history
は、
ユーザーマニュアル
(see ミニバッファコマンドの繰り返し)に説明してあります。
ミニバッファ内では、通常のミニバッファ履歴コマンドを使えます。