W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
這一章我們會講到怎么更有效地學(xué)習(xí)Vim,不過在此之前需要先做一些小小的準(zhǔn)備。
讓我們先創(chuàng)建一個mapping,這個mapping會為你的左手減輕很多負(fù)擔(dān)。執(zhí)行下面的命令:
:inoremap jk <esc>
ok,現(xiàn)在進(jìn)入插入模式然后敲擊jk
。Vim會返回到常用模式,就像你敲擊了escape按鍵一樣。
在Vim中有很多默認(rèn)的方式可以退出插入模式:
<esc>
<c-c>
<c-[>
使用上面的這幾種方式,你都需要伸出你的爪子,這會讓你感到很不自在。使用jk
會很棒,因為這兩個按鍵正好就在你最強(qiáng)健有力的兩個手指下面,并且你不用搞得好像在演奏吉他和弦似的移動手指。
有些人可能更喜歡使用jj
,但我更鐘意jk
,有兩個原因:
jk
,只會將光標(biāo)向下移動一下,然后又向上移動一下,最終光標(biāo)還是停留在原來的位置。但是在常用模式下按了jj
的話,只會把光標(biāo)移動到一個不同的地方。不過需要注意的是,如果在你所用的語言中jk
會經(jīng)常組合出現(xiàn)(例如德語),你可能就需要選擇一個不同的mapping了。
ok,現(xiàn)在你已經(jīng)有了一個新的mapping,你會怎么學(xué)習(xí)使用它呢?特別是你已經(jīng)用了這么久的escape按鍵,使用escape按鍵都已經(jīng)刻入了你的腦子中,以至于在編輯的時候你會不假思索的敲擊它。
重新學(xué)習(xí)一個mapping的竅門就是_強(qiáng)制_將之前的按鍵設(shè)置為不可用,_強(qiáng)迫_自己使用新的mapping。執(zhí)行下面的命令:
:inoremap <esc> <nop>
這個命令會告訴Vim在插入模式下敲擊escape按鍵后執(zhí)行<nop>
(no operation),這樣escape按鍵在插入模式下就無效了。ok,現(xiàn)在你就_不得不_使用jk
這個mapping來退出插入模式了。
一開始你可能不太適應(yīng),你還是會在插入模式下敲擊escape按鍵,并且以為已經(jīng)退出到了常用模式,然后開始敲擊按鍵準(zhǔn)備在常用模式下做一些事情,從而導(dǎo)致一些不需要的字符出現(xiàn)在你的文本中。這會讓你感到有些不爽,但如果你堅持一段時間后,你會驚訝的發(fā)現(xiàn)你的思維和手指會多么快的適應(yīng) 新的mapping。用不到一到兩個小時你就不會再在插入模式下敲擊escape了。
這個方法適用于所有的用于替代原有操作方式的新mapping,包括在生活中也是如此。當(dāng)你想改掉一個壞習(xí)慣的時候,你最好能夠想一些辦法使得這個壞習(xí)慣很難甚至是不能發(fā)生。
如果你想學(xué)會自己做飯,不想每天都吃蓋澆飯,那么每天下班的時候就不要去成都小吃了。這樣你就會在餓了的時候想辦法去做點東西吃,當(dāng)前你先要確保你家里沒有泡面。
如果你想戒煙,那你就不要把煙帶在身上,把它放到車上。這樣當(dāng)你的煙癮又犯了的時候,你會覺得走到車?yán)锶ト熓且患艿疤鄣氖拢@樣你就不會吸了。
如果還是會在Vim的常用模式中使用方向鍵移動光標(biāo),那么就將它們映射為<nop>
。
如果你在編輯模式下也會使用方向鍵,同樣的,映射為<nop>
吧。
正確使用Vim的關(guān)鍵就是使得自己能夠快速的離開插入模式,然后在常用模式下進(jìn)行移動。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: