set encoding=utf-8
set nobomb
set ts=4
set expandtab
set autowrite " 自动保存
set autoindent " 自动缩进
set background=dark
set backspace=2 " 设置退格键可用
set completeopt=preview,menu " 代码补全
set clipboard+=unnamed " 共享剪贴板
set cursorline " 突出显示当前行
set cursorcolumn " 突出显示当前列
set confirm " 在处理未保存或只读文件的时候,弹出确认
set cmdheight=2 " 总是显示状态行
set cindent " 使用C/C++语言的自动缩进方式
set cinoptions={0,1s,t0,n-2,p2s,(03s,=.5s,>1s,=1s,:1s "设置C/C++语言的具体缩进方式
set foldenable " 允许折叠
set fillchars=vert:\ ,stl:\ ,stlnc:\ "在被分割的窗口间显示空白,便于阅读
set history=1024 " 历史记录数
set hlsearch " 搜索逐字符高亮
set incsearch
set iskeyword+=_,$,@,%,#,- " 带有如下符号的单词不被换行分割
set ignorecase " 搜索忽略大小写
set linebreak " 整词换行
set laststatus=2 " 启动显示状态行(1),总是显示状态行(2)
set matchtime=1 " 匹配括号高亮的时间(单位是十分之一秒)
set mouse=a " 使用鼠标
set number " 显示行号
set nocompatible " 去一致性
set previewwindow " 标识预览窗口
set ruler " 显示标尺
set showcmd " 输入的命令显示出来
set scrolloff=3 " 光标移动到buffer的顶部和底部时保持3行距离
set softtabstop=2 " 统一缩进为4
set shiftwidth=4
set smarttab " 在行和段开始处使用制表符
set showmatch " 高亮显示匹配的括号
set showcmd
set showmode
set tabstop=2 " Tab键的宽度
set whichwrap=b,s,<,>,[,] "光标从行首和行末时可以跳到另一行去
filetype plugin indent on
nnoremap <F2> :set invpaste paste?<CR>
imap <F2> <C-O>:set invpaste paste?<CR>
set pastetoggle=<F2>
inoremap ( ()<Esc>i
inoremap [ []<Esc>i
inoremap { {<CR>}<Esc>O
autocmd Syntax html,vim inoremap < <lt>><Esc>i| inoremap > <c-r>=ClosePair('>')<CR>
inoremap ) <c-r>=ClosePair(')')<CR>
inoremap ] <c-r>=ClosePair(']')<CR>
inoremap } <c-r>=CloseBracket()<CR>
inoremap " <c-r>=QuoteDelim('"')<CR>
inoremap ' <c-r>=QuoteDelim("'")<CR>
function ClosePair(char)
if getline('.')[col('.') - 1] == a:char
return "\<Right>"
else
return a:char
endif
endf
function CloseBracket()
if match(getline(line('.') + 1), '\s*}') < 0
return "\<CR>}"
else
return "\<Esc>j0f}a"
endif
endf
function QuoteDelim(char)
let line = getline('.')
let col = col('.')
if line[col - 2] == "\\"
return a:char
elseif line[col - 1] == a:char
return "\<Right>"
else
return a:char.a:char."\<Esc>i"
endif
endf
"以下是GO-VIM 配置,可能和NREDTree冲突,如果报错可屏蔽删除.
execute pathogen#infect()
syntax on
filetype plugin indent on
let g:go_version_warning = 0
Vimrc 配置文件 .包括GO插件设置

最新推荐文章于 2024-01-14 21:53:18 发布
