我的gvim[windows]

windows

1.先安装git。通过git安装插件管理器Vundle。

	
git clone https://github.com/gmarik/Vundle.vim.git D:\projectTools\software\vim\vimfiles\bundle\Vundle.vim

vim安装文件夹中新建_vimrc,添加内容,然后进入vim输入命令BundleInstall就可以安装了。以后想要什么插件就直接在 call vundle#begin和end之间输入 Plugin 'name',回到vim 使用BundleInstall安装就行了。

""""""""""""""""""""""""""""""""""""""""""""""""""
"					插件管理Vundle
""""""""""""""""""""""""""""""""""""""""""""""""""
set rtp+=$VIM\vimfiles\bundle\Vundle.vim
call vundle#begin() 	"let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'	"my bundle plugin
call vundle#end()

下面贴上我的gvim全部配置。

""""""""""""""""""""""""""""""""""""""""""""""""""
"					插件管理Vundle
""""""""""""""""""""""""""""""""""""""""""""""""""
set rtp+=$VIM\vimfiles\bundle\Vundle.vim
call vundle#begin() 	"let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'	"my bundle plugin
"安装NERDTree和vim-nerdtree-tabs插件
Plugin 'scrooloose/nerdtree'
Plugin 'jistr/vim-nerdtree-tabs'
"配合NERDTree使用的git显示图标插件
Plugin 'Xuyuanp/nerdtree-git-plugin'
"python自动缩进PEP8格式和语法检查
Plugin 'dense-analysis/ale'
"vim色彩搭配
Plugin 'liuchengxu/space-vim-dark'
"CtrlP
Plugin 'kien/ctrlp.vim'
"状态栏
Plugin 'vim-airline/vim-airline'
"Plugin 'vim-airline/vim-airline-themes'

"一键格式化pep8
Plugin 'tell-k/vim-autopep8'
"格式化代码goole标准
"Plugin 'google/yapf'
"aotu-format
"Plugin 'Chiel92/vim-autoformat'

"缩进指示线
Plugin 'Yggdroot/indentLine'
"括号自动补全
Plugin 'jiangmiao/auto-pairs'
"注释
Plugin 'preservim/nerdcommenter'

call vundle#end()

""""""""""""""""""""""""""""""""""""""""""""""""""
"				命令映射修改	
""""""""""""""""""""""""""""""""""""""""""""""""""
nnoremap :cmd<CR> :!start cmd.exe<CR> 
"需要先设置 win+R 快捷命令
nnoremap :git<CR> :!start gitbash<CR>

""""""""""""""""""""""""""""""""""""""""""""""""""
"					通用设置
""""""""""""""""""""""""""""""""""""""""""""""""""

set nocompatible     		"去除VI一致性,必须
"set background=dark     	"设置背景色
"set lines=35 columns=140	"窗口大小
autocmd GUIEnter * simalt ~x "全屏显示

" 分割出来的窗口位于当前窗口下边/右边
"set splitbelow
"set splitright

"不显示工具/菜单栏
set guioptions-=T
set guioptions-=m
set guioptions-=L
set guioptions-=r
set guioptions-=b

" 使用内置 tab 样式而不是 gui
set guioptions-=e
set nolist

"设置文件的代码形式 utf8
set encoding=utf-8
set termencoding=utf-8
set fileencodings=gbk,utf-8,ucs-bom,gb18030,gb2312,cp936

"解决菜单乱码  
source $VIMRUNTIME/delmenu.vim  
source $VIMRUNTIME/menu.vim  

"vim提示信息乱码的解决
language messages zh_CN.utf-8

filetype on
filetype plugin indent on

"字体
:set guifont=DejaVu_Sans_Mono:h11
":set guifont=Source_Code_Pro_for_Powerline:h11

"配色方案
colorscheme space-vim-dark
"去除错误提示的背景色
hi Normal     ctermbg=NONE guibg=NONE
hi LineNr     ctermbg=NONE guibg=NONE
hi SignColumn ctermbg=NONE guibg=NONE

set helplang=cn		"设置中文帮助
set history=500		"保留历史记录


set tabstop=4		"设置tab的跳数
"set softtabstop=4 	"使得按退格键时可以一次删掉 4 个空格
set expandtab
set backspace=2 	"设置退格键可用
set nu 				"设置显示行号
set wrap 			"设置自动换行
"set nowrap 		"设置不自动换行
set linebreak 		"整词换行,与自动换行搭配使用
"set list 			"显示制表符
set autochdir 		"自动设置当前目录为正在编辑的目录
set hidden 			"自动隐藏没有保存的缓冲区,切换buffer时不给出保存当前buffer的提示
set scrolloff=5 	"在光标接近底端或顶端时,自动下滚或上滚
set showtabline=2 	"设置显是显示标签栏
set autoread 		"设置当文件在外部被修改,自动更新该文件
set mouse=a 		"设置在任何模式下鼠标都可用
set nobackup 		"设置不生成备份文件

"===========================
"查找/替换相关的设置
"===========================
set hlsearch 	"高亮显示查找结果
set incsearch 	"增量查找

"===========================
"状态栏的设置
"===========================
set statusline=[%F]%y%r%m%*%=[Line:%l/%L,Column:%c][%p%%] "显示文件名:总行数,总的字符数
set ruler "在编辑过程中,在右下角显示光标位置的状态行

"===========================
"代码设置
"===========================
"syntax enable "打开语法高亮
syntax on "打开语法高亮
"set showmatch "设置匹配模式,相当于括号匹配
set smartindent "智能对齐
"set shiftwidth=4 "换行时,交错使用4个空格
set autoindent "设置自动对齐
set ai! "设置自动缩进
"set cursorcolumn "启用光标列
set cursorline	"启用光标行
set guicursor+=a:blinkon0 "设置光标不闪烁
set fdm=indent "


""""""""""""""""""""""""""""""""""""""""""""""""""
"					NERDTree设置
""""""""""""""""""""""""""""""""""""""""""""""""""

map <F2> :NERDTreeToggle<CR>				    "关闭NERDTree快捷键
let NERDTreeShowLineNumbers=1					" 显示行号
let NERDTreeAutoCenter=1
let NERDTreeShowHidden=1						" 是否显示隐藏文件
let g:nerdtree_tabs_open_on_console_startup=1	" 在终端启动vim时,共享NERDTree
let NERDTreeIgnore=['\.pyc','\~$','\.swp']		" 忽略一下文件的显示
let NERDTreeShowBookmarks=1						" 显示书签列表
"let g:NERDTreeDirArrowExpandable = '▸'          " 设置文件叠合和打开的图标
"let g:NERDTreeDirArrowCollapsible = '▾'

""""""""""""""""""""""""""""""""""""""""""""""""""
"					ctrlP设置
""""""""""""""""""""""""""""""""""""""""""""""""""
"ctrlP目录配置
"用没有明确的开始目录时,CTLRP会按照以下值来设定工作目录
let g:ctrlp_working_path_mode = 'c'
"设置MRU最大条目数为500
let g:ctrlp_mruf_max = 500
"默认使用全路径搜索,置1后按文件名搜索,准确率会有所提高,可以用<C-d>进行切换
let g:ctrlp_by_filename = 1
"默认不使用正则表达式,置1改为默认使用正则表达式,可以用<C-r>进行切换
let g:ctrlp_regexp = 0
let g:ctrlp_custom_ignore = {
    \ 'dir':  '\v[\/]\.(git|hg|svn|rvm)$',
    \ 'file': '\v\.(exe|so|dll|zip|tar|tar.gz|pyc)$',
    \ }



""""""""""""""""""""""""""""""""""""""""""""""""""
"					git设置
""""""""""""""""""""""""""""""""""""""""""""""""""
let g:NERDTreeGitStatusIndicatorMapCustom = {
                \ 'Modified'  :'✹',
                \ 'Staged'    :'✚',
                \ 'Untracked' :'✭',
                \ 'Renamed'   :'➜',
                \ 'Unmerged'  :'═',
                \ 'Deleted'   :'✖',
                \ 'Dirty'     :'✗',
                \ 'Ignored'   :'☒',
                \ 'Clean'     :'✔︎',
                \ 'Unknown'   :'?',
                \ }


""""""""""""""""""""""""""""""""""""""""""""""""""
"					python环境配置
""""""""""""""""""""""""""""""""""""""""""""""""""
"Quickly Run
map <F5> :call RunPython()<CR>   
func! RunPython()
    exec "w"
    if &filetype == 'python'
        exec "!python %"
    endif
endfunc


""""""""""""""""""""""""""""""""""""""""""""""""""
"					ale语法检查设置
""""""""""""""""""""""""""""""""""""""""""""""""""
let g:ale_fix_on_save = 1
let g:ale_completion_enabled = 1
let g:airline#extensions#ale#enabled = 1
let g:ale_set_highlights = 1
"始终开启标志列
let g:ale_sign_column_always = 1
"自定义error和warning图标
let g:ale_sign_error = 'x'
let g:ale_sign_warning = '!'
"在vim自带的状态栏中整合ale
let g:ale_statusline_format = ['x %d', '! %d', 'y OK']
"显示Linter名称,出错或警告等相关信息
let g:ale_echo_msg_error_str = 'Error'
let g:ale_echo_msg_warning_str = 'Warning'
let g:ale_echo_msg_format = '[%linter%] %s [%severity%]'
let g:ale_linters = {
\   'c++': ['clang'],
\   'c': ['clang'],
\   'python': ['flake8'],
\}

""""""""""""""""""""""""""""""""""""""""""""""""""
"				  缩进指示线	
""""""""""""""""""""""""""""""""""""""""""""""""""
let g:indentLine_char='┆'
let g:indentLine_enable=1

""""""""""""""""""""""""""""""""""""""""""""""""""
"				  autopep8设置	
""""""""""""""""""""""""""""""""""""""""""""""""""
let g:autopep8_disable_show_diff=1
autocmd FileType python noremap <buffer> <F8> :call Autopep8()<CR>

""""""""""""""""""""""""""""""""""""""""""""""""""
"				  注释设置	
""""""""""""""""""""""""""""""""""""""""""""""""""
map <F4> <leader>ci <CR>

""""""""""""""""""""""""""""""""""""""""""""""""""
""				  google/yapf设置(python格式化)	
""""""""""""""""""""""""""""""""""""""""""""""""""
"let g:formatter_yapf_style = 'flake8'
"autocmd FileType python nnoremap <LocalLeader>= :0,$!yapf<CR>


""""""""""""""""""""""""""""""""""""""""""""""""""
"				  autoformat	
""""""""""""""""""""""""""""""""""""""""""""""""""
"noremap <F6> :Autoformat<CR>
"let g:autoformat_verbosemode=1

""""""""""""""""""""""""""""""""""""""""""""""""""
"				 airline 	
""""""""""""""""""""""""""""""""""""""""""""""""""
"let g:airline_theme = 'simple'
"let g:airline#extensions#tabline#enabled = 1  " 显示窗口tab和buffer

猜你喜欢

转载自blog.csdn.net/qq_40702130/article/details/111660345