viper-modeの設定
レベルは3で、
http://www29.atwiki.jp/sicpstudygroup/pages/45.html
からいただいた設定をまるまる貼り付けています。
この設定の出典は、
http://ho-ki-boshi.blogspot.com/2007/11/viper.html
のようです。
5行目の
(define-key viper-insert-global-user-map "\C-c" 'viper-exit-insert-state)
は、出典元にはなく、control-c に ESPキーと同様の機能を与えています。
これは、ちょっと便利です。
なお、出典元のnorさんの記載によると、これら設定を行わないと、
- gg でバッファの一番上にカーソルが移動しない
- * で検索が開始できない
- C-], C-t でタグジャンプできない
- C-o で前のカーソル位置に戻れない
- backspace で改行が削除できない
- C-wC-w でウィンドウが移動できない
- uの連続でundo連続にならない
- %%% が定義されていて%の対応括弧への移動が遅い
たぶん、私に関係あるのは、gg と backspase, uの3つだけです。
以上は、レベル3でのお話の様ですので、
以上は、レベル3でのお話の様ですので、
レベルを1に近づければ、回避されるのかもしれません。
さらに、下記の2行を加えて、
control-d が delete と同じに働くようにしています。
control-h は、上記の設定が無くても
さらに、下記の2行を加えて、
(define-key viper-insert-global-user-map "\C-h" 'backward-delete-char-untabify)control-h が back space と同じに
(define-key viper-insert-global-user-map "\C-d" 'delete-char)
control-d が delete と同じに働くようにしています。
control-h は、上記の設定が無くても
back space で働きますが、上記を加えて、
改行が消せるようにしています。
windows で xyzzy を使っていたのと、
同じ挙動をするようにしています。
上記2行については、付け加えをしなくても、
レベルを変えると、きっと、
レベルを変えると、きっと、
このような挙動をしてくれる様になるのでしょうが、
いろいろ試すのが面倒なので、レベルを3のまま、
いろいろ試すのが面倒なので、レベルを3のまま、
上記を書き加えています。