Skip to content

Instantly share code, notes, and snippets.

@dustincys
Last active January 3, 2016 13:39
Show Gist options
  • Save dustincys/8471431 to your computer and use it in GitHub Desktop.
Save dustincys/8471431 to your computer and use it in GitHub Desktop.
.vimrc
" Set color of terminal
if has ('gui_running')
else
set term=builtin_xterm
set term=xterm-256color
endif
set t_Co=256
"set path of plugin
set runtimepath+=~/.vim/l9
set runtimepath+=/usr/share/vim/addons/
"set coding type
set fileencodings=utf-8,gbk,gb18030,utf-16,big5
set encoding=utf-8
let &termencoding=&encoding
"Set terminal to display number
set number
"Set cursor position offset 5 lines
set so=5
"Set the clipboard to system clipboard
set clipboard=unnamedplus
""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"vundle setting
set nocompatible
filetype off
set rtp+=~/.vim/bundle/vundle/
call vundle#rc()
" let Vundle manage Vundle
" required!
Bundle 'gmarik/vundle'
" The bundles you install will be listed here
filetype plugin indent on
" The rest of your config follows here
" Track the engine.
Bundle 'SirVer/ultisnips'
" Snippets are separated from the engine. Add this if you want them:
Bundle 'honza/vim-snippets'
" If you want :UltiSnipsEdit to split your window.
let g:UltiSnipsEditSplit="vertical"
let g:UltiSnipsExpandTrigger = "<c-j>"
let g:UltiSnipsJumpForwardTrigger = "<c-j>"
let g:UltiSnipsJumpBackwardTrigger = "<c-k>"
let g:UltiSnipsListSnippets = "<cs-l>"
let g:UltiSnipsSnippetDirectories = ["UltiSnips"]
"function! g:UltiSnips_Complete()
" call UltiSnips#ExpandSnippet()
" if g:ulti_expand_res == 0
" if pumvisible()
" return "\<C-n>"
" else
" call UltiSnips#JumpForwards()
" if g:ulti_jump_forwards_res == 0
" return "\<TAB>"
" endif
" endif
" endif
" return ""
"endfunction
"au InsertEnter * exec "inoremap <silent> " . g:UltiSnipsExpandTrigger . " <C-R>=g:UltiSnips_Complete()<cr>"
Bundle 'Valloric/YouCompleteMe'
let g:ycm_autoclose_preview_window_after_insertion = 1
Plugin 'airblade/vim-gitgutter'
Plugin 'bling/vim-airline'
let g:airline#extensions#tabline#enabled=1
let g:airline_powerline_fonts=1
let g:airline_theme='murmur'
"Bundle 'Lokaltog/powerline', {'rtp': 'powerline/bindings/vim/'}
" Powerline setup
if has("gui_running")
set guifont=Monaco\ for\ Powerline\ 14
"set guifont=Monaco\ 14
"let g:Powerline_symbols = 'fancy'
endif
set laststatus=2
Bundle 'tpope/vim-fugitive'
Bundle 'scrooloose/nerdtree'
map <F6> :NERDTreeToggle<CR>
Bundle 'terryma/vim-multiple-cursors'
Bundle 'luochen1990/rainbow'
let g:rainbow_active = 1
let g:rainbow_conf = {
\ 'guifgs': ['royalblue3', 'darkorange3', 'seagreen3', 'firebrick'],
\ 'ctermfgs': ['blue', 'magenta', 'cyan'],
\ 'operators': '_,_',
\ 'parentheses': [['(',')'], ['\[','\]'], ['{','}']],
\ 'separately': {
\ '*': {},
\ 'lisp': {
\ 'guifgs': ['royalblue3', 'darkorange3', 'seagreen3', 'firebrick', 'darkorchid3'],
\ 'ctermfgs': ['darkgray', 'darkblue', 'darkmagenta', 'darkcyan', 'darkred', 'darkgreen'],
\ },
\ 'vim': {
\ 'parentheses': [['fu\w* \s*.*)','endfu\w*'], ['for','endfor'], ['while', 'endwhile'], ['if','_elseif\|else_','endif'], ['(',')'], ['\[','\]'], ['{','}']],
\ },
\ 'tex': {
\ 'parentheses': [['(',')'], ['\[','\]'], ['\\begin{.*}','\\end{.*}']],
\ },
\ 'css': 0,
\ 'stylus': 0,
\ }
\}
Bundle 'git://git.code.sf.net/p/vim-latex/vim-latex'
"Bundle 'fweep/vim-tabber'
"set tabline=%!tabber#TabLine()
"Bundle 'rkulla/pydiction'
"let g:pydiction_menu_height = 3
Bundle 'altercation/vim-colors-solarized'
if has ('gui_running')
"let g:solarized_termtrans=1
"let g:solarized_contrast="high"
"let g:solarized_termcolors=256
"let g:solarized_termtrans=1
"colorscheme solarized
"set cursorline
"hi CursorLine guibg=black gui=bold
"let g:solarized_bold=1
hi CursorLine guibg=#222222
hi LineNr guibg=#222222
else
let g:solarized_termcolors=256
let g:solarized_termtrans=1
let g:solarized_contrast="high"
set background=dark
colorscheme solarized
set cursorline
"colorscheme slate
"set cursorline
"hi CursorLine ctermbg=black guibg=black cterm=bold
endif
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" others setting
"set omnifunc=syntaxcomplete#Complete
""让Vim的补全菜单行为与一般IDE一致(参考VimTip1228)
"set completeopt+=longest
""离开插入模式后自动关闭预览窗口
"autocmd InsertLeave * if pumvisible() == 0|pclose|endif
""
""回车即选中当前项
"inoremap <expr> <CR> pumvisible() ? "\<C-y>" : "\<CR>"
""上下左右键的行为
"inoremap <expr> <Down> pumvisible() ? "\<C-n>" : "\<Down>"
"inoremap <expr> <Up> pumvisible() ? "\<C-p>" : "\<Up>"
"inoremap <expr> <PageDown> pumvisible() ? "\<PageDown>\<C-p>\<C-n>" : "\<PageDown>"
"inoremap <expr> <PageUp> pumvisible() ? "\<PageUp>\<C-p>\<C-n>" : "\<PageUp>"
"
"let g:acp_completeoptPreview=1
let Tlist_Ctags_Cmd = "/usr/bin/ctags"
let Tlist_WinWidth = 40
map <F4> :TlistToggle<cr>
autocmd BufWritePost *.py :TlistUpdate
"hi! VertSplit guifg=black guibg=black gui=NONE
"set fillchars+=vert:\
set foldmethod=syntax
augroup filetype_python
autocmd!
autocmd FileType python setlocal foldmethod=indent
augroup END
set foldlevel=99
"Set CursorLine highlight
"hi CursorLine ctermbg=black guibg=black cterm=bold
"set cursorline
"bad spell highlight
hi clear SpellBad
hi SpellBad cterm=reverse
"
set hlsearch
hi Search cterm=underline gui=underline ctermfg=none ctermbg=none
"
"hi Visual cterm=none ctermfg=black ctermbg=gray
"
hi MatchParen cterm=bold ctermbg=none ctermfg=none
" automatically change window's cwd to file's dir
set autochdir
set incsearch
" I'm prefer spaces to tabs
autocmd FileType python setlocal et sta sw=4 sts=4
" more subtle popup colors
if has ('gui_running')
highlight Pmenu guibg=black guifg=white
highlight PmenuSel guibg=blue guifg=white gui=bold
endif
highlight PmenuSel ctermbg=darkblue ctermfg=white cterm=bold
highlight Pmenu ctermfg=gray ctermbg=black
if ! has('gui_running')
set ttimeoutlen=10
augroup FastEscape
autocmd!
au InsertEnter * set timeoutlen=0
au InsertLeave * set timeoutlen=1000
augroup END
endif
" save folding status
autocmd BufWinLeave *.* mkview
autocmd BufWinEnter *.* silent loadview
function! SyncTexForward()
let execstr = "silent !okular --unique %:p:r.pdf\\#src:".line(".")."%:p &"
exec execstr
endfunction
nmap <Leader>f :call SyncTexForward()<CR>
hi GitGutterAdd cterm=bold ctermfg=lightgreen ctermbg=235 guibg=black
hi GitGutterChange cterm=bold ctermfg=lightblue ctermbg=235 guibg=black
hi GitGutterDelete cterm=bold ctermfg=red ctermbg=235 guibg=black
hi GitGutterChangeDelete cterm=bold ctermfg=yellow ctermbg=235 guibg=black
hi SignColumn ctermbg=235 guibg=black
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment