Created
July 17, 2016 05:59
-
-
Save zenware/42a019d14fbdc609fef7c89e18699b09 to your computer and use it in GitHub Desktop.
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
" Automatically setup vim-plug if it doesn't exist | |
if empty(glob('~/.vim/autoload/plug.vim')) | |
silent !curl -fLo ~/.vim/autoload/plug.vim --create-dirs | |
\ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim | |
autocmd VimEnter * PlugInstall | |
endif | |
let s:cache_dir = get({}, 'cache_dir', '~/.nvim/cache') | |
function! s:get_cache_dir(suffix) | |
return resolve(expand(s:cache_dir . '/' / a:suffix)) | |
endfunction | |
call plug#begin() | |
" Make sure to add Shougo/vimproc.vim | |
" Even though I plan on switching to neovim | |
" Learn about these, determine if necessary... | |
Plug 'tpope/vim-sensible' | |
Plug 'tpope/vim-surround' | |
Plug 'tpope/vim-repeat' | |
Plug 'tpope/vim-fugitive' | |
Plug 'tpope/vim-markdown' | |
Plug 'terryma/vim-multiple-cursors' | |
Plug 'bling/vim-airline' | |
Plug 'bling/vim-bufferline' | |
let g:airline#extensions#tabline#enabled = 1 | |
if !exists('g:airline_symbols') | |
let g:airline_symbols = {} | |
endif | |
let g:airline_symbols.space = "\ua0" | |
Plug 'mhinz/vim-signify' | |
let g:signify_update_on_bufenter = 0 | |
Plug 'Shougo/unite.vim' | |
let g:unite_data_directory = s:get_cache_dir('unite') | |
if executable('ag') | |
let g:unite_source_grep_command = 'ag' | |
elseif executable('ack') | |
let g:unite_source_grep_command = 'ack' | |
endif | |
let g:unite_source_grep_recursive_opt = '' | |
nnoremap <C-p> :Unite file_rec/async<cr> | |
" General | |
Plug 'scrooloose/nerdtree', {'on': 'NERDTreeToggle'} | |
Plug 'jistr/vim-nerdtree-tabs' | |
let NERDTreeShowHidden = 1 | |
let NERDTreeQuitOnOpen = 0 | |
let NERDTreeShowLineNumbers = 1 | |
let NERDTreeChDirMode = 0 | |
let NERDTreeShowBookmarks = 1 | |
let NERDTreeBookmarksFile = s:get_cache_dir('NERDTreeBookmarks') | |
nnoremap <F2> :NERDTreeToggle<cr> | |
nnoremap <F3> :NERDTreeFind<cr> | |
Plug 'mhinz/vim-startify' | |
let g:startify_session_dir = s:get_cache_dir('sessions') | |
let g:startify_change_to_vcs_root = 1 | |
let g:startify_show_sessions = 1 | |
nnoremap <F1> :Startify<cr> | |
Plug 'mbbill/undotree' | |
let g:undotree_SetFocusWhenToggle = 1 | |
nnoremap <silent> <F5> :UndotreeToggle<cr> | |
Plug 'nathanaelkane/vim-indent-guides' | |
let g:indent_guides_start_level = 1 | |
let g:indent_guides_guide_size = 1 | |
let g:indent_guides_enable_on_vim_startup = 0 | |
let g:indent_guides_color_change_percent = 3 | |
Plug 'osyo-manga/vim-over' | |
Plug 'gcmt/wildfire.vim' | |
Plug 'scrooloose/nerdcommenter' | |
Plug 'godlygeek/tabular' | |
" Map a ton of keys | |
Plug 'majutsushi/tagbar' | |
let g:tagbar_autoclose = 1 | |
let g:tagbar_width = 55 | |
nnoremap <silent> <F9> :TagbarToggle<cr> | |
" Linting, Autocomplete, & Snippets | |
Plug 'scrooloose/syntastic' | |
let g:syntastic_error_symbol = '✗' | |
let g:syntastic_style_error_symbol = '✠' | |
let g:syntastic_warning_symbol = '∆' | |
let g:syntastic_style_warning_symbol = '≈' | |
Plug 'honza/vim-snippets', {'for' : ['python', 'ruby', 'html', 'htmldjango', 'css']} | |
Plug 'Valloric/YouCompleteMe' | |
let g:ycm_complete_in_comments = 1 | |
let g:ycm_seed_identifiers_with_syntax = 1 | |
Plug 'SirVer/ultisnips' | |
let g:UltiSnipsExpandTrigger = "<tab>" | |
let g:UltiSnipsJumpForwardTrigger = "<tab>" | |
let g:UltiSnipsJumpBackwardTrigger = "<s-tab>" | |
let g:UltiSnipsSnippetsDir = '~/.vim/snippets' | |
" Web | |
Plug 'othree/html5.vim', {'for' : 'html'} | |
Plug 'hail2u/vim-css3-syntax', {'for' : 'html'} | |
Plug 'ap/vim-css-color' | |
Plug 'gregsexton/MatchTag', {'for' : 'html'} | |
Plug 'mattn/emmet-vim', {'for' : ['html', 'css']} | |
Plug 'elzr/vim-json' | |
Plug 'pangloss/vim-javascript' | |
Plug 'maksimr/vim-jsbeautify' | |
Plug 'mmalecki/vim-node.js' | |
" Haskell | |
Plug 'travitch/hasksyn' | |
Plug 'dag/vim2hs' | |
Plug 'Twinside/vim-haskellConceal' | |
Plug 'Twinside/vim-haskellFold' | |
Plug 'lukerandall/haskellmode-vim' | |
Plug 'eagletmt/neco-ghc' | |
Plug 'eagletmt/ghcmod-vim' | |
Plug 'Shougo/vimproc' | |
Plug 'adinapoli/cumino' | |
Plug 'bitc/vim-hdevtools' | |
" Rust | |
Plug 'wting/rust.vim' | |
" Misc | |
Plug 'cespare/vim-toml' | |
Plug 'quentindecock/vim-cucumber-align-pipes' | |
Plug 'saltstack/salt-vim' | |
call plug#end() |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment