有時在vim編輯時,可以在一個文件中多餘的字符,用戶沒想到在那裏是因爲他在「插入模式」匆忙衝過來時,得到一些完成。
幸運的是,即使用戶正在衝,按ESC幾次總是足以讓他們離開插入模式和正常模式,沒有任何意外。
問:
是否有一個鍵綁定適用於插入模式以同樣的方式?按「我」可以讓你進入插入模式,但如果你多次按下它,你將開始在文件中插入字母「i」。
目標:
的目標是有一定的鍵又回到插入模式,用戶甚至可以用眼睛按多次,結合封閉,仍然不用擔心意外的字符是「驚喜」放入文件中。
有時在vim編輯時,可以在一個文件中多餘的字符,用戶沒想到在那裏是因爲他在「插入模式」匆忙衝過來時,得到一些完成。
幸運的是,即使用戶正在衝,按ESC幾次總是足以讓他們離開插入模式和正常模式,沒有任何意外。
問:
是否有一個鍵綁定適用於插入模式以同樣的方式?按「我」可以讓你進入插入模式,但如果你多次按下它,你將開始在文件中插入字母「i」。
目標:
的目標是有一定的鍵又回到插入模式,用戶甚至可以用眼睛按多次,結合封閉,仍然不用擔心意外的字符是「驚喜」放入文件中。
<C-o>i
應該這樣做。 <C-o>
讓你暫時進入正常模式,但只有一個命令,如果該命令是「進入插入模式」,那麼你只需返回那裏。
編輯:我可以重現你的錯誤消息,現在,它似乎最容易做的事情是這樣的:
:nmap <C-i> i
:imap <C-i> <C-o>i
如果不映射在插入模式<C-i>
,但在正常模式下,那麼反覆擊中<C-i>
將是冪等的。
感謝Benoit提及<C-i>
在插入模式下插入一個選項卡。
由位掩碼給出的答案工作,但顯然它產生錯誤消息的副作用:
E37:沒有寫自去年變化(增加覆蓋!)
除非你已經配置您的vimrc關閉該消息。
,但似乎沒有產生錯誤信息工作的另一種選擇:這似乎是對標準工作的vim
CTRL-C i
。
你應該做的是,在不同的模式下表現不同的映射:
:inoremap <F1> <NOP>
:nnoremap <F1> i
:vnoremap <F1> <esc>i
:cnoremap <F1> <C-C>i
:onoremap <F1> <esc>i
擊中F1將進入插入模式即可。
您也可以切換'insertmode'
設置(:set insertmode
):在此模式下,插入模式是默認模式(要與逃生開關,你去用CTRL-L正常模式
感謝您的回覆。這有助於在用戶有能力更改vimrc的情況下...雖然(用戶可能沒有能力或願意更改vimrc),但純粹的vanilla vim解決方案也不錯。 – dreftymac 2012-02-02 16:15:28
我可以。本身並沒有想到任何簡單的組合,但是使綁定進入插入模式並不重要,但是在插入模式下什麼也不做。 – Sarah 2012-02-01 14:52:45
你看過[this](http://vim.wikia.com/wiki/Avoid_the_escape_key #Toggling_insert_mode) – 2012-02-01 14:53:41
Tom Ingram:感謝您的聯繫,不幸的是,這個建議顯示瞭如何*切換*插入模式(打開和關閉)...這個特定問題的目標是找到一種方法來打開它並知道它已經打開,即使你點擊,也不會在緩衝區中插入任何字符鍵連接多次。 – dreftymac 2012-02-01 14:58:29