Evil 使ってる時に Normal モードに入った時に日本語をオフしたかったので作った。普通に shell command で`ibus engine`呼び出してるだけだけど、あまり良さそうな情報がなかったので自分で書いた。ここから ダウンロードできます。
設定
(require 'ibus-toggle) (define-key global-map (kbd "C-o") 'tibus-toggle)
tibus-toggle でトグルできます。
Evil から使うなら、自分はこうしてます。指定するキーボードは`ibus read-config` コマンドでみれます。
(add-hook 'evil-normal-state-entry-hook '(lambda () (tibus-set-engine "'xkb:us::eng'")))
1/18/2016 追記 カーソル手前の文字が日本語だったら mozc にする設定を思いつきました。便利かどうか謎ですがよかったら使ってみてください。
(require 'rx) (add-hook 'evil-emacs-state-entry-hook '(lambda () (let ((c (char-before (max (point) (point-min))))) (when (and c (string-match (rx (category japanese)) (char-to-string c))) (tibus-set-engine "'mozc-jp'")))))
感想
ホントは mozc から変更したかった。けどそういうオプションなさそうだったので妥協して ibus で操作することにした。mozc 便利だけどかゆいところに手が届かない感じだ。
0 件のコメント:
コメントを投稿