This is My Vim Config. There Are Many Like It, But This One is Mine.
Dotfiles, inlcuding my .vimrc, are managed with git and symlinks. Vim plugins are handled with Pathogen and git-submodules.
See also my Vagrant Ubuntu Node VM and environment provisioning scripts that include other goodies like vifm, tig, etc...
(running on both Ubuntu and OS X, YMMV on other systems)
Clone dot files
cd ~/ && \
git clone https://github.com/kwaledesign/dotfiles.git
Install pathogen pathogen - (manages the runtime path of the plugins)
mkdir -p ~/.vim/autoload ~/.vim/bundle && \
curl -LSso ~/.vim/autoload/pathogen.vim https://tpo.pe/pathogen.vim
Symlink .vimrc file and bundle directory
ln -s ./dotfiles/vim/.vimrc && \
ln -s ~/dotfiles/vim/.vim/bundle/* ~/.vim/bundle/
pull and update git submodules (vim plugins)
cd dotfiles/vim/.vim/bundle/ && \
git submodule update --init && \
git submodule foreach git pull origin master && \
cd
Oh My Zsh!
sh -c "$(wget https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
symlink .zshrc
mv .zshrc .zshrc.old && \
ln -s ~/dotfiles/zsh/.zshrc
Yankring Plugin Config (needs a tmp/file
with read/write permissions)
mkdir ~/.vim/tmp && \
cd ~/.vim/tmp/ && \
mkdir yankring-tmp/ && \
cd yankring-tmp && \
touch yankring_history_v2.txt && \
cd
Set permissions on the tmp/
directory (YMMV, I'm using vagrant...)
sudo chown vagrant ~/.vim/tmp && \
sudo chmod 777 -R ~/vim/tmp
- YankRing - History for yanks, changes, deletes
- BufClose - close current buffer, or a buffer by name
- ctrlp - Fuzzy file, buffer, mru, tag, etc finder
- nerdtree - A tree explorer plugin for vim.
- vim-easymotion - Vim motion on speed!
- vim-autoclose - enable an auto-close chars feature
- vim-repeat - repeat.vim: enable repeating supported plugin maps with "."
- Syntastic
- Surround
- nerdcommenter
- Eunuch
- Ack
- Fugitive
- indentLine
- Airline
- Bufferline
- Signify
- vim notes
- Emmet Vim
- Vitality - make tmux play nicely with vim and iterm2
- Vimux
- vim grep
- JavaScript Library Syntax
rember to run: :Helptags
To remove a Git Submodule:
- Delete the relevant section from the
.gitmodules
file - Stage the changes
git add .gitmodules
- Delete the relevant section from
.git/config
- Run
git rm --cached path_to_submodule
(no trailing slash) - Run
rm -rf .git/modules/path_to_submodule
- Commit
git commit -m "Removed submodule"
- Delete the now untracked submodule file
rm -rf path_to_submodule