所有的配置,都有注释。
这个配置,不需要安装任何插件,都是vim默认支持的配置。
如果你是vim新手,直接使用即可,不然就挑选自己需要的摘来使用。
直接写到~/.vimrc即可。
git 仓库地址
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 显示和格式相关
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 显示行号
set number
" 显示标尺
set ruler
" Turn on the WiLd menu
set wildmenu
" 去掉有关vi一致性模式,避免以前版本的一些bug和局限,解决backspace不能使用的问题
set nocompatible
" 使回格键(backspace)正常处理indent, eol, start等
set backspace=2
" 允许backspace和光标键跨越行边界
set whichwrap+=<,>,h,l,b,s,[,]
" 输入的命令显示出来,看的清楚些
set showcmd
" 历史纪录
set history=200
" 启用自动对齐功能,把上一行的对齐格式应用到下一行
set autoindent
" 依据上面的格式,智能的选择对齐方式,对于类似 语言编写很有用处
set smartindent
" 高亮显示匹配的括号
set showmatch
" 匹配括号高亮的时间(单位是十分之一秒)
set matchtime=5
" 让<>可以使用%跳转
set mps+=<:>
" 搜索逐字符高亮
set hlsearch
set incsearch
" 查找时候忽略大小写
set ignorecase
" 检测文件的类型
filetype plugin indent on
" 智能补全。打开文件类型检测, 加了这句才可以用智能补全
set completeopt=longest,menu
" C风格缩进
set cindent
set cinoptions=h1,l1,g1,t0,i4,+4,(0,w1,W4
" set cino=:0g0t0(susj1
" 不使用 selectmode
set selectmode=
" 不使用“Shift + 方向键”选择文本,“Shift + 方向键”代表向指定方向跳一个单词。如果你喜欢这项功能的话,可以使用“set keymodel=startsel,stopsel”打开它
set keymodel=
" 指定在选择文本时,光标所在位置也属于被选中的范围。如果指定 selection=exclusive 的话,可能会出现某些文本无法被选中的情况
set selection=inclusive
" 去掉输入错误提示声音
set noeb
" 自动保存
set autowrite
" 突出显示当前行
set cursorline
" 突出显示当前列
" set cursorcolumn
"共享剪贴板
set clipboard+=unnamed
" 文件被改动时自动载入
set autoread
" 顶部底部保持3行距离
set scrolloff=3
" 带有如下符号的单词不要被换行分割
set iskeyword+=_,$,@,%,#,-
" 显示宽字符显示
set ambiwidth=double
" 插入模式粘贴不会自动缩进避免混乱
set pastetoggle=<F9>
" 启动显示状态行(1),总是显示状态行(2)
set laststatus=2
" 命令行(在状态行下)的高度,设置为1
" set cmdheight=1
" 设置光标超过 78 列的时候折行
" set tw=78
" 不在单词中间断行
" set lbr
" 打开断行模块对亚洲语言支持。m 表示允许在两个汉字之间断行,即使汉字之间没有出现空格。B 表示将两行合并为一行的时候,汉字与汉字之间不要补空格
" set fo+=mB
" 在被分割的窗口间显示空白,便于阅读
set fillchars=vert:\ ,stl:\ ,stlnc:\
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 最后一次停留位置
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
if has("autocmd")
" When editing a file, always jump to the last known cursor position.
" Don't do it when the position is invalid or when inside an event handler
" (happens when dropping a file on gvim).
" Also don't do it when the mark is in the first line, that is the default
" position when opening a file.
autocmd BufReadPost *
\ if line("'\"") > 1 && line("'\"") <= line("$") |
\ exe "normal! g`\"" |
\ endif
endif
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 折叠相关
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 使用折叠
set foldenable
" 设置语法折叠
set foldmethod=syntax
" 折叠区域的宽度 0-12
set foldcolumn=1
" 折叠层数
set foldlevel=1
" 打开文件默认是不折叠代码
set foldlevelstart=99
" 用空格键来开关折叠
nnoremap <space> @=((foldclosed(line('.')) < 0) ? 'zc' : 'zo')<CR>
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" tab 相关
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 用空格代替tab
set expandtab
" 统一缩进为 ,方便在开启了et后使用退格(backspace)键,每次退格将删除 个空格
set softtabstop=2
" 设定自动缩进为 个字符,程序中自动缩进所使用的空白长度
set shiftwidth=2
" 设置显示制表符的空格字符个数 改进ta 缩进值
set tabstop=2
" 在行和段开始处使用制表符
set smarttab
" 文件缩进及tab个数
au FileType html,python,vim,javascript,java,php setl shiftwidth=4
au FileType html,python,vim,javascript,java,php setl tabstop=4
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 编码设置
" fileformats(ffs)(vim才有)可指定多个,会依载入的档案形式来调整ff。
" 例如:set ffs=unix, dos ff=unix则预设为unix格式,但如读入的是dos格式的
" 档案,会自动调整为dos格式,这样存档时就会以dos格式存档。设置即为:
" set fileformats=unix
" set fileformat=unix并不会依据载入的档案形式来调整ff,并且只用unix形式
" 所以,可以解决windows下的^M问题。
" :set ff 可以查看当前文件fileformat
" :set ffs 查看vim设置
" 其实fileformats可以这样调整
" set fileformats=unix,dos 这样也应该是可以解决^M问题的,让vim自动
" 去选择是用dos,还是unix的,这应该是vim的默认设置,
" 当然也可以选择全局替换:%s/^M//g
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
set fileencodings=utf-8,gb2312,gbk,cp936,latin-1
set fileencoding=utf-8
set termencoding=utf-8
set encoding=utf-8
set fileformat=unix
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 显示颜色相关
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" 语法高亮显示
syntax enable
syntax on
" 配色方案
colorscheme desert
" 指定配色方案是256色
set t_Co=256
网友评论