;; 適当なキーにアサイン (define-key global-map "\C-cc" 'exchange-char) (defvar exchange-chars '((?ア . ?ァ) (?イ . ?ィ) (?ウ . ?ゥ) (?エ . ?ェ) (?オ . ?ォ) (?ヤ . ?ャ) (?ユ . ?ュ) (?ヨ . ?ョ) (?ァ . ?ア) (?ィ . ?イ) (?ゥ . ?ウ) (?ェ . ?エ) (?ォ . ?オ) (?ャ . ?ヤ) (?ュ . ?ユ) (?ョ . ?ヨ)) "*置き換える文字の組合わせの alist") (defun exchange-char () "カーソルの次の文字を exchange-chars に則って変更する" (interactive) (let* ((char (char-after)) (repl (cdr (assq char exchange-chars)))) (cond (repl (delete-char 1) (insert-char repl 1)) (char (ding) (message "`%c' は置換対象ではありません" char)) (t (message "次の文字がありません")))))
(defvar exchange-chars '((?ア . ?ァ) (?イ . ?ィ) (?ウ . ?ゥ) (?エ . ?ェ) (?オ . ?ォ) (?ヤ . ?ャ) (?ユ . ?ュ) (?ヨ . ?ョ)) "*置き換える文字の組合わせの alist") (defun exchange-char () "カーソルの次の文字を exchange-chars に則って変更する" (interactive) (let* ((char (char-after)) (repl (or (cdr (assq char exchange-chars)) (car (rassq char exchange-chars))))) (cond (repl (delete-char 1) (insert-char repl 1)) (char (ding) (message "`%c' は置換対象ではありません" char)) (t (message "次の文字がありません")))))
△ X [完璧です!!! ありがとうございます!! 2番目のめちゃ便利です!! 金不要って恐縮です。ぱんださんのことは忘れませ..]