Commit 5c752dc3 authored by Dom Sekotill's avatar Dom Sekotill
Browse files

Replace Venv in Zsh theme with arbitrary context tags

parent 1e97bfd8
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -36,6 +36,7 @@ _venv_enable() {
	[[ -d "$venv" ]] || $python -m venv "$venv"
	[[ -v VIRTUAL_ENV ]] && has deactivate is function && deactivate
	source "$venv/bin/activate"
	export CONTEXT_PY=$1
}


+11 −5
Original line number Diff line number Diff line
@@ -41,13 +41,19 @@ ZSH_THEME_GIT_PROMPT_SHA_AFTER="%{$WHITE%}]"
local tick=$'\xe2\x9c\x93'
local cross=$'\xe2\x9c\x97'

function virtualenv_name {
	test -z "$ENV_NAME" && return
	print "%{$WHITE_BOLD%}[%{$GREEN_BOLD%}venv:%{$YELLOW_BOLD%}$ENV_NAME%{$WHITE_BOLD%}] "
function prompt_context {
	declare -a contexts=()
	local IFS= sep=
	for ctx in "${(@kM)parameters:#CONTEXT_*}"; do
		contexts+=("$sep" "%{$GREEN_BOLD%}${${ctx#CONTEXT_}:l}:%{$YELLOW_BOLD%}${(P)ctx}")
		sep="%{$WHITE_BOLD%}|"
	done
	[ ${#contexts} -eq 0 ] && return
	print "%{$WHITE_BOLD%}[${contexts[*]}%{$WHITE_BOLD%}] "
}

# Prompt format
PROMPT='%{$PROMPTCODES%}%{$HOST_COLOUR%}%n@%m: $%{$RESET_COLOR%} '
RPROMPT='%(?:%{$GREEN_BOLD%}$tick:%{$RED_BOLD%}$? $cross) \
$(virtualenv_name)\
$(prompt_context)\
%{$RESET_COLOR%}'