" Bundle 'jalcine/cmake.vim'
 " Bundle 'powerman/vim-plugin-viewdoc'
 
+Bundle 'airblade/vim-gitgutter'
+Bundle 'Raimondi/delimitMate'
+Bundle 'SirVer/ultisnips'
+Bundle 'Lokaltog/vim-easymotion'
+
 " remove entries first
 set runtimepath -=$HOME/.vim
 set runtimepath -=$HOME/.vim/after
 " whether to use a popup menu for Insert mode completion
 set completeopt=longest,menuone,preview
 
-" Indent if we're at the beginning of a line. Else, do completion.
-function! InsertTabWrapper()
-  let col = col('.') - 1
-  if !col || getline('.')[col - 1] !~ '\k'
-    return "\<Tab>"
-  else
-    return "\<C-N>"
-endif
-endfunction
-inoremap <Tab> <C-R>=InsertTabWrapper()<CR>
-inoremap <S-Tab> <C-P>
-
 " fix legacy vi inconsistency
 map Y y$
 
 let g:tagbar_width = 25
 let g:tagbar_iconchars = ['+', '-']
 
+" UltiSnips {{{2
+let g:UltiSnipsEditSplit = 'vertical'
+let g:UltiSnipsSnippetsDir = "$XDG_CONFIG_HOME/vim/ultisnips"
+
 " YouCompleteMe {{{2
 let g:ycm_extra_conf_globlist = ['~/src/*','/mnt/data/src/*']
 let g:ycm_add_preview_to_completeopt = 1