只包含一些最常用的基础配置,以改进 vim 的初始状态。
使用:拷贝以下内容到 ~/.vimrc 文件中,没有此文件请自行创建。
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" Author: whoru.S.Q" Link: https://github.com/whorusq/linux-learning/blob/master/vim/.vimrc" Version: 0.2""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""基本设置""""""""""" 去掉vi一致性模式,避免以前版本的一些bug和局限set nocompatible" 显示行号set nuhighlight LineNr cterm=bold ctermfg=darkgray" 语法高亮syntax on" 显示光标所在行号、列号"set ruler" 粘贴带格式set paste" 高亮当前行set cursorline"hi CursorLine cterm=NONE ctermbg=darkred ctermfg=white"hi CursorLine cterm=NONE ctermbg=230 ctermfg=NONE" 高亮当前列"set cursorcolumn"hi CursorColumn cterm=NONE ctermbg=darkred ctermfg=white"hi CursorColumn cterm=NONE ctermbg=237 ctermfg=NONE" history 文件中需要记录的行数set history=100" 去掉输入错误的提示声音"set noeb" 在处理未保存或只读文件的时候,弹出确认set confirm" 带有如下符号的单词不要被换行分割set iskeyword+=_,$,@,%,#,-" 显示 Tab 键、行尾符set list lcs=tab:>-,trail:-" 不要换行"set nowrap" 禁止生成临时文件set nobackupset noswapfile" 设置当文件被改动时自动载入set autoread""""""""""搜索和匹配设置""""""""""" 搜索高亮set hlsearchhi Search cterm=NONE ctermfg=darkred ctermbg=yellow cterm=reverse" 搜索时忽略大小写set ignorecase" 在查找时输入字符过程中就高亮显示匹配点,然后回车跳到该匹配点。set incsearch" 设置查找到文件尾部后折返开头或查找到开头后折返尾部。set wrapscan" 不要高亮被搜索的句子(phrases)"set nohlsearch" 匹配括号高亮的时间(单位是十分之一秒)set matchtime=5""""""""""文本操作设置""""""""""" 统一缩进为 4 制表符set tabstop=4set softtabstop=4set shiftwidth=4" 智能对齐set smartindent" 用空格代替制表符set expandtab" 继承前一行的缩进方式,特别适用于多行注释set autoindent" 使用 C 样式的缩进"set cindent" 文件编码set fileencodings=utf-8,gb2312,usc-bom,cp936,euc-cnset termencoding=utf-8set encoding=utf-8""""""""""底部状态条设置""""""""""set laststatus=2 " 长久显示1set statusline=set statusline+=%7*\[%n] " buffernrset statusline+=%1*\ %<%F\ " 文件路径set statusline+=%2*\ %y\ " 文件类型set statusline+=%3*\ %{''.(&fenc!=''?&fenc:&enc).''} " 编码1set statusline+=%3*\ %{(&bomb?\",BOM\":\"\")}\ " 编码2set statusline+=%4*\ %{&ff}\ " 文件系统(dos/unix..)set statusline+=%5*\ %{&spelllang}\%{HighlightSearch()}\ " 语言 & 是否高亮,H表示高亮?set statusline+=%8*\ %=\ row:%l/%L\ (%03p%%)\ " 光标所在行号/总行数 (百分比)set statusline+=%9*\ col:%03c\ " 光标所在列set statusline+=%0*\ \ %m%r%w\ %P\ \ " Modified? Read only? Top/bottomfunction! HighlightSearch() if &hls return 'H' else return '' endifendfunctionhi User1 ctermfg=white ctermbg=darkredhi User2 ctermfg=blue ctermbg=58hi User3 ctermfg=white ctermbg=100hi User4 ctermfg=darkred ctermbg=95hi User5 ctermfg=darkred ctermbg=77hi User7 ctermfg=darkred ctermbg=138 cterm=boldhi User8 ctermfg=231 ctermbg=darkgray"hi User9 ctermfg=#ffffff ctermbg=#810085hi User0 ctermfg=yellow ctermbg=138""""""""""其它""""""""""" 用空格键来开关折叠"set foldenable"set foldmethod=manual"nnoremap @=((foldclosed(line('.')) < 0) ? 'zc':'zo')