mirror of
https://github.com/spf13/spf13-vim.git
synced 2024-09-21 07:27:11 +00:00
c65d092ff6
fix PyMode setting; add ctrlp-funky
293 lines
9.7 KiB
Plaintext
293 lines
9.7 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.
|
|
"
|
|
" This file imports the various plugins of spf13. If you
|
|
" wish to alter which groups are imported, see vimrc.before.
|
|
" If you wish to add or remove individual bundles, create
|
|
" ~/.vimrc.bundles.local and `Bundle` or `UnBundle` as needed
|
|
" from there.
|
|
"
|
|
" 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
|
|
set rtp+=~/.vim/bundle/vundle
|
|
call vundle#rc()
|
|
" }
|
|
|
|
" Add an UnBundle command {
|
|
function! UnBundle(arg, ...)
|
|
let bundle = vundle#config#init_bundle(a:arg, a:000)
|
|
call filter(g:bundles, 'v:val["name_spec"] != "' . a:arg . '"')
|
|
endfunction
|
|
|
|
com! -nargs=+ UnBundle
|
|
\ call UnBundle(<args>)
|
|
" }
|
|
|
|
" }
|
|
|
|
" Bundles {
|
|
|
|
" Deps {
|
|
Bundle 'gmarik/vundle'
|
|
Bundle 'MarcWeber/vim-addon-mw-utils'
|
|
Bundle 'tomtom/tlib_vim'
|
|
if executable('ag')
|
|
Bundle 'mileszs/ack.vim'
|
|
let g:ackprg = 'ag --nogroup --nocolor --column --smart-case'
|
|
elseif executable('ack-grep')
|
|
let g:ackprg="ack-grep -H --nocolor --nogroup --column"
|
|
Bundle 'mileszs/ack.vim'
|
|
elseif executable('ack')
|
|
Bundle 'mileszs/ack.vim'
|
|
endif
|
|
" }
|
|
|
|
" In your .vimrc.before.local file
|
|
" list only the plugin groups you will use
|
|
if !exists('g:spf13_bundle_groups')
|
|
let g:spf13_bundle_groups=['general', 'writing', 'neocomplcache', 'programming', 'php', 'ruby', 'python', 'twig', 'javascript', 'html', 'misc',]
|
|
endif
|
|
|
|
" To override all the included bundles, add the following to your
|
|
" .vimrc.bundles.local file:
|
|
" let g:override_spf13_bundles = 1
|
|
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 'tacahiroy/ctrlp-funky'
|
|
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 'bling/vim-bufferline'
|
|
Bundle 'Lokaltog/vim-easymotion'
|
|
Bundle 'godlygeek/csapprox'
|
|
Bundle 'jistr/vim-nerdtree-tabs'
|
|
Bundle 'flazz/vim-colorschemes'
|
|
Bundle 'mbbill/undotree'
|
|
Bundle 'nathanaelkane/vim-indent-guides'
|
|
if !exists('g:spf13_no_views')
|
|
Bundle 'vim-scripts/restore_view.vim'
|
|
endif
|
|
Bundle 'mhinz/vim-signify'
|
|
Bundle 'tpope/vim-abolish.git'
|
|
Bundle 'osyo-manga/vim-over'
|
|
Bundle 'kana/vim-textobj-user'
|
|
Bundle 'kana/vim-textobj-indent'
|
|
endif
|
|
" }
|
|
|
|
" Writing {
|
|
if count(g:spf13_bundle_groups, 'writing')
|
|
Bundle 'reedes/vim-litecorrect'
|
|
Bundle 'reedes/vim-textobj-sentence'
|
|
Bundle 'reedes/vim-textobj-quote'
|
|
Bundle 'reedes/vim-wordy'
|
|
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, 'youcompleteme')
|
|
Bundle 'Valloric/YouCompleteMe'
|
|
Bundle 'SirVer/ultisnips'
|
|
Bundle 'honza/vim-snippets'
|
|
elseif count(g:spf13_bundle_groups, 'neocomplcache')
|
|
Bundle 'Shougo/neocomplcache'
|
|
Bundle 'Shougo/neosnippet'
|
|
Bundle 'Shougo/neosnippet-snippets'
|
|
Bundle 'honza/vim-snippets'
|
|
elseif count(g:spf13_bundle_groups, 'neocomplete')
|
|
Bundle 'Shougo/neocomplete.vim.git'
|
|
Bundle 'Shougo/neosnippet'
|
|
Bundle 'Shougo/neosnippet-snippets'
|
|
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
|
|
" }
|
|
|
|
" Scala {
|
|
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 'Twinside/vim-haskellFold'
|
|
Bundle 'lukerandall/haskellmode-vim'
|
|
Bundle 'eagletmt/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 'gorodinskiy/vim-coloresque'
|
|
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 'Blackrush/vim-gocode'
|
|
Bundle 'fatih/vim-go'
|
|
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
|
|
|
|
" }
|
|
|
|
" Use fork bundles config if available {
|
|
if filereadable(expand("~/.vimrc.bundles.fork"))
|
|
source ~/.vimrc.bundles.fork
|
|
endif
|
|
" }
|
|
|
|
" Use local bundles config if available {
|
|
if filereadable(expand("~/.vimrc.bundles.local"))
|
|
source ~/.vimrc.bundles.local
|
|
endif
|
|
" }
|