#!/bin/zsh # ls colors alias ls='ls --color=auto'; # zsh prompt COFFEE="☕"; PREVIOUS_COMMAND_CONDITION="%B%(?.%F{yellow}.%F{red}) $COFFEE"; USER='%B%F{green}%n'; SEPARATOR='%b%F{red}::'; DIRECTORY='%B%F{yellow}%6~'; function parse_git_branch(){ git branch --no-color 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/ \[\1\]/' } GIT_BRANCH='%B%F{cyan}$(parse_git_branch)'; PROMPT_LINE=$'\n'' %B%F{128}%# %b%f' setopt PROMPT_SUBST PS1="$PREVIOUS_COMMAND_CONDITION $USER $SEPARATOR $DIRECTORY $GIT_BRANCH $PROMPT_LINE" [ -f "$HOME/.config/wryn/ps1" ] && source "$HOME/.config/wryn/ps1" ###################################################################################### TTY_COLORSCHEME="$HOME/.config/wryn/tty-colorscheme" [ ! -f $TTY_COLORSCHEME ] && ln -s $DOTWRYN/config/colorschemes/linux_console/CurrentKitty $TTY_COLORSCHEME source $TTY_COLORSCHEME alias tty-change-theme='TTY_CHANGE_THEME' function TTY_CHANGE_THEME() { local SOURCE_THEME="$DOTWRYN/config/colorschemes/linux_console/$1" local LOCAL_THEME="$HOME/.config/wryn/tty-colorscheme" [ ! $1 ] && { echo must specify colorscheme; return 1; } [ ! -f $SOURCE_THEME ] && { echo no such colorscheme; return 2; } rm $LOCAL_THEME >/dev/null 2>&1 ln -s $SOURCE_THEME $LOCAL_THEME source $LOCAL_THEME } _TTY_CHANGE_THEME() { compadd $(ls $DOTWRYN/config/colorschemes/linux_console) } compdef _TTY_CHANGE_THEME TTY_CHANGE_THEME; alias kitty-change-theme='KITTY_CHANGE_THEME default' alias kitty-change-theme-alternate='KITTY_CHANGE_THEME alternate' function KITTY_CHANGE_THEME () { [ ! $2 ] && echo no filename given :c && return 1; [ ! -f "$DOTWRYN/config/colorschemes/kitty/$2" ] \ && echo colorscheme not supported && return 2; local THEME_DIR="$DOTWRYN/config/kitty"; local THEME; [ $1 = 'default' ] && THEME="$THEME_DIR/theme.conf" || THEME="$THEME_DIR/alternate.conf" rm "$THEME" ln -s "$DOTWRYN/config/colorschemes/kitty/$2" "$THEME"\ && echo 'theme changed successfully! (effective on new terminal session)' [ -f "$HOME/.config/wryn/tty-colorscheme" ] && source "$HOME/.config/wryn/tty-colorscheme" } _KITTY_CHANGE_THEME () { compadd $(ls $DOTWRYN/config/colorschemes/kitty) } compdef _KITTY_CHANGE_THEME KITTY_CHANGE_THEME;