ミニバッファで入力するときのヒストリーの使い方 (2)

interactive 以外でやってみる。
下記は read-string の例

(setq inserttest-history nil)
(setf (get 'inserttest 'ed::minibuffer-history-variable)
      'inserttest-history)

(defun inserttest ()
  (insert (read-string "string: " :history 'inserttest)))

;; test
(inserttest)

注意すべきことは、

  1. :history で与えるのは、変数(上記では inserttest-history)ではなくてシンボル(上記ではinserttest)とすること
  2. :history の後ろの数字は正しく与えること

かな。これらを間違うと、今までミニバッファに入力したすべての履歴を参照するようになるみたいだ。
2 はまだよく分からん。上の例では :history を :history0 とかにするとおかしくなった。
インタラクティブ文字列の説明を読んでもよくわからん。