文章目录
先贴上效果
基础
根路径的 _vimrc 文件
打开, 粘贴如下
插件
这个就要麻烦很多了
三步,
1.> Git 是必不可少的, 如果有问题 自行谷歌 …
2.> 用来传输数据的curl, 官网 https://curl.haxx.se/ 和 Github
3.> vundle vim的插件管理器
强烈建议先看一遍文档!
上面两个是 Linux上的安装介绍, 下面的是 Win的介绍, 都差不多, 仅仅插在 curl 和 文件夹名 上罢了
因为是 WIn平台的, 我们直接使用绝对路径
git clone https://github.com/VundleVim/Vundle.vim.git F:\IDE\GVim\vimfiles\bundle\Vundle.vim
注意了, 既然使用了绝对路径, 克隆下来以后, 那么官网文档的例子也需要修改路径( 在 vim文件夹编辑机_vimrc )
贴一下插件相关的配置
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 编码设置
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
set langmenu=zh_CN.UTF-8
set helplang=cn
set termencoding=utf-8
set encoding=utf8
set fileencodings=utf8,ucs-bom,gbk,cp936,gb2312,gb18030
"解决菜单乱码
source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim
"解决consle输出乱码
language messages zh_CN.utf-8
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 快捷键定义
let mapleader = "," "定义<leader>键
source $VIMRUNTIME/vimrc_example.vim
nmap <leader>s :source F:/IDE/GVim/Vim/_vimrc<cr>
" nmap <leader>e :e $VIM/_vimrc<cr>
inoremap ( ()<LEFT>
inoremap [ []<LEFT>
inoremap { {}<LEFT>
inoremap " ""<LEFT>
inoremap ' ''<LEFT>
inoremap < <><LEFT>
function! RemovePairs()
let s:line = getline(".")
let s:previous_char = s:line[col(".")-1]
if index(["(","[","{"],s:previous_char) != -1
let l:original_pos = getpos(".")
execute "normal %"
let l:new_pos = getpos(".")
" only right (
if l:original_pos == l:new_pos
execute "normal! a\<BS>"
return
end
let l:line2 = getline(".")
if len(l:line2) == col(".")
execute "normal! v%xa"
else
execute "normal! v%xi"
end
else
execute "normal! a\<BS>"
end
endfunction
function! RemoveNextDoubleChar(char)
let l:line = getline(".")
let l:next_char = l:line[col(".")]
if a:char == l:next_char
execute "normal! l"
else
execute "normal! i" . a:char . ""
end
endfunction
inoremap <BS> <ESC>:call RemovePairs()<CR>a
inoremap ) <ESC>:call RemoveNextDoubleChar(')')<CR>a
inoremap ] <ESC>:call RemoveNextDoubleChar(']')<CR>a
inoremap } <ESC>:call RemoveNextDoubleChar('}')<CR>a
inoremap > <ESC>:call RemoveNextDoubleChar('>')<CR>a
""""""""""""&