在Idea中使用Vim可太牛了!
寫(xiě)在前面
最近看到了一篇《IDEA+VIM,竟可以這么牛逼!》的文章,博主介紹了如何在Idea中使用Vim,這讓自己感覺(jué)十分的驚喜。
驚的是:原來(lái)Vim和IDEA是可以集成到一起的,可以兼用兩者的優(yōu)點(diǎn)提高開(kāi)發(fā)效率。
喜的是:終于又可以重拾Vim了,因?yàn)橐郧皩?xiě)C++的時(shí)候經(jīng)常使用Vim做coding,Vim入門(mén)可吃了不少苦,后來(lái)轉(zhuǎn)Java使用Idea去做研發(fā),長(zhǎng)時(shí)間不用就把Vim的東西都忘了,以至于后來(lái)想用的時(shí)候又想不起來(lái),然后查一次忘一次,這次終于可以把兩者集成到一起玩了,讓Vim成為工作中的肌肉記憶。
本文對(duì)如何在Idea中集成Vim,以及相關(guān)vim命令做了簡(jiǎn)單介紹與總結(jié),常用Idea做編碼但又對(duì)Vim愛(ài)好的同學(xué)可以參考一哈。文中圖片均來(lái)自于博主原文,文末會(huì)附上博客原文供大家查看。
為什么要使用Vim
Vim是一個(gè)高度可配置的文本編輯器,高度可配置到什么程度呢,大家可以看看下面這張圖!

是不是很帥!沒(méi)想到吧,我們常見(jiàn)的黑框框,竟然可以這么秀!這是一位常用Vim的老哥給自己打造的Vim配置,如果你對(duì)此感興趣,推薦查看博主原文:人生苦短,我用vim
回歸正題,Vim有很多優(yōu)點(diǎn),它能夠高效地創(chuàng)建和更改任何類(lèi)型的文本,支持?jǐn)?shù)百種編程語(yǔ)言和文件格式,在我們常用的任意操作系統(tǒng)上都能夠非常絲滑的用起來(lái),幫助我們提高編碼效率。要問(wèn)我為什么要使用Vim,我只能說(shuō):
非常酷、帥!
第一次接觸Vim是在看公司老師傅查項(xiàng)目源碼問(wèn)題的時(shí)候,師傅全程各種文件切換、內(nèi)容跳轉(zhuǎn)、字符替換,速度之快令人咋舌,沒(méi)有一次文本操作是用到鼠標(biāo)的!這讓自己當(dāng)時(shí)深深的著迷了,原來(lái)編碼可以玩的這么花!所以說(shuō)Vim酷、帥,沒(méi)有任何毛病,如果你vim玩熟了,那它絕對(duì)是你人前炫技的利器!
非常高效快捷!
高效快捷不用多說(shuō),深入使用vim的同學(xué)都能感受到它的快捷便利。另外作為一名開(kāi)發(fā)人員,少不了去linux服務(wù)器上去改系統(tǒng)配置、查看日志文件、替換查找關(guān)鍵字等,如果不熟悉vim,事到臨頭再去網(wǎng)上搜索就太難受了。
非常通用、適配!
不管是用Mac,還是用Linux,vim作為“vi”包含在了大多數(shù)Unix系統(tǒng)和Apple OS X中,它非常穩(wěn)定且通用。
如果你將Vim集成到Idea中,那就能夠發(fā)揮各自?xún)?yōu)勢(shì),提高自己的編程效率。
Idea+Vim玩起來(lái)
安裝
在Idea中安裝以下三個(gè)插件:
- IdeaVim
- IdeaVim-EasyMotion
- IdeaVimExtension
常用快捷鍵
方向位移鍵位
- h:向左位移
- j:向下位移
- k:向上位移
- l:向右位移
- [n]h/j/k/l:數(shù)字加上方向鍵,表示重復(fù)運(yùn)行多次
- 3h:向左移動(dòng)3字符
- 10k:向上移動(dòng)10行
復(fù)制(y:yank)&粘貼(paste)&刪除(delete)&撤回(undo)&查找(find)
- yy:復(fù)制當(dāng)前行
- p:粘貼
- dd:刪除當(dāng)前行
- u:撤回當(dāng)前操作
- f{word}:查找當(dāng)前行當(dāng)前光標(biāo)后是否存在某個(gè)字符{word},如果存在則將光標(biāo)移動(dòng)過(guò)去,F(xiàn)為反向查找
代碼塊操作
- V:進(jìn)入內(nèi)容選擇模式
- 大寫(xiě)V:整行整行選擇
- 小寫(xiě)v:從光標(biāo)處開(kāi)始選擇
- d:刪除選中的部分
- 塊級(jí)刪除:di{word}, da{word},刪除并進(jìn)入插入模式:ci{word}, ca{word}
- di":表示刪除“”以?xún)?nèi)的東西
- di{:表示刪除{}以?xún)?nèi)的東西
- da{:表示連帶{}以?xún)?nèi)的都刪除
插入操作(i:insert, a:appen, o:open)
- i:在光標(biāo)之前,進(jìn)入插入模式
- I:在本行開(kāi)頭,進(jìn)入插入模式
- a:在光標(biāo)之后,進(jìn)入插入模式
- A:在本行結(jié)尾,進(jìn)入插入模式
- o:在本行下新增一行,進(jìn)入插入模式
- O:在本行上新增一行,進(jìn)入插入模式
跳轉(zhuǎn)操作
- G | gg
- G:跳轉(zhuǎn)到當(dāng)前文本最后一行
- gg:跳轉(zhuǎn)到當(dāng)前文本第一行
- H | M | L
- H:移動(dòng)到當(dāng)前頁(yè)第一行
- M:移動(dòng)到當(dāng)前頁(yè)中間
- L:移動(dòng)到當(dāng)前頁(yè)最后一行
- zz:改變窗口的整體位置,將當(dāng)前光標(biāo)所在處,移動(dòng)到窗口中部
- ^ | $
- ^:跳轉(zhuǎn)到行首
- $:跳轉(zhuǎn)到行尾
- % :括號(hào)匹配跳轉(zhuǎn),適配(), {}, []
- w:按字符串向后一個(gè)一個(gè)跳轉(zhuǎn),w前加數(shù)字n,則表示向后跳轉(zhuǎn)n個(gè)字符串
- b | e
- b:移動(dòng)到當(dāng)前字符串開(kāi)頭字符
- e:移動(dòng)到當(dāng)前字符串結(jié)尾字符
- zo | zc
- zo:打開(kāi)當(dāng)前{}內(nèi)容
- zc:折疊當(dāng)前{}內(nèi)容
配置Vim
改vim配置,跟正常修改vim配置一樣,idea中也有一個(gè)vim配置文件:~/.ideavimrc
配置內(nèi)容和正常配置.vimrc一樣,這里不做過(guò)多說(shuō)明,按自己喜好進(jìn)行配置即可
其他配置
Action配置以及插件配置
個(gè)人感覺(jué)沒(méi)有Idea的快捷鍵來(lái)的快,這里不做過(guò)多說(shuō)明,感興趣的可以查看博主原文:IDEA + Vim,竟可以這么牛逼
參考文章:
《 人生苦短,我用VIM》:https://programmercarl.com/前序/vim.html
《IDEA + Vim,竟可以這么牛逼》:https://mp.weixin.qq.com/s/KDqGFf_yEP24l_RlZD1ITw
其他vim文章:
- B 站 vim 入門(mén)講解:bilibili.com/video/BV1Yt411X7mu
- 簡(jiǎn)明 VIM 練級(jí)攻略:coolshell.cn/articles/5426.html
- learn-vim:github.com/iggredible/Learn-Vim
- Vim 配置:ruanyifeng.com/blog/2018/09/vimrc.html
浙公網(wǎng)安備 33010602011771號(hào)