Awesome
zed
ZSH Plugin Manager. Yes, yet another one.
Installation
declare -A ZED
ZED[CACHE_DIR]="${HOME}/.cache/zsh/.zed"
ZED[DATA_DIR]="${HOME}/.local/share/zsh/.zed"
if ! test -d "${ZED[DATA_DIR]}/self"; then
git clone --depth 1 https://github.com/MunifTanjim/zed.git "${ZED[DATA_DIR]}/self"
fi
source "${ZED[DATA_DIR]}/self/zed.zsh"
Usage
You should load the plugins you want after running zed init
and before running zed done
.
Initialization:
zed init
Normal Plugin:
zed load github.com/momo-lab/auto-expand-alias
zed load github.com/trapd00r/LS_COLORS \
pick:'lscolors.sh' \
onpull:'dircolors -b LS_COLORS > lscolors.sh' \
onload:'zstyle ":completion:*" list-colors "${(s.:.)LS_COLORS}"'
zed load github.com/zpm-zsh/colorize
zed load github.com/zpm-zsh/ls
zed load github.com/zsh-users/zsh-completions
zed load github.com/zsh-users/zsh-autosuggestions
zed load github.com/zsh-users/zsh-syntax-highlighting
Generated Script:
if (( ${+commands[zoxide]} )); then
zed load github.com/MunifTanjim/null name:'zoxide' \
onpull:'zoxide init zsh > zoxide.plugin.zsh'
fi
if (( ${+commands[starship]} )); then
zed load github.com/MunifTanjim/null name:'starship' \
onpull:'starship init zsh --print-full-init > starship.plugin.zsh'
fi
Local Script:
zed load "${HOME}/.helpers.sh"
Oh My Zsh Plugin:
zed load github.com/ohmyzsh/ohmyzsh dir:'plugins/macos'
Finalization:
zed done
Commands
The main function is named zed
.
In case you already have another function with the same name,
for example: the zed
command line editor,
just set the ZED[name]
variable to something else before
sourcing the zed.zsh
file.
ZED[name]=zedi
Then zed
will become zedi
, and you can do:
zedi load "${HOME}/darkside.sh"
</details>
zed init
Initialize
zed load
Load plugin
zed done
Finalize
zed list
List plugin-ids
zed pull [plugin-id]
Pull latest changes for plugins
zed pull-self
Pull latest changes for zed itself
Alternatives
(In alphabetical order of repository names)
- zsh-users/antigen
- ohmyzsh/ohmyzsh
- sorin-ionescu/prezto
- mattmc3/pz
- agkozak/zcomet
- tarjoilija/zgen
- jandamm/zgenom
- zimfw/zimfw
- zplug/zplug
- zpm-zsh/zpm
- ...more
FAQ
-
Q: There are so many zsh plugin managers! Why should I care about this one?
A: You probably shouldn't.
-
Q: What does this this offer that the others don't?
A: Well, possibly nothing.
-
Q: What does this do differently?
A: It doesn't really matter.
-
Q: Why does this freaking exist?
A: Because, it does.
License
Licensed under the MIT License. Check the LICENSE file for details.