- Use a plugin manager (my favorite one is vim-plug)
- Vim is not an IDE, just a text editor. Use shell tools and cli applications instead of stuffing everything into Vim (
tmux
can help with this) - I prefer Neovim over Vim, the community drives new features (which only get accepted in Vim after Neovim has proven people want it, Vim's upstream is a bit stubborn) and some plugins that I use require extra dependencies in Vim but not in Neovim
The following notation maps to GitHub. tpope/vim-surround
can be found at https://github.com/tpope/vim-surround
Plugin | Description |
---|---|
tpope/vim-surround | edit/add/remove parentheses, brackets, (html) tags and more |
tpope/vim-fugitive | Git |
junegunn/fzf | Fast Fuzzy File Finder (also works outside of vim, e.g. when searching bash history |
Plugin | Description |
---|---|
tpope/vim-commentary | quickly (un)comment parts of code |
tpope/vim-repeat | enhance repeat (with dot '.'), enabling it for plugins |
tpope/vim-rhubarb | Add-on for vim-fugitive: Enable GitHub support (e.g. :Gbrowse opens current file on GitHub in the corresponding branch) |
Shougo/deoplete.nvim | Async (important for performance!) compeletion manager that also supports Language Clients (has two more dependencies for regular Vim) |
autozimu/LanguageClient-neovim | Support for Language Server <> Client communication (native implementation is WIP for Neovim) |
Plugin | Description |
---|---|
tpope/vim-unimpaired | set of keybindings using [ and ] (e.g. [<SPC> to insert a blank line above, ]<SPC> to insert a blank line below) |
tpope/vim-rsi | shell keybindings (e.g. C-W for delete-backwards) |
tpope/vim-rails | Navigate Rails project easier |
Plugin | Description |
---|---|
NerdTREE | The shell has better file manipulation and FZF is better at opening files. Vim is not an IDE |
powerline (or any other fancy status line) | Waste of resources and overwhelming with information. Built-in statusline can be adapted to fit your needs perfectly |