vim 插件管理
1 进入自己的vim mkdir ./bundle/vundle
2 在vimrc同级中执行 git clone https://github.com/gmarik/vundle.git ./bundle/vundle 将一些插件文件 下载到./bundle/vundle中
3 编写自己的vim配置,其实很简单
set nocompatible " be iMproved, required
filetype off " required " set the runtime path to include Vundle and initialize
set rtp+=/Applications/MacVim.app/Contents/Resources/vim/bundle/vundle/ "我这是macvim 我试了我这边写绝对路径就没有问题;这个就是runtimepath 的缩写
call vundle#begin() " let Vundle manage Vundle, required 这下面三个就是插件啦。其实在github 中你如果找到其他插件,安装下面格式加在下面即可
Plugin 'gmarik/Vundle.vim'
Plugin 'fatih/vim-go'
Plugin 'scrooloose/nerdtree' "例如:Plugin 'xxx/xxx' " All of your Plugins must be added before the following line
call vundle#end() " required
filetype plugin indent on " required
nmap <F5> :NERDTreeToggle<cr> "这个就是配置nerdtree的使用 就是按f5就出来了
这些配完了打开vim 命令行模式中输入PluginInstall即可安装上面三个插件
然后安装的nerdtree的按f5就可以看到效果了
注意vimr配置中 set rtp+=/Applications/MacVim.app/Contents/Resources/vim/bundle/vundle/ 后面的地址要正确
自动补全:
'msanders/snipmate.vim'
Plugin 'msanders/snipmate.vim'
自动补全设置:/Users/lijundong/.vim/bundle/snipmate.vim/snippets
代码提示
'Valloric/YouCompleteMe'
代码提示这个装的很艰辛
环境windows
:先查看vim版本,我的8.0
:version
1.1
查看vim是否支持python;:echo has('python')
:装python2. 32位;将路径添加到环境变量中;
:装vs2015;将路径添加到环境变量中
:在vimrc中添加YouCompleteMe;PluginInstall 安装
:vimrs中添加
"必须加 其他编码completeme 不支持
set encoding=utf-
set langmenu=zh_CN.UTF-
language message zh_CN.UTF-
set termencoding=GBK
以上为插件的设置 下面为自己的设置
source $VIMRUNTIME/vimrc_example.vim
source $VIMRUNTIME/mswin.vim
set guioptions-=T " 隐藏工具栏
set guioptions-=m " 隐藏菜单栏
set cursorline " 设置当前行高亮
set autoindent " 设置自动缩进
set number " 显示行数
set ignorecase " 搜索不区分大小写
winpos " 设定窗口位置
set lines= columns= " 设置窗口大小
set transparency= "透明度
colorscheme molokai "主题 前提是要你要这个主题啊
set syntax=on "语法高亮
" 带有如下符号的单词不要被换行分割
set iskeyword+=_,$,@,%,#,-
编码设置
set enc=utf-8
set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936
这个不清楚
set diffexpr=MyDiff()
function MyDiff()
let opt = '-a --binary '
if &diffopt =~ 'icase' | let opt = opt . '-i ' | endif
if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif
let arg1 = v:fname_in
if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif
let arg2 = v:fname_new
if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif
let arg3 = v:fname_out
if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif
let eq = ''
if $VIMRUNTIME =~ ' '
if &sh =~ '\<cmd'
let cmd = '""' . $VIMRUNTIME . '\diff"'
let eq = '"'
else
let cmd = substitute($VIMRUNTIME, ' ', '" ', '') . '\diff"'
endif
else
let cmd = $VIMRUNTIME . '\diff'
endif
silent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3 . eq
endfunction
主题设置:在vimrc 同级的runtime/colors/中新建molokai.vim文件,主题代码见下:
molokai主题代码
" Vim color file
"
" Author: Tomas Restrepo <tomas@winterdom.com>
" https://github.com/tomasr/molokai
"
" Note: Based on the Monokai theme for TextMate
" by Wimer Hazenberg and its darker variant
" by Hamish Stuart Macpherson
" hi clear if version >
" no guarantees for version 5.8 and below, but this makes it stop
" complaining
hi clear
if exists("syntax_on")
syntax reset
endif
endif
let g:colors_name="molokai" if exists("g:molokai_original")
let s:molokai_original = g:molokai_original
else
let s:molokai_original =
endif hi Boolean guifg=#AE81FF
hi Character guifg=#E6DB74
hi Number guifg=#AE81FF
hi String guifg=#E6DB74
hi Conditional guifg=#F92672 gui=bold
hi Constant guifg=#AE81FF gui=bold
hi Cursor guifg=# guibg=#F8F8F0
hi iCursor guifg=# guibg=#F8F8F0
hi Debug guifg=#BCA3A3 gui=bold
hi Define guifg=#66D9EF
hi Delimiter guifg=#8F8F8F
hi DiffAdd guibg=#13354A
hi DiffChange guifg=#89807D guibg=#4C4745
hi DiffDelete guifg=# guibg=#1E0010
hi DiffText guibg=#4C4745 gui=italic,bold hi Directory guifg=#A6E22E gui=bold
hi Error guifg=#E6DB74 guibg=#1E0010
hi ErrorMsg guifg=#F92672 guibg=# gui=bold
hi Exception guifg=#A6E22E gui=bold
hi Float guifg=#AE81FF
hi FoldColumn guifg=# guibg=#
hi Folded guifg=# guibg=#
hi Function guifg=#A6E22E
hi Identifier guifg=#FD971F
hi Ignore guifg=# guibg=bg
hi IncSearch guifg=#C4BE89 guibg=# hi Keyword guifg=#F92672 gui=bold
hi Label guifg=#E6DB74 gui=none
hi Macro guifg=#C4BE89 gui=italic
hi SpecialKey guifg=#66D9EF gui=italic hi MatchParen guifg=# guibg=#FD971F gui=bold
hi ModeMsg guifg=#E6DB74
hi MoreMsg guifg=#E6DB74
hi Operator guifg=#F92672 " complete menu
hi Pmenu guifg=#66D9EF guibg=#
hi PmenuSel guibg=#
hi PmenuSbar guibg=#
hi PmenuThumb guifg=#66D9EF hi PreCondit guifg=#A6E22E gui=bold
hi PreProc guifg=#A6E22E
hi Question guifg=#66D9EF
hi Repeat guifg=#F92672 gui=bold
hi Search guifg=# guibg=#FFE792
" marks
hi SignColumn guifg=#A6E22E guibg=#
hi SpecialChar guifg=#F92672 gui=bold
hi SpecialComment guifg=#7E8E91 gui=bold
hi Special guifg=#66D9EF guibg=bg gui=italic
if has("spell")
hi SpellBad guisp=#FF0000 gui=undercurl
hi SpellCap guisp=#7070F0 gui=undercurl
hi SpellLocal guisp=#70F0F0 gui=undercurl
hi SpellRare guisp=#FFFFFF gui=undercurl
endif
hi Statement guifg=#F92672 gui=bold
hi StatusLine guifg=# guibg=fg
hi StatusLineNC guifg=# guibg=#
hi StorageClass guifg=#FD971F gui=italic
hi Structure guifg=#66D9EF
hi Tag guifg=#F92672 gui=italic
hi Title guifg=#ef5939
hi Todo guifg=#FFFFFF guibg=bg gui=bold hi Typedef guifg=#66D9EF
hi Type guifg=#66D9EF gui=none
hi Underlined guifg=# gui=underline hi VertSplit guifg=# guibg=# gui=bold
hi VisualNOS guibg=#403D3D
hi Visual guibg=#403D3D
hi WarningMsg guifg=#FFFFFF guibg=# gui=bold
hi WildMenu guifg=#66D9EF guibg=# hi TabLineFill guifg=#1B1D1E guibg=#1B1D1E
hi TabLine guibg=#1B1D1E guifg=# gui=none if s:molokai_original ==
hi Normal guifg=#F8F8F2 guibg=#
hi Comment guifg=#75715E
hi CursorLine guibg=#3E3D32
hi CursorLineNr guifg=#FD971F gui=none
hi CursorColumn guibg=#3E3D32
hi ColorColumn guibg=#3B3A32
hi LineNr guifg=#BCBCBC guibg=#3B3A32
hi NonText guifg=#75715E
hi SpecialKey guifg=#75715E
else
hi Normal guifg=#F8F8F2 guibg=#1B1D1E
hi Comment guifg=#7E8E91
hi CursorLine guibg=#
hi CursorLineNr guifg=#FD971F gui=none
hi CursorColumn guibg=#
hi ColorColumn guibg=#
hi LineNr guifg=# guibg=#
hi NonText guifg=#
hi SpecialKey guifg=#
end "
" Support for 256-color terminal
"
if &t_Co >
if s:molokai_original ==
hi Normal ctermbg=
hi CursorLine ctermbg= cterm=none
hi CursorLineNr ctermfg= cterm=none
else
hi Normal ctermfg= ctermbg=
hi CursorLine ctermbg= cterm=none
hi CursorLineNr ctermfg= cterm=none
endif
hi Boolean ctermfg=
hi Character ctermfg=
hi Number ctermfg=
hi String ctermfg=
hi Conditional ctermfg= cterm=bold
hi Constant ctermfg= cterm=bold
hi Cursor ctermfg= ctermbg=
hi Debug ctermfg= cterm=bold
hi Define ctermfg=
hi Delimiter ctermfg= hi DiffAdd ctermbg=
hi DiffChange ctermfg= ctermbg=
hi DiffDelete ctermfg= ctermbg=
hi DiffText ctermbg= cterm=bold hi Directory ctermfg= cterm=bold
hi Error ctermfg= ctermbg=
hi ErrorMsg ctermfg= ctermbg= cterm=bold
hi Exception ctermfg= cterm=bold
hi Float ctermfg=
hi FoldColumn ctermfg= ctermbg=
hi Folded ctermfg= ctermbg=
hi Function ctermfg=
hi Identifier ctermfg= cterm=none
hi Ignore ctermfg= ctermbg=
hi IncSearch ctermfg= ctermbg= hi keyword ctermfg= cterm=bold
hi Label ctermfg= cterm=none
hi Macro ctermfg=
hi SpecialKey ctermfg= hi MatchParen ctermfg= ctermbg= cterm=bold
hi ModeMsg ctermfg=
hi MoreMsg ctermfg=
hi Operator ctermfg= " complete menu
hi Pmenu ctermfg= ctermbg=
hi PmenuSel ctermfg= ctermbg=
hi PmenuSbar ctermbg=
hi PmenuThumb ctermfg= hi PreCondit ctermfg= cterm=bold
hi PreProc ctermfg=
hi Question ctermfg=
hi Repeat ctermfg= cterm=bold
hi Search ctermfg= ctermbg= cterm=NONE " marks column
hi SignColumn ctermfg= ctermbg=
hi SpecialChar ctermfg= cterm=bold
hi SpecialComment ctermfg= cterm=bold
hi Special ctermfg=
if has("spell")
hi SpellBad ctermbg=
hi SpellCap ctermbg=
hi SpellLocal ctermbg=
hi SpellRare ctermfg=none ctermbg=none cterm=reverse
endif
hi Statement ctermfg= cterm=bold
hi StatusLine ctermfg= ctermbg=
hi StatusLineNC ctermfg= ctermbg=
hi StorageClass ctermfg=
hi Structure ctermfg=
hi Tag ctermfg=
hi Title ctermfg=
hi Todo ctermfg= ctermbg= cterm=bold hi Typedef ctermfg=
hi Type ctermfg= cterm=none
hi Underlined ctermfg= cterm=underline hi VertSplit ctermfg= ctermbg= cterm=bold
hi VisualNOS ctermbg=
hi Visual ctermbg=
hi WarningMsg ctermfg= ctermbg= cterm=bold
hi WildMenu ctermfg= ctermbg= hi Comment ctermfg=
hi CursorColumn ctermbg=
hi ColorColumn ctermbg=
hi LineNr ctermfg= ctermbg=
hi NonText ctermfg= hi SpecialKey ctermfg= if exists("g:rehash256") && g:rehash256 ==
hi Normal ctermfg= ctermbg=
hi CursorLine ctermbg= cterm=none
hi CursorLineNr ctermfg= cterm=none hi Boolean ctermfg=
hi Character ctermfg=
hi Number ctermfg=
hi String ctermfg=
hi Conditional ctermfg= cterm=bold
hi Constant ctermfg= cterm=bold hi DiffDelete ctermfg= ctermbg= hi Directory ctermfg= cterm=bold
hi Error ctermfg= ctermbg=
hi Exception ctermfg= cterm=bold
hi Float ctermfg=
hi Function ctermfg=
hi Identifier ctermfg= hi Keyword ctermfg= cterm=bold
hi Operator ctermfg=
hi PreCondit ctermfg= cterm=bold
hi PreProc ctermfg=
hi Repeat ctermfg= cterm=bold hi Statement ctermfg= cterm=bold
hi Tag ctermfg=
hi Title ctermfg=
hi Visual ctermbg= hi Comment ctermfg=
hi LineNr ctermfg= ctermbg=
hi NonText ctermfg=
hi SpecialKey ctermfg=
endif
end " Must be at the end, because of ctermbg=234 bug.
" https://groups.google.com/forum/#!msg/vim_dev/afPqwAFNdrU/nqh6tOM87QUJ
set background=dark
如果对vundle的配置是这样:
"设置vundle
set nocompatible " be iMproved
filetype off " required!
set rtp+=/Applications/MacVim.app/Contents/Resources/vim/bundle/vundle/
call vundle#rc()
Bundle 'gmarik/vundle'
Bundle 'godlygeek/tabular'
Bundle 'L9'
Bundle 'FuzzyFinder'
" non github repos ,非git的访问地址的,格式如下:
Bundle 'git://git.wincent.com/command-t.git'
Bundle "scrooloose/nerdtree" filetype plugin indent on " required!
"可以在vim中执行的一些命令
" Brief help
" :BundleList - list configured bundles
" :BundleInstall(!) - install(update) bundles
" :BundleSearch(!) foo - search(or refresh cache first) for foo
" :BundleClean(!) - confirm(or auto-approve) removal of unused bundles
"
" see :h vundle for more details or wiki for FAQ
" NOTE: comments after Bundle command are not allowed.. nmap <F5> :NERDTreeToggle<cr>
"vundle 设置完毕
在打开vim 后安装插件是在命令行BundleInstall=>安装;BundleList=>已装插件;BundleSearch=>搜索;BundleClear=>删除
取消搜索后的高亮
:noh
这里有比较全的配置;但有些可能没有,有些可能错误,仅供参考
"""""""""""""""""""
" 显示相关
"""""""""""""""""""
"set shortmess=atI " 启动的时候不显示那个援助乌干达儿童的提示
"winpos 5 5 " 设定窗口位置
"set lines=40 columns=155 " 设定窗口大小
"set nu " 显示行号
set go= " 不要图形按钮
"color asmanian2 " 设置背景主题
set guifont=Courier_New:h10:cANSI " 设置字体
"syntax on " 语法高亮
autocmd InsertLeave * se nocul " 用浅色高亮当前行
autocmd InsertEnter * se cul " 用浅色高亮当前行
"set ruler " 显示标尺
set showcmd " 输入的命令显示出来,看的清楚些
"set cmdheight=1 " 命令行(在状态行下)的高度,设置为1
"set whichwrap+=<,>,h,l " 允许backspace和光标键跨越行边界(不建议)
"set scrolloff=3 " 光标移动到buffer的顶部和底部时保持3行距离
set novisualbell " 不要闪烁(不明白)
autocmd GUIEnter * simalt ~x "全屏
set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}]\ [TYPE=%Y]\ [POS=%l,%v][%p%%]\ %{strftime(\"%d/%m/%y\ -\ %H:%M\")} "状态行显示的内容 set laststatus= " 启动显示状态行(1),总是显示状态行(2)
set foldenable " 允许折叠
set foldmethod=manual " 手动折叠
"set background=dark "背景使用黑色
set nocompatible "去掉讨厌的有关vi一致性模式,避免以前版本的一些bug和局限
" 显示中文帮助
if version >=
set helplang=cn
set encoding=utf-
endif
" 设置配色方案
"colorscheme murphy
"字体
"if (has("gui_running"))
" set guifont=Bitstream\ Vera\ Sans\ Mono\ 10
"endif
set fencs=utf-,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936
set termencoding=utf-
set encoding=utf-
set fileencodings=ucs-bom,utf-,cp936
set fileencoding=utf-
"""""""""""""""""""""""""
"""""新文件标题""""""""""
"新建.c,.h,.sh,.java文件,自动插入文件头
autocmd BufNewFile *.cpp,*.[ch],*.sh,*.java exec ":call SetTitle()"
""定义函数SetTitle,自动插入文件头
func SetTitle()
"如果文件类型为.sh文件
if &filetype == 'sh'
call setline(,"\#########################################################################")
call append(line("."), "\# File Name: ".expand("%"))
call append(line(".")+, "\# Author: test")
call append(line(".")+, "\# mail: <a href="mailto:test@jbxue.com">test@jbxue.com</a>")
call append(line(".")+, "\# Created Time: ".strftime("%c"))
call append(line(".")+, "\#########################################################################")
call append(line(".")+, "\#!/bin/bash")
call append(line(".")+, "")
else
call setline(, "/*************************************************************************")
call append(line("."), " > File Name: ".expand("%"))
call append(line(".")+, " > Author: test")
call append(line(".")+, " > Mail: <a href="mailto:test@jbxue.com">test@jbxue.com</a> ")
call append(line(".")+, " > Created Time: ".strftime("%c"))
call append(line(".")+, " ************************************************************************/")
call append(line(".")+, "")
endif
if &filetype == 'cpp'
call append(line(".")+, "#include<iostream>")
call append(line(".")+, "using namespace std;")
call append(line(".")+, "")
endif
if &filetype == 'c'
call append(line(".")+, "#include<stdio.h>")
call append(line(".")+, "")
endif
"新建文件后,自动定位到文件末尾
autocmd BufNewFile * normal G
endfunc
"""""""""""""""""""""""""""""""
"键盘命令
"""""""""""""""""""""""""""""""
nmap <leader>w :w!<cr>
nmap <leader>f :find<cr>
" 映射全选+复制 ctrl+a
map <C-A> ggVGY
map! <C-A> <Esc>ggVGY
map <F12> gg=G
" 选中状态下 Ctrl+c 复制
vmap <C-c> "+y
"去空行
nnoremap <F2> :g/^\s*$/d<CR>
"比较文件
nnoremap <C-F2> :vert diffsplit
"新建标签
map <M-F2> :tabnew<CR>
"列出当前目录文件
map <F3> :tabnew .<CR>
"打开树状文件目录
map <C-F3> \be
"C,C++ 按F5编译运行
map <F5> :call CompileRunGcc()<CR>
func! CompileRunGcc()
exec "w"
if &filetype == 'c'
exec "!g++ % -o %<"
exec "! ./%<"
elseif &filetype == 'cpp'
exec "!g++ % -o %<"
exec "! ./%<"
elseif &filetype == 'java'
exec "!javac %"
exec "!java %<"
elseif &filetype == 'sh'
:!./%
endif
endfunc
"C,C++的调试
map <F8> :call Rungdb()<CR>
func! Rungdb()
exec "w"
exec "!g++ % -g -o %<"
exec "!gdb ./%<"
endfunc
""""""""""""""""""""""""
""实用设置
""""""""""""""""""""""""
" 设置当文件被改动时自动载入
set autoread
" quickfix模式
autocmd FileType c,cpp map <buffer> <leader><space> :w<cr>:make<cr>
"代码补全
set completeopt=preview,menu
"允许插件
filetype plugin on
"共享剪贴板
set clipboard+=unnamed
"从不备份
set nobackup
"make 运行
:set makeprg=g++\ -Wall\ \ %
"自动保存
set autowrite
set ruler " 打开状态栏标尺
set cursorline " 突出显示当前行
set magic " 设置魔术
set guioptions-=T " 隐藏工具栏
set guioptions-=m " 隐藏菜单栏
"set statusline=\ %<%F[%1*%M%*%n%R%H]%=\ %y\ %0(%{&fileformat}\ %{&encoding}\ %c:%l/%L%)\
" 设置在状态行显示的信息
set foldcolumn=
set foldmethod=indent
set foldlevel=
set foldenable " 开始折叠
" 不要使用vi的键盘模式,而是vim自己的
set nocompatible
" 语法高亮
set syntax=on
" 去掉输入错误的提示声音
set noeb
" 在处理未保存或只读文件的时候,弹出确认
set confirm
" 自动缩进
set autoindent
set cindent
" Tab键的宽度
set tabstop=
" 统一缩进为4
set softtabstop=
set shiftwidth=
" 不要用空格代替制表符
set noexpandtab
" 在行和段开始处使用制表符
set smarttab
" 显示行号
set number
" 历史记录数
set history=
"禁止生成临时文件
set nobackup
set noswapfile
"搜索忽略大小写
set ignorecase
"搜索逐字符高亮
set hlsearch
set incsearch
"行内替换
set gdefault
"编码设置
set enc=utf-
set fencs=utf-,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936
"语言设置
set langmenu=zh_CN.UTF-
set helplang=cn
" 我的状态行显示的内容(包括文件类型和解码)
"set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}]\ [TYPE=%Y]\ [POS=%l,%v][%p%%]\ %{strftime(\"%d/%m/%y\ -\ %H:%M\")}
"set statusline=[%F]%y%r%m%*%=[Line:%l/%L,Column:%c][%p%%]
" 总是显示状态行
set laststatus=
" 命令行(在状态行下)的高度,默认为1,这里是2
set cmdheight=
" 侦测文件类型
filetype on
" 载入文件类型插件
filetype plugin on
" 为特定文件类型载入相关缩进文件
filetype indent on
" 保存全局变量
set viminfo+=!
" 带有如下符号的单词不要被换行分割
set iskeyword+=_,$,@,%,#,-
" 字符间插入的像素行数目
set linespace=
" 增强模式中的命令行自动完成操作
set wildmenu
" 使回格键(backspace)正常处理indent, eol, start等
set backspace=
" 允许backspace和光标键跨越行边界
set whichwrap+=<,>,h,l
" 可以在buffer的任何地方使用鼠标(类似office中在工作区双击鼠标定位)
set mouse=a
set selection=exclusive
set selectmode=mouse,key
" 通过使用: commands命令,告诉我们文件的哪一行被改变过
set report=
" 在被分割的窗口间显示空白,便于阅读
set fillchars=vert:\ ,stl:\ ,stlnc:\
" 高亮显示匹配的括号
set showmatch
" 匹配括号高亮的时间(单位是十分之一秒)
set matchtime=
" 光标移动到buffer的顶部和底部时保持3行距离
set scrolloff=
" 为C程序提供自动缩进
set smartindent
" 高亮显示普通txt文件(需要txt.vim脚本)
au BufRead,BufNewFile * setfiletype txt
"自动补全
:inoremap ( ()<ESC>i
:inoremap ) <c-r>=ClosePair(')')<CR>
:inoremap { {<CR>}<ESC>O
:inoremap } <c-r>=ClosePair('}')<CR>
:inoremap [ []<ESC>i
:inoremap ] <c-r>=ClosePair(']')<CR>
:inoremap " ""<ESC>i
:inoremap ' ''<ESC>i
function! ClosePair(char)
if getline('.')[col('.') - ] == a:char
return "\<Right>"
else
return a:char
endif
endfunction
filetype plugin indent on
"打开文件类型检测, 加了这句才可以用智能补全
set completeopt=longest,menu
""""""""""""""""""""""""""""""""
" CTags的设定
""""""""""""""""""""""""""""""""
let Tlist_Sort_Type = "name" " 按照名称排序
let Tlist_Use_Right_Window = " 在右侧显示窗口
let Tlist_Compart_Format = " 压缩方式
let Tlist_Exist_OnlyWindow = " 如果只有一个buffer,kill窗口也kill掉buffer
let Tlist_File_Fold_Auto_Close = " 不要关闭其他文件的tags
let Tlist_Enable_Fold_Column = " 不要显示折叠树
autocmd FileType java set tags+=D:\tools\java\tags
"autocmd FileType h,cpp,cc,c set tags+=D:\tools\cpp\tags
"let Tlist_Show_One_File=1 "不同时显示多个文件的tag,只显示当前文件的
"设置tags
set tags=tags
"set autochdir
"""""""""""""""""""""""""
"其他东东
"""""""""""""""""""""""""
"默认打开Taglist
let Tlist_Auto_Open=
""""""""""""""""""""""""""""""
" Tag list (ctags)
""""""""""""""""""""""""""""""""
let Tlist_Ctags_Cmd = '/usr/bin/ctags'
let Tlist_Show_One_File = "不同时显示多个文件的tag,只显示当前文件的
let Tlist_Exit_OnlyWindow = "如果taglist窗口是最后一个窗口,则退出vim
let Tlist_Use_Right_Window = "在右侧窗口中显示taglist窗口
" minibufexpl插件的一般设置
let g:miniBufExplMapWindowNavVim =
let g:miniBufExplMapWindowNavArrows =
let g:miniBufExplMapCTabSwitchBufs =
let g:miniBufExplModSelTarget =
默认全屏:Windows 成功;Mac没有试
Mac
if has("gui_running")
" GUI is running or is about to start.
" Maximize gvim window (for an alternative on Windows, see simalt below).
set lines= columns=
else
" This is console Vim.
if exists("+lines")
set lines=
endif
if exists("+columns")
set columns=
endif
endif
Windows
autocmd GUIEnter * simalt ~x
贴上我windows上vimrc 配置
set nocompatible " be iMproved, required
"filetype off " required set rtp+=$VIM/vimfiles/bundle/Vundle.vim
"插件的安装路径
call vundle#begin('$VIM/vimfiles/bundle/') Plugin 'gmarik/Vundle.vim'
Plugin 'L9'
Plugin 'msanders/snipmate.vim'
Plugin 'majutsushi/tagbar'
Plugin 'scrooloose/nerdtree'
Plugin 'Valloric/YouCompleteMe' call vundle#end()
filetype plugin indent on
nmap <F1> :NERDTreeToggle<cr> "这个就是配置nerdtree的使用 就是按f几就出来了 "tagbar 配置
"
nmap <Leader>tb :TagbarToggle<CR>
let g:tagbar_ctags_bin='ctags'
let g:tagbar_width=
map <F2> :Tagbar<CR>
autocmd BufReadPost *.cpp,*.c,*.h,*.hpp,*.cc,*.cxx,*.php call tagbar#autoopen() source $VIMRUNTIME/vimrc_example.vim
source $VIMRUNTIME/mswin.vim
set guioptions-=T " 隐藏工具栏
set guioptions-=m " 隐藏菜单栏
set guioptions-=r " 隐藏滚动条
set guifont=Source_Code_Pro:h10 " 设置字体为 字体:大小
set cursorline " 设置当前行高亮
set autoindent " 设置自动缩进
set number " 显示行数
winpos " 设定窗口位置
"set lines=45 columns=170 " 设置窗口大小
autocmd GUIEnter * simalt ~x
"set background=light
"set background=dark
colorscheme evening "主题 前提是要你要这个主题啊
set syntax=on "语法高亮
" 带有如下符号的单词不要被换行分割
set iskeyword+=_,$,@,%,#,- set noswapfile
set nobackup
set ignorecase "忽略大小写 " Tab键的宽度
set tabstop=
" 统一缩进为4
set softtabstop=
set shiftwidth= "必须加 其他编码completeme 不支持
set encoding=utf-
set langmenu=zh_CN.UTF-
language message zh_CN.UTF-
set termencoding=GBK "右击是显示中文正常
"set encoding=utf-8
"set fileencodings=utf-8,chinese,latin-1
if has("win32")
set fileencoding=chinese
else
set fileencoding=utf-
endif
"解决菜单乱码 source $VIMRUNTIME/delmenu.vim
source $VIMRUNTIME/menu.vim
"解决consle输出乱码
language messages zh_CN.utf- set diffexpr=MyDiff()
function MyDiff()
let opt = '-a --binary '
if &diffopt =~ 'icase' | let opt = opt . '-i ' | endif
if &diffopt =~ 'iwhite' | let opt = opt . '-b ' | endif
let arg1 = v:fname_in
if arg1 =~ ' ' | let arg1 = '"' . arg1 . '"' | endif
let arg2 = v:fname_new
if arg2 =~ ' ' | let arg2 = '"' . arg2 . '"' | endif
let arg3 = v:fname_out
if arg3 =~ ' ' | let arg3 = '"' . arg3 . '"' | endif
let eq = ''
if $VIMRUNTIME =~ ' '
if &sh =~ '\<cmd'
let cmd = '""' . $VIMRUNTIME . '\diff"'
let eq = '"'
else
let cmd = substitute($VIMRUNTIME, ' ', '" ', '') . '\diff"'
endif
else
let cmd = $VIMRUNTIME . '\diff'
endif
silent execute '!' . cmd . ' ' . opt . arg1 . ' ' . arg2 . ' > ' . arg3 . eq
endfunction
vim 插件管理的更多相关文章
- [Tools] Vim插件管理
我们在使用插件的时候,都不希望插件安装的很杂乱,它不是一个看不见的黑盒,也为了下次方便在其它地方安装. 由于要方便插件管理,于是有了 Vundle,以下做些介绍: 1. 一个插件管理器, 自己本身也是 ...
- Vim插件管理——Vundle
Vim插件管理--Vundle 都说Vim时程序员写给自己的编辑器,其中的情结可想而知.身为一只程序狗CodingDoge,今天就让我带各位学习Vim的使用. vim因为其庞大而强劲的插件受到无比的推 ...
- 使用Vim-plug作为Vim 插件管理器
ref: https://www.cnblogs.com/jiftle/p/6918157.html - vundle是一款老款的插件管理工具- vim-plug相对较新,特点是支持异步加载,相比vu ...
- 菜鸟vimer成长记——第4.0章、Vim插件管理利器-Vundle
定义 Vundle是vim bunler和简称,它是一个vim插件管理器. Vim本身缺乏对插件的有效管理,安装插件并配置.vimrc文件非常不便.gmarik受到Ruby的bunler的启发,开发了 ...
- vim插件管理 - vim-plug
vim-plug是一款轻量的vim插件管理工具. GitHub:https://github.com/junegunn/vim-plug 插件的安装 unix curl -fLo ~/.vim/aut ...
- [转]Vim插件管理工具Vundle
原文:http://www.linuxzen.com/vimpei-zhi-xi-lie-cha-jian-guan-li.html 当转载成为一种习惯.. 最近对Vim进行了一番较大的配置变动,所以 ...
- vim插件管理器的安装和配置-windows
# vim插件管理器的安装和配置-windows ### 前言------------------------------ vim做一框功能强大的编辑器,扩展功能令人称奇,插件机制非常灵活- 本篇推荐 ...
- vim插件管理器:Vundle的介绍及安装(很全)(转载)
转载自:https://blog.csdn.net/zhangpower1993/article/details/52184581 背景 Vim缺乏默认的插件管理器,所有插件的文件都散布在~/.vim ...
- Vim插件管理器Vundle使用
参考地址:http://www.linuxidc.com/Linux/2012-12/75684.htm Vundle(Vim bundle) 是一个vim的插件管理器. 其Github地址为: ht ...
- vim插件管理之Vundle
Vim是一个类似于Vi的著名的功能强大.高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性.正是由于其可定制的特性, 许许多多的Vim插件便诞生了.管理这些插件又成为我们最为头疼的问题,最近无 ...
随机推荐
- Linux命令中使用正则表达式
在使用grep.awk和sed命令时,需要使用正则表达式.比如我通过grep找代码编译结果中是否有错误.或者是否有我代码的错误.这里说下正则表达式基本的应用: • 匹配行首与行尾.• 匹配数据集.• ...
- linux下怎么查看ssh的用户登录日志
linux下登录日志在下面的目录里: cd /var/log 查看ssh用户的登录日志: less secure linux日志管理: 1. 日志简介 日志对于安全来说,非常重要,他记录了系统每天发生 ...
- 地图编辑器V1
功能:1. 拖放地图元素至地图编辑器中2. 可设置参考图3. 背景图可平铺,中央,左上角等放置4. 地图上的元素可旋转,可删除,可拖动5. 保存地图数据时同时生成XML格式的地图信息 -------- ...
- TCP校验和的原理和实现
http://blog.csdn.net/zhangskd/article/details/11770647 分类: Linux TCP/IP Linux Kernel 2013-09-24 ...
- 从vmware下载到Linux环境下jdk和maven的安装
写在前面:个人总结,如有不对请指出 操作环境: 操作系统:window7 企业版 处理器:Intel Core i5-4200U CPU @ 1.6GHz 内存:8G 系统类型:64位操作系统 需要安 ...
- mysql 分库分表
分表是分散数据库压力的好方法. 分表,最直白的意思,就是将一个表结构分为多个表,然后,可以再同一个库里,也可以放到不同的库. 当然,首先要知道什么情况下,才需要分表.个人觉得单表记录条数达到百万到千万 ...
- c++学习之容器细枝末节(1)
对照着c++primier 开始学习第九章容器,把课后习题当做练习,虽然是看过书上的讲解,但是做题编程的时候,一些需要注意的地方还是难免有遗漏. 一下是几点印象比较深刻的总结: (1)前几章只学了ve ...
- Codeforces 460D Little Victor and Set --分类讨论+构造
题意:从区间[L,R]中选取不多于k个数,使这些数异或和尽量小,输出最小异或和以及选取的那些数. 解法:分类讨论. 设选取k个数. 1. k=4的时候如果区间长度>=4且L是偶数,那么可以构造四 ...
- 第14章 位图和位块传输_14.4 GDI位图对象(1)
14.4.1 创建DDB (1)创建 HBITMAP= CreateBitmap(cx,cy,cPlanes,cBitsPixel,lpBits); 参数 说明 cx,cy 指定位图宽度和高度,单位为 ...
- 第四章 Hibernate入门
1.构建了一个Student实体类 public class Student { private Integer id; //name private String name; //age priva ...