prompt_length cleanup

This commit is contained in:
Roman Perepelitsa 2020-11-25 16:36:03 +01:00
parent 685682da90
commit 98a8ec6f31
2 changed files with 15 additions and 18 deletions

View file

@ -300,20 +300,19 @@ function _p9k_upglob() {
# _p9k_prompt_length '%F{red}abc' => 3
# _p9k_prompt_length $'%{a\b%Gb%}' => 1
function _p9k_prompt_length() {
local COLUMNS=1024
local -i COLUMNS=1024
local -i x y=$#1 m
if (( y )); then
while (( ${${(%):-$1%$y(l.1.0)}[-1]} )); do
x=y
(( y *= 2 ));
(( y *= 2 ))
done
local xy
while (( y > x + 1 )); do
m=$(( x + (y - x) / 2 ))
typeset ${${(%):-$1%$m(l.x.y)}[-1]}=$m
(( m = x + (y - x) / 2 ))
(( ${${(%):-$1%$m(l.x.y)}[-1]} = m ))
done
fi
_p9k__ret=$x
typeset -g _p9k__ret=$x
}
typeset -gr __p9k_byte_suffix=('B' 'K' 'M' 'G' 'T' 'P' 'E' 'Z' 'Y')
@ -6005,20 +6004,19 @@ _p9k_dump_instant_prompt() {
(( height += ${#${__p9k_used_instant_prompt[1]//[^$lf]}} ))
local _p9k__ret
function _p9k_prompt_length() {
local COLUMNS=1024
local -i COLUMNS=1024
local -i x y=$#1 m
if (( y )); then
while (( ${${(%):-$1%$y(l.1.0)}[-1]} )); do
x=y
(( y *= 2 ));
(( y *= 2 ))
done
local xy
while (( y > x + 1 )); do
m=$(( x + (y - x) / 2 ))
typeset ${${(%):-$1%$m(l.x.y)}[-1]}=$m
(( m = x + (y - x) / 2 ))
(( ${${(%):-$1%$m(l.x.y)}[-1]} = m ))
done
fi
_p9k__ret=$x
typeset -g _p9k__ret=$x
}
local out
if [[ $+VTE_VERSION == 0 && $TERM_PROGRAM != Hyper ]] || (( ! $+_p9k__g )); then

View file

@ -110,20 +110,19 @@ local -ra rainbow_right=(
)
function prompt_length() {
local COLUMNS=1024
local -i COLUMNS=1024
local -i x y=$#1 m
if (( y )); then
while (( ${${(%):-$1%$y(l.1.0)}[-1]} )); do
x=y
(( y *= 2 ));
(( y *= 2 ))
done
local xy
while (( y > x + 1 )); do
m=$(( x + (y - x) / 2 ))
typeset ${${(%):-$1%$m(l.x.y)}[-1]}=$m
(( m = x + (y - x) / 2 ))
(( ${${(%):-$1%$m(l.x.y)}[-1]} = m ))
done
fi
REPLY=$x
typeset -g REPLY=$x
}
function print_prompt() {