(require 'skk) (define-minor-mode skk-auto-replace-mode "同じ見出し語をquery-replaceする。議事録・セミナーメモ校正のためのモード。" nil " SKK置換") (defvar skk-my-kakutei-key nil "") (defadvice skk-start-henkan (before auto-replace activate) (and (eq skk-henkan-mode 'on) (setq skk-my-kakutei-key (buffer-substring skk-henkan-start-point (point))))) ;; (progn (ad-disable-advice 'skk-start-henkan 'before 'auto-replace) (ad-update 'skk-start-henkan)) (defadvice skk-kakutei (after auto-replace activate) (skk-replace-after-kakutei)) ;; (progn (ad-disable-advice 'skk-kakutei 'after 'auto-replace) (ad-update 'skk-kakutei)) (defun skk-replace-after-kakutei () (interactive) (when (and skk-auto-replace-mode skk-my-kakutei-key) (unwind-protect (perform-replace skk-my-kakutei-key (buffer-substring skk-henkan-start-point (point)) t nil nil) (setq skk-my-kakutei-key nil)))) (provide 'mylisp-skk-replace)