返回首页 - Notes - 2017

JetBrains 系列 IDE 搭配 Vim 使用


背景

一直以来都在纯 Vim 环境下编码,甚至都没怎么用 GUI 模式,大部分时间都在终端里度过

不太喜欢折腾 IDE,主要是 IDE 缺乏 Vim 那种行云流水的操作感,再加上没了熟悉的 Vim 快捷键

虽然大部分 IDE 都有 Vim 插件,但能用、好用的没几个

难能可贵的是,JetBrains 系列 IDEVim 插件效果尚可

稍微配置了下,体验还行,故对配置过程做下记录


配置

macOS 下的 PHPStorm 2017.2.4 为例

安装插件

  1. Preferences -> Plugins -> Install JetBrains plugin
  2. 搜索 ideaVim,找到后安装
  3. 安装完重启 PHPStorm

修改 IDE 自身的快捷键

  1. Preferences -> Keymap -> Main Menu -> Code -> Completion
  2. BasicSmartTypeCyclic Expand WordCyclic Expand Word (Backward) 上分别点右键,然后删掉已有的默认快捷键
  3. Basic 设置新的快捷键为:Ctl+/
  4. SmartType 设置新的快捷键为:Ctl+Option+/
  5. Cyclic Expand Word 设置新的快捷键为:Ctl+Option+[
  6. Cyclic Expand Word (Backward) 设置新的快捷键为:Ctl+Option+]

修改 Vim 插件的快捷键

  1. Preferences -> Vim Emulation
  2. 将列出的全部快捷键的 Handler 都选为 Vim

全部完成后点选 Apply,或者点选 OK 后重启


添加 Vim 配置文件

在个人主目录下添加一个名为 .ideavimrc 的文件,内容如下:

source $HOME/.vimrc

imap <c-p> <esc>:action HippieCompletion<cr>a
imap <c-n> <esc>:action HippieBackwardCompletion<cr>a

这几行配置的意思是:让 ideaVim 继承我们已有的 Vim 配置,并修改 Ctrl+PCtrl+N 的行为


使用

Vim 最基本的一个功能就是历史单词补全,现在你可以通过 Vim 传统的快捷键 Ctrl+P 或我们自定义的 Ctrl+Option+[ 来达到目的

反方向历史单词补全用 Ctrl+NCtrl+Option+]

跳转方法定义用 Ctrl+] 或者 Command+B,跳回用 Ctrl+T 或者 Command+[

代码补全用 Ctrl+/Ctrl+Option+/,对,就是用 IDE 自带的补全功能,这也是使用 IDE 最主要的意图


date:2017-11-16