diff --git a/vimrc b/vimrc index cc0f911..00aecc2 100644 --- a/vimrc +++ b/vimrc @@ -36,52 +36,52 @@ set nocompatible "[Use Plug-ins and Plug-in Manager(Vundle) only on UNIX or MAC OS]" if has("unix") || has("mac") -filetype off -"[Download and install Vundle Plug-in Manager]" -try -if !isdirectory(expand("$HOME/.vim/bundle")) -silent !mkdir -p $HOME/.vim/bundle -silent cd $HOME/.vim/bundle -silent !git clone https://github.com/gmarik/Vundle.vim.git -silent cd $HOME -endif -"[Run Plug-ins]" -set runtimepath+=$HOME/.vim/bundle/Vundle.vim -call vundle#begin() -Plugin 'gmarik/Vundle.vim' -map :VundleInstall -map :VundleUpdate -if has("python") -Plugin 'klen/python-mode' -endif -if has("perl") -Plugin 'vim-perl/vim-perl' -endif -if has("ruby") -Plugin 'terryma/vim-multiple-cursors' -endif -Plugin 'majutsushi/tagbar' -map :TagbarToggle -Plugin 'mbbill/undotree' -map :UndotreeToggle -Plugin 'scrooloose/nerdtree' -map :NERDTreeToggle -Plugin 'AutoComplPop' -Plugin 'kien/ctrlp.vim' -Plugin 'godlygeek/tabular' -Plugin 'tpope/vim-surround' -Plugin 'mhinz/vim-startify' -Plugin 'Raimondi/delimitMate' -Plugin 'msanders/snipmate.vim' -Plugin 'Lokaltog/vim-easymotion' -"[Vim colorschemes]" -Plugin 'tomasr/molokai' -Plugin 'djjcast/mirodark' -call vundle#end() -catch -endtry + filetype off + "[Download and install Vundle Plug-in Manager]" + try + if !isdirectory(expand("$HOME/.vim/bundle")) + silent !mkdir -p $HOME/.vim/bundle + silent cd $HOME/.vim/bundle + silent !git clone https://github.com/gmarik/Vundle.vim.git + silent cd $HOME + endif + "[Run Plug-ins]" + set runtimepath+=$HOME/.vim/bundle/Vundle.vim + call vundle#begin() + Plugin 'gmarik/Vundle.vim' + map :VundleInstall + map :VundleUpdate + if has("python") + Plugin 'klen/python-mode' + endif + if has("perl") + Plugin 'vim-perl/vim-perl' + endif + if has("ruby") + Plugin 'terryma/vim-multiple-cursors' + endif + Plugin 'majutsushi/tagbar' + map :TagbarToggle + Plugin 'mbbill/undotree' + map :UndotreeToggle + Plugin 'scrooloose/nerdtree' + map :NERDTreeToggle + Plugin 'AutoComplPop' + Plugin 'kien/ctrlp.vim' + Plugin 'godlygeek/tabular' + Plugin 'tpope/vim-surround' + Plugin 'mhinz/vim-startify' + Plugin 'Raimondi/delimitMate' + Plugin 'msanders/snipmate.vim' + Plugin 'Lokaltog/vim-easymotion' + "[Vim colorschemes]" + Plugin 'tomasr/molokai' + Plugin 'djjcast/mirodark' + call vundle#end() + catch + endtry else -filetype on + filetype on endif "[Recognize the type/syntax of the file]" filetype plugin on @@ -93,7 +93,7 @@ runtime macros/matchit.vim syntax on "[Read the changes after the save .vimrc]" if has("autocmd") -autocmd! BufWritePost $MYVIMRC source $MYVIMRC + autocmd! BufWritePost $MYVIMRC source $MYVIMRC endif "[Define the leader key]" let mapleader="," @@ -112,6 +112,10 @@ nnoremap j nnoremap k nnoremap h nnoremap l +nnoremap k +nnoremap j +nnoremap h +nnoremap l "[Locate the desired objects in the center of the screen]" nnoremap n nzz nnoremap N Nzz @@ -148,7 +152,7 @@ set showfulltag "[Don't give the intro message when starting Vim]" set shortmess="" if has("unix") || has("mac") -set shortmess+=I + set shortmess+=I endif "[Always show StatusLine]" set laststatus=2 @@ -167,7 +171,7 @@ set splitright set equalalways "[Lisp coding settings]" if (&filetype == "lisp") -set lisp + set lisp endif "[Use the mouse in terminal]" set mouse=a @@ -187,43 +191,43 @@ set cmdwinheight=10 set virtualedit=all "[GUI/Color Scheme/Font settings]" if has("gui_running") -winsize 90 50 -silent cd $HOME -set linespace=0 -set guioptions="" -set guitablabel="" -if has("autocmd") -autocmd InsertEnter * set cursorline -autocmd InsertLeave * set nocursorline -endif -if has("win32") || has("win64") -try -colorscheme desert -set guifont=PT_Mono:h11 -catch -endtry -elseif has("unix") -try -colorscheme mirodark -set guifont=PT\ Mono\ 11 -catch -endtry -elseif has("mac") -try -set antialias -colorscheme molokai -set guifont=Monaco:h11 -catch -endtry -endif + winsize 90 50 + silent cd $HOME + set linespace=0 + set guioptions="" + set guitablabel="" + if has("autocmd") + autocmd InsertEnter * set cursorline + autocmd InsertLeave * set nocursorline + endif + if has("win32") || has("win64") + try + colorscheme desert + set guifont=PT_Mono:h11 + catch + endtry + elseif has("unix") + try + colorscheme mirodark + set guifont=PT\ Mono\ 11 + catch + endtry + elseif has("mac") + try + set antialias + colorscheme molokai + set guifont=Monaco:h11 + catch + endtry + endif else -if has("unix") || has("mac") -try -set t_Co=256 -colorscheme desert -catch -endtry -endif + if has("unix") || has("mac") + try + set t_Co=256 + colorscheme desert + catch + endtry + endif endif "[Backspace functions]" set backspace=indent,eol,start @@ -231,7 +235,7 @@ set backspace=indent,eol,start set scrolloff=10 set scrolljump=10 set showmatch -set matchpairs="" +set matchpairs=":" set matchpairs+=(:) set matchpairs+={:} set matchpairs+=[:] @@ -263,7 +267,7 @@ set textwidth=80 set number set numberwidth=2 "[Don't show current position]" -set noruler +set ruler "[For regular expressions turn magic on]" set magic "[Search settings]" @@ -331,19 +335,19 @@ set sessionoptions+=unix,slash,blank,buffers,curdir set sessionoptions+=folds,help,options,tabpages,winsize "[Completion settings]" if has("autocmd") -autocmd FileType c set omnifunc=ccomplete#Complete -autocmd FileType css set omnifunc=csscomplete#CompleteCSS -autocmd FileType html set omnifunc=htmlcomplete#CompleteTags -if has("ruby") -autocmd FileType ruby set omnifunc=rubycomplete#Complete -endif -if has("perl") -autocmd FileType perl set omnifunc=perlcomplete#CompletePERL -endif -if has("python") -autocmd FileType python set omnifunc=pythoncomplete#Complete -endif -autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS + autocmd FileType c set omnifunc=ccomplete#Complete + autocmd FileType css set omnifunc=csscomplete#CompleteCSS + autocmd FileType html set omnifunc=htmlcomplete#CompleteTags + if has("ruby") + autocmd FileType ruby set omnifunc=rubycomplete#Complete + endif + if has("perl") + autocmd FileType perl set omnifunc=perlcomplete#CompletePERL + endif + if has("python") + autocmd FileType python set omnifunc=pythoncomplete#Complete + endif + autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS endif "[Completion search settings]" set complete=.,b,d,i,k,s,t,u,U,w @@ -369,63 +373,63 @@ set wildignore=*.o,*.obj,*.pyc,*.pyo,*.swp,*.bak,*.exe,*.class set confirm "[Method used for encryption when the buffer is written to a file]" if (version <= 702) -set cryptmethod=zip -else -set cryptmethod=blowfish + set cryptmethod=zip + else + set cryptmethod=blowfish endif "[Make the scripts executable]" function! ChangeScriptMode() -if getline(1) =~ "#!" -if getline(1) =~ "bin/" -silent !chmod +x -endif -endif + if getline(1) =~ "#!" + if getline(1) =~ "bin/" + silent !chmod +x + endif + endif endfunction if has("unix") || has("mac") -if has("autocmd") -autocmd BufWritePost * call ChangeScriptMode() -endif + if has("autocmd") + autocmd BufWritePost * call ChangeScriptMode() + endif endif "[Python/Perl scripts templates]" function! InitScriptFile(type) -if (a:type == "python") -execute setline(1, "#!/usr/bin/env python") -execute setline(2, "# -*- coding: utf-8 -*-") -elseif (a:type == "perl") -execute setline(1, "#!/usr/bin/env perl") -execute setline(2, "") -execute setline(3, "use warnings;") -execute setline(4, "use strict;") -endif -normal Go + if (a:type == "python") + execute setline(1, "#!/usr/bin/env python") + execute setline(2, "# -*- coding: utf-8 -*-") + elseif (a:type == "perl") + execute setline(1, "#!/usr/bin/env perl") + execute setline(2, "") + execute setline(3, "use warnings;") + execute setline(4, "use strict;") + endif + normal Go endfunction if has("autocmd") -autocmd BufNewFile *.pl,*.pm call InitScriptFile("perl") -autocmd BufNewFile *.py,*.pyw call InitScriptFile("python") + autocmd BufNewFile *.pl,*.pm call InitScriptFile("perl") + autocmd BufNewFile *.py,*.pyw call InitScriptFile("python") endif "[Remove tabs and spaces at the end of lines]" function! DeleteTrailingTWS() -normal mb -silent %s/[ \t]*$//g -silent %s/\s\+$//ge -normal 'b + normal mb + silent %s/[ \t]*$//g + silent %s/\s\+$//ge + normal 'b endfunction if has("autocmd") -autocmd BufWritePre *.py,*.pyw retab -autocmd BufWritePre * call DeleteTrailingTWS() + autocmd BufWritePre *.py,*.pyw retab + autocmd BufWritePre * call DeleteTrailingTWS() endif "[Show current mode in StatusLine]" function! ShowModeInStatusLine() -let g:currentMode = mode() -let g:showMode = "" -if (g:currentMode ==# "i") -let g:showMode = "Insert" -elseif (g:currentMode ==# "R") -let g:showMode = "Replace" -elseif (g:currentMode ==# "n") -let g:showMode = "Normal" -else -let g:showMode = "Visual" -endif -return g:showMode + let g:currentMode = mode() + let g:showMode = "" + if (g:currentMode ==# "i") + let g:showMode = "Insert" + elseif (g:currentMode ==# "R") + let g:showMode = "Replace" + elseif (g:currentMode ==# "n") + let g:showMode = "Normal" + else + let g:showMode = "Visual" + endif + return g:showMode endfunction"""""""""""""""""""