Note: Some features require version 8+ of vim. For instance, the ALE plugin which utilizes the built-in ~/.vim/pack/ for autoloading plugins
<v><e><y>       # select to end of word/variable and yank
<c><t><)>       # cut everything before )  [eg func(text-to-cut)]
<ctrl><v>       # Select all number columns to increment
<g><ctrl+a>     # If using tmux config, may need to hit a twice (e.g. <ctrl+a+a>
<leader>i)Leader Key: , (comma)
| Shortcut | Description | Plugin | 
|---|---|---|
| <leader><F3> | Toggle wordwrap | |
| <leader>bg | Toggle dark/light background | |
| <leader>h | Disable search highlight | |
| <leader>f<0-9> | Set foldlevel (0-9) | |
| <leader>i | Toggle indent guides | IndentLines | 
| Shortcut | Description | Plugin | 
|---|---|---|
| - | Comment out selected lines (filetype needs to be configured in vimrc for support) | NERDcommenter | 
| _ | Uncomment selected lines (filetype needs to be configured in vimrc for support) | NERDcommenter | 
| <leader><F2> | Remove trailing whitespace from file | |
| <leader>a<delimiter> | Accept various common delimiters for tabulizing blocks of code (e.g. varname = something, = being the delimiter) | Tabular | 
| <leader>d | Add delimiters around entire line (normal mode) or selection (visual mode) | vim-surround | 
| <leader>j | Pretty print json (current open file) | |
| <leader>D | Add delimiters around current word (normal mode) | vim-surround | 
| <leader>q | Format a paragraph/line to better fit the textwidth | |
| <leader>p | Toggle paste mode | |
| S) | Add delimiters current selection | vim-surround | 
| cs<delimiter><delimiter> | Replace a character with anothere charcter (e.g. cs"', orcs'<p class="test">) | vim-surround | 
| ds<delimiter> | Remove a delimiter | vim-surround | 
| ysiw] | Add delimiters around current word | vim-surround | 
| yss) | Add delimiters around entire line | vim-surround | 
| Shortcut | Description | Plugin | 
|---|---|---|
| % | Find the end {}, [], or start/end tags (e.g. html) | Base, Matchit | 
| * | Highlight all occurences of word under cursor (default in vim) | |
| ff | Display all occurences of word under cursor | |
| cwd | Change working dirctory to current file's | |
| <leader>n | Toggle NERDTree | NERDTree | 
| <leader>j | Move to next linting error | ALE | 
| <leader>k | Move to previous linting error | ALE | 
| Shortcut | Description | Plugin | 
|---|---|---|
| <leader>sh | Split horizontally | |
| <leader>sv | Split vertically | |
| <leader>t | Tab Next | |
| <leader>T | Tab Previous | |
| <leader>w | cycle through split windows | |
| <leader><+> | Resize horizontal pane (3/2) | |
| <leader><-> | Resize horizontal pane (2/3) | |
| <leader><<> | Resize vertical pane (3/2) | |
| <leader><>> | Resize vertical pane (2/3) | 
| Shortcut | Description | Plugin | 
|---|---|---|
| <leader><F4> | Reload vimrc file | |
| w!! | Attempt to sudo and write to file |