Skip to content

vim-plug

A minimal plugin manager for Vim and Neovim that installs plugins from git.

Stars
35.8k
Forks
1.9k
Licence
MIT
Language
Vim Script
Last update
22 days ago
Type
Dev tool

What it is

vim-plug is a plugin manager for the Vim and Neovim text editors. You list the plugins you want in your editor configuration file, and vim-plug downloads and updates them for you with simple commands like PlugInstall and PlugUpdate. It is distributed as a single file with no dependencies.

  • Install a set of Vim plugins from GitHub with one command after listing them in your config
  • Update all installed plugins with PlugUpdate and review changes with PlugDiff
  • Remove plugins you no longer list using PlugClean
  • Load a plugin only when a specific command runs or a file type is opened

Great for

  • Vim or Neovim users who want to manage plugins without a heavy setup
  • People who want to pin plugins to a branch, tag, or commit
  • Users who want plugins to load on demand to speed up startup
  • People who prefer a small, simple tool with minimal configuration syntax

Not ideal for

  • People who do not use Vim or Neovim, since it only works inside those editors
  • Users who need plugins installed from sources other than git, because the README describes git-based installation
  • Users who want a built-in package system instead of a third-party tool
Step-by-step guide: how to use vim-plugInstall, first run, examples, tips and FAQs

How to get it

  1. 1

    See the README

    You'll need: Vim or Neovim · git

    Download plug.vim to the autoload directory on Unix (Vim)

    curl -fLo ~/.vim/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
  2. 2

    Run it

    • Add a call to plug#begin() and plug#end() to your ~/.vimrc (or ~/.config/nvim/init.vim for Neovim).
    • Inside that section, list plugins with Plug lines, such as Plug 'tpope/vim-sensible'.
    • Reload the file or restart Vim.
    • Run :PlugInstall to install the plugins.
  3. 3

    Get the most out of it

    • Use the 'on' and 'for' options to load plugins only when needed and speed up startup
    • Pin plugins to a tag with { 'tag': '*' } or to a branch with { 'branch': ... }
    • Use the 'do' option to run a command after a plugin installs or updates
    • Use :PlugDiff to review changes before or after updating

Downloads

Strengths

  • Single file with no dependencies, which the README describes as easy to set up
  • Parallel installation and updates, with shallow clones to save disk space and download time
  • Supports branches, tags, commits, and post-update hooks

Trade-offs

  • The README does not state the exact versions of Vim or Neovim supported beyond general claims of broad compatibility
  • Relies on git being available for installing plugins

How it compares

ProjectStarsTypeLevelUpdatedBest for
vim-plug (this)35.8kDev toolbeginner22 days agoVim or Neovim users who want to manage plugins without a heavy setup
fzf83.9kDev toolbeginner8 days agoCommand-line users who often search file names or command history
core22.8kDev toolintermediate1 months agoEmacs users who want a curated starting point without building everything from scratch
coc.nvim25.1kAppintermediate10 days agoVim or Neovim users who want autocompletion and language features similar to VS Code
vim-airline18kAppbeginner22 days agoVim users who want a clearer status bar without heavy configuration
Vim15.2kAppbeginner6 days agoDevelopers who already know Vim and want its keybindings in VS Code

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.