Convert Figma logo to code with AI

VundleVim logoVundle.vim

Vundle, the plug-in manager for Vim

23,883
2,568
23,883
207

Top Related Projects

33,891

:hibiscus: Minimalist Vim Plugin Manager

A use-package inspired plugin manager for Neovim. Uses native packages, supports Luarocks dependencies, written in Lua, allows for expressive config

13,952

💤 A modern plugin manager for Neovim

:zap: Dark powered Vim/Neovim plugin manager

pathogen.vim: manage your runtimepath

Quick Overview

Vundle.vim is a popular plugin manager for Vim. It simplifies the process of installing, updating, and managing Vim plugins by allowing users to specify plugins in their .vimrc file and handle them through simple commands.

Pros

  • Easy to set up and use
  • Manages plugin installation, updates, and removal efficiently
  • Supports various plugin sources (GitHub, Vim scripts, local plugins)
  • Allows for plugin-specific configurations within .vimrc

Cons

  • Requires Git to be installed for full functionality
  • May be slower than some newer plugin managers (e.g., vim-plug)
  • Limited support for asynchronous operations
  • Not actively maintained (last commit was in 2019)

Getting Started

  1. Install Vundle:
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
  1. Configure plugins in your .vimrc:
set nocompatible
filetype off
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()

Plugin 'VundleVim/Vundle.vim'
" Add your plugins here
" Plugin 'tpope/vim-fugitive'
" Plugin 'scrooloose/nerdtree'

call vundle#end()
filetype plugin indent on
  1. Install plugins: Open Vim and run :PluginInstall

  2. Manage plugins:

    • Install plugins: :PluginInstall
    • Update plugins: :PluginUpdate
    • Remove unused plugins: :PluginClean
    • List configured plugins: :PluginList

Competitor Comparisons

33,891

:hibiscus: Minimalist Vim Plugin Manager

Pros of vim-plug

  • Parallel installation of plugins, resulting in faster updates
  • Supports on-demand loading of plugins for improved startup time
  • Minimalist and simpler configuration syntax

Cons of vim-plug

  • Lacks some advanced features like plugin pinning to specific versions
  • May require manual intervention for certain plugin-specific configurations

Code Comparison

vim-plug:

call plug#begin()
Plug 'tpope/vim-sensible'
Plug 'junegunn/seoul256.vim'
call plug#end()

Vundle:

set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
Plugin 'tpope/vim-fugitive'
call vundle#end()

Both vim-plug and Vundle are popular plugin managers for Vim. vim-plug offers a more streamlined experience with faster installations and simpler syntax, while Vundle provides a more traditional approach with a wider range of features. The choice between them often comes down to personal preference and specific requirements of the user's Vim setup.

A use-package inspired plugin manager for Neovim. Uses native packages, supports Luarocks dependencies, written in Lua, allows for expressive config

Pros of packer.nvim

  • Written in Lua, offering better performance and integration with Neovim
  • Supports lazy loading and conditional loading of plugins
  • Provides a more flexible and powerful configuration syntax

Cons of packer.nvim

  • Only compatible with Neovim, not Vim
  • Steeper learning curve due to Lua-based configuration
  • Relatively newer project with potentially fewer community resources

Code Comparison

Vundle.vim configuration:

Plugin 'tpope/vim-fugitive'
Plugin 'L9'
Plugin 'git://git.wincent.com/command-t.git'
Plugin 'rstacruz/sparkup', {'rtp': 'vim/'}

packer.nvim configuration:

use 'tpope/vim-fugitive'
use 'L9'
use 'wincent/command-t'
use { 'rstacruz/sparkup', rtp = 'vim/' }
use { 'nvim-treesitter/nvim-treesitter', run = ':TSUpdate' }

The packer.nvim configuration demonstrates its ability to handle more complex plugin setups, including running commands after installation. Both package managers allow for simple plugin declarations, but packer.nvim's Lua-based syntax offers more flexibility and readability for advanced configurations.

13,952

💤 A modern plugin manager for Neovim

Pros of lazy.nvim

  • Lazy loading: Improves startup time by loading plugins only when needed
  • Modern Lua-based configuration: Offers better performance and flexibility
  • Built-in profiling and debugging tools: Helps optimize plugin setup

Cons of lazy.nvim

  • Steeper learning curve: Requires Lua knowledge for advanced configuration
  • Neovim-specific: Not compatible with traditional Vim

Code Comparison

Vundle.vim configuration:

set nocompatible
filetype off
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'

lazy.nvim configuration:

local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
  vim.fn.system({"git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", lazypath})
end
vim.opt.rtp:prepend(lazypath)

:zap: Dark powered Vim/Neovim plugin manager

Pros of dein.vim

  • Faster plugin loading and management due to lazy loading capabilities
  • More flexible configuration options, including support for TOML files
  • Better support for asynchronous plugin installation and updates

Cons of dein.vim

  • Steeper learning curve compared to Vundle's simpler setup
  • Requires Vim 8.0+ or Neovim for full functionality
  • More complex syntax for plugin configuration

Code Comparison

Vundle.vim configuration:

Plugin 'tpope/vim-fugitive'
Plugin 'L9'
Plugin 'git://git.wincent.com/command-t.git'

dein.vim configuration:

call dein#add('tpope/vim-fugitive')
call dein#add('L9')
call dein#add('git://git.wincent.com/command-t.git')

Both Vundle and dein.vim are popular plugin managers for Vim, but they differ in their approach and features. Vundle is known for its simplicity and ease of use, making it a great choice for beginners. On the other hand, dein.vim offers more advanced features and better performance, which can be beneficial for power users and those with larger plugin collections. The choice between the two ultimately depends on the user's needs and experience level with Vim plugin management.

pathogen.vim: manage your runtimepath

Pros of Pathogen

  • Simpler and more lightweight than Vundle
  • Allows for easier manual management of plugins
  • Works well with Git submodules for plugin management

Cons of Pathogen

  • Lacks automatic plugin installation and updating features
  • Requires manual intervention for adding or removing plugins
  • No built-in search functionality for discovering new plugins

Code Comparison

Pathogen:

execute pathogen#infect()
syntax on
filetype plugin indent on

Vundle:

set nocompatible
filetype off
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
Plugin 'VundleVim/Vundle.vim'
" Add plugins here
call vundle#end()
filetype plugin indent on

Pathogen uses a simpler approach, requiring only one line to load plugins. Vundle requires more configuration but offers more features like plugin management and installation. Pathogen is ideal for users who prefer manual control, while Vundle suits those who want a more automated plugin management experience.

Convert Figma logo designs to code with AI

Visual Copilot

Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.

Try Visual Copilot

README

Help Maintain Vundle

Table of Contents

About

Vundle is short for Vim bundle and is a Vim plugin manager.

Vundle allows you to...

Vundle automatically...

Vundle is undergoing an interface change, please stay up to date to get latest changes.

Gitter-chat for discussion and support.

Vundle-installer

Quick Start

  1. Introduction:

    Installation requires Git and triggers git clone for each configured repository to ~/.vim/bundle/ by default. Curl is required for search.

    If you are using Windows, go directly to Windows setup. If you run into any issues, please consult the FAQ. See Tips for some advanced configurations.

    Using non-POSIX shells, such as the popular Fish shell, requires additional setup. Please check the FAQ.

  2. Set up Vundle:

    git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
    
  3. Configure Plugins:

    Put this at the top of your .vimrc to use Vundle. You may have to create a .vimrc file if it doesn't already exist at ~/.vimrc. Remove plugins you don't need, they are for illustration purposes.

    set nocompatible              " be iMproved, required
    filetype off                  " required
    
    " set the runtime path to include Vundle and initialize
    set rtp+=~/.vim/bundle/Vundle.vim
    call vundle#begin()
    " alternatively, pass a path where Vundle should install plugins
    "call vundle#begin('~/some/path/here')
    
    " let Vundle manage Vundle, required
    Plugin 'VundleVim/Vundle.vim'
    
    " The following are examples of different formats supported.
    " Keep Plugin commands between vundle#begin/end.
    " plugin on GitHub repo
    Plugin 'tpope/vim-fugitive'
    " plugin from http://vim-scripts.org/vim/scripts.html
    " Plugin 'L9'
    " Git plugin not hosted on GitHub
    Plugin 'git://git.wincent.com/command-t.git'
    " git repos on your local machine (i.e. when working on your own plugin)
    Plugin 'file:///home/gmarik/path/to/plugin'
    " The sparkup vim script is in a subdirectory of this repo called vim.
    " Pass the path to set the runtimepath properly.
    Plugin 'rstacruz/sparkup', {'rtp': 'vim/'}
    " Install L9 and avoid a Naming conflict if you've already installed a
    " different version somewhere else.
    " Plugin 'ascenator/L9', {'name': 'newL9'}
    
    " All of your Plugins must be added before the following line
    call vundle#end()            " required
    filetype plugin indent on    " required
    " To ignore plugin indent changes, instead use:
    "filetype plugin on
    "
    " Brief help
    " :PluginList       - lists configured plugins
    " :PluginInstall    - installs plugins; append `!` to update or just :PluginUpdate
    " :PluginSearch foo - searches for foo; append `!` to refresh local cache
    " :PluginClean      - confirms removal of unused plugins; append `!` to auto-approve removal
    "
    " see :h vundle for more details or wiki for FAQ
    " Put your non-Plugin stuff after this line
    
  4. Install Plugins:

    Launch vim and run :PluginInstall

    To install from command line: vim +PluginInstall +qall

  5. (optional) For those using the fish shell: add set shell=/bin/bash to your .vimrc

Docs

See the :h vundle Vimdoc for more details.

Changelog

See the changelog.

People Using Vundle

see Examples

Contributors

see Vundle contributors

Thank you!

Inspiration & Ideas

Also

  • Vundle was developed and tested with Vim 7.3 on OS X, Linux and Windows
  • Vundle tries to be as KISS as possible

TODO

Vundle is a work in progress, so any ideas and patches are appreciated.

  • activate newly added bundles on .vimrc reload or after :PluginInstall
  • use preview window for search results
  • Vim documentation
  • put Vundle in bundles/ too (will fix Vundle help)
  • tests
  • improve error handling
  • allow specifying revision/version?
  • handle dependencies
  • show description in search results
  • search by description as well
  • make it rock!