概述
前文IntelliJ IDEA快捷键和使用技巧,主要介绍idea的快捷键,提过vim,本文介绍通过安装插件实现我们vim编辑。本文基于mac环境。
ideavim
ideavim是idea的vim模拟插件,它虽然没有vim的全部功能,却可以在vim命令下调用idea的action。
安装完成后重启idea,然后到 “Tools | Vim Emulator”,点击启用。在编辑窗口即可随意切换vim模式。如果esc按键无用,可以用command + [
替代。
配置
可以在home目录添加vimrc配置:
~/.ideavimrc
基础配置
set hlsearch " highlight searches
set incsearch " do incremental searching, search as you type
set ignorecase " ignore case when searching
set smartcase " no ignorecase if Uppercase char present
set clipboard=unnamedplus " 使用系统粘贴板(vim用y粘贴的内容也可以通过command + c 粘贴)
除了vim基础配置,还支持映射idea的action。action列表可以通过: actionlist
查看,也有人整理了action列表。
:map \r :action ReformatCode<CR>
在vim的nomal模式下,按键r,即可格式化代码
输入法切换
进入vim模式下,自动切换为英文输入法,进入编辑模式,又切换原来的输入法。需要其他插件配合,此处是idea插件:ideaVimExtension
,安装插件后,在.ideavimrc
添加如下配置:
set keep-english-in-normal-and-restore-in-insert
AceJump集成
AceJump插件可以完成chrome浏览器中vimium插件类似的功能,给需要查找的字符条件键盘映射,可以快速把光标定位到想要的地方。对应vim为字符搜索,在nomal模式下通过f
进行搜索,但aceJump更方便强大,所以把vim的f
映射到aceJump。
安装插件AceJump后,配置.ideavimrc
如下:
" Press `f` to activate AceJump
map f :action AceAction<CR>
" Press `F` to activate Target Mode
map F :action AceTargetAction<CR>
" Press `g` to activate Line Mode
map g :action AceLineAction<CR>
效果:
normal模式下按
f
,输入定位光标的字母,然后输入高亮想要跳转位置的高亮字母。
其他
可以结合我的其他两篇文章: