├── .dotvim ├── .gitignore ├── CHANGES.md ├── CONTRIB.md ├── README.md ├── dotvim.vim ├── ftdetect └── eyaml.vim ├── ftplugin ├── bash.vim ├── coffee.vim ├── erlang.vim ├── gitcommit.vim ├── htmldjango.vim ├── json.vim ├── pool.vim ├── puppet.vim ├── ruby.vim ├── sh.vim ├── vim.vim └── zsh.vim ├── plugin └── settings │ ├── airline.vim │ ├── bindings.vim │ ├── colors.vim │ ├── ctrlp.vim │ ├── fugitive.vim │ ├── gitcommit.vim │ ├── hgcommit.vim │ ├── indent-guides.vim │ ├── indentobject.vim │ ├── macros.vim │ ├── neocomplcache.vim │ ├── neosnippet.vim │ ├── nerdtree.vim │ ├── numbers.vim │ ├── signify.vim │ ├── syntastic.vim │ ├── syntax.vim │ ├── undotree.vim │ ├── viminfo.vim │ ├── vundle.vim │ └── yankring.vim ├── templates ├── gvimrc └── vimrc └── vundles.vim /.dotvim: -------------------------------------------------------------------------------- 1 | 2.1.1 2 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # 2 | # dotvim : https://github.com/dotphiles/dotvim 3 | # 4 | # Git ignore 5 | # 6 | # Authors: 7 | # Ben O'Hara 8 | # 9 | 10 | .* 11 | bundle 12 | sessions 13 | spell 14 | !.dotvim 15 | !.gitignore 16 | !.gitmodules 17 | 18 | -------------------------------------------------------------------------------- /CHANGES.md: -------------------------------------------------------------------------------- 1 | dotvim changelog 2 | ---------------- 3 | 4 | - 2.1.1 : Update template 5 | - 2.0.0 : Split up plugins into more vundles 6 | - 1.0.0 : Intitial stable release 7 | - 0.2.x : Bugfixes 8 | - 0.1.x : Initial releases 9 | 10 | -------------------------------------------------------------------------------- /CONTRIB.md: -------------------------------------------------------------------------------- 1 | Contribute 2 | ---------- 3 | 4 | This project would not exist without all of its users and [contributors][1]. 5 | 6 | If you have ideas on how to make the configuration easier to maintain or 7 | improve its performance, do not hesitate to fork and send pull requests. 8 | 9 | If you want to contribute to the project, check out the list of open [issues][2] 10 | 11 | You can: 12 | 13 | - raise an issue 14 | - suggest a feature 15 | 16 | If you would like to contribute code to the project: 17 | 18 | 1. A bit of background reading: 19 | - [Setting up Git for Windows and connecting to GitHub][3] 20 | - [The Simple Guide to Git][4] 21 | - [How to GitHub: Fork, Branch, Track, Squash and Pull Request][4] 22 | - [Write good commit messages][11]. 23 | 2. [Fork the repository][5] 24 | 3. Make some changes to the code base 25 | 4. [Send us a Pull Request once you're happy with it][6] 26 | 27 | We'll do a bit of a code review before accepting your patch. 28 | 29 | ### Git Flow 30 | 31 | We use the Git Flow branching model, [first described][7] by [nvie][8], 32 | so dotvim's `master` branch moves on only at specific points, when we're 33 | really sure we want to promote something to production. 34 | 35 | **Use of Git Flow is not required for contributing to dotvim**, particularly 36 | if you're submitting a bug-fix or small feature. Its use is recommended for 37 | larger changes where `develop` might move on whilst you're completing your work. 38 | 39 | #### Configuring Git Flow 40 | 41 | There is a set of [helper scripts][9] that will work on both Unix-based 42 | operating systems and Windows. Follow the appropriate 43 | [installation instructions][10] for your operating system, and configure your 44 | working copy repository for use with Git Flow by typing `git flow init`. 45 | Accept all the default options to the questions that it asks you. 46 | 47 | #### Using Git Flow 48 | 49 | Pick a feature or bug to work on and create a new branch for that work by 50 | typing `git flow feature start `. This will create you a new 51 | *feature branch* for your work called `feature/`, and you can use 52 | git as usual from this point. 53 | 54 | Once your feature is finished, type `git flow feature publish `. 55 | This will copy the *feature branch* to your `origin` repository on GitHub and 56 | you will then be able to submit a pull request to have it merged into dotvim's 57 | own `develop` branch. 58 | 59 | **Note: do not use `git flow feature finish `!** 60 | 61 | This will automatically merge your *feature branch* back into `develop` and 62 | delete the *feature branch*, making it harder for you to submit your pull 63 | request. 64 | 65 | If you wish to update your published feature branch after the initial publish, 66 | use a regular `git push origin feature/`. This will also update 67 | your pull request if you have one open for that branch. 68 | 69 | If you find dotvim's `develop` branch has moved on, and you need/want to take 70 | advantage of the changes made there, you can update your feature branch as 71 | follows: 72 | 73 | 1. Ensure you have a remote configured for the upstream repository. 74 | 75 | git remote add upstream git://github.com/dotphiles/dotvim.git 76 | 77 | 2. Update your local repository with the upstream refs. 78 | 79 | git pull upstream develop:develop` 80 | 81 | 3. Rebase your feature branch on top of the new `develop`. 82 | 83 | git flow feature rebase 84 | 85 | There is a lot of help available for Git Flow, which can be accessed by typing 86 | `git flow feature help`. 87 | 88 | [1]: https://github.com/dotphiles/dotvim/contributors 89 | [2]: https://github.com/dotphiles/dotvim/issues 90 | [3]: http://help.github.com/win-set-up-git/ 91 | [4]: http://rogerdudler.github.com/git-guide/ 92 | [5]: http://help.github.com/fork-a-repo/ 93 | [6]: http://help.github.com/send-pull-requests/ 94 | [7]: http://nvie.com/posts/a-successful-git-branching-model/ 95 | [8]: http://www.twitter.com/nvie 96 | [9]: https://github.com/nvie/gitflow 97 | [10]: https://github.com/nvie/gitflow/wiki/Installation 98 | [11]: http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html 99 | 100 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | dotvim 2 | ====== 3 | 4 | A framework for setting up vim and plugins using vundle. 5 | 6 | Installation 7 | ------------ 8 | 9 | From your homedirectory: 10 | 11 | git clone --recursive git://github.com/dotphiles/dotvim.git .vim 12 | cp .vim/templates/vimrc .vimrc 13 | cp .vim/templates/gvimrc .gvimrc 14 | 15 | Edit `vimrc` 16 | 17 | let g:vundles=['general', 'programming', 'php', 'ruby', 'python', 'javascript', 'html', 'misc'] 18 | 19 | Configure any additional plugins in your copy of `vimrc` 20 | 21 | Bundle 'reponame' 22 | 23 | And enable *vundles* to install, see plugin/settings/README.md 24 | 25 | :BundleInstall (in vim will install plugins) 26 | :BundleClean (in vim will remove unused plugins) 27 | 28 | Neocomplcache is enabled by default, in the template vimrc 29 | 30 | let g:neocomplcache_enable_at_startup = 1 31 | " Tell Neosnippet about the other snippets 32 | let g:neosnippet#snippets_directory='~/.vim/bundle/snipmate-snippets/snippets' 33 | 34 | Plugins groups: 35 | 36 | - General 37 | - scrooloose/nerdtree 38 | - altercation/vim-colors-solarized 39 | - tpope/vim-surround 40 | - delimitMate 41 | - vimwiki 42 | - calendar.vim--Matsumoto 43 | - kien/ctrlp.vim 44 | - vim-scripts/sessionman.vim 45 | - matchit.zip 46 | - Lokaltog/vim-powerline 47 | - Lokaltog/vim-easymotion 48 | - jistr/vim-nerdtree-tabs 49 | - flazz/vim-colorschemes 50 | - corntrace/bufexplorer 51 | - kien/ctrlp.vim 52 | - austintaylor/vim-indentobject 53 | - SearchComplete 54 | - sudo.vim 55 | - bronson/vim-trailing-whitespace 56 | - tpope/vim-fugitive 57 | - honza/snipmate-snippets 58 | - Shougo/vimproc 59 | - Programming 60 | - scrooloose/syntastic 61 | - scrooloose/nerdcommenter 62 | - godlygeek/tabular 63 | - majutsushi/tagbar 64 | - Shougo/neocomplcache 65 | - Shougo/neosnippet 66 | - Indent-Guides 67 | - PHP 68 | - spf13/PIV 69 | - Python 70 | - klen/python-mode 71 | - python.vim 72 | - python_match.vim 73 | - pythoncomplete 74 | - Javascript 75 | - leshill/vim-json 76 | - groenewege/vim-less 77 | - taxilian/vim-web-indent 78 | - HTML 79 | - HTML-AutoCloseTag 80 | - hail2u/vim-css3-syntax 81 | - Ruby 82 | - tpope/vim-rails 83 | - Misc 84 | - spf13/vim-markdown 85 | - spf13/vim-preview 86 | - tpope/vim-cucumber 87 | - Puppet-Syntax-Highlighting 88 | 89 | General configuration 90 | --------------------- 91 | 92 | `,` is used as mapleader 93 | `backslash` is used as localleader 94 | 95 | * `,e` mapped to `:e **/`. essentially you do `,efoo` to get a list of all files starting with foo 96 | * `,s` - toggle invisible characters display 97 | * `,n` - next `quicklist` result (like :Ggrep etc) 98 | * `,N` - previous `quicklist` result (like :Ggrep etc) 99 | * `Ctrl-E` - switch between 2 last buffers (its just a `:b#` :) 100 | * `Ctrl-N` to cancel current search highlighing 101 | * `,f` global Ggrep for word under the cursor or for selection 102 | * `+`, `-` - easily inc/decrement integers 103 | * `,W` - remove trailing spaces 104 | * `Ctrl-g`/`h`/`j`/`k` - simplified split panes navigation 105 | 106 | Check out the 'plugin/settings/\*.vim' for more... 107 | 108 | Backups 109 | ------- 110 | 111 | Backups and swapfiles are disabled. I really hate them both. 112 | 113 | You can re-enable backups by adding the following to your `~/.vimrc`: 114 | 115 | set backup 116 | 117 | and swapfiles by 118 | 119 | set swapfile 120 | 121 | backup dir is set to ~/.backup/vim/ 122 | 123 | The directory is created if it doesn't exist. 124 | 125 | Persistent Undo 126 | --------------- 127 | 128 | Persistent undos are enabled by default. 129 | 130 | You can disable by adding the following to your `~/.vimrc`: 131 | 132 | set noundo 133 | 134 | ### Misc Bindings 135 | 136 | The following is a list of commands and key bindings that I personally find interesting 137 | stored for easy refreshing my memory of them. there is no much 'system' to it, just 138 | randomly chosen bits of vim goodness. 139 | 140 | * `]p` paste with autoindent. 141 | * `ga` print ascii value of character under the cursor 142 | * `g#` like "#", but without using "\<" and "\>" 143 | * `g<` display previous command output 144 | * `zt` scroll cursor line to top 145 | * `zz` scroll cursor line to center 146 | * `zb` scroll cursor line to bottom 147 | * `CTRL-W x` exchange current window with n-th window (or next if no count given) 148 | * `gv` reselect last selection 149 | * `gt` next tab 150 | * `gT` prev tab 151 | * `ci` change inside delimiters 152 | * `di` delete inside delimiters 153 | * `@@` execute last macro 154 | * `"xyy` copy line into `x` register (replace x with any other) 155 | * `x` while in insert mote will paste content of register x (replace x with any other) 156 | * `"xp` paste from register x 157 | * `:reg` Display the contents of all numbered and named registers. 158 | 159 | License 160 | ------- 161 | 162 | Copyright (c) 2012 [dotvim contributers][1] 163 | 164 | Permission is hereby granted, free of charge, to any person obtaining a copy of 165 | this software and associated documentation files (the "Software"), to deal in 166 | the Software without restriction, including without limitation the rights to 167 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies 168 | of the Software, and to permit persons to whom the Software is furnished to do 169 | so, subject to the following conditions: 170 | 171 | The above copyright notice and this permission notice shall be included in all 172 | copies or substantial portions of the Software. 173 | 174 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 175 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 176 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 177 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 178 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 179 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 180 | SOFTWARE. 181 | 182 | [1]: https://github.com/dotphiles/dotvim/graphs/contributors 183 | 184 | -------------------------------------------------------------------------------- /dotvim.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Main dotvim config 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | " 10 | 11 | set nocompatible 12 | 13 | set encoding=utf-8 14 | set binary 15 | 16 | " presentation settings 17 | set number " precede each line with its line number 18 | set numberwidth=3 " number of culumns for line numbers 19 | set textwidth=0 " Do not wrap words (insert) 20 | set nowrap " Do not wrap words (view) 21 | set showcmd " Show (partial) command in status line. 22 | set showmatch " Show matching brackets. 23 | set ruler " line and column number of the cursor position 24 | set wildmenu " enhanced command completion 25 | set visualbell " use visual bell instead of beeping 26 | set laststatus=2 " always show the status lines 27 | set list listchars=tab:→\ ,trail:▸ 28 | set cursorline 29 | 30 | " highlight spell errors 31 | hi SpellErrors guibg=red guifg=black ctermbg=red ctermfg=black 32 | " toggle spell check with F7 33 | map :setlocal spell! spell? 34 | 35 | " behavior 36 | " ignore these files when completing names and in explorer 37 | set wildignore=.svn,CVS,.git,.hg,*.o,*.a,*.class,*.mo,*.la,*.so,*.obj,*.swp,*.jpg,*.png,*.xpm,*.gif 38 | set shell=$SHELL " use current shell for shell commands 39 | set hidden " enable multiple modified buffers 40 | set history=1000 41 | set autoread " automatically read feil that has been changed on disk and doesn't have changes in vim 42 | set backspace=indent,eol,start 43 | set guioptions-=T " disable toolbar" 44 | set completeopt=menuone,preview 45 | set cinoptions=:0,(s,u0,U1,g0,t0 " some indentation options ':h cinoptions' for details 46 | set modelines=5 " number of lines to check for vim: directives at the start/end of file 47 | set autoindent " automatically indent new line 48 | 49 | set ts=4 " number of spaces in a tab 50 | set sw=4 " number of spaces for indent 51 | set et " expand tabs into spaces 52 | 53 | " mouse settings 54 | if has("mouse") 55 | set mouse=a 56 | endif 57 | set mousehide " Hide mouse pointer on insert mode." 58 | 59 | " search settings 60 | set incsearch " Incremental search 61 | set hlsearch " Highlight search match 62 | set ignorecase " Do case insensitive matching 63 | set smartcase " do not ignore if search pattern has CAPS 64 | 65 | " directory settings 66 | set nobackup " do not write backup files 67 | set noswapfile " do not write .swp files 68 | if has("persistent_undo") 69 | silent !mkdir -vp ~/.backup/vim/undo/ > /dev/null 2>&1 70 | set backupdir=~/.backup/vim,. " list of directories for the backup file 71 | set directory=~/.backup/vim,~/tmp,. " list of directory names for the swap file 72 | set undofile 73 | set undodir=~/.backup/vim/undo/,~/tmp,. 74 | endif 75 | 76 | " folding 77 | if has("folding") 78 | set foldcolumn=0 " columns for folding 79 | set foldmethod=indent 80 | set foldlevel=9 81 | set nofoldenable "dont fold by default " 82 | endif 83 | 84 | if has("user_commands") 85 | let mapleader = "," 86 | let maplocalleader = "\\" 87 | endif 88 | 89 | " Remember last position in file 90 | if has("autocmd") 91 | autocmd BufReadPost * 92 | \ if line("'\"") > 0 && line("'\"") <= line("$") | 93 | \ exe "normal g`\"" | 94 | \ endif 95 | endif 96 | 97 | " Install vundle if not already installed 98 | if has("user_commands") 99 | " Setting up Vundle - the vim plugin bundler 100 | let VundleInstalled=0 101 | let vundle_readme=expand('~/.vim/bundle/vundle/README.md') 102 | if !filereadable(vundle_readme) 103 | echo "Installing Vundle.." 104 | echo "" 105 | silent !mkdir -p ~/.vim/bundle 106 | silent !git clone https://github.com/gmarik/vundle.git ~/.vim/bundle/vundle 107 | let VundleInstalled=1 108 | endif 109 | endif 110 | 111 | -------------------------------------------------------------------------------- /ftdetect/eyaml.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " setup eyaml to use yaml syntax highlighting 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | au BufNewFile,BufRead *.eyaml setlocal ft=yaml 11 | 12 | -------------------------------------------------------------------------------- /ftplugin/bash.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " bash filetype 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | set sw=2 11 | set ts=2 12 | set et 13 | 14 | -------------------------------------------------------------------------------- /ftplugin/coffee.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " coffee filetype 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | set sw=2 11 | set ts=2 12 | set et 13 | 14 | -------------------------------------------------------------------------------- /ftplugin/erlang.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " erlang filetype 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | set sw=2 11 | set ts=2 12 | set et 13 | 14 | -------------------------------------------------------------------------------- /ftplugin/gitcommit.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " gitcommit filetype 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | if exists("b:did_ftplugin") 11 | finish 12 | endif 13 | 14 | let b:did_ftplugin = 1 " Don't load twice in one buffer 15 | 16 | setlocal spell 17 | 18 | -------------------------------------------------------------------------------- /ftplugin/htmldjango.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Setup htmldjango 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | let b:surround_{char2nr("v")} = "{{ \r }}" 11 | let b:surround_{char2nr("{")} = "{{ \r }}" 12 | let b:surround_{char2nr("%")} = "{% \r %}" 13 | let b:surround_{char2nr("b")} = "{% block \1block name: \1 %}\r{% endblock \1\1 %}" 14 | let b:surround_{char2nr("i")} = "{% if \1condition: \1 %}\r{% endif %}" 15 | let b:surround_{char2nr("w")} = "{% with \1with: \1 %}\r{% endwith %}" 16 | let b:surround_{char2nr("f")} = "{% for \1for loop: \1 %}\r{% endfor %}" 17 | let b:surround_{char2nr("c")} = "{% comment %}\r{% endcomment %}" 18 | 19 | -------------------------------------------------------------------------------- /ftplugin/json.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " json filetype 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | set sw=2 11 | set ts=2 12 | set et 13 | 14 | -------------------------------------------------------------------------------- /ftplugin/pool.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " pool filetype 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | set syntax=ruby 11 | set sw=2 12 | set ts=2 13 | set et 14 | 15 | -------------------------------------------------------------------------------- /ftplugin/puppet.vim: -------------------------------------------------------------------------------- 1 | setl ts=8 2 | setl sts=8 3 | setl sw=8 4 | setl et! 5 | setl keywordprg=puppet\ describe\ --providers 6 | setl iskeyword=-,:,@,48-57,_,192-255 7 | -------------------------------------------------------------------------------- /ftplugin/ruby.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " ruby filetype 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | set sw=2 11 | set ts=2 12 | set et 13 | set iskeyword+=!,?,= 14 | 15 | -------------------------------------------------------------------------------- /ftplugin/sh.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " sh filetype 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | set sw=2 11 | set ts=2 12 | set et 13 | 14 | -------------------------------------------------------------------------------- /ftplugin/vim.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " vim filetype 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | set sw=2 11 | set ts=2 12 | set et 13 | 14 | -------------------------------------------------------------------------------- /ftplugin/zsh.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " zsh filetype 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | set sw=2 11 | set ts=2 12 | set et 13 | 14 | -------------------------------------------------------------------------------- /plugin/settings/airline.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Setup airline 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | let g:airline#extensions#tabline#enabled = 1 11 | let g:airline_theme='base16' 12 | let g:airline_powerline_fonts = 1 13 | let g:airline#extensions#branch#enabled = 1 14 | let g:airline#extensions#syntastic#enabled = 1 15 | 16 | -------------------------------------------------------------------------------- /plugin/settings/bindings.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Setup bindings 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | " Don't use Ex mode, use Q for formatting 11 | map Q gq 12 | 13 | "make Y consistent with C and D 14 | nnoremap Y y$ 15 | 16 | " toggle highlight trailing whitespace 17 | nmap s :set nolist! 18 | 19 | " Ctrl-N to disable search match highlight 20 | nmap :silent noh 21 | 22 | " Ctrol-E to switch between 2 last buffers 23 | nmap :b# 24 | 25 | " ,e to fast finding files. just type beginning of a name and hit TAB 26 | nmap e :e **/ 27 | 28 | " Make shift-insert work like in Xterm 29 | map 30 | map! 31 | 32 | " ,n to get the next location (compilation errors, grep etc) 33 | nmap n :cn 34 | nmap N :cp 35 | 36 | "set completeopt=menuone,preview,longest 37 | set completeopt=menuone,preview 38 | 39 | " driving me insane this thing 40 | command Q q 41 | command -nargs=* -complete=file W w 42 | command -nargs=* -complete=file E e 43 | 44 | " center display after searching 45 | nnoremap n nzz 46 | nnoremap N Nzz 47 | nnoremap * *zz 48 | nnoremap # #zz 49 | nnoremap g* g*zz 50 | nnoremap g# g#z 51 | 52 | """"""""""" awesome stuff from vimbits.com 53 | 54 | " keep selection after in/outdent 55 | vnoremap < >gv 57 | 58 | " better navigation of wrapped lines 59 | nnoremap j gj 60 | nnoremap k gk 61 | 62 | " easier increment/decrement 63 | nnoremap + 64 | nnoremap - 65 | 66 | " remove trailing spaces 67 | nnoremap W :%s/\s\+$//:let @/='' 68 | 69 | " easy split navigation 70 | nnoremap h 71 | nnoremap j 72 | nnoremap k 73 | nnoremap l 74 | 75 | " Type follwed by a buffer number or name fragment to jump to it. 76 | " Also replaces the annoying help button. Based on tip 821. 77 | map :ls:b 78 | 79 | " toggles paste mode 80 | nnoremap :set invpaste paste? 81 | set pastetoggle= 82 | set showmode 83 | 84 | " fix arrow keys under tmux 85 | nnoremap A 86 | nnoremap B 87 | nnoremap C 88 | nnoremap D 89 | inoremap A 90 | inoremap B 91 | inoremap C 92 | inoremap D 93 | 94 | -------------------------------------------------------------------------------- /plugin/settings/colors.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Setup color scheme 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | if has("user_commands") 11 | let base16colorspace=256 12 | if (match($LC_TERM_PROFILE, "light") != -1) 13 | set background=light 14 | else 15 | set background=dark 16 | endif 17 | if (exists("g:dotvim_colorscheme")) 18 | execute 'colorscheme '.g:dotvim_colorscheme 19 | elseif (match($LC_TERM_PROFILE, "base16-bright") != -1) 20 | colorscheme base16-bright 21 | elseif (match($LC_TERM_PROFILE, "base16-chalk") != -1) 22 | colorscheme base16-chalk 23 | elseif (match($LC_TERM_PROFILE, "base16-eighties") != -1) 24 | colorscheme base16-eighties 25 | elseif (match($LC_TERM_PROFILE, "base16-greenscreen") != -1) 26 | colorscheme base16-greenscreen 27 | elseif (match($LC_TERM_PROFILE, "base16-mocha") != -1) 28 | colorscheme base16-mocha 29 | elseif (match($LC_TERM_PROFILE, "base16-monokai") != -1) 30 | colorscheme base16-monokai 31 | elseif (match($LC_TERM_PROFILE, "base16-ocean") != -1) 32 | colorscheme base16-ocean 33 | elseif (match($LC_TERM_PROFILE, "base16-pop") != -1) 34 | colorscheme base16-pop 35 | elseif (match($LC_TERM_PROFILE, "base16-railscasts") != -1) 36 | colorscheme base16-railscasts 37 | elseif (match($LC_TERM_PROFILE, "base16-solarized") != -1) 38 | colorscheme base16-solarized 39 | elseif (match($LC_TERM_PROFILE, "base16-tomorrow") != -1) 40 | colorscheme base16-tomorrow 41 | else 42 | colorscheme base16-default 43 | endif 44 | if (match($LC_TERM_PROFILE, "base16") != -1) 45 | highlight clear SignColumn 46 | autocmd ColorScheme * highlight clear SignColumn 47 | endif 48 | endif 49 | -------------------------------------------------------------------------------- /plugin/settings/ctrlp.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Setup ctrlp 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | set wildignore+=*/tmp/*,*.so,*.swp,*.zip,*.pyc 11 | 12 | let g:ctrlp_custom_ignore = { 13 | \ 'dir': '\v[\/]\.(git|hg|svn)$', 14 | \ 'file': '\v\.(exe|so|dll)$', 15 | \ 'link': 'some_bad_symbolic_links', 16 | \ } 17 | 18 | let g:ctrlp_prompt_mappings = { 19 | \ 'AcceptSelection("e")': [''], 20 | \ 'AcceptSelection("t")': ['', '<2-LeftMouse>'], 21 | \ } 22 | 23 | let g:ctrlp_match_window = 'bottom,order:btt,min:1,max:20,results:25' 24 | 25 | " Directories to ignore 26 | set wildignore+=*/smarty_c/** 27 | set wildignore+=*/vendor/** 28 | set wildignore+=*/bower_components/** 29 | 30 | let g:ctrlp_clear_cache_on_exit = 0 31 | let g:ctrlp_show_hidden = 1 32 | let g:ctrlp_follow_symlinks = 1 33 | 34 | -------------------------------------------------------------------------------- /plugin/settings/fugitive.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Setup fugitive 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | " Fugitive 11 | if exists("g:fugitive_loaded") 12 | " ,e for Ggrep 13 | nmap g :silent Ggrep 14 | " ,f for global git search for word under the cursor (with highlight) 15 | nmap f :let @/="\\<\\>":set hls:silent Ggrep -w "":ccl:cw 16 | 17 | " same in visual mode 18 | :vmap f y:let @/=escape(@", '\\[]$^*.'):set hls:silent Ggrep -F "=escape(@", '\\"#')":ccl:cw 19 | endif 20 | 21 | -------------------------------------------------------------------------------- /plugin/settings/gitcommit.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Fix git commit filetype 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | if has("autocmd") 11 | " seems broken, not sure if config or vim! 12 | autocmd BufNewFile,BufRead *.git/modules/*/COMMIT_EDITMSG setf gitcommit 13 | endif 14 | 15 | -------------------------------------------------------------------------------- /plugin/settings/hgcommit.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Setup hg commit syntax filetype 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | if has("autocmd") 11 | au BufRead,BufNewFile hg-editor-*.txt setf hgcommit 12 | endif 13 | 14 | -------------------------------------------------------------------------------- /plugin/settings/indent-guides.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Setup indent-guides.vim 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | if exists('g:loaded_indent_guides') 11 | " indent-guides 12 | let g:indent_guides_start_level = 2 13 | let g:indent_guides_guide_size = 1 14 | let g:indent_guides_color_change_percent = 5 15 | :IndentGuidesEnable 16 | endif 17 | 18 | -------------------------------------------------------------------------------- /plugin/settings/indentobject.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Setup indentobject 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | " vim-indentobject 11 | " add Markdown to the list of indentation based languages 12 | let g:indentobject_meaningful_indentation = ["haml", "sass", "python", "yaml", "markdown"] 13 | 14 | -------------------------------------------------------------------------------- /plugin/settings/macros.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Setup macros 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | " This file contains some mactos that I find useful. 11 | " I recommend editing yoru macros in a vim buffer. to load a macro to a 12 | " register you can 'yank' to it. for example if you have a line with the macro 13 | " and cursor is at the beginning of it "ay$ will load the macro into register 14 | " 'a', so that you will be able to execute it with @a 15 | 16 | " 's' enclose selection in double * (bold in markdown) 17 | let @s="S*gvS*" 18 | 19 | " 'q' format paragraph 20 | let @q="V}kQ" 21 | 22 | -------------------------------------------------------------------------------- /plugin/settings/neocomplcache.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Setup neocomplcache 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | if exists('g:loaded_neocomplcache') 11 | " Disable AutoComplPop. 12 | let g:acp_enableAtStartup = 0 13 | " Use neocomplcache. 14 | let g:neocomplcache_enable_at_startup = 1 15 | " Use smartcase. 16 | let g:neocomplcache_enable_smart_case = 1 17 | " Set minimum syntax keyword length. 18 | let g:neocomplcache_min_syntax_length = 3 19 | let g:neocomplcache_lock_buffer_name_pattern = '\*ku\*' 20 | 21 | " Enable heavy features. 22 | " Use camel case completion. 23 | "let g:neocomplcache_enable_camel_case_completion = 1 24 | " Use underbar completion. 25 | "let g:neocomplcache_enable_underbar_completion = 1 26 | 27 | " Define dictionary. 28 | let g:neocomplcache_dictionary_filetype_lists = { 29 | \ 'default' : '', 30 | \ 'vimshell' : $HOME.'/.vimshell_hist', 31 | \ 'scheme' : $HOME.'/.gosh_completions' 32 | \ } 33 | 34 | " Define keyword. 35 | if !exists('g:neocomplcache_keyword_patterns') 36 | let g:neocomplcache_keyword_patterns = {} 37 | endif 38 | let g:neocomplcache_keyword_patterns['default'] = '\h\w*' 39 | 40 | " Plugin key-mappings. 41 | inoremap neocomplcache#undo_completion() 42 | inoremap neocomplcache#complete_common_string() 43 | 44 | " Recommended key-mappings. 45 | " : close popup and save indent. 46 | inoremap =my_cr_function() 47 | function! s:my_cr_function() 48 | return neocomplcache#smart_close_popup() . "\" 49 | " For no inserting key. 50 | "return pumvisible() ? neocomplcache#close_popup() : "\" 51 | endfunction 52 | " : completion. 53 | inoremap pumvisible() ? "\" : "\" 54 | " , : close popup and delete backword char. 55 | inoremap neocomplcache#smart_close_popup()."\" 56 | inoremap neocomplcache#smart_close_popup()."\" 57 | inoremap neocomplcache#close_popup() 58 | inoremap neocomplcache#cancel_popup() 59 | " Close popup by . 60 | "inoremap pumvisible() ? neocomplcache#close_popup() : "\" 61 | 62 | " For cursor moving in insert mode(Not recommended) 63 | "inoremap neocomplcache#close_popup() . "\" 64 | "inoremap neocomplcache#close_popup() . "\" 65 | "inoremap neocomplcache#close_popup() . "\" 66 | "inoremap neocomplcache#close_popup() . "\" 67 | " Or set this. 68 | "let g:neocomplcache_enable_cursor_hold_i = 1 69 | " Or set this. 70 | "let g:neocomplcache_enable_insert_char_pre = 1 71 | 72 | " AutoComplPop like behavior. 73 | "let g:neocomplcache_enable_auto_select = 1 74 | 75 | " Shell like behavior(not recommended). 76 | "set completeopt+=longest 77 | "let g:neocomplcache_enable_auto_select = 1 78 | "let g:neocomplcache_disable_auto_complete = 1 79 | "inoremap pumvisible() ? "\" : "\\" 80 | 81 | " Enable omni completion. 82 | autocmd FileType css setlocal omnifunc=csscomplete#CompleteCSS 83 | autocmd FileType html,markdown setlocal omnifunc=htmlcomplete#CompleteTags 84 | autocmd FileType javascript setlocal omnifunc=javascriptcomplete#CompleteJS 85 | autocmd FileType python setlocal omnifunc=pythoncomplete#Complete 86 | autocmd FileType xml setlocal omnifunc=xmlcomplete#CompleteTags 87 | 88 | " Enable heavy omni completion. 89 | if !exists('g:neocomplcache_omni_patterns') 90 | let g:neocomplcache_omni_patterns = {} 91 | endif 92 | let g:neocomplcache_omni_patterns.php = '[^. \t]->\h\w*\|\h\w*::' 93 | let g:neocomplcache_omni_patterns.c = '[^.[:digit:] *\t]\%(\.\|->\)' 94 | let g:neocomplcache_omni_patterns.cpp = '[^.[:digit:] *\t]\%(\.\|->\)\|\h\w*::' 95 | 96 | " For perlomni.vim setting. 97 | " https://github.com/c9s/perlomni.vim 98 | let g:neocomplcache_omni_patterns.perl = '\h\w*->\h\w*\|\h\w*::' 99 | 100 | endif 101 | -------------------------------------------------------------------------------- /plugin/settings/neosnippet.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Setup neosnippet 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | if exists('g:loaded_neosnippet') 11 | " Plugin key-mappings. 12 | imap (neosnippet_expand_or_jump) 13 | smap (neosnippet_expand_or_jump) 14 | xmap (neosnippet_expand_target) 15 | 16 | " SuperTab like snippets behavior. 17 | imap neosnippet#expandable_or_jumpable() ? 18 | \ "\(neosnippet_expand_or_jump)" 19 | \: pumvisible() ? "\" : "\" 20 | smap neosnippet#expandable_or_jumpable() ? 21 | \ "\(neosnippet_expand_or_jump)" 22 | \: "\" 23 | 24 | " For snippet_complete marker. 25 | if has('conceal') 26 | set conceallevel=2 concealcursor=i 27 | endif 28 | 29 | " Tell Neosnippet about the other snippets 30 | let g:neosnippet#snippets_directory='~/.vim/bundle/snipmate-snippets/snippets' 31 | endif 32 | -------------------------------------------------------------------------------- /plugin/settings/nerdtree.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Setup nerdtree 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | " nerdtree 11 | " Ctrl-F4 to Display the file browser tree 12 | nmap :NERDTreeTabsToggle 13 | " ,p to show current file in the tree 14 | nmap p :NERDTreeFind 15 | 16 | autocmd WinEnter * call s:CloseIfOnlyNerdTreeLeft() 17 | 18 | " Close all open buffers on entering a window if the only 19 | " buffer that's left is the NERDTree buffer 20 | function! s:CloseIfOnlyNerdTreeLeft() 21 | if exists("t:NERDTreeBufName") 22 | if bufwinnr(t:NERDTreeBufName) != -1 23 | if winnr("$") == 1 24 | q 25 | endif 26 | endif 27 | endif 28 | endfunction 29 | 30 | let NERDTreeIgnore = ['\.pyc$'] 31 | 32 | -------------------------------------------------------------------------------- /plugin/settings/numbers.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Setup numbers 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | nnoremap :NumbersToggle 11 | nnoremap :NumbersOnOff 12 | 13 | -------------------------------------------------------------------------------- /plugin/settings/signify.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Setup signify 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | nmap :SignifyToggle 11 | nmap :SignifyToggleHighlight 12 | -------------------------------------------------------------------------------- /plugin/settings/syntastic.vim: -------------------------------------------------------------------------------- 1 | let g:syntastic_python_checkers = ['flake8'] 2 | let g:syntastic_check_on_open=1 3 | let g:syntastic_enable_signs=1 4 | let g:syntastic_auto_jump=1 5 | let g:syntastic_php_checkers=['php'] 6 | let g:syntastic_json_checkers=['jsonlint', 'jsonval'] 7 | let g:syntastic_twig_checkers=['twiglint'] 8 | let g:syntastic_auto_loc_list=0 9 | let g:syntastic_enable_highlighting=1 10 | let g:syntastic_echo_current_error=1 11 | -------------------------------------------------------------------------------- /plugin/settings/syntax.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Enable syntax highlighting 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | if has("syntax") 11 | syntax on 12 | filetype plugin indent on 13 | endif 14 | 15 | -------------------------------------------------------------------------------- /plugin/settings/undotree.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Setup undotree 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | nnoremap :UndotreeToggle 11 | 12 | -------------------------------------------------------------------------------- /plugin/settings/viminfo.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Setup viminfo 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | 9 | " For a nice, huuuuuge viminfo file 10 | if has("viminfo") 11 | set viminfo='100,f1,:100,/100,n$HOME/.vim/.viminfo 12 | endif 13 | 14 | -------------------------------------------------------------------------------- /plugin/settings/vundle.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Setup vundle 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | if VundleInstalled == 1 11 | echo "** dotvim has installed vundle for the first time **\n\n" 12 | echo "" 13 | echo "edit vimrc, select vundles or individual plugins to install" 14 | echo "and run\n\n" 15 | echo ":BundleInstall\n\n" 16 | endif 17 | 18 | -------------------------------------------------------------------------------- /plugin/settings/yankring.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Setup yankring 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | nnoremap :YRShow 11 | let g:yankring_replace_n_pkey = '' 12 | let g:yankring_replace_n_nkey = '' 13 | let g:yankring_history_dir = $HOME.'/.vim/' 14 | let g:yankring_history_file = '.yankring_history' 15 | 16 | -------------------------------------------------------------------------------- /templates/gvimrc: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " gvimrc config 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | " Logical size of GVim window 11 | set lines=35 columns=99 12 | 13 | " Don't display the menu or toolbar. Just the screen. 14 | set guioptions-=m 15 | set guioptions-=T 16 | 17 | " Font. 18 | if has('mac') 19 | set guifont=Menlo:h12 20 | elseif has('unix') 21 | let &guifont="DejaVu Sans Mono 10" 22 | endif 23 | 24 | " Customize to your needs... 25 | 26 | -------------------------------------------------------------------------------- /templates/vimrc: -------------------------------------------------------------------------------- 1 | " 2 | " dotvim : https://github.com/dotphiles/dotvim 3 | " 4 | " Setup vim and load required plugins before dotvim 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | " Call dotvim 11 | source ~/.vim/dotvim.vim 12 | 13 | if has("user_commands") 14 | set nocompatible 15 | filetype off 16 | set rtp+=~/.vim/bundle/vundle/ 17 | call vundle#rc() 18 | "let g:vundles=['general', 'git', 'hg', 'programming', 'completion', 'ruby', 'python', 'misc'] 19 | let g:vundles=['general', 'python', 'programming', 'git'] 20 | "let g:neocomplcache_enable_at_startup = 1 21 | " Load 'vundles' 22 | source ~/.vim/vundles.vim 23 | " Add extra bundles here... 24 | " Bundle 'reponame' 25 | endif 26 | 27 | " Override colorscheme from base16 28 | " let g:dotvim_colorscheme = 'scheme' 29 | 30 | " Customize to your needs... 31 | 32 | -------------------------------------------------------------------------------- /vundles.vim: -------------------------------------------------------------------------------- 1 | " 2 | " dotphiles : https://github.com/dotphiles/dotphiles 3 | " 4 | " Essential vim plugins! 5 | " 6 | " Authors: 7 | " Ben O'Hara 8 | " 9 | 10 | " Vundle itself 11 | Bundle 'gmarik/vundle' 12 | " Required for settings 13 | Bundle 'chriskempson/base16-vim' 14 | 15 | " General 16 | if count(g:vundles, 'general') 17 | Bundle 'scrooloose/nerdtree' 18 | Bundle 'YankRing.vim' 19 | let g:yankring_history_dir = $HOME.'/.vim/' 20 | let g:yankring_history_file = '.yankring_history' 21 | ""Bundle 'tpope/vim-repeat' 22 | ""Bundle 'AutoClose' 23 | Bundle 'kien/ctrlp.vim' 24 | Bundle 'jistr/vim-nerdtree-tabs' 25 | Bundle 'sudo.vim' 26 | Bundle 'bronson/vim-trailing-whitespace' 27 | Bundle 'mbbill/undotree' 28 | Bundle 'mhinz/vim-signify' 29 | Bundle 'Raimondi/delimitMate' 30 | Bundle 'bling/vim-airline' 31 | Bundle 'rodjek/vim-puppet' 32 | endif 33 | 34 | if count(g:vundles, 'git') 35 | if executable('git') 36 | Bundle 'tpope/vim-fugitive' 37 | endif 38 | endif 39 | 40 | if count(g:vundles, 'hg') 41 | if executable('hg') 42 | Bundle 'k-takata/hg-vim' 43 | endif 44 | endif 45 | " General Programming 46 | if count(g:vundles, 'programming') 47 | Bundle 'godlygeek/tabular' 48 | if executable('ack') 49 | Bundle 'mileszs/ack.vim' 50 | endif 51 | if v:version > 700 52 | Bundle 'scrooloose/syntastic' 53 | if executable('ctags') 54 | Bundle 'majutsushi/tagbar' 55 | endif 56 | endif 57 | endif 58 | 59 | if count(g:vundles, 'completion') 60 | Bundle 'Shougo/neocomplcache' 61 | Bundle 'Shougo/neosnippet' 62 | Bundle 'Shougo/neosnippet-snippets' 63 | Bundle 'scrooloose/snipmate-snippets' 64 | Bundle 'honza/vim-snippets' 65 | Bundle 'Indent-Guides' 66 | endif 67 | 68 | " PHP 69 | if count(g:vundles, 'php') 70 | Bundle 'spf13/PIV' 71 | endif 72 | 73 | " Python 74 | if count(g:vundles, 'python') 75 | Bundle 'hynek/vim-python-pep8-indent' 76 | let g:syntastic_python_flake8_args='--ignore=E501' 77 | endif 78 | 79 | " Javascript 80 | if count(g:vundles, 'javascript') 81 | Bundle 'leshill/vim-json' 82 | Bundle 'groenewege/vim-less' 83 | Bundle 'taxilian/vim-web-indent' 84 | endif 85 | 86 | " HTML 87 | if count(g:vundles, 'html') 88 | Bundle 'HTML-AutoCloseTag' 89 | Bundle 'hail2u/vim-css3-syntax' 90 | Bundle 'juvenn/mustache.vim' 91 | endif 92 | 93 | " Ruby 94 | if count(g:vundles, 'ruby') 95 | Bundle 'tpope/vim-rails' 96 | endif 97 | 98 | " Misc 99 | if count(g:vundles, 'misc') 100 | Bundle 'tpope/vim-markdown' 101 | Bundle 'spf13/vim-preview' 102 | Bundle 'tpope/vim-cucumber' 103 | Bundle 'markcornick/vim-vagrant' 104 | Bundle 'Puppet-Syntax-Highlighting' 105 | Bundle 'ekalinin/Dockerfile.vim' 106 | if v:version > 701 107 | Bundle 'zhaocai/GoldenView.Vim' 108 | endif 109 | let g:goldenview__enable_default_mapping=0 110 | endif 111 | --------------------------------------------------------------------------------