sjbach/lusty — Issue #64: Split into multiple repositories
Author: gotgenes
Created: 2012-02-26 15:50:40+00:00
State: open

This is a request to divide up the lusty repository into multiple separate smaller repositories, one repository per plugin. I recognize this is a big request, but I think it will be helpful giving the shift in the landscape of Vim plugins, and specifically Vim plugin management.

The trend to install plugins now is through a plugin manager. Popular examples include [Pathogen](https://github.com/tpope/vim-pathogen), [Vundle](https://github.com/gmarik/vundle), and [vim-addon-manager](https://github.com/MarcWeber/vim-addon-manager). These plugin managers will fetch plugin code from VCS repositories (especially GitHub) where possible, and from the Vim Scripts website when no VCS repository available.

The lusty repository hosts two separate scripts: LustyExplorer and LustyJuggler. When a user of one of these Vim plugin managers requests one of the plugins, they actually get both of the lusty plugins installed, whether they wanted both or not.

I suppose both of these plugins are in the same repository because they rely on a common library of shared code. What I'm proposing then is splitting the sjbach/lusty repository into three separate repositories:

* sjbach/LustyJuggler: the LustyJuggler code
* sjbach/LustyExplorer: the LustyExplorer code
* sjbach/LustyCommon: the common library of code for the two lusty plugins; this will need to be released as a separate Vim script and marked as a dependency for LustyJuggler and LustyExplorer

Because the code in the repository is not well segregated, I'm not sure if it would be possible to keep all the revision history using a tool like [git-filter-branch]( http://stackoverflow.com/questions/359424/) The possible loss of this information has to be weighed against the advantages in supporting the new plugin management systems.