Vim plugins

From wikinotes

Vim is extremely extensible, both using viml and python (if it is compiled into your version of vim). If you are looking for directions for creating your own plugins, See Writing Vim Plugins.

NOTE:

See vimrc for latest notes, plugins, and usage.

TODO:

organize these by vim vs neovim

Managing Plugins

Check if plugin is loaded

" check if a plugin is loaded
if &rtp =~ 'vim-airline,'
    echo "vim-airline plugin is loaded"
endif

https://stackoverflow.com/questions/13710364/viml-checking-if-function-exists

Plugin Managers

VimPlugin: vim-plug asynchronous plugin manager
VimPlugin: Vundle plugin manager

General

VimPlugin: Ale Language Agnostic Linter (lightweight)
VimPlugin: vim bookmarks store bookmarks in codebase
VimPlugin: Cscope Jump to Code (inverse of ctags)
VimPlugin: Ctags Jump to Code
VimPlugin: Drawit Draw ASCII diagrams
VimPlugin: EasyMotion motions, without counting
VimPlugin: Fugitive Git interface
VimPlugin: fzf.vim search files
VimPlugin: GitGutter marks each line in your git file based on if it is changed, added, removed from HEAD.
VimPlugin: gitlink-vim yank commits, github-links to line
VimPlugin: indentLine visual marks to show level of indentation
VimPlugin: indent-blankline configurable indentation lines, and a highlighted scope indicator line
VimPlugin: NERDTree File Manager
VimPlugin: QFEnter open files from vim's quickfix window
VimPlugin: Simplenote.vim Interact with Simplenote
VimPlugin: Speech reads everything you type in a computerized voice (used while wisdom teeth were out)
VimPlugin: surround Add/Change/Remove surrounding tags (ex. quotes, html-elements, ..)
VimPlugin: Syntastic Language Agnostic Linter (heavy)
VimPlugin: Tabular Automatically Align Indentation
VimPlugin: TagBar Table Of Contents (requires ctags)
VimPlugin: Vim-Signature Add and jump between marks within a file (in the sidebar)
VimPlugin: vim-dispatch compile, run tests asynchronously from vim and integrate in quickfix
VimPlugin: VimChat XMPP client
VimPlugin: dbext execute SQL in vim buffer
VimPlugin: eclim Integrate vim and eclipse
VimPlugin: incsearch dynamic highlighting while you type in search
VimPlugin: tabman overview of all tabs/splits, quickly jump to one
VimPlugin: tComment Language agnostic shortcuts to quickly comment out large sections of text.
VimPlugin: ultisnips insert snippets into source-files
VimPlugin: vim-dasht show documentation, and autocomplete based on documentation
VimPlugin: vim-diminactive dim inactive vim-splits
VimPlugin: vim-gnupg read/write gpg encrypted files seamlessly (and securely) from vim
VimPlugin: vim-ipython Run code within Ipython session from vim sourcecode
VimPlugin: vim-maximizer toggle vim-split an fullscreen (like tmux)
VimPlugin: vim-matchup highlight and jump between various language open/end syntax
VimPlugin: vim-over dynamic highlighting/preview while you perform search/replaces
VimPlugin: vim-snipmate viml snippets library
VimPlugin: vim-superman coloured man-pages using vim
VimPlugin: vim-taskwarrior taskwarrior interface within vim. much better than the official UI for it.
VimPlugin: vim-test test runner for various languages
VimPlugin: visual-increment multiline increment/deincrement numbers using ctrl+a/ctrl+x
VimPlugin: orgmode.nvim neovim org mode plugin
VimPlugin: vim-orgmode minimal org mode plugin for vim
VimPlugin: org.vim minimal org mode plugin for vim
VimPlugin: vim-table-mode spreadsheet like behaviour within vim
VimPlugin: vim-localvimrc project-specific vimrc files
VimPlugin: lightline lightweight powerline clone w/ api for hooking other plugin info
NvimPlugin: telescope search various things, built overtop of fzf

Completion/LSP

VimPlugin: YouCompleteMe Code-Completion
VimPlugin: deoplete very fast autocompleter
VimPlugin: Coc.nvim intellisense for neovim (refactor-rename, autocomplete, goto, find-references, ....)
VimPlugin: lsp neovim's builtin lsp
VimPlugin: nvim-lspconfig configs for neovim's builtin lsp
VimPlugin: nvim-lsp-installer installs lsp providers
VimPlugin: mason install lsp providers
VimPlugin: LanguageClient autocomplete for vim (refactor-rename, autocomplete, goto, find-references, ...)
VimPlugin: vim-javacomplete2 fast autocompletion for java
VimPlugin: nvim-treesitter autocomplete, syntax highlighting, much more
VimPlugin: vim-go completion, debugging, builds, etc
nvim plug: nvim-ufo syntax-highlighting within folds
Blogs/Tutorials
lsp comparison 2019 https://bluz71.github.io/2019/10/16/lsp-in-vim-with-the-lsc-plugin.html

Language Specific

VIML

vader unittesting library for vim
covimerage produces coverage.xml files from vader.vim

Python

VimPlugin: RopeVim python refactoring
VimPlugin: vim-pyunit view/run/toggle python unittests
VimPlugin: python-mode MetaPackage, several of the most popular python extensions for vim
VimPlugin: SimpylFold syntax based folding for python

Ruby/Rails

VimPlugin: vim-rails syntax highlighting, and some functions

Java

VimPlugin: vim-maven-plugin Interact with maven from vim

LaTex

VimPlugin: vimtex Latex editor, previews

Syntax Highlighting

VimPlugin: Markdown-Syntax
VimPlugin: vim-cpp-enhanced-highlight
VimPlugin: vim-ledger
VimPlugin: typescript-vim
VimPlugin: vim-nix
VimPlugin: vim-tsx
VimPlugin: vim-graphql
VimPlugin: nvim-treesitter autocomplete, syntax highlighting, much more
VimPlugin: python-syntax
VimPlugin: salt-vim syntax highlighting for saltstack .sls files
VimPlugin: nginx.vim syntax highlighting for nginx files
VimPlugin: vim-ps1 powershell syntax highlighting for vim

Folds

VimPlugin: FastFold
VimPlugin: vim-yaml-folds

Speech Coding

talon
F# plugin to control vim with speech https://github.com/AshleyF/VimSpeak
voicecode plugin for vim https://github.com/VoiceCode/vim