これを、一度のundoが 関数hoge() を実行するまえに戻すような関数 hoge() のコードの書き方はできんもんでしょうか。
undoの利用に手を加えるのではなく、hoge() の実装による解決法を求めています。
よろしくお願いします。
---- code ----
(defun hoge()
(interactive)
(replace-string "foo" "bar" nil) ; (1)
(replace-string "xxx" "yyy" nil) ; (2)
)
標準機能ではなく拡張になりますが、下記のものを使用してはどうでしょうか。
http://www.bookshelf.jp/soft/meadow_33.html#SEC482
関数を開始する時点で (undo-group-boundary)を実行するようにし、
関数実行後にundo-group で、実行開始時まで戻るかと思います。