Add os-info function and use it in damoekri theme

This commit is contained in:
Daniel Carrillo 2018-10-06 20:59:41 +02:00
parent 6c46804f41
commit 53facbe9de
2 changed files with 32 additions and 1 deletions

View File

@ -0,0 +1,23 @@
#
# Exposes information about the OpenStack environment via the $os_info associative
# array.
#
# function os-info {
local tenant
local tenant_format
local tenant_formatted
unset os_info
typeset -gA os_info
[[ -n "${OS_TENANT_NAME+1}" ]] && tenant="[${OS_TENANT_NAME}]"
if [[ "$tenant" != (none|) ]]; then
zstyle -s ':prezto:module:openstack:info:tenant' format 'tenant_format'
zformat -f tenant_formatted "$tenant_format" "s:$tenant"
os_info[tenant]="$tenant_formatted"
fi
# }

View File

@ -27,6 +27,11 @@ prompt_damoekri_precmd() {
if (( $+functions[ruby-info] )); then
ruby-info
fi
# Get Openstack tenant information.
if (( $+functions[os-info] )); then
os-info
fi
}
function prompt_damoekri_setup {
@ -57,8 +62,11 @@ function prompt_damoekri_setup {
# Set ruby-info parameters.
zstyle ':prezto:module:ruby:info:version' format ' %F{yellow}%v%f'
# Set openstack tenant info
zstyle ':prezto:module:openstack:info:tenant' format '%s'
# Define prompts.
PROMPT='%F{cyan}${_prompt_damoekri_pwd}%f${editor_info[keymap]} '
PROMPT='${os_info:+${os_info[tenant]} }%F{cyan}${_prompt_damoekri_pwd}%f${editor_info[keymap]} '
RPROMPT='${git_info:+${(e)git_info[rprompt]}}${ruby_info:+${ruby_info[version]}}'
}