日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

Vim的使用技巧-自动闭合成对符号

發(fā)布時(shí)間:2025/4/5 编程问答 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Vim的使用技巧-自动闭合成对符号 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

(,“,‘,[符號(hào)的自動(dòng)閉合

我們可以用簡(jiǎn)單的鍵映射來(lái)實(shí)現(xiàn)以上這些成對(duì)符號(hào)的閉合,也就是在插入模式下輸入這些符號(hào)的左邊部分,鍵映射將自動(dòng)完成右邊部分,并保持插入模式,光標(biāo)保持在成對(duì)符號(hào)的當(dāng)中以便在其中輸入字符。比如:

:inoremap ( ()<Esc>i

以上的設(shè)置的意思是在插入模式時(shí)將輸入的(轉(zhuǎn)換為()然后回到正常模式,再用i回到插入模式,這時(shí)候光標(biāo)位置正好落在)之前。同理可以完成其它符號(hào)的自動(dòng)閉合。

但是這樣的設(shè)置,在完成在成對(duì)符號(hào)中的輸入后,要跳出成對(duì)符號(hào)繼續(xù)輸入時(shí)還是不方便。下面的方法就可以來(lái)解決這個(gè)問(wèn)題:

...
:inoremap ( ()<Esc>:let leavechar=")"<CR>i
:inoremap [ []<Esc>:let leavechar="]"<CR>i
...
:imap <C-l> <Esc>:exec "normal f" .leavechar<CR>a

這里的設(shè)置分兩段,第一段在之前提到的方法上又加了:

let leavechar=")"<CR>

這里表示在閉合符號(hào)的同時(shí),將對(duì)應(yīng)的右側(cè)符號(hào)附給leavechar這個(gè)變量,<CR>表示回車。
第二段中的<C-l>?表示CTRL+l?,exec "normal f" .leavechar<CR>a?表示在正常模式下用命令f來(lái)定位到leavechar中所保存的字符,然后用a命令在其后插入光標(biāo),這樣就做到了跳出成對(duì)符號(hào)繼續(xù)編輯的要求。

對(duì)現(xiàn)有的文字添加成對(duì)符號(hào)

有的時(shí)候我們需要對(duì)已經(jīng)輸入的字符加上成對(duì)符號(hào)。 一般情況是我們選中一段文字然后對(duì)其加上成對(duì)符號(hào),我們可以這樣來(lái)實(shí)現(xiàn):

:vnoremap ( <Esc>`>a)<Esc>`<i(<Esc>

這里要注意的是`>?和`<?的用法,前者表示定位到所選區(qū)域的最后一個(gè)字符,而后者表示定位到所選區(qū)域的最后一個(gè)字符,這樣就能在所選區(qū)域的開(kāi)頭和結(jié)尾加上成對(duì)符號(hào)了。

根據(jù)上面的說(shuō)明,我們可以根據(jù)需要將這些設(shè)置寫入VIM的設(shè)置文件.vimrc里,這樣就可以讓Vim來(lái)簡(jiǎn)化我們的輸入操作了。


轉(zhuǎn)載自:http://blog.csdn.net/hardy_2009/article/details/6388704

總結(jié)

以上是生活随笔為你收集整理的Vim的使用技巧-自动闭合成对符号的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。