A simple plugin manager for zsh. Features:
- Auto-updates all plugins.
- Auto-updates itself.
- Configurable time interval for both auto-updaters.
First, clone the repository and execute the installation script using the following command:
git clone "https://github.com/amt911/zsh-mgr.git" ~/.config/zsh/zsh-mgr && ~/.config/zsh/zsh-mgr/install-zsh-mgr.zsh
If the installation failed for some reason, execute the script again using:
~/.config/zsh/zsh-mgr/install-zsh-mgr.zsh
Note: You can add your own scripts to the following location: ~/.config/zsh/
and source them in your zsh config file.
You can manually clone the repo to your desired location and add the following lines to your .zshrc
file:
export ZSH_CONFIG_DIR="parent/folder/from/repo"
export ZSH_PLUGIN_DIR="your/desired/location"
export TIME_THRESHOLD="your desired time in seconds"
export MGR_TIME_THRESHOLD="your desired time in seconds"
source parent/folder/from/repo/zsh-mgr/zsh-mgr.zsh
IMPORTANT: If you want to use the tilde ("~"), DON'T put it between double quotes, otherwise the scripts will fail.
You can add your favourite plugins adding this line to your .zshrc
file:
add_plugin "author/plugin-name"
You can add extra flags to the plugin in this way:
add_plugin "author/plugin-name" "--flag1 --flag2"
You can add a plugin from a private repository like this:
add_plugin_private "author/plugin-name" "--flag1 --flag2"
To check for the next zsh-mgr update date, use check_mgr_update_date
, or simply use ck_mgr_plugin
to check both zsh-mgr and plugins update date.
To check for the next update date of plugins, use check_plugins_update_date
, or (once again) use ck_mgr_plugin
to check both.
Every week (or at your set time interval), when a new terminal is opened, the plugin manager will update all installed plugins.
You can force the update process by issuing the following command: update_plugins
The following features are planned to be implemented in the following commits:
Updater for the plugin manager itself.Auto-update for the plugin manager.- Delete unused plugins.
- Change update settings:
- Disable auto-update.
- Change updates frequency.
If you encounter a bug, please open an issue or create a pull request to solve it. I speak both spanish and english.