Vim為什麼
為什麼ESC
將游標移回vim?
在 vim 中,當我點擊
ESC
返回命令模式時,游標向左移動一個字元。這不是我所希望的,偶爾我會立即點擊l
回到那個位置,也許是為了刪除一個角色。這種行為有原因嗎?這對於我缺少的使用模式是否方便?
在插入模式下,游標在字元之間,或者在第一個字元之前或最後一個字元之後。在正常模式下,游標位於一個字元上(換行符不是用於此目的的字元)。這有點不尋常:大多數編輯器總是將游標放在字元之間,並讓大多數命令作用於游標之後(嚴格來說,不是在 下)的字元。這可能部分是由於在 GUI 之前,文本終端總是將游標顯示在字元上(下劃線或塊,可能閃爍)。這種抽像在插入模式下失敗,因為這需要多一個位置(文章與圍欄)。
可以這麼說,在模式之間切換必須將游標移動半個字元。該
i
命令向左移動,將游標放在它結束的字元之前。a
命令向右移動。如果可能,退出插入模式(通過按Esc
)將游標向左移動(如果它位於行首,則改為向右移動)。我想這種
Esc
行為是有道理的。通常,您在行尾輸入,並且Esc
只能向左走。所以一般行為是最常見的行為。將游標下的字元視為最後一個有趣的字元,將插入命令視為
a
. 您可以在不移動游標的情況下重複a
Esc
,但如果您從非空行的開頭開始,您將被向右碰撞一個位置。