端末が Ctrl に対して送信するエスケープ シーケンスを正確に把握する +Ctrl を入力して矢印 +V , Ctrl +挿入モードの矢印:先頭の ESC
が挿入されます 文字 (^[
として表示) in vim) 文字どおり、残りのエスケープ シーケンスが続きます。次に、これらのエスケープ シーケンスについて、次のような方法で vim に伝えます。
map <ESC>[5D <C-Left>
map <ESC>[5C <C-Right>
map! <ESC>[5D <C-Left>
map! <ESC>[5C <C-Right>
Putty の Application Cursor Keys モードのデフォルト設定が不便であることを思い出したようです (理由は忘れました)。最初にこの設定を切り替えることをお勧めします。
エスケープ シーケンスは端末間で異なりますが、競合 (つまり、異なる端末の異なるキーに対応するエスケープ シーケンス) はまれであるため、特定の端末タイプにのみマッピングを適用しようとする必要は特にないことに注意してください。
おそらく、PuTTY の Application Cursor Keys モード構成を確認するのが最善の策です。
デフォルトのシーケンスは ESC を送信します プレフィックスと [
として 続いて A
ppend または C
ハンジやその他のもので、挿入モードになります。
Gilles に続いて追加
^V エスケープのもう少し明示的なバージョンは、od(1) で見ることができます。ここでは、端末で ^Up、^Down、^Right、^Left と入力しています。
$ od -a
0000000 esc [ 1 ; 5 A esc [ 1 ; 5 B esc [ 1 ;
0000020 5 C esc [ 1 ; 5 D
だから私の端末は ^[[1;5A
を送信します Ctrl を押したとき + ↑
ここでより良い解決策を見つけました:http://vim.wikia.com/wiki/Fix_arrow_keys_that_display_A_B_C_D_on_remote_shell
この文字列を .vimrc
に入れるだけです ファイル:
:set term=cons25
更新
このファイルを /home
にコピーします 、名前を .vimrc
に変更します :
/usr/share/vim/vim_VERSION_/vimrc_example.vim