我在windows下的gvim的配置(个人觉得不错)

来源:互联网 发布:阿里云腾讯云 微信开发 编辑:程序博客网 时间:2024/05/16 23:54
由于不久可能要在linux做大量的工作,所以还是要开始熟悉下vim这个强大的编辑器,有好阵子没用了,一些小技巧已淡忘了许多。 这是自己曾在csdn发过的一个vim配置,修改后更新到vim7.1 for windows版本。

    
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    
" Import external source
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    source $VIMRUNTIME/vimrc_example.vim
    source $VIMRUNTIME/mswin.vim

    map QW :wq!<CR>

    
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    
" General
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    set nocompatible 
" get out of horrible vi-compatible mode
    filetype on 
" detect the type of file
    set history
=100 " How many lines of history to remember
    set ffs=dos,unix,mac 
" support all three, in this order
    filetype plugin indent on 
" load filetype plugins
    set viminfo+=! 
" make sure it can save viminfo
    set isk+
=_,$,@,%,#," none of these should be word dividers, so make them not be

    
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    
" Theme/Colors
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    set background=dark 
" we are using a dark background
    syntax on 
" syntax highlighting on
    colorscheme desert 
" my theme for gui
    
"colorscheme evening " my theme for terminal

    
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    
" Files/Backups
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    set nobackup 
" make backup file
    set makeef=error.err 
" When using make, where should it dump the file

    
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    
" Vim UI
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    set wildmenu 
" turn on wild menu
    set ruler 
" Always show current positions along the bottom 
    set cmdheight=1 
" the command bar is 1 high
    set nu 
" turn off line numbers
    
"set numberwidth=4 " minimum width to use for the number column,not a fix size Vim64不支持
    set hid 
" you can change buffer without saving
    set backspace
=2 " make backspace work normal
    set whichwrap+=<,>,h,l  
" backspace and cursor keys wrap to
    set mouse
=" use mouse everywhere
    set shortmess=atI 
" shortens messages to avoid 'press a key' prompt 
    set report
=0 " tell us when anything is changed via :...
    set lz 
" do not redraw while running macros (much faster) (LazyRedraw)
    
" make the splitters between windows be blank
    set fillchars=vert: ,stl: ,stlnc:
    
"set lsp=0 " space it out a little more (easier to read)

    
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    
" Visual Cues
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    set showmatch 
" show matching brackets
    set hlsearch 
" do highlight searched for phrases
    set incsearch 
" BUT do highlight as you type you search phrase
    set listchars=tab:| ,trail:.,extends:>,precedes:<,eol:$ 
" what to show when I hit :set list
    
"set so=15 " Keep 10 lines (top/bottom) for scope
    set novisualbell 
" don't blink
    set noerrorbells 
" no noises
    set laststatus
=2 " always show the status line

    
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    
" File encode
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    set encoding
=utf-8
    set fileencoding
=utf-8
    set fileencodings
=utf-8,chinese,latin-1

    
"解决菜单乱码
    source $VIMRUNTIME/delmenu.vim
    source $VIMRUNTIME/menu.vim
    
"解决consle输出乱码
    language messages zh_CN.utf-
8
    

    
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    
" Text Formatting/Layout
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    set formatoptions+
=mM " for charactors fold and patch
    set ai 
" autoindent
    set si 
" smartindent 
    set cindent 
" do c-style indenting
    set tabstop
=4 " tab spacing (settings below are just to unify it)
    set softtabstop=4 
" unify
    set shiftwidth
=4 " unify 
    set noexpandtab 
" real tabs please!
    set nowrap 
" do not wrap lines  
    set smarttab 
" use tabs at the start of a line, spaces elsewhere

    
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    
" Folding
    
" Enable folding, but by default make it act like folding is off, because folding is annoying in anything but a few rare cases
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    set foldenable 
" Turn on folding
    set foldlevel=100 
" Don't autofold anything (but I can still fold manually)
    set foldopen-
=search " don't open folds when you search into them
    set foldopen-=undo 
" don't open folds when you undo stuff

    
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    
" File Explorer
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    let g:explVertical
=1 " should I split verticially
    let g:explWinSize=35 
" width of 35 pixels

    
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    
" Win Manager
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    let g:winManagerWidth
=35 " How wide should it be( pixels)
    let g:winManagerWindowLayout = 'FileExplorer,TagsExplorer|BufExplorer' 
" What windows should it

    
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    
" CTags and Taglist
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    let Tlist_Ctags_Cmd 
= "/usr/bin/ctags-exuberant" " Location of my ctags
    let Tlist_Sort_Type = 
"name" " order by 
    let Tlist_Use_Right_Window 
= 0 " split to the left side of the screen
    let Tlist_Compart_Format = 1 
" show small meny
    let Tlist_Exist_OnlyWindow 
= 1 " if you are the last, kill yourself
    let Tlist_File_Fold_Auto_Close = 0 
" Do not close tags for other files
    let Tlist_Enable_Fold_Column 
= 0 " Do not show folding tree

    set tags=./tags,./../tags,./../../tags,./**/tags,tags 
" which tags files CTRL-] will search
    
"set autochdir " auto change the current dierctory when you open the file or window or any other buffer  Vim64不支持
    set makeef
=makeerror.err
    set path
=.,./../**,/usr/include/*,,

    
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    
" Minibuf
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    let g:miniBufExplTabWrap 
= 1 " make tabs show complete (no broken on two lines)
    let g:miniBufExplModSelTarget = 1

    
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    
" Matchit
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    let b:match_ignorecase 
= 1

    
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    
" Mappings,I don't need any mapping now
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    
"map <right> <ESC>:MBEbn<RETURN> " right arrow (normal mode) switches buffers  (excluding minibuf)
    
"map <left> <ESC>:MBEbp<RETURN> " left arrow (normal mode) switches buffers (excluding minibuf) 
    
"map <up> <ESC>:Sex<RETURN><ESC><C-W><C-W> " up arrow (normal mode) brings up a file list
    
"map <down> <ESC>:Tlist<RETURN> " down arrow  (normal mode) brings up the tag list
    
"map <A-i> i <ESC>r " alt-i (normal mode) inserts a single char, and then switches back to normal
    
"map <F2> <ESC>ggVG:call SuperRetab()<left>
    
"map <F12> ggVGg? " encypt the file (toggle)

    
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    
" Autocommands
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    autocmd BufEnter * :syntax sync fromstart 
" ensure every file does syntax highlighting (full)
    
"autocmd GUIEnter * :simalt ~x -- " having it auto maximize the screen
    au BufEnter /usr/include/c++/*   setf cpp 
" all the file under the directory are recognized as cpp files by vim

    
" if there are any error space(the end of line or before the tabs) in c/c++ code,highlight it
    
"if $VIM_HATE_SPACE_ERRORS != '0'
            
"let c_space_errors=1
    
"endif

    
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    
" Useful abbrevs, I don't need any iab now
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
    
"iab xasp <%@language=jscript%><CR><%<CR><TAB><CR><BS>%><ESC><<O<TAB>
    
"iab xdate <c-r>=strftime("%d/%m/%y %H:%M:%S")<cr>

原创粉丝点击