在Idea中使用Vim可太牛了!

发布时间 2023-12-24 22:03:26作者: Rezerol

写在前面

最近看到了一篇《IDEA+VIM,竟可以这么牛逼!》的文章,博主介绍了如何在Idea中使用Vim,这让自己感觉十分的惊喜。

惊的是:原来Vim和IDEA是可以集成到一起的,可以兼用两者的优点提高开发效率。

喜的是:终于又可以重拾Vim了,因为以前写C++的时候经常使用Vim做coding,Vim入门可吃了不少苦,后来转Java使用Idea去做研发,长时间不用就把Vim的东西都忘了,以至于后来想用的时候又想不起来,然后查一次忘一次,这次终于可以把两者集成到一起玩了,让Vim成为工作中的肌肉记忆。

本文对Idea中集成Vim做了简单介绍与总结,常用Idea做编码但又对Vim爱好的同学可以参考一哈。文中图片均来自于博主原文,文末会附上博客原文供大家查看。

为什么要使用Vim

Vim是一个高度可配置的文本编辑器,高度可配置到什么程度呢,大家可以看看下面这张图!

img

是不是很帅!没想到吧,我们常见的黑框框,竟然可以这么秀!这是一位常用Vim的老哥给自己打造的Vim配置,如果你对此感兴趣,推荐查看博主原文:人生苦短,我用vim

回归正题,Vim有很多优点,它能够高效地创建和更改任何类型的文本,支持数百种编程语言和文件格式,在我们常用的任意操作系统上都能够非常丝滑的用起来,帮助我们提高编码效率。要问我为什么要使用Vim,我只能说:

非常酷、帅!

第一次接触Vim是在看公司老师傅查项目源码问题的时候,师傅全程各种文件切换、内容跳转、字符替换,速度之快令人咋舌,没有一次文本操作是用到鼠标的!这让自己当时深深的着迷了,原来编码可以玩的这么花!所以说Vim酷、帅,没有任何毛病,如果你vim玩熟了,那它绝对是你人前炫技的利器!

非常高效快捷!

高效快捷不用多说,深入使用vim的同学都能感受到它的快捷便利。另外作为一名开发人员,少不了去linux服务器上去改系统配置、查看日志文件、替换查找关键字等,如果不熟悉vim,事到临头再去网上搜索就太难受了。

非常通用、适配!

不管是用Mac,还是用Linux,vim作为“vi”包含在了大多数Unix系统和Apple OS X中,它非常稳定且通用。

如果你将Vim集成到Idea中,那就能够发挥各自优势,提高自己的编程效率。

Idea+Vim玩起来

安装

在Idea中安装以下三个插件:

  • IdeaVim
  • IdeaVim-EasyMotion
  • IdeaVimExtension

常用快捷键

方向位移键位

  • h:向左位移
  • j:向下位移
  • k:向上位移
  • l:向右位移
  • [n]h/j/k/l:数字加上方向键,表示重复运行多次
    • 3h:向左移动3字符
    • 10k:向上移动10行

图片

复制(y:yank)&粘贴(paste)&删除(delete)&撤回(undo)&查找(find)

  • yy:复制当前行
  • p:粘贴
  • dd:删除当前行
  • u:撤回当前操作
  • f{word}:查找当前行当前光标后是否存在某个字符{word},如果存在则将光标移动过去,F为反向查找

图片

代码块操作

  • V:进入内容选择模式
    • 大写V:整行整行选择
    • 小写v:从光标处开始选择
  • d:删除选中的部分
  • 块级删除:di{word}, da{word},删除并进入插入模式:ci{word}, ca
    • di":表示删除“”以内的东西
    • di{:表示删除{}以内的东西
    • da{:表示连带{}以内的都删除

图片

插入操作(i:insert, a:appen, o:open)

  • i:在光标之前,进入插入模式
  • I:在本行开头,进入插入模式
  • a:在光标之后,进入插入模式
  • A:在本行结尾,进入插入模式
  • o:在本行下新增一行,进入插入模式
  • O:在本行上新增一行,进入插入模式

跳转操作

  • G | gg
    • G:跳转到当前文本最后一行
    • gg:跳转到当前文本第一行
  • H | M | L
    • H:移动到当前页第一行
    • M:移动到当前页中间
    • L:移动到当前页最后一行
  • zz:改变窗口的整体位置,将当前光标所在处,移动到窗口中部
  • ^ | $
    • ^:跳转到行首
    • $:跳转到行尾
  • % :括号匹配跳转,适配(), {}, []
  • w:按字符串向后一个一个跳转,w前加数字n,则表示向后跳转n个字符串
  • b | e
    • b:移动到当前字符串开头字符
    • e:移动到当前字符串结尾字符
  • zo | zc
    • zo:打开当前{}内容
    • zc:折叠当前{}内容

图片

配置Vim

改vim配置,跟正常修改vim配置一样,idea中也有一个vim配置文件:~/.ideavimrc

图片

配置内容和正常配置.vimrc一样,这里不做过多说明,按自己喜好进行配置即可

其他配置

Action配置以及插件配置

个人感觉没有Idea的快捷键来的快,这里不做过多说明,感兴趣的可以查看博主原文:IDEA + Vim,竟可以这么牛逼