Last active
October 10, 2015 20:58
-
-
Save fengluo/3749890 to your computer and use it in GitHub Desktop.
vimrc
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
" System | |
set nocompatible | |
filetype off | |
set rtp+=~/.vim/bundle/Vundle.vim | |
call vundle#begin() | |
Bundle 'gmarik/Vundle.vim' | |
"Github bundles | |
Bundle "tpope/vim-fugitive" | |
Bundle "tpope/vim-markdown" | |
Bundle "scrooloose/nerdtree" | |
Bundle "scrooloose/nerdcommenter" | |
Bundle "tpope/vim-surround" | |
"Bundle "pangloss/vim-javascript" | |
Bundle "lepture/vim-javascript" | |
Bundle "lepture/vim-css" | |
Bundle "lepture/vim-jinja" | |
Bundle "ervandew/supertab" | |
Bundle "scrooloose/syntastic" | |
Bundle "mattn/emmet-vim" | |
Bundle "wavded/vim-stylus" | |
Bundle "shemerey/vim-peepopen" | |
Bundle "msanders/snipmate.vim" | |
Bundle "altercation/vim-colors-solarized" | |
Bundle "Lokaltog/vim-powerline" | |
Bundle "chriskempson/vim-tomorrow-theme" | |
Bundle 'fholgado/minibufexpl.vim' | |
Bundle 'kien/ctrlp.vim' | |
Bundle 'taglist.vim' | |
"vim.org bundles | |
Bundle "jQuery" | |
call vundle#end() | |
set backspace=indent,eol,start | |
set nobackup | |
set history=50 | |
set encoding=utf-8 | |
set fileencoding=utf-8 | |
set fileencodings=utf-8,cp936,gbk | |
set ff=unix | |
" Options | |
"set paste | |
set ruler | |
set showcmd | |
set incsearch | |
set ignorecase | |
set smartcase | |
set gdefault | |
set smarttab | |
set expandtab | |
set shiftwidth=4 | |
set tabstop=4 | |
"set shiftround | |
set nu | |
set mouse=a | |
set vb t_vb= | |
set autoindent | |
set laststatus=2 | |
set cmdheight=1 | |
"set smartindent | |
set cursorline | |
"set cursorcolumn | |
set colorcolumn=+1 | |
set autoread | |
set wildmenu | |
set ttyfast | |
set dictionary=/usr/share/dict/words | |
"set relativenumber | |
"set undofile | |
set wildignore+=.hg,.git,.svn | |
set wildignore+=*.aux,*.out,*.toc | |
"set wildignore+=*.jpg,*.bmp,*.gif,*.png,*.jpeg | |
set wildignore+=*.o,*.obj,*.exe,*.dll,*.manifest | |
set wildignore+=*.sw? | |
set wildignore+=*.DS_Store | |
set wildignore+=*.pyc | |
set wildignore+=*.egg,*.egg-info | |
set wildignore+=*.orig | |
"set completeopt=preview | |
set list | |
set listchars=tab:▸\ ,eol:¬,extends:❯,precedes:❮ | |
"set statusline=%<%f\ %h%m%r%=%-14.(%l,%c%V%)\ %y,%P | |
"set statusline+=%#warningmsg# | |
"set statusline+=%{SyntasticStatuslineFlag()} | |
"set statusline+=%* | |
"configurations | |
set directory=$HOME/.hide | |
let g:netrw_home=$HOME . '/.hide' | |
let g:netrw_list_hide='.*\.swp$,.*\.pyc$,.*~' | |
let NERDTreeBookmarksFile=$HOME . '/.hide/bookmarks' | |
let NERDTreeShowBookmarks=1 | |
let NERDTreeChDirMode=2 | |
"let NERDTreeHijackNetrw=0 | |
"let g:netrw_altv=1 | |
"let g:netrw_browse_split=4 | |
let g:html_indent_inctags = "html,body,head,tbody" | |
let g:html_indent_script1 = "inc" | |
let g:html_indent_style1 = "inc" | |
"set noswapfile | |
let g:syntastic_check_on_open=1 | |
let loaded_html_syntax_checker = 0 | |
"let g:syntastic_stl_format = '[%E{Err: %fe #%e}%B{, }%W{Warn: %fw #%w}]' | |
"let g:syntastic_auto_loc_list=1 | |
" tabs | |
retab | |
set tabpagemax=7 | |
set showtabline=2 | |
nmap <c-n> :tabnext<cr> | |
nmap <c-p> :tabprevious<cr> | |
nmap tn :tabnew .<cr> | |
nmap tc :tabclose<cr> | |
nmap <tab> :NERDTreeToggle<cr> | |
syntax enable | |
"filetype plugin on | |
filetype plugin indent on | |
au BufRead,BufNewFile *.less set ft=css | |
autocmd FileType text setlocal textwidth=80 | |
autocmd FileType python setlocal textwidth=79 | |
autocmd FileType vim setlocal shiftwidth=2 tabstop=2 | |
autocmd FileType ruby setlocal shiftwidth=2 tabstop=2 | |
autocmd FileType javascript setlocal smartindent | |
autocmd FileType html setlocal syntax=htmldjango smartindent | |
autocmd FileType css setlocal syntax=css3 | |
au BufRead,BufNewFile *.vm set ft=html fileencoding=gbk syntax=velocity | |
au BufRead,BufNewFile *.j2 set ft=htmldjango | |
au BufRead,BufNewFile jquery.*.js set syntax=jquery | |
"map keys | |
let mapleader = "," | |
inoremap <C-U> <C-G>u<C-U> | |
",m -> fix dos ^M | |
noremap <Leader>m mmHmt:%s/<C-V><cr>//ge<cr>'tzt'm | |
nnoremap ; : | |
nnoremap <leader>W :%s/\s\+$//<cr>:let @/=''<CR> | |
set background=dark | |
colorscheme solarized | |
" colorscheme Tomorrow-Night-Blue | |
let g:solarized_termcolors=256 | |
" let g:solarized_visibility='low' | |
"gui setting | |
if has("gui_running") | |
set guioptions=egmrLt | |
set guifont=Monaco | |
winsize 100 60 | |
set cursorcolumn | |
set hidden | |
else | |
let g:solarized_termtrans=1 | |
let g:solarized_termcolors=256 | |
endif | |
" --------------- | |
" ctrlp.vim | |
" --------------- | |
" Ensure Ctrl-P isn't bound by default | |
let g:ctrlp_map = '' | |
" Ensure max height isn't too large. (for performance) | |
let g:ctrlp_max_height = 10 | |
" -------- | |
" Use ctrlp.vim since we don't have Ruby | |
" -------- | |
" Conditional Mappings | |
if has('unix') | |
let g:ctrlp_map = '<C-t>' | |
else | |
let g:ctrlp_map = '<M-t>' | |
endif | |
" Leader Commands | |
nnoremap <leader>t :CtrlPRoot<CR> | |
nnoremap <leader>b :CtrlPBuffer<CR> | |
" Always use CtrlP for most recently used files and relative dierctory. | |
if has('unix') | |
nnoremap <silent><C-u> :CtrlPCurFile<CR> | |
else | |
nnoremap <silent><M-u> :CtrlPCurFile<CR> | |
endif | |
" Also map leader commands | |
nnoremap <leader>u :CtrlPCurFile<CR> | |
nnoremap <leader>m :CtrlPMRUFiles<CR> | |
nnoremap <leader>b :CtrlPBuffer<CR> | |
" Tag list (ctags) | |
let Tlist_Show_One_File = 1 | |
let Tlist_Exit_OnlyWindow = 1 | |
let Tlist_Use_Right_Window = 1 | |
map <silent> <C-r> :TlistToggle<cr> | |
"PeepOpen | |
if has("gui_macvim") | |
"delete print menu | |
unmenu File.Print | |
map <D-p> <Plug>PeepOpen | |
menu File.&PeepOpen <Plug>PeepOpen | |
endif |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment