mirror of
https://github.com/romkatv/powerlevel10k.git
synced 2024-11-12 08:10:07 +00:00
add jenv prompt segment; see #342
This commit is contained in:
parent
20a17daf15
commit
d8b847c67f
4 changed files with 87 additions and 1 deletions
|
@ -63,6 +63,7 @@
|
|||
rvm # ruby version from rvm (https://rvm.io)
|
||||
fvm # flutter version management (https://github.com/leoafarias/fvm)
|
||||
luaenv # lua version from luaenv (https://github.com/cehoffman/luaenv)
|
||||
jenv # java version from jenv (https://github.com/jenv/jenv)
|
||||
kubecontext # current kubernetes context (https://kubernetes.io/)
|
||||
terraform # terraform workspace (https://www.terraform.io)
|
||||
aws # aws profile (https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html)
|
||||
|
@ -732,6 +733,17 @@
|
|||
# Custom icon.
|
||||
# typeset -g POWERLEVEL9K_LUAENV_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
###############[ jenv: java version from jenv (https://github.com/jenv/jenv) ]################
|
||||
# Java color.
|
||||
typeset -g POWERLEVEL9K_JENV_FOREGROUND=32
|
||||
# Hide java version if it doesn't come from one of these sources.
|
||||
typeset -g POWERLEVEL9K_JENV_SOURCES=(shell local global)
|
||||
# If set to false, hide java version if it's the same as global:
|
||||
# $(jenv version-name) == $(jenv global).
|
||||
typeset -g POWERLEVEL9K_JENV_PROMPT_ALWAYS_SHOW=false
|
||||
# Custom icon.
|
||||
# typeset -g POWERLEVEL9K_JENV_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
################[ terraform: terraform workspace (https://www.terraform.io) ]#################
|
||||
# Terraform color.
|
||||
typeset -g POWERLEVEL9K_TERRAFORM_FOREGROUND=38
|
||||
|
|
|
@ -63,6 +63,7 @@
|
|||
rvm # ruby version from rvm (https://rvm.io)
|
||||
fvm # flutter version management (https://github.com/leoafarias/fvm)
|
||||
luaenv # lua version from luaenv (https://github.com/cehoffman/luaenv)
|
||||
jenv # java version from jenv (https://github.com/jenv/jenv)
|
||||
kubecontext # current kubernetes context (https://kubernetes.io/)
|
||||
terraform # terraform workspace (https://www.terraform.io)
|
||||
aws # aws profile (https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html)
|
||||
|
@ -708,6 +709,17 @@
|
|||
# Custom icon.
|
||||
# typeset -g POWERLEVEL9K_LUAENV_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
###############[ jenv: java version from jenv (https://github.com/jenv/jenv) ]################
|
||||
# Java color.
|
||||
typeset -g POWERLEVEL9K_JENV_FOREGROUND=32
|
||||
# Hide java version if it doesn't come from one of these sources.
|
||||
typeset -g POWERLEVEL9K_JENV_SOURCES=(shell local global)
|
||||
# If set to false, hide java version if it's the same as global:
|
||||
# $(jenv version-name) == $(jenv global).
|
||||
typeset -g POWERLEVEL9K_JENV_PROMPT_ALWAYS_SHOW=false
|
||||
# Custom icon.
|
||||
# typeset -g POWERLEVEL9K_JENV_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
#############[ kubecontext: current kubernetes context (https://kubernetes.io/) ]#############
|
||||
# Kubernetes context classes for the purpose of using different colors, icons and expansions with
|
||||
# different contexts.
|
||||
|
|
|
@ -63,6 +63,7 @@
|
|||
rvm # ruby version from rvm (https://rvm.io)
|
||||
fvm # flutter version management (https://github.com/leoafarias/fvm)
|
||||
luaenv # lua version from luaenv (https://github.com/cehoffman/luaenv)
|
||||
jenv # java version from jenv (https://github.com/jenv/jenv)
|
||||
kubecontext # current kubernetes context (https://kubernetes.io/)
|
||||
terraform # terraform workspace (https://www.terraform.io)
|
||||
aws # aws profile (https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-profiles.html)
|
||||
|
@ -753,6 +754,18 @@
|
|||
# Custom icon.
|
||||
# typeset -g POWERLEVEL9K_LUAENV_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
###############[ jenv: java version from jenv (https://github.com/jenv/jenv) ]################
|
||||
# Java color.
|
||||
# typeset -g POWERLEVEL9K_JENV_FOREGROUND=1
|
||||
# typeset -g POWERLEVEL9K_JENV_BACKGROUND=7
|
||||
# Hide java version if it doesn't come from one of these sources.
|
||||
typeset -g POWERLEVEL9K_JENV_SOURCES=(shell local global)
|
||||
# If set to false, hide java version if it's the same as global:
|
||||
# $(jenv version-name) == $(jenv global).
|
||||
typeset -g POWERLEVEL9K_JENV_PROMPT_ALWAYS_SHOW=false
|
||||
# Custom icon.
|
||||
# typeset -g POWERLEVEL9K_JENV_VISUAL_IDENTIFIER_EXPANSION='⭐'
|
||||
|
||||
################[ terraform: terraform workspace (https://www.terraform.io) ]#################
|
||||
# Terraform color.
|
||||
# typeset -g POWERLEVEL9K_TERRAFORM_FOREGROUND=4
|
||||
|
|
|
@ -2204,6 +2204,53 @@ prompt_luaenv() {
|
|||
_p9k_prompt_segment "$0" blue "$_p9k_color1" 'LUA_ICON' 0 '' "${v//\%/%%}"
|
||||
}
|
||||
|
||||
function _p9k_read_jenv_version_file() {
|
||||
[[ -r $1 ]] || return
|
||||
local rest
|
||||
read _p9k_ret rest <$1 2>/dev/null
|
||||
[[ -n $_p9k_ret ]]
|
||||
}
|
||||
|
||||
function _p9k_jenv_global_version() {
|
||||
_p9k_read_jenv_version_file ${JENV_ROOT:-$HOME/.jenv}/version || _p9k_ret=system
|
||||
}
|
||||
|
||||
################################################################
|
||||
# Segment to display jenv information
|
||||
# https://github.com/jenv/jenv
|
||||
prompt_jenv() {
|
||||
(( $+commands[jenv] || $+functions[jenv] )) || return
|
||||
if [[ -n $JENV_VERSION ]]; then
|
||||
(( ${_POWERLEVEL9K_JENV_SOURCES[(I)shell]} )) || return
|
||||
local v=$JENV_VERSION
|
||||
else
|
||||
(( ${_POWERLEVEL9K_JENV_SOURCES[(I)local|global]} )) || return
|
||||
[[ $JENV_DIR == /* ]] && local dir=$JENV_DIR || local dir="$_p9k_pwd_a/$JENV_DIR"
|
||||
while true; do
|
||||
if _p9k_read_jenv_version_file $dir/.java-version; then
|
||||
(( ${_POWERLEVEL9K_JENV_SOURCES[(I)local]} )) || return
|
||||
local v=$_p9k_ret
|
||||
break
|
||||
fi
|
||||
if [[ $dir == / ]]; then
|
||||
(( _POWERLEVEL9K_JENV_PROMPT_ALWAYS_SHOW )) || return
|
||||
(( ${_POWERLEVEL9K_JENV_SOURCES[(I)global]} )) || return
|
||||
_p9k_jenv_global_version
|
||||
local v=$_p9k_ret
|
||||
break
|
||||
fi
|
||||
dir=${dir:h}
|
||||
done
|
||||
fi
|
||||
|
||||
if (( !_POWERLEVEL9K_JENV_PROMPT_ALWAYS_SHOW )); then
|
||||
_p9k_jenv_global_version
|
||||
[[ $v == $_p9k_ret ]] && return
|
||||
fi
|
||||
|
||||
_p9k_prompt_segment "$0" white red 'JAVA_ICON' 0 '' "${v//\%/%%}"
|
||||
}
|
||||
|
||||
################################################################
|
||||
# Segment to display chruby information
|
||||
# see https://github.com/postmodern/chruby/issues/245 for chruby_auto issue with ZSH
|
||||
|
@ -4983,6 +5030,8 @@ _p9k_init_params() {
|
|||
_p9k_declare -a POWERLEVEL9K_RBENV_SOURCES -- shell local global
|
||||
_p9k_declare -b POWERLEVEL9K_LUAENV_PROMPT_ALWAYS_SHOW 0
|
||||
_p9k_declare -a POWERLEVEL9K_LUAENV_SOURCES -- shell local global
|
||||
_p9k_declare -b POWERLEVEL9K_JENV_PROMPT_ALWAYS_SHOW 0
|
||||
_p9k_declare -a POWERLEVEL9K_JENV_SOURCES -- shell local global
|
||||
_p9k_declare -b POWERLEVEL9K_RVM_SHOW_GEMSET 0
|
||||
_p9k_declare -b POWERLEVEL9K_RVM_SHOW_PREFIX 0
|
||||
_p9k_declare -b POWERLEVEL9K_CHRUBY_SHOW_VERSION 1
|
||||
|
@ -5569,7 +5618,7 @@ _p9k_must_init() {
|
|||
[[ $sig == $_p9k__param_sig ]] && return 1
|
||||
_p9k_deinit
|
||||
fi
|
||||
_p9k__param_pat=$'v19\1'${ZSH_VERSION}$'\1'${ZSH_PATCHLEVEL}$'\1'
|
||||
_p9k__param_pat=$'v20\1'${ZSH_VERSION}$'\1'${ZSH_PATCHLEVEL}$'\1'
|
||||
_p9k__param_pat+=$'${#parameters[(I)POWERLEVEL9K_*]}\1${(%):-%n%#}\1$GITSTATUS_LOG_LEVEL\1'
|
||||
_p9k__param_pat+=$'$GITSTATUS_ENABLE_LOGGING\1$GITSTATUS_DAEMON\1$GITSTATUS_NUM_THREADS\1'
|
||||
_p9k__param_pat+=$'$DEFAULT_USER\1${ZLE_RPROMPT_INDENT:-1}\1$P9K_SSH\1$__p9k_ksh_arrays'
|
||||
|
|
Loading…
Reference in a new issue