我的ideavim配置

1,718 阅读2分钟
" 显示当前模式
set showmode
" 共享系统粘贴板
set clipborad=unamed
" 打开行号
set number
" 打开相对行号
" set relativenumber
" 设置命令历史记录条数
set history=2000
" 关闭兼容vi
set nocompatible
" 开启语法高亮功能
syntax enable
" 允许用指定语法高亮配色方案替换默认方案
syntax on
" 模式搜索实时预览,增量搜索
set incsearch
" 设置搜索高亮
set hlsearch
" 忽略大小写 (该命令配合smartcase使用较好,否则不要开启)
set ignorecase
" 模式查找时智能忽略大小写
set smartcase
" vim自身命令行模式智能补全
set wildmenu
" 总是显示状态栏
set laststatus=2
" 显示光标当前位置
set ruler
" 高亮显示当前行/列
set cursorline
"set cursorcolumn
" 禁止折行
set nowrap
" 将制表符扩展为空格
set expandtab
" 设置编辑时制表符占用空格数
set tabstop=8
" 设置格式化时制表符占用空格数
set shiftwidth=4
" 让 vim 把连续数量的空格视为一个制表符
set softtabstop=4
" 基于缩进或语法进行代码折叠
set foldmethod=indent
set foldmethod=syntax
" 启动 vim 时关闭折叠代码
set nofoldenable
" 开启surround
set surround
" 开启easymotion
set easymotion
" 留五行空白
set so 5
" 中文输入法问题
set keep-english-in-normal-and-restore-in-insert

inoremap jk <esc>

" 设置leader键
let mapleader=","

" find in files
nnoremap <space>f :action FindInPath<cr>
vnoremap <space>f :action FindInPath<cr>
" find usages
nnoremap <space>u :action FindUsages<cr>
" find class
nnoremap <space>c :action GotoClass<cr>

" Press `f` to activate AceJump
nnoremap f :action AceAction<CR>
" Press `F` to activate Target Mode
nnoremap F :action AceTargetAction<CR>
" go to declaration
nnoremap <space>d :action AceDeclarationAction<cr>

" refactor element
nnoremap <leader>n :action RenameElement<cr>
" reformat code
nnoremap <leader>c :action ReformatCode<CR>
" introduce variable
nnoremap <leader>v :action IntroduceVariable<cr>

" go to  implementation
nnoremap gi :action GotoImplementation<cr>
" go back
nnoremap gb :action Back<cr>
" go forward
nnoremap gf :action Forward<cr>
" go to head of line
nnoremap gh 0w

" show structure
nnoremap <leader>ss :action FileStructurePopup<cr>
" close readonly editors
nnoremap <leader>er :action CloseAllReadonly<cr>
" close editors but active
nnoremap <leader>ea :action CloseAllEditorsButActive<cr>