最近几天在弄树莓派,装完系统,第一时间就更新VIM,新的VIM没有配置,所以简单把VIM基本配置贴在下面。

简易配置

先安装vim的升级版:

sudo apt-get install vim

然后进入配置文件:

vim ~/.vimrc 

(如果想要超级用户也生效,需要保存到/etc/vim/vimrc.local)

输入以下命令后保存:

set number 
filetype on
set history=1000 
set nocompatible 
set shiftwidth=4 
colorscheme industry 
syntax on 
set autoindent 
set smartindent 
set tabstop=4 
set showmatch 
set guioptions-=T 
set vb t_vb= 
set ruler 
set nohls 
set incsearch 
if has(“vms”)  
    set nobackup 
else 
    set backup 
endif

colorscheme 有好几种,主要有bluedarkbluedefaultdelekdesertelflordkoehlermurphy。大家可以在vim的本地安装配置文件夹下找到。

以上是简易配置,适用于初次安装使用的时候,没行号颜色不清晰改文件什么的很麻烦。

Mac下.vimrc配置

下面介绍一个我自己常用的配置,我的Macbook Air使用的如下Vim配置,推荐给大家。

"=====================================================
" Author: Nick Kuta
" Date: 2019-2-18
" File: .vimrc
"=====================================================
let skip_defaults_vim=1
" Configuration file for vim
set modelines=0	" CVE-2007-2438

" Normally we use vim-extensions. If you want true vi-compatibility
" remove change the following statements
set nocompatible	" Use Vim defaults instead of 100% vi compatibility
set backspace=2	" more powerful backspacing
"=====================================================
"显示行号
set nu

"启动时隐去援助提示
set shortmess=atI

"语法高亮
syntax on

"不需要备份
set nobackup

"没有保存或文件只读时弹出确认
set confirm

"鼠标可用
set mouse=a

"tab缩进
set tabstop=4
set shiftwidth=4
set expandtab
set smarttab

"文件自动检测外部更改
set autoread

"c文件自动缩进
set cindent

"自动对齐
set autoindent

"智能缩进
set smartindent

"高亮查找匹配
set hlsearch

"显示匹配
set showmatch

"显示标尺,就是在右下角显示光标位置
set ruler

"------------------------------
set splitbelow
set splitright
"split navigations
nnoremap <C-J> <C-W><C-J>
nnoremap <C-K> <C-W><C-K>
nnoremap <C-L> <C-W><C-L>
nnoremap <C-H> <C-W><C-H>
"------------------------------
" Enable folding with the spacebar
nnoremap <space> za
"设置键盘映射,通过空格设置折叠
"nnoremap <space> @=((foldclosed(line('.')<0)?'zc':'zo'))<CR>
""""""""""""""""""""""""""""""""""""""""""""""
"不要闪烁
set novisualbell

"启动显示状态行
set laststatus=2

"浅色显示当前行
autocmd InsertLeave * se nocul

"用浅色高亮当前行
autocmd InsertEnter * se cul

"显示输入的命令
set showcmd

"被分割窗口之间显示空白
set fillchars=vert:/
set fillchars=stl:/
set fillchars=stlnc:/


"=====================================================
" vundle 环境设置
filetype off
set rtp+=~/.vim/bundle/Vundle.vim
" vundle 管理的插件列表必须位于 vundle#begin() 和 vundle#end() 之间
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
Plugin 'tomasr/molokai'
Plugin 'Lokaltog/vim-powerline' "状态条
Plugin 'octol/vim-cpp-enhanced-highlight' "Cpp语法高亮
Plugin 'Raimondi/delimitMate' "
Plugin 'vim-scripts/phd'
Plugin 'vim-scripts/indentpython.vim' "python缩进
Plugin 'scrooloose/syntastic' "语法检查
Plugin 'nvie/vim-flake8' "PEP8代码风格检查
Plugin 'jnurmine/Zenburn' "配色
Plugin 'https://github.com/vim-scripts/The-NERD-Commenter'
"Plugin 'Valloric/YouCompleteMe'
Plugin 'vim-scripts/DoxygenToolkit.vim'
" 插件列表结束
call vundle#end()
filetype plugin indent on

"=====================================================
" 作者名称
let g:DoxygenToolkit_authorName="Nick - xxxx@xxx.com"
let g:DoxygenToolkit_briefTag_funcName="yes"
map <leader>da :DoxAuthor<CR>
map <leader>df :Dox<CR>
map <leader>db :DoxBlock<CR>
map <leader>dc a /* */<LEFT><LEFT><LEFT>

"=====================================================
" 配色方案
set background=dark
colorscheme molokai
"colorscheme phd
"colorscheme Zenburn

"=====================================================
let g:NERDSpaceDelims = 1 " 注释的时候自动加个空格

"=====================================================
" 禁止显示菜单和工具条
set guioptions-=m
set guioptions-=T

" 总是显示状态栏
set laststatus=2

" 禁止折行
set nowrap

" 设置状态栏主题风格
let g:Powerline_colorscheme='solarized256'

syntax keyword cppSTLtype initializer_list 
let python_highlight_all=1 "python语法高亮

let g:syntastic_always_populate_loc_list = 1
let g:syntastic_check_on_open = 1
let g:syntastic_auto_jump = 1
"=====================================================
" 基于缩进或语法进行代码折叠
"set foldmethod=indent
set foldmethod=syntax
" 启动 vim 时关闭折叠代码
set nofoldenable

"允许用退格键删除字符
set backspace=indent,eol,start

"编码设置
set encoding=utf-8

"共享剪切板
set clipboard=unnamed

"标记多余空白
"au BufRead,BufNewFile *.py,*.pyw,*.c,*.h match BadWhitespace /\s\+$/
"=====================================================
au BufNewFile,BufRead *.py
\ set tabstop=4 |
\ set softtabstop=4 |
\ set shiftwidth=4 |
\ set textwidth=79 |
\ set expandtab |
\ set autoindent |
\ set fileformat=unix |

"=====================================================
au BufNewFile,BufRead *.js,*.html,*.css
\ set tabstop=2 |
\ set softtabstop=2 |
\ set shiftwidth=2 |
"=====================================================
"宏定义
iabbrev #b /************************************************************
iabbrev #e <Space>************************************************************/
iabbrev NK Nick Kuta
iabbrev ad advertisement
iabbrev #i #include
iabbrev #d #define
abbrev teh the

"=====================================================

VIM实际效果如下图所示: 您的浏览器不支持或图片已删除,建议使用Chrome浏览器试试。

安装需要的插件
将想要安装的插件,按照地址填写方法,将地址填写在 vundle#begin 和 vundle#end 之间就可以保存之后,有两种方法安装插件。
运行 vim ,再运行 :PluginInstall

vim xxx
:PluginInstall

通过命令行直接安装 vim +PluginInstall +qall

vim +PluginInstall +qall 

安装完成之后,插件就可以使用。

移除不需要的插件

其他常用命令

最后是一张Windows下的VIM配色效果:
您的浏览器不支持或图片已删除,建议使用Chrome浏览器试试。