Awesome
vivid-zsh
vivid LS_COLORS
as zsh plugins.
installable anywhere that supports git repositories as plugins.
why do i need this?
simply put, this is faster than calling an external CLI.
benchmark results via hyperfine
Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
---|---|---|---|---|
plugin | 0.2 ± 0.4 | 0.0 | 3.1 | 1.00 |
cli | 3.8 ± 2.4 | 1.9 | 27.3 | 16.36 ± 27.48 |
$ hyperfine --shell "zsh" --warmup=5 'vivid_theme=nord source vivid-zsh.plugin.zsh' -n plugin 'export LS_COLORS="$(vivid generate nord)"' -n cli
yes, this is faster than rust. insane.
how do i install this?
it depends on what you are using for managing your zsh plugins.
antidote
- add
ryanccn/vivid-zsh
to your.zsh_plugins.txt
- set
beforevivid_theme="<name of theme>"
antidote load
antigen
antigen bundle ryanccn/vivid-zsh
- set
in yourvivid_theme="<name of theme>"
~/.zshrc
before antigen loads
oh my zsh
- clone the repo into the oh my zsh directory
$ git clone https://github.com/ryanccn/vivid-zsh ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/vivid-zsh
- add the plugin to your
~/.zshrc
plugins=( # other plugins... vivid-zsh )
- configure
vivid_theme="<name of theme>"
before oh my zsh is initialized
manual (no plugin manager)
- clone the repo
$ mkdir -p ~/.zsh $ git clone https://github.com/ryanccn/vivid-zsh.git ~/.zsh/vivid-zsh
- add this to your
.zshrc
vivid_theme="<name of theme>" source ~/.zsh/vivid-zsh/vivid-zsh.zsh
- restart your shell
how does this work?
- gets list of themes from vivid
- gets each theme from vivid
- puts them in their own zsh file with
export LS_COLORS=
- sources one of them depending on what you set
how do i build themes locally?
- install vivid
- run
./build.sh
license
mit