Initial commit
This commit is contained in:
169
dotfiles/common/.vimrc
Normal file
169
dotfiles/common/.vimrc
Normal file
@@ -0,0 +1,169 @@
|
||||
" File: .vimrc
|
||||
" Author: Jake Zimmerman <jake@zimmerman.io>
|
||||
"
|
||||
" How I configure Vim :P
|
||||
"
|
||||
|
||||
" Gotta be first
|
||||
set nocompatible
|
||||
|
||||
filetype off
|
||||
|
||||
set rtp+=~/.vim/bundle/Vundle.vim
|
||||
call vundle#begin()
|
||||
|
||||
Plugin 'VundleVim/Vundle.vim'
|
||||
|
||||
" ----- Making Vim look good ------------------------------------------
|
||||
Plugin 'altercation/vim-colors-solarized'
|
||||
Plugin 'tomasr/molokai'
|
||||
Plugin 'vim-airline/vim-airline'
|
||||
Plugin 'vim-airline/vim-airline-themes'
|
||||
|
||||
" ----- Vim as a programmer's text editor -----------------------------
|
||||
Plugin 'scrooloose/nerdtree'
|
||||
Plugin 'jistr/vim-nerdtree-tabs'
|
||||
Plugin 'vim-syntastic/syntastic'
|
||||
Plugin 'xolox/vim-misc'
|
||||
Plugin 'xolox/vim-easytags'
|
||||
Plugin 'majutsushi/tagbar'
|
||||
Plugin 'ctrlpvim/ctrlp.vim'
|
||||
Plugin 'vim-scripts/a.vim'
|
||||
|
||||
" ----- Working with Git ----------------------------------------------
|
||||
Plugin 'airblade/vim-gitgutter'
|
||||
Plugin 'tpope/vim-fugitive'
|
||||
|
||||
" ----- Other text editing features -----------------------------------
|
||||
Plugin 'Raimondi/delimitMate'
|
||||
|
||||
" ----- man pages, tmux -----------------------------------------------
|
||||
Plugin 'jez/vim-superman'
|
||||
Plugin 'christoomey/vim-tmux-navigator'
|
||||
|
||||
" ----- Syntax plugins ------------------------------------------------
|
||||
Plugin 'jez/vim-c0'
|
||||
Plugin 'jez/vim-ispc'
|
||||
Plugin 'kchmck/vim-coffee-script'
|
||||
|
||||
" ---- Extras/Advanced plugins ----------------------------------------
|
||||
" Highlight and strip trailing whitespace
|
||||
"Plugin 'ntpeters/vim-better-whitespace'
|
||||
" Easily surround chunks of text
|
||||
"Plugin 'tpope/vim-surround'
|
||||
" Align CSV files at commas, align Markdown tables, and more
|
||||
"Plugin 'godlygeek/tabular'
|
||||
" Automaticall insert the closing HTML tag
|
||||
"Plugin 'HTML-AutoCloseTag'
|
||||
" Make tmux look like vim-airline (read README for extra instructions)
|
||||
"Plugin 'edkolev/tmuxline.vim'
|
||||
" All the other syntax plugins I use
|
||||
"Plugin 'ekalinin/Dockerfile.vim'
|
||||
"Plugin 'digitaltoad/vim-jade'
|
||||
"Plugin 'tpope/vim-liquid'
|
||||
"Plugin 'cakebaker/scss-syntax.vim'
|
||||
|
||||
call vundle#end()
|
||||
|
||||
filetype plugin indent on
|
||||
|
||||
" --- General settings ---
|
||||
set backspace=indent,eol,start
|
||||
set ruler
|
||||
set number
|
||||
set showcmd
|
||||
set incsearch
|
||||
set hlsearch
|
||||
|
||||
syntax on
|
||||
|
||||
set mouse=a
|
||||
|
||||
" We need this for plugins like Syntastic and vim-gitgutter which put symbols
|
||||
" in the sign column.
|
||||
hi clear SignColumn
|
||||
|
||||
" ----- Plugin-Specific Settings --------------------------------------
|
||||
|
||||
" ----- altercation/vim-colors-solarized settings -----
|
||||
" Toggle this to "light" for light colorscheme
|
||||
set background=dark
|
||||
|
||||
" Uncomment the next line if your terminal is not configured for solarized
|
||||
let g:solarized_termcolors=256
|
||||
|
||||
" Set the colorscheme
|
||||
colorscheme solarized
|
||||
|
||||
|
||||
" ----- bling/vim-airline settings -----
|
||||
" Always show statusbar
|
||||
set laststatus=2
|
||||
|
||||
" Fancy arrow symbols, requires a patched font
|
||||
" To install a patched font, run over to
|
||||
" https://github.com/abertsch/Menlo-for-Powerline
|
||||
" download all the .ttf files, double-click on them and click "Install"
|
||||
" Finally, uncomment the next line
|
||||
"let g:airline_powerline_fonts = 1
|
||||
|
||||
" Show PASTE if in paste mode
|
||||
let g:airline_detect_paste=1
|
||||
|
||||
" Show airline for tabs too
|
||||
let g:airline#extensions#tabline#enabled = 1
|
||||
|
||||
" Use the solarized theme for the Airline status bar
|
||||
let g:airline_theme='solarized'
|
||||
|
||||
" ----- jistr/vim-nerdtree-tabs -----
|
||||
" Open/close NERDTree Tabs with \t
|
||||
nmap <silent> <leader>t :NERDTreeTabsToggle<CR>
|
||||
" To have NERDTree always open on startup
|
||||
let g:nerdtree_tabs_open_on_console_startup = 1
|
||||
|
||||
" ----- scrooloose/syntastic settings -----
|
||||
let g:syntastic_error_symbol = '✘'
|
||||
let g:syntastic_warning_symbol = "▲"
|
||||
augroup mySyntastic
|
||||
au!
|
||||
au FileType tex let b:syntastic_mode = "passive"
|
||||
augroup END
|
||||
|
||||
|
||||
" ----- xolox/vim-easytags settings -----
|
||||
" Where to look for tags files
|
||||
set tags=./tags;,~/.vimtags
|
||||
" Sensible defaults
|
||||
let g:easytags_events = ['BufReadPost', 'BufWritePost']
|
||||
let g:easytags_async = 1
|
||||
let g:easytags_dynamic_files = 2
|
||||
let g:easytags_resolve_links = 1
|
||||
let g:easytags_suppress_ctags_warning = 1
|
||||
|
||||
" ----- majutsushi/tagbar settings -----
|
||||
" Open/close tagbar with \b
|
||||
nmap <silent> <leader>b :TagbarToggle<CR>
|
||||
" Uncomment to open tagbar automatically whenever possible
|
||||
"autocmd BufEnter * nested :call tagbar#autoopen(0)
|
||||
|
||||
|
||||
" ----- airblade/vim-gitgutter settings -----
|
||||
" In vim-airline, only display "hunks" if the diff is non-zero
|
||||
let g:airline#extensions#hunks#non_zero_only = 1
|
||||
|
||||
|
||||
" ----- Raimondi/delimitMate settings -----
|
||||
let delimitMate_expand_cr = 1
|
||||
augroup mydelimitMate
|
||||
au!
|
||||
au FileType markdown let b:delimitMate_nesting_quotes = ["`"]
|
||||
au FileType tex let b:delimitMate_quotes = ""
|
||||
au FileType tex let b:delimitMate_matchpairs = "(:),[:],{:},`:'"
|
||||
au FileType python let b:delimitMate_nesting_quotes = ['"', "'"]
|
||||
augroup END
|
||||
|
||||
" ----- jez/vim-superman settings -----
|
||||
" better man page support
|
||||
noremap K :SuperMan <cword><CR>
|
||||
|
||||
Reference in New Issue
Block a user