VIM 配置 - 插件篇

IDEA Vimrc 配置 配置篇

系列概览

  • 上篇(插件篇):介绍了 IdeaVim 插件的安装与常用插件设置。IDEA VIM 配置 - 插件篇
  • 本篇(基础配置篇):聚焦于 IdeaVim 的核心配置,不涉及插件与快捷键。
  • 下篇(Keybind 定制篇):将详细讲解如何基于本篇配置,自定义高效的 Vim 快捷键。

配置详情

础配置部分都加入了 注释说明 ,直接看配置就行 自己配置的配置项不多

" basic setting start
set clipboard=unnamedplus       " 使用系统粘贴板
set hls                         " 高亮上次搜索的匹配项
set is                          " 搜索实时高亮匹配
" autocmd FileType html,xml set matchpairs+=<:> " xml 支持 <> ref % 增强插件
set sc                           "
set smd
set scs

set tm=5000                     " 按键超时时间 为了配合 which-key 不建议设置太短
let mapleader=' '               " leader key 设置
set incsearch                   " do incremental searching, search as you type
set ignorecase                  " ignore case when searching
set smartcase                   " no ignorecase if Uppercase char present
set showmode=keep
" basic setting end

" ideavim based IDE setting start
set so=10                    " 光标所在行在上下保持的最小行数
" ideavim based IDE setting end

" 这部分设置都需要 IDEA 的支持,会被映射到 idea 中
set nu                          " show line number
set rnu                         " show relative line number
set cul                         " Highlight the line containing the cursor
" set cc=5                      " Maps to IntelliJ's visual guide columns IDEA 的视觉参考线,没什么用
set list                        " 显示空白字符
set warp                        " 开启软换行
" idea feature end

" idea only options start
set ideajoin                    "  use J join lines ,nested if , comments , 启用 IDEA 的智能 JOIN ,用来合并多行、嵌套 if 等操作
set idearefactormode=visual     " idea select mode
" idea only options end

" basic setting end

配置说明

  • 使用系统剪切板 vim用y粘贴的内容也可以通过command + c 粘贴
  • 通过绝对行号 (nu) 与相对行号 (rnu) 结合使用,配合 so 保持足够的上下文视野,大幅减少视觉跳跃。
  • 软换行与空白可视化listwarp 配合,便于在长注释或 Markdown 编辑时查看实际字符。
  • 开启 ideajoin 智能合并。

配置误区

许多 Vim 缩进相关设置(tabstopshiftwidthsofttabstopshiftround)在 IdeaVim 中不会生效:

" 这些缩进配置由 IDE 控制,写在 .ideavimrc 中无效:
set tabstop=4
set shiftwidth=4
set softtabstop=4
set shiftround=true

建议:请在 IntelliJ IDEA 的 Settings ▶ Editor ▶ Code Style 中统一设置语言的缩进与制表符偏好,保证不同文件类型间一致。

总结

本篇集中梳理了 IdeaVim 的基础配置,下篇会介绍一些 keybind 的思路

updatedupdated2025-05-082025-05-08