dotwryn/zsh/colors
2021-06-28 13:09:54 -06:00

73 lines
2.2 KiB
Bash

#!/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;