ddskkでも確定キーの挙動をAquaSKKライクに

カナモードからq押さないとひらがなモードに戻れないのは不便なので、AquaSKKと同じように C-j (僕は C-o) で カナ→かな になるようにしたい。

調べてみると、 skk-rom-kana-rule-list というのに、かな・カナモード用のキーマップがあるので、それに対して自分で修正したバージョンのfuncを skk-kakutei-key に登録してあげれば良いみたいな雰囲気。

そこで、

(defun my:skk-kakutei-key (arg)
  (interactive "P")
  (if skk-henkan-mode
      (skk-kakutei arg)
    (skk-j-mode-on)))

というような、変換中だったら普通に確定キーとして動くけど、それ以外だったらかなに戻す、という動作をするカスタム関数を定義して、それを、

(add-to-list 'skk-rom-kana-rule-list
     '(skk-kakutei-key nil my:skk-kakutei-key))

してあげればOK。 skk-rom-kana-rule-list というのは (require 'skk-setup) しただけだとまだないので、 (require 'skk-vars) も必要だった。

最終的な設定はこちら:

https://github.com/typester/emacs-config/blob/master/conf/init/init-ddskk.el

はー、しかしこれで、AquaSKK/uim-skk/ddskk 全部で同じ感じで入力できる環境がようやくできた。 miyagawaさんのpodcastで、yak率という言葉がでてきたけど、SKK導入のyak率は相当なものだなぁ。

by typester / at 2013-03-08T09:42:00 / skk · emacs / Comments(0)