Made the theme selecting more "modular". It now downloads a new default (theme) if it doesn't exist, then that default gets automatically sourced.

This commit is contained in:
UnaTried 2025-04-02 19:05:13 +02:00 committed by GitHub
commit 9a3fc33caa
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -220,7 +220,7 @@ is_theme() {
is_default_theme() { is_default_theme() {
local base_dir=$1 local base_dir=$1
builtin test -f $base_dir builtin test -d $base_dir
} }
if [[ -n "$ZSH_THEME" ]]; then if [[ -n "$ZSH_THEME" ]]; then
@ -232,10 +232,19 @@ if [[ -n "$ZSH_THEME" ]]; then
source "$ZSH/themes/$ZSH_THEME.zsh-theme" source "$ZSH/themes/$ZSH_THEME.zsh-theme"
else else
echo "[oh-my-zsh] Theme '$ZSH_THEME' was not found, using default theme!" echo "[oh-my-zsh] Theme '$ZSH_THEME' was not found, using default theme!"
if is_default_theme "$ZSH_CUSTOM"; then if is_default_theme "$ZSH_CUSTOM" && ! is_theme "$ZSH_THEME" "robbyrussell"; then
source "$ZSH_CUSTOM/robbyrussell.zsh-theme" if is_theme "$ZSH_CUSTOM/themes/" "robbyrussell"; then
elif is_default_theme "$ZSH_CUSTOM/themes"; then source "$ZSH_CUSTOM/themes/robbyrussell.zsh-theme"
source "$ZSH_CUSTOM/themes/robbyrussell.zsh-theme" else
echo "[oh-my-zsh] The default theme (robbyrussell) was not found, redownloading it!"
if ! command -v curl &> /dev/null; then
wget -qO $ZSH_CUSTOM/themes/robbyrussell.zsh-theme https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/refs/heads/master/themes/robbyrussell.zsh-theme
source "$ZSH_CUSTOM/robbyrussell.zsh-theme"
else
curl -s -o $ZSH_CUSTOM/themes/robbyrussell.zsh-theme https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/refs/heads/master/themes/robbyrussell.zsh-theme
source "$ZSH_CUSTOM/themes/robbyrussell.zsh-theme"
fi
fi
elif is_default_theme "$ZSH/themes"; then elif is_default_theme "$ZSH/themes"; then
source "$ZSH/themes/robbyrussell.zsh-theme" source "$ZSH/themes/robbyrussell.zsh-theme"
else else