溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

vim編輯器中映射功能的介紹

發(fā)布時間:2020-06-12 17:06:40 來源:億速云 閱讀:199 作者:元一 欄目:建站服務(wù)器

什么是映射

映射可以理解為設(shè)置快捷鍵,就是讓你用少量的,便于按的鍵來替代比較多、繁的鍵。

什么時候用映射

如果你有以下一個或多個困擾,那么就可以來使用映射了哦

  • 不滿現(xiàn)在的按鍵

  • 想設(shè)置一些快捷鍵來提高編輯速度

  • 想組合一些按鍵來完成新的需求

映射的分類

我們知道,vim有多種模式,與其對應(yīng)的,映射也有nmap(普通映射)、imap(插入映射)、vmap(塊選擇映射)。

我們分別來選幾個案例來講講這三種映射。

普通映射

" 使用F1切換顯示行號
nmap <F1> :set nu! nu?<cr>

這里的CR表示回車鍵的意思。

插入映射

" 使用jj來代替esc鍵,完成從插入模式退回到普通模式
imap jj <esc>`^

一般我們都會使用jj來代替esc鍵,來完成快速從插入模式切換到普通模式。

" 在插入模式下向前向后刪除字符
imap <C-b> <Backspace>
imap <C-d> <Esc>lxi

這里c表示ctrl鍵,在插入模式下,使用ctrl+b表示向后刪除一個字符,而使用ctrl+d表示向前刪除一個字符。

塊模式映射

一般的,我們經(jīng)常會對多行文本來進行增加縮進,或者減少縮進。之前一篇文章說過,可以通過塊選擇結(jié)合命令行、或者通過宏來實現(xiàn)該需求。今天,學(xué)了映射后,可以使用一個更加簡單的方法即可實現(xiàn)需求。

vmap < <gv 
vmap > >gv

現(xiàn)在,如果我們想對多行進行縮進,只需選擇好這些行,然后按下>或<即可實現(xiàn)。

遞歸映射

如果你下一下的映射時,會發(fā)生什么

nmap dd O<esc>jddk

如果當(dāng)你執(zhí)行了dd后,會發(fā)生嚴(yán)重的問題的。因為映射兩邊都有dd,所以會導(dǎo)致無限循環(huán)。這種無限循環(huán)是由于遞歸造成了,所以叫做遞歸映射。

大家可以看到,遞歸映射是有危害的,所以,工作中一律不準(zhǔn)使用遞歸映射,而是要采用非遞歸映射。那么如果進行非遞歸映射呢?也非常簡單,加4個字母即可nore

  • nmap 遞歸    nnoremap 非遞歸

  • imap 遞歸  inoremap非遞歸

  • vmap 遞歸 vnoremap 非遞歸

以上就是讓Vim更好的工作——VIM映射的詳細內(nèi)容,更多請關(guān)注億速云其它相關(guān)文章!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI