mirror of
https://github.com/romkatv/powerlevel10k.git
synced 2024-11-24 13:10:07 +00:00
allow optional offset in POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER; see #896
This commit is contained in:
parent
620e69fef1
commit
6dfd92f8c1
5 changed files with 26 additions and 7 deletions
|
@ -247,6 +247,11 @@
|
||||||
# /foo/bar/git_repo/nested_git_repo/baz, prompt will display git_repo/nested_git_repo/baz (first)
|
# /foo/bar/git_repo/nested_git_repo/baz, prompt will display git_repo/nested_git_repo/baz (first)
|
||||||
# or nested_git_repo/baz (last). This assumes that git_repo and nested_git_repo contain markers
|
# or nested_git_repo/baz (last). This assumes that git_repo and nested_git_repo contain markers
|
||||||
# and other directories don't.
|
# and other directories don't.
|
||||||
|
#
|
||||||
|
# Optionally, "first" and "last" can be followed by ":<offset>" where <offset> is an integer.
|
||||||
|
# This moves the truncation point to the right (positive offset) or to the left (negative offset)
|
||||||
|
# relative to the marker. Plain "first" and "last" are equivalent to "first:0" and "last:0"
|
||||||
|
# respectively.
|
||||||
typeset -g POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER=false
|
typeset -g POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER=false
|
||||||
# Don't shorten this many last directory segments. They are anchors.
|
# Don't shorten this many last directory segments. They are anchors.
|
||||||
typeset -g POWERLEVEL9K_SHORTEN_DIR_LENGTH=1
|
typeset -g POWERLEVEL9K_SHORTEN_DIR_LENGTH=1
|
||||||
|
|
|
@ -241,6 +241,11 @@
|
||||||
# /foo/bar/git_repo/nested_git_repo/baz, prompt will display git_repo/nested_git_repo/baz (first)
|
# /foo/bar/git_repo/nested_git_repo/baz, prompt will display git_repo/nested_git_repo/baz (first)
|
||||||
# or nested_git_repo/baz (last). This assumes that git_repo and nested_git_repo contain markers
|
# or nested_git_repo/baz (last). This assumes that git_repo and nested_git_repo contain markers
|
||||||
# and other directories don't.
|
# and other directories don't.
|
||||||
|
#
|
||||||
|
# Optionally, "first" and "last" can be followed by ":<offset>" where <offset> is an integer.
|
||||||
|
# This moves the truncation point to the right (positive offset) or to the left (negative offset)
|
||||||
|
# relative to the marker. Plain "first" and "last" are equivalent to "first:0" and "last:0"
|
||||||
|
# respectively.
|
||||||
typeset -g POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER=false
|
typeset -g POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER=false
|
||||||
# Don't shorten this many last directory segments. They are anchors.
|
# Don't shorten this many last directory segments. They are anchors.
|
||||||
typeset -g POWERLEVEL9K_SHORTEN_DIR_LENGTH=1
|
typeset -g POWERLEVEL9K_SHORTEN_DIR_LENGTH=1
|
||||||
|
|
|
@ -241,6 +241,11 @@
|
||||||
# /foo/bar/git_repo/nested_git_repo/baz, prompt will display git_repo/nested_git_repo/baz (first)
|
# /foo/bar/git_repo/nested_git_repo/baz, prompt will display git_repo/nested_git_repo/baz (first)
|
||||||
# or nested_git_repo/baz (last). This assumes that git_repo and nested_git_repo contain markers
|
# or nested_git_repo/baz (last). This assumes that git_repo and nested_git_repo contain markers
|
||||||
# and other directories don't.
|
# and other directories don't.
|
||||||
|
#
|
||||||
|
# Optionally, "first" and "last" can be followed by ":<offset>" where <offset> is an integer.
|
||||||
|
# This moves the truncation point to the right (positive offset) or to the left (negative offset)
|
||||||
|
# relative to the marker. Plain "first" and "last" are equivalent to "first:0" and "last:0"
|
||||||
|
# respectively.
|
||||||
typeset -g POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER=false
|
typeset -g POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER=false
|
||||||
# Don't shorten this many last directory segments. They are anchors.
|
# Don't shorten this many last directory segments. They are anchors.
|
||||||
typeset -g POWERLEVEL9K_SHORTEN_DIR_LENGTH=1
|
typeset -g POWERLEVEL9K_SHORTEN_DIR_LENGTH=1
|
||||||
|
|
|
@ -247,6 +247,11 @@
|
||||||
# /foo/bar/git_repo/nested_git_repo/baz, prompt will display git_repo/nested_git_repo/baz (first)
|
# /foo/bar/git_repo/nested_git_repo/baz, prompt will display git_repo/nested_git_repo/baz (first)
|
||||||
# or nested_git_repo/baz (last). This assumes that git_repo and nested_git_repo contain markers
|
# or nested_git_repo/baz (last). This assumes that git_repo and nested_git_repo contain markers
|
||||||
# and other directories don't.
|
# and other directories don't.
|
||||||
|
#
|
||||||
|
# Optionally, "first" and "last" can be followed by ":<offset>" where <offset> is an integer.
|
||||||
|
# This moves the truncation point to the right (positive offset) or to the left (negative offset)
|
||||||
|
# relative to the marker. Plain "first" and "last" are equivalent to "first:0" and "last:0"
|
||||||
|
# respectively.
|
||||||
typeset -g POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER=false
|
typeset -g POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER=false
|
||||||
# Don't shorten this many last directory segments. They are anchors.
|
# Don't shorten this many last directory segments. They are anchors.
|
||||||
typeset -g POWERLEVEL9K_SHORTEN_DIR_LENGTH=1
|
typeset -g POWERLEVEL9K_SHORTEN_DIR_LENGTH=1
|
||||||
|
|
|
@ -1847,10 +1847,10 @@ prompt_dir() {
|
||||||
done
|
done
|
||||||
if [[ -n $_POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER ]]; then
|
if [[ -n $_POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER ]]; then
|
||||||
local _2=$'\2'
|
local _2=$'\2'
|
||||||
if [[ $_POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER == last ]]; then
|
if [[ $_POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER == last* ]]; then
|
||||||
(( e = ${parts[(I)*$_2]} ))
|
(( e = ${parts[(I)*$_2]} + ${_POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER#*:} ))
|
||||||
else
|
else
|
||||||
(( e = ${parts[(ib:2:)*$_2]} ))
|
(( e = ${parts[(ib:2:)*$_2]} + ${_POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER#*:} ))
|
||||||
fi
|
fi
|
||||||
if (( e > 1 && e <= $#parts )); then
|
if (( e > 1 && e <= $#parts )); then
|
||||||
parts[1,e-1]=()
|
parts[1,e-1]=()
|
||||||
|
@ -6980,9 +6980,8 @@ _p9k_init_params() {
|
||||||
_p9k_declare -e POWERLEVEL9K_SHORTEN_DELIMITER
|
_p9k_declare -e POWERLEVEL9K_SHORTEN_DELIMITER
|
||||||
_p9k_declare -s POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER ''
|
_p9k_declare -s POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER ''
|
||||||
case $_POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER in
|
case $_POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER in
|
||||||
first) ;;
|
first|last) _POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER+=:0;;
|
||||||
last) ;;
|
(first|last):(|-)<->);;
|
||||||
true) _POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER=last;;
|
|
||||||
*) _POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER=;;
|
*) _POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER=;;
|
||||||
esac
|
esac
|
||||||
[[ -z $_POWERLEVEL9K_SHORTEN_FOLDER_MARKER ]] && _POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER=
|
[[ -z $_POWERLEVEL9K_SHORTEN_FOLDER_MARKER ]] && _POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER=
|
||||||
|
@ -7742,7 +7741,7 @@ _p9k_must_init() {
|
||||||
[[ $sig == $_p9k__param_sig ]] && return 1
|
[[ $sig == $_p9k__param_sig ]] && return 1
|
||||||
_p9k_deinit
|
_p9k_deinit
|
||||||
fi
|
fi
|
||||||
_p9k__param_pat=$'v100\1'${(q)ZSH_VERSION}$'\1'${(q)ZSH_PATCHLEVEL}$'\1'
|
_p9k__param_pat=$'v101\1'${(q)ZSH_VERSION}$'\1'${(q)ZSH_PATCHLEVEL}$'\1'
|
||||||
_p9k__param_pat+=$'${#parameters[(I)POWERLEVEL9K_*]}\1${(%):-%n%#}\1$GITSTATUS_LOG_LEVEL\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+=$'$GITSTATUS_ENABLE_LOGGING\1$GITSTATUS_DAEMON\1$GITSTATUS_NUM_THREADS\1'
|
||||||
_p9k__param_pat+=$'$GITSTATUS_CACHE_DIR\1$GITSTATUS_AUTO_INSTALL\1${ZLE_RPROMPT_INDENT:-1}\1'
|
_p9k__param_pat+=$'$GITSTATUS_CACHE_DIR\1$GITSTATUS_AUTO_INSTALL\1${ZLE_RPROMPT_INDENT:-1}\1'
|
||||||
|
|
Loading…
Reference in a new issue