Hey look! It's a package manager for ZSH! (And it can do a ton of other stuff too!)
Managing your ZSH configuration can be tedious, thankless toil. Solutions like Oh My Zsh address this problem admirably, but you still have to spend time messing around with configuration files! ZConfer abstracts away the task of configuration behind an easily usable command line interface, so you can get back to focusing on what actually matters.
- ZConfer is a comprehensive plugin manager capable of adding, deleting, enabling, and disabling plugins.
- ZConfer can download new themes and enable them.
- ZConfer breaks your PATH into individual "segments", which can then be managed individually. ZConfer can also add new segments.
- ZConfer is an alias manager capable of adding, removing, and changing aliases.
- Demo
- Setting Up
- Usage
Installing Z, a plugin for quickly jumping to previously visited directories:
curl
git
python3
First, install ZConfer by piping the installer to a new ZSH session:
curl https://raw.githubusercontent.com/varun-ramani/zconfer/master/installer.zsh | zsh
Then run the init step.
Run $HOME/bin/zconf init
and respond to any prompts. Pretty simple, really.
In its current state, this module just wraps a shell command that runs the updater script on this repository.
zconf update
Through ZConfer's plugin system, you can download new plugins, remove existing ones, and select which to load on startup. You can also view both locally installed and remotely available plugins.
-
Browse plugins that are not installed with
view remote
.zconf plugin view remote
-
Browse installed plugins with
view local
.zconf plugin view local
-
You can also
view all
plugins.zconf plugin view all
-
ZConfer can easily
add
new plugins. Example:zconf plugin add z
-
To delete plugins, use
rm
. Example:zconf plugin rm z
-
Use
enable
to make a plugin load when you start ZSH. Example:zconf plugin enable z
-
Plugins won't load if you
disable
them. Example:zconf plugin disable z
-
Browse themes that aren't installed with
view remote
.zconf theme view remote
-
Browse installed themes with
view local
.zconf theme view local
-
To browse all themes, use
view all
.zconf theme view all
Themes are automatically added when they are set for the first time. You don't ever need to add them manually.
- However, you can
add
themes manually if you want. Example:zconf theme add dracula
- To remove a theme, use
rm
. Example:zconf theme rm dracula
-
It's easy to
set
themes. Example:zconf theme set dracula
-
You can also revert to no theme:
zconf theme set notatheme
You can use ZConfer to create, update, and delete individual PATH segments. If you would prefer not to delete a segment entirely, you can also enable/disable it. ZConfer will handle the task of concatenating all the segments with the existing PATH variable in order to create a meaningful PATH string. Note that at the moment, ZConfer can only manage the PATH segments that it created.
- You can
view
all registered PATH segments and their values.zconf path view
- You can also
get
the value of a specific segment.zconf path get bin
-
The
set
command can both add and update PATH segments.zconf path set <segment> <value>
Example:
zconf path set android_tools /Users/varun/Android/Sdk/platform_tools
-
Using
rm
deletes a segment. Example:zconf path rm android_tools
-
If you might need a segment later, then
disable
it. Example:zconf path disable android_tools
-
Recover disabled segments with
enable
. Example:zconf path enable android_tools
- The
view
command lists your aliases for you.zconf alias view
- Similar to the path command, you can
get
the value of a specific alias.zconf alias get ls
-
You can use
set
to create and update aliases.zconf alias set <alias> '<value>'
Example:
zconf alias set ls 'ls -G'
-
To delete aliases, use
rm
. Example:zconf alias rm ls
-
The
disable
command is likerm
, but it's reversible. Example:zconf alias disable ls
-
Use
enable
to undo the disable operation. Example:zconf alias enable ls