我自己的機器是 linux, ssh 遠程登錄solaris系統, 結果發現不管我使用 xterm 還是 linux console, 在 solaris 上都無法讓 vim 在 insert 模式下正確識別方向鍵.
在 normal 模式下方向鍵工作正常, 可一旦進入 insert 模式, 就不行了. 比如按向上方向鍵, 其結果是插入一個新行, 並輸入A, 其實就是把向上鍵的 escape sequence("ESC O A")當做了三次按鍵, 而不是把它當做方向鍵.
而且無論我把 TERM 設置成 vt100 還是 xterm, 都是一樣的結果.
查找了半天資料, 發現我犯了一個愚蠢而低級的錯誤. 應該讓 vim 運行在 非兼容模式下, 插入模式中才支持方向鍵!
在 .vimrc 中加入set nocompatible
即可.
實際上登錄一個新系統後, 更好的做法是把 vim 自帶的一個示例 vimrc 復制到自己的目錄中, 做法是在vim中輸入
:!cp -i $VIMRUNTIME/vimrc_example.vim ~/.vimrc