spf13-vim/.vimrc.bundles
2013-09-09 12:38:39 +08:00

265 lines
9.1 KiB
Plaintext

" Modeline and Notes {
" vim: set sw=4 ts=4 sts=4 et tw=78 foldmarker={,} foldlevel=0 foldmethod=marker spell:
"
" __ _ _____ _
" ___ _ __ / _/ |___ / __ __(_)_ __ ___
" / __| '_ \| |_| | |_ \ _____\ \ / /| | '_ ` _ \
" \__ \ |_) | _| |___) |_____|\ V / | | | | | | |
" |___/ .__/|_| |_|____/ \_/ |_|_| |_| |_|
" |_|
"
" This is the personal .vimrc.bundles file of Steve Francia.
" While much of it is beneficial for general use, I would
" recommend picking out the parts you want and understand.
"
" You can find me at http://spf13.com
" }
" Environment {
" Basics {
set nocompatible " Must be first line
set background=dark " Assume a dark background
" }
" Windows Compatible {
" On Windows, also use '.vim' instead of 'vimfiles'; this makes synchronization
" across (heterogeneous) systems easier.
if has('win32') || has('win64')
set runtimepath=$HOME/.vim,$VIM/vimfiles,$VIMRUNTIME,$VIM/vimfiles/after,$HOME/.vim/after
" Be nice and check for multi_byte even if the config requires
" multi_byte support most of the time
if has("multi_byte")
" Windows cmd.exe still uses cp850. If Windows ever moved to
" Powershell as the primary terminal, this would be utf-8
set termencoding=cp850
" Let Vim use utf-8 internally, because many scripts require this
set encoding=utf-8
setglobal fileencoding=utf-8
" Windows has traditionally used cp1252, so it's probably wise to
" fallback into cp1252 instead of eg. iso-8859-15.
" Newer Windows files might contain utf-8 or utf-16 LE so we might
" want to try them first.
set fileencodings=ucs-bom,utf-8,utf-16le,cp1252,iso-8859-15
endif
endif
" }
" Setup Bundle Support {
" The next three lines ensure that the ~/.vim/bundle/ system works
filetype off
if has('vim_starting')
set runtimepath+=~/.vim/bundle/neobundle.vim/
endif
call neobundle#rc(expand('~/.vim/bundle/'))
command! -nargs=? -bang -bar
\ -complete=customlist,neobundle#complete_bundles
\ BundleInstall
\ call neobundle#installer#install('!' == '<bang>', <q-args>)
command! -nargs=+ Bundle
\ call neobundle#parser#bundle(
\ substitute(<q-args>, '\s"[^"]\+$', '', ''))
command! -nargs=? -bang -bar
\ -complete=customlist,neobundle#complete_deleted_bundles
\ BundleClean
\ call neobundle#installer#clean('!' == '<bang>', <q-args>)
" }
" }
" Bundles {
" Deps
NeoBundleFetch 'Shougo/neobundle.vim'
Bundle 'MarcWeber/vim-addon-mw-utils'
Bundle 'tomtom/tlib_vim'
if executable('ack-grep')
let g:ackprg="ack-grep -H --nocolor --nogroup --column"
Bundle 'mileszs/ack.vim'
elseif executable('ack')
Bundle 'mileszs/ack.vim'
elseif executable('ag')
Bundle 'mileszs/ack.vim'
let g:ackprg = 'ag --nogroup --nocolor --column --smart-case'
endif
" Use local bundles if available {
if filereadable(expand("~/.vimrc.bundles.local"))
source ~/.vimrc.bundles.local
endif
" }
" Use fork bundles if available {
if filereadable(expand("~/.vimrc.bundles.fork"))
source ~/.vimrc.bundles.fork
endif
" }
" In your .vimrc.bundles.local file"
" list only the plugin groups you will use
if !exists('g:spf13_bundle_groups')
let g:spf13_bundle_groups=['general', 'neocomplcache', 'programming', 'php', 'ruby', 'python', 'go', 'twig', 'javascript', 'haskell', 'html', 'misc', 'scala']
endif
" To override all the included bundles, put
" g:override_spf13_bundles = 1
" in your .vimrc.bundles.local file"
if !exists("g:override_spf13_bundles")
" General
if count(g:spf13_bundle_groups, 'general')
Bundle 'scrooloose/nerdtree'
Bundle 'altercation/vim-colors-solarized'
Bundle 'spf13/vim-colors'
Bundle 'tpope/vim-surround'
Bundle 'spf13/vim-autoclose'
Bundle 'kien/ctrlp.vim'
Bundle 'terryma/vim-multiple-cursors'
Bundle 'vim-scripts/sessionman.vim'
Bundle 'matchit.zip'
if (has("python") || has("python3")) && exists('g:spf13_use_powerline') && !exists('g:spf13_use_old_powerline')
Bundle 'Lokaltog/powerline', {'rtp':'/powerline/bindings/vim'}
elseif exists('g:spf13_use_powerline') && exists('g:spf13_use_old_powerline')
Bundle 'Lokaltog/vim-powerline'
else
Bundle 'bling/vim-airline'
endif
Bundle 'Lokaltog/vim-easymotion'
Bundle 'godlygeek/csapprox'
Bundle 'jistr/vim-nerdtree-tabs'
Bundle 'flazz/vim-colorschemes'
Bundle 'mbbill/undotree'
Bundle 'myusuf3/numbers.vim'
Bundle 'nathanaelkane/vim-indent-guides'
if !exists('g:spf13_no_views')
Bundle 'vim-scripts/restore_view.vim'
endif
Bundle 'airblade/vim-gitgutter'
Bundle 'tpope/vim-abolish.git'
endif
" General Programming
if count(g:spf13_bundle_groups, 'programming')
" Pick one of the checksyntax, jslint, or syntastic
Bundle 'scrooloose/syntastic'
Bundle 'tpope/vim-fugitive'
Bundle 'mattn/webapi-vim'
Bundle 'mattn/gist-vim'
Bundle 'scrooloose/nerdcommenter'
Bundle 'godlygeek/tabular'
if executable('ctags')
Bundle 'majutsushi/tagbar'
endif
endif
" Snippets & AutoComplete
if count(g:spf13_bundle_groups, 'snipmate')
Bundle 'garbas/vim-snipmate'
Bundle 'honza/vim-snippets'
" Source support_function.vim to support vim-snippets.
if filereadable(expand("~/.vim/bundle/vim-snippets/snippets/support_functions.vim"))
source ~/.vim/bundle/vim-snippets/snippets/support_functions.vim
endif
elseif count(g:spf13_bundle_groups, 'neocomplcache')
Bundle 'Shougo/neocomplcache'
Bundle 'Shougo/neosnippet'
Bundle 'honza/vim-snippets'
elseif count(g:spf13_bundle_groups, 'neocomplete')
Bundle 'Shougo/neocomplete.vim.git'
Bundle 'Shougo/neosnippet'
Bundle 'honza/vim-snippets'
endif
" PHP
if count(g:spf13_bundle_groups, 'php')
Bundle 'spf13/PIV'
Bundle 'arnaud-lb/vim-php-namespace'
endif
" Python
if count(g:spf13_bundle_groups, 'python')
" Pick either python-mode or pyflakes & pydoc
Bundle 'klen/python-mode'
Bundle 'python.vim'
Bundle 'python_match.vim'
Bundle 'pythoncomplete'
endif
" Javascript
if count(g:spf13_bundle_groups, 'javascript')
Bundle 'elzr/vim-json'
Bundle 'groenewege/vim-less'
Bundle 'pangloss/vim-javascript'
Bundle 'briancollins/vim-jst'
Bundle 'kchmck/vim-coffee-script'
endif
" Java
if count(g:spf13_bundle_groups, 'scala')
Bundle 'derekwyatt/vim-scala'
Bundle 'derekwyatt/vim-sbt'
endif
" Haskell
if count(g:spf13_bundle_groups, 'haskell')
Bundle 'travitch/hasksyn'
Bundle 'dag/vim2hs'
Bundle 'Twinside/vim-haskellConceal'
Bundle 'lukerandall/haskellmode-vim'
Bundle 'ujihisa/neco-ghc'
Bundle 'eagletmt/ghcmod-vim'
Bundle 'Shougo/vimproc'
Bundle 'adinapoli/cumino'
Bundle 'bitc/vim-hdevtools'
endif
" HTML
if count(g:spf13_bundle_groups, 'html')
Bundle 'amirh/HTML-AutoCloseTag'
Bundle 'hail2u/vim-css3-syntax'
Bundle 'tpope/vim-haml'
endif
" Ruby
if count(g:spf13_bundle_groups, 'ruby')
Bundle 'tpope/vim-rails'
let g:rubycomplete_buffer_loading = 1
"let g:rubycomplete_classes_in_global = 1
"let g:rubycomplete_rails = 1
endif
" Go Lang
if count(g:spf13_bundle_groups, 'go')
Bundle 'jnwhiteh/vim-golang'
Bundle 'spf13/vim-gocode'
endif
" Misc
if count(g:spf13_bundle_groups, 'misc')
Bundle 'tpope/vim-markdown'
Bundle 'spf13/vim-preview'
Bundle 'tpope/vim-cucumber'
Bundle 'quentindecock/vim-cucumber-align-pipes'
Bundle 'Puppet-Syntax-Highlighting'
endif
" Twig
if count(g:spf13_bundle_groups, 'twig')
Bundle 'beyondwords/vim-twig'
endif
endif
" }
" General {
" set autowrite " automatically write a file when leaving a modified buffer
set shortmess+=filmnrxoOtT " Abbrev. of messages (avoids 'hit enter')
" }