feat(cli): add Shellsavers terminal animations (#14167)

Co-authored-by: Carlo Sala <carlosalag@protonmail.com>
This commit is contained in:
Robby Russell
2026-10-13 11:22:24 +02:00
committed by GitHub
co-authored by Carlo Sala
parent fab613bd93
commit 964ddf789b
3 changed files with 708 additions and 0 deletions
+23
View File
@@ -28,12 +28,25 @@ function _omz {
'plugin:Manage plugins'
'pr:Manage Oh My Zsh Pull Requests'
'reload:Reload the current zsh session'
'shellsaver:Launch a whimsical terminal screensaver'
'shop:Open the Oh My Zsh shop'
'theme:Manage themes'
'update:Update Oh My Zsh'
'version:Show the version'
)
if [[ "$words[2]" == (screensaver|shellsaver) ]] && (( CURRENT > 2 )); then
_arguments \
'1:command:' \
'2::scene:(aquarium logo hermit party)' \
'--list[List available scenes]' \
'--mono[Use the default foreground color]' \
'--seconds[Exit after a number of seconds]:seconds:' \
'--snapshot[Print a plain-text still]::frame:' \
'--help[Show Shellsaver help]'
return
fi
if (( CURRENT == 2 )); then
_describe 'command' cmds
elif (( CURRENT == 3 )); then
@@ -174,6 +187,7 @@ Available commands:
plugin <command> Manage plugins
pr <command> Manage Oh My Zsh Pull Requests
reload Reload the current zsh session
shellsaver [scene] Launch a Shellsaver (aquarium by default)
shop Open the Oh My Zsh shop
theme <command> Manage themes
update Update Oh My Zsh
@@ -182,6 +196,15 @@ Available commands:
EOF
}
function _omz::shellsaver {
command zsh -f "$ZSH/tools/shellsaver.zsh" "$@"
}
# Hidden alias; only shellsaver is advertised in help and command completion.
function _omz::screensaver {
_omz::shellsaver "$@"
}
function _omz::changelog {
local version=${1:-HEAD} format=${3:-"--text"}