diff --git a/.gitmodules b/.gitmodules
index 6b476f9..a3bb220 100644
--- a/.gitmodules
+++ b/.gitmodules
@@ -19,3 +19,6 @@
[submodule "vim/.vim/bundle/pathogen"]
path = vim/.vim/bundle/pathogen
url = https://github.com/tpope/vim-pathogen
+[submodule "vim/.vim/bundle/endwise"]
+ path = vim/.vim/bundle/endwise
+ url = https://github.com/tpope/vim-endwise
diff --git a/vim/.vim/bundle/endwise b/vim/.vim/bundle/endwise
new file mode 160000
index 0000000..d565526
--- /dev/null
+++ b/vim/.vim/bundle/endwise
@@ -0,0 +1 @@
+Subproject commit d5655263af8b3611a2bcb907a9963831a88d154b
diff --git a/vim/.vim/bundle/endwise/CONTRIBUTING.markdown b/vim/.vim/bundle/endwise/CONTRIBUTING.markdown
deleted file mode 100644
index b3f0095..0000000
--- a/vim/.vim/bundle/endwise/CONTRIBUTING.markdown
+++ /dev/null
@@ -1 +0,0 @@
-See the [contribution guidelines for pathogen.vim](https://github.com/tpope/vim-pathogen/blob/master/CONTRIBUTING.markdown).
diff --git a/vim/.vim/bundle/endwise/README.markdown b/vim/.vim/bundle/endwise/README.markdown
deleted file mode 100644
index 08f9d70..0000000
--- a/vim/.vim/bundle/endwise/README.markdown
+++ /dev/null
@@ -1,42 +0,0 @@
-# endwise.vim
-
-This is a simple plugin that helps to end certain structures
-automatically. In Ruby, this means adding `end` after `if`, `do`, `def`
-and several other keywords. In Vimscript, this amounts to appropriately
-adding `endfunction`, `endif`, etc. There's also Bourne shell, VB
-(don't ask), C/C++ preprocessor, and Lua support.
-
-A primary guiding principle in designing this plugin was that an
-erroneous insertion is never acceptable. The behavior is only triggered
-once pressing enter on the end of the line. When this happens, endwise
-searches for a matching end structure and only adds one if none is
-found.
-
-While the goal was to make it customizable, this turned out to be a tall
-order. Every language has vastly different requirements. Nonetheless,
-for those bold enough to attempt it, you can follow the model of the
-autocmds in the plugin to set the three magic variables governing
-endwise's behavior.
-
-## Installation
-
-If you don't have a preferred installation method, I recommend
-installing [pathogen.vim](https://github.com/tpope/vim-pathogen), and
-then simply copy and paste:
-
- cd ~/.vim/bundle
- git clone git://github.com/tpope/vim-endwise.git
-
-## Self-Promotion
-
-Like endwise.vim? Follow the repository on
-[GitHub](https://github.com/tpope/vim-endwise) and vote for it on
-[vim.org](http://www.vim.org/scripts/script.php?script_id=2386). And if
-you're feeling especially charitable, follow [tpope](http://tpo.pe/) on
-[Twitter](http://twitter.com/tpope) and
-[GitHub](https://github.com/tpope).
-
-## License
-
-Copyright (c) Tim Pope. Distributed under the same terms as Vim itself.
-See `:help license`.
diff --git a/vim/.vim/bundle/endwise/plugin/endwise.vim b/vim/.vim/bundle/endwise/plugin/endwise.vim
deleted file mode 100644
index 23eb339..0000000
--- a/vim/.vim/bundle/endwise/plugin/endwise.vim
+++ /dev/null
@@ -1,196 +0,0 @@
-" Location: plugin/endwise.vim
-" Author: Tim Pope
-" Version: 1.2
-" License: Same as Vim itself. See :help license
-" GetLatestVimScripts: 2386 1 :AutoInstall: endwise.vim
-
-if exists("g:loaded_endwise") || &cp
- finish
-endif
-let g:loaded_endwise = 1
-
-augroup endwise " {{{1
- autocmd!
- autocmd FileType lua
- \ let b:endwise_addition = 'end' |
- \ let b:endwise_words = 'function,do,then' |
- \ let b:endwise_pattern = '^\s*\zs\%(\%(local\s\+\)\=function\)\>\%(.*\\)\@!\|\<\%(then\|do\)\ze\s*$' |
- \ let b:endwise_syngroups = 'luaFunction,luaStatement,luaCond'
- autocmd FileType elixir
- \ let b:endwise_addition = 'end' |
- \ let b:endwise_words = 'do,fn' |
- \ let b:endwise_pattern = '.*[^.:@$]\zs\<\%(do\(:\)\@!\|fn\)\>\ze\%(.*[^.:@$]\\)\@!' |
- \ let b:endwise_syngroups = 'elixirBlockDefinition'
- autocmd FileType ruby
- \ let b:endwise_addition = 'end' |
- \ let b:endwise_words = 'module,class,def,if,unless,case,while,until,begin,do' |
- \ let b:endwise_pattern = '^\(.*=\)\?\s*\%(private\s\+\|protected\s\+\|public\s\+\|module_function\s\+\)*\zs\%(module\|class\|def\|if\|unless\|case\|while\|until\|for\|\|begin\)\>\%(.*[^.:@$]\\)\@!\|\