Skip to content
This repository has been archived by the owner on Oct 11, 2021. It is now read-only.
/ Vivid-Legacy.vim Public archive

The original version of the Vivid.vim plugin manager for Vim. (A fork of Vundle.)

License

Notifications You must be signed in to change notification settings

axvr/Vivid-Legacy.vim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Vivid-Legacy.vim

Vivid-Legacy is now legacy software, please use the new version (full rewrite) instead: Vivid.vim

Version Badge Licence Badge

Vivid is a fork of Vundle a Vim plugin manager. Vivid aims to extend and simplify the features of Vundle, to make a more powerful Plugin manager. Vivid's main goal is to become fully cross platform, so that it can work as expected on all systems and Vim derivatives, including Neovim and Windows.

If you find any bugs or errors, please feel free to submit an issue as I cannot test Vivid on every possible system for problems. I would in the future like to add multi-language support to Vivid, help would be greatly appreciated, especially since Google Translate is not entirely accurate a lot of the time. For more information on contributing to Vivid see the contributing document and ensure that you read and agree to the Code of Conduct.

About

Vivid allows you to...

  • Configure your plugins right from your $MYVIMRC,
  • Install configured plugins (a.k.a. scripts/bundle),
  • Update configured plugins,
  • Clean up unused plugins,
  • Run the above actions in a single keypress with interactive mode.

Vivid automatically...

  • manages the runtime path of your installed scripts,
  • regenerates help tags after installing and updating.

Vivid Update Screen


Quick Start

Dependencies

Vivid requires that Git and Curl are installed on your system, and Vim or Neovim.

Install Vivid

There are two main ways to install Vivid, default install, and Vundle emulation/replacement. Vivid has Vundle emulation support built into the core, this allows Vivid to act as a drop in replacement for Vundle.

  1. To install Vivid the default way, place this at the very top of your $MYVIMRC.

    " Example Vim Config File ($MYVIMRC)
    " ==================================
    
    " Brief help
    " ----------
    " :PluginList       - Lists all configured plugins
    " :PluginUpdate     - Update all plugins to latest versions
    " :PluginInstall    - Installs plugins; append `!` to update or just :PluginUpdate
    " :PluginClean      - Remove unused plugins; append `!` to auto-approve removal
    " :help vivid       - View documentation from within Vim
    
    
    set rtp+=~/.vim/bundle/Vivid-Legacy.vim/ " Append Vivid to the runtimepath
    call vivid#open()
    " Input Plugins Below this Line
    
      " The following are examples of different formats supported.
      "Plugin 'tpope/vim-fugitive' " Plugin from GitHub
      "Plugin 'git://git.wincent.com/command-t.git' " Git plugin not on GitHub
      "Plugin 'file:///home/user/path/to/plugin' Local git plugins
      "Plugin 'rstacruz/sparkup', {'rtp': 'vim/'} " Plugin is in a GitHub subdirectory
      "Plugin 'ascenator/L9', {'name': 'newL9'} " Avoid naming confilics
    
    " Input Plugins Above this Line
    call vivid#close()
    
    " Continue Vimrc after this line

    Then if you are on a UNIX based system run this command: git clone https://github.com/axvr/Vivid-Legacy.vim ~/.vim/bundle/Vivid-Legacy.vim This will download the latest version of Vivid. After completing that move to the section titled "Using Vivid".

  2. The second install method would be to replace Vundle with Vivid, you can do this by replacing set rtp+=~/.vim/bundle/Vundle.vim/ with set rtp+=~/.vim/bundle/Vivid-Legacy.vim/, from your $MYVIMRC. Then run git clone https://github.com/axvr/Vivid-Legacy.vim ~/.vim/bundle/Vivid-Legacy.vim.

Other things

Things that Vivid manages by default

Vivid will change these Vim settings automatically to avoid errors from missing items in the $MYVIMRC

  • syntax enable
  • set nocompatible
  • filetype off
  • filetype plugin indent on

Vivid auto-install script

This can be placed at the top of a $MYVIMRC to install Vivid when on a UNIX based computer, which does not have Vivid installed already. This makes your $MYVIMRC file more portable, and allow for instant use on other systems.

" Auto Install Vivid and Plugins
let vivid_checkfile=expand('~/.vim/bundle/Vivid-Legacy.vim/test-files/checkfile.txt')
if (!filereadable(vivid_checkfile))
  echo "Installing Vivid-Legacy.vim & plugins"
  silent !git clone https://github.com/axvr/Vivid-Legacy.vim.git ~/.vim/bundle/Vivid-Legacy.vim
  :source $MYVIMRC
  :PluginInstall
  :source $MYVIMRC
  :q
endif

Shell Notes

Shell notes (If you don't know what this means, ignore this):

  • Bash works out of the box,
  • Zsh should work perfectly fine with Vivid,
  • for those using Fish shell: add set shell=/bin/bash to the top of your $MYVIMRC.

Using Vivid and the $MYVIMRC file

Open $MYVIMRC

Launch vim then run :edit $MYVIMRC

Load $MYVIMRC

Close Vim and reopen it, or run :source $MYVIMRC

Install Plugins

Launch vim and run :PluginInstall

To install from command line: vim +PluginInstall +qall

Update Plugins

Launch vim and run :PluginUpdate

Remove Plugins

Remove the plugin you wish to delete from your $MYVIMRC, then run :source $MYVIMRC, and finally: :PluginClean

View Documentation

See the :help vivid Vimdoc for more details.

See the changelog

Attribution

To all of the Vundle contributors, and the Vivid contributors, Thank you!

  • Vivid was developed and tested with Vim 8.0 on Linux
  • Vundle was developed and tested with Vim 7.3 on OS X, Linux and Windows
  • Vivid follows the KISS principle, with a few exceptions which make it more powerful than any other vim plugin manager.

TODO:

Vivid is a fork of Vundle, this has resulted in it becoming a major work in progress.

  • Restructure repository
  • Restructure files
  • Rebrand Vundle fork to Vivid
  • Rename components
  • Remove redundant code
  • Improve human readability of source
  • Possibly add additional Neovim asynchronous plugin management
  • Speed up and optimise the Vundle base (in progress)
  • Fix the bugs in Vundle base
  • Vundle backwards compatibility via emulation
  • Improve Windows support
  • Maybe add update and install progress bar (for YCM especially)
  • Add support for switching and testing between http:// git:// & https://
  • Increase security and mitigate MITM attacks
  • Allow users to choose to update using latest commit or tag (in progress)
  • Comment all of the code
  • Improve documentation (in progress)
  • Possibly add multi-language support
  • Disconnect from Vundle upstream
  • Fix plugin repo not existing bug where credentials are required (in progress)
  • Replace old README and vim help menu
  • Improve the test files from Vundle
  • Attempt to use https before http
  • Finish what Vundle set out to do:
    • activate newly added bundles on .vimrc reload or after :PluginInstall
    • use preview window for search results (removed search feature)
    • Vim documentation
    • put Vundle in bundles/ too (will fix Vundle help)
    • test files
    • improve error handling
    • allow specifying revision/version?
    • handle dependencies
    • show description in search results (removed search feature)
    • search by description as well (removed search feature)
    • make it rock!
  • And many more things