2013-10-24 56 views
1

問題this答案啓發:編輯當前插入的文本,但否則自動退出Vim插入模式

是否有配置VIM這樣的方式,在插入模式移動光標外當前編輯區(光標鍵,ctrl-o前綴,無論)將返回到正常模式,但只是編輯當前插入的文本將保持插入模式?

怎麼樣?

或者,如何防止光標離開在插入模式當前插入的文本,需要Esc第一。


一些例子來闡明:

ibsr<left><bs>a<right>

停留在插入模式,但

ibar<up> 
iba<left><left><left> 
iba<right> 

都會返回到正常模式。

回答

2

有沒有快速和簡單的內置配置;最接近的是默認(空)值'backspace',它禁止在當前插入之外的<BS>,<Del>,<C-W><C-U>

也就是說,沒有什麼能夠阻止你編寫自定義插件。它必須:inoremap <expr>所有的移動鍵(如<Left>,<Up>等),並測試遊標離開當前行/不管你認爲當前的編輯(不幸的是,'[']標記只在插入模式後留下設置),然後通過<Esc>有條件返回原始密鑰。

可行,但相當涉及。 你真的需要編輯給你那些訓練輪嗎?編輯時的一點自制和反思應該已經教會你使用Vim「right」。

+0

好吧,聽起來這是不值得的努力。我只是希望能有一個簡單的方法(因爲整個「停留在vim插入模式」陣營)。這也有效地解決了我的一個vim寵物小偷,沒有辦法只是*插入*一個字符與兩個按鍵(而不是當前需要三個)。好吧。 – hyde

+1

要插入單個字符,請嘗試以下操作:'nnoremap i $ r' –