Evil-modeを使ってみる

Emacsの閲覧モードであるview-modeでいろいろ設定してたら,かなりvimライクな感じになってしまったので,それならいっそのことと思いEmacs上でvimをエミュレートするevil-modeを使ってみました.使用感を確かめて導入するか決めたいと思っているのですが,少し設定をしてみたのでそれをログとして残してみます.

evilではvimの"Mode"のことを"State"と呼びます.これはEmacsのMajor Mode,Minor Modeなどと混合することを避けるためのようです.

InsertステートではEmacsの設定を優先する


vimEmacsInsert StateEmacs
(setcdr evil-insert-state-map nil)

Insert StateEmacsNormal StateEsc使'perfect' combination of emacs+evilEscNormal State

jkNormal Statejjjkey-chord.eljjNormal State

(setcdr evil-insert-state-map nil)
(define-key evil-insert-state-map [escape] 'evil-normal-state)
(key-chord-define evil-insert-state-map "jj" 'evil-normal-state)


Normalステートに移行したらIMEをオフにする


Normal StatehjklctrlIME便
# Normal StateIME使
Normal StateIME
(add-hook 'evil-normal-state-entry-hook 'mac-change-language-to-us)

mac使'mac-change-language-to-us 
# IME

https://gitorious.org/evil/evil/blobs/raw/doc/doc/evil.pdfHooksHookState

雑感


Emacsvim
Insert StateCtrl+bfnpNormal Statehjkl使