在主文件夾(個人文件夾)里創(chuàng)建 .vimrc 文件,以下列內(nèi)容為母版快速的配置gvim。 終端輸入:gvim .vimrc 或者在個人文件夾下點擊 Ctrl+h(顯示隱藏文件命令)找到.vimr文件,根據(jù)個人喜好定制gvim的配置
內(nèi)容如下:
" 不要使用vi的鍵盤模式,而是vim自己的
set nocompatible " 語法高亮 set syntax=on "配色方案 colorscheme torte colorscheme koehler set pastetoggle=<F11> " pastetoggle( 粘貼模式切換 ) 可以避免自動縮進 " 的帶來的格式影響;每次按下 <F11> 鍵可以打開 " / 關閉自動縮進功 " 去掉輸入錯誤的提示聲音 set noeb " 在處理未保存或只讀文件的時候,彈出確認 set confirm " 自動縮進 set autoindent set cindent " 自動換行 set wrap " 整詞換行 set linebreak " Tab鍵的寬度 set tabstop=4 " 統(tǒng)一縮進為4 set softtabstop=4 set shiftwidth=4 " 不要用空格代替制表符 " set noexpandtab set expandtab " 在行和段開始處使用制表符 set smarttab " 顯示行號 set number " 歷史記錄數(shù) set history=1000 "禁止生成臨時文件 set nobackup set noswapfile "搜索忽略大小寫 set ignorecase "搜索逐字符高亮 set hlsearch set incsearch "行內(nèi)替換 set gdefault "編碼設置 set enc=utf-8 set fencs=utf-8,ucs-bom,shift-jis,gb18030,gbk,gb2312,cp936 "語言設置 set helplang=cn set encoding=utf8 set langmenu=zh_CN.UTF-8 set imcmdline source $VIMRUNTIME/delmenu.vim source $VIMRUNTIME/menu.vim " 設置字體。 set guifont=Liberation\Mono\ 12 "set guifont=Fixedsys\Excelsior\3.01\ 14 " 我的狀態(tài)行顯示的內(nèi)容(包括文件類型和解碼) 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%%] " 總是顯示狀態(tài)行 set laststatus=2 " 在編輯過程中,在右下角顯示光標位置的狀態(tài)行 set ruler " 命令行(在狀態(tài)行下)的高度,默認為1,這里是2 set cmdheight=2 " 偵測文件類型 filetype on " 載入文件類型插件 filetype plugin on " 為特定文件類型載入相關縮進文件 filetype indent on " 保存全局變量 set viminfo+=! " 帶有如下符號的單詞不要被換行分割 set iskeyword+=_,$,@,%,#,- " 字符間插入的像素行數(shù)目 set linespace=0 " 增強模式中的命令行自動完成操作 set wildmenu " 使回格鍵(backspace)正常處理indent, eol, start等 set backspace=2 " 允許backspace和光標鍵跨越行邊界 set whichwrap+=<,>,h,l " 可以在buffer的任何地方使用鼠標(類似office中在工作區(qū)雙擊鼠標定位) set mouse=a set selection=exclusive set selectmode=mouse,key " 通過使用: commands命令,告訴我們文件的哪一行被改變過 set report=0 " 啟動的時候不顯示那個援助索馬里兒童的提示 set shortmess=atI " 在被分割的窗口間顯示空白,便于閱讀 set fillchars=vert:\ ,stl:\ ,stlnc:\ " 高亮顯示匹配的括號 set showmatch " 匹配括號高亮的時間(單位是十分之一秒) set matchtime=5 " 光標移動到buffer的頂部和底部時保持3行距離 set scrolloff=3 " 為C程序提供自動縮進 set smartindent " 只在下列文件類型被偵測到的時候顯示行號,普通文本文件不顯示 if has("autocmd") autocmd FileType xml,html,c,cs,java,perl,shell,bash,cpp,python,vim,php,ruby set number autocmd FileType xml,html vmap <C-o> <ESC>'<i<!--<ESC>o<ESC>'>o--> autocmd FileType java,c,cpp,cs vmap <C-o> <ESC>'<o/*<ESC>'>o*/ autocmd FileType html,text,php,vim,c,java,xml,bash,shell,perl,python setlocal textwidth=100 autocmd Filetype html,xml,xsl source $VIMRUNTIME/plugin/closetag.vim autocmd BufReadPost * \ if line("'\"") > 0 && line("'\"") <= line("{1}quot;) | \ exe "normal g`\"" | \ endif endif " has("autocmd") " F5編譯和運行C程序,F(xiàn)6編譯和運行C++程序 " C的編譯和運行 map <F5> :call CompileRunGcc()<CR> func! CompileRunGcc() exec "w" exec "!gcc -Wall % -o %<" exec "! ./%<" endfunc " C++的編譯和運行 map <F6> :call CompileRunGpp()<CR> func! CompileRunGpp() exec "w" exec "!g++ -Wall % -o %<" exec "! ./%<" endfunc " 能夠漂亮地顯示.NFO文件 set encoding=utf-8 function! SetFileEncodings(encodings) let b:myfileencodingsbak=&fileencodings let &fileencodings=a:encodings endfunction function! RestoreFileEncodings() let &fileencodings=b:myfileencodingsbak unlet b:myfileencodingsbak endfunction au BufReadPre *.nfo call SetFileEncodings('cp437')|set ambiwidth=single au BufReadPost *.nfo call RestoreFileEncodings() " 高亮顯示普通txt文件(需要txt.vim腳本) au BufRead,BufNewFile * setfiletype txt " 用空格鍵來開關折疊 set foldenable set foldmethod=manual nnoremap <space> @=((foldclosed(line('.')) < 0) ? 'zc' : 'zo')<CR> " minibufexpl插件的一般設置 let g:miniBufExplMapWindowNavVim = 1 let g:miniBufExplMapWindowNavArrows = 1 let g:miniBufExplMapCTabSwitchBufs = 1 let g:miniBufExplModSelTarget = 1 "----------- " 模仿MS Windows中的快捷鍵 "----------- vmap <C-c> "yy vmap <C-x> "yd nmap <C-v> "yp vmap <C-v> "yp nmap <C-a> ggvG$ |
|
來自: herowuking > 《VIM》