mirror of
https://github.com/romkatv/powerlevel10k.git
synced 2024-11-22 12:20:07 +00:00
fix prefix-based formatting of numbers that are slightly below the boundary (#1664)
This commit is contained in:
parent
abc5df446d
commit
fde8bf62d4
1 changed files with 13 additions and 5 deletions
|
@ -317,16 +317,24 @@ function _p9k_prompt_length() {
|
||||||
|
|
||||||
typeset -gr __p9k_byte_suffix=('B' 'K' 'M' 'G' 'T' 'P' 'E' 'Z' 'Y')
|
typeset -gr __p9k_byte_suffix=('B' 'K' 'M' 'G' 'T' 'P' 'E' 'Z' 'Y')
|
||||||
|
|
||||||
# 42 => 42B
|
# 512 => 512B
|
||||||
# 1536 => 1.5K
|
# 1800 => 1.76K
|
||||||
|
# 18000 => 17.6K
|
||||||
function _p9k_human_readable_bytes() {
|
function _p9k_human_readable_bytes() {
|
||||||
typeset -F 2 n=$1
|
typeset -F n=$1
|
||||||
local suf
|
local suf
|
||||||
for suf in $__p9k_byte_suffix; do
|
for suf in $__p9k_byte_suffix; do
|
||||||
(( n < 100 )) && break
|
(( n < 1024 )) && break
|
||||||
(( n /= 1024 ))
|
(( n /= 1024 ))
|
||||||
done
|
done
|
||||||
_p9k__ret=${${n%%0#}%.}$suf
|
if (( n >= 100 )); then
|
||||||
|
printf -v _p9k__ret '%.0f.' $n
|
||||||
|
elif (( n >= 10 )); then
|
||||||
|
printf -v _p9k__ret '%.1f' $n
|
||||||
|
else
|
||||||
|
printf -v _p9k__ret '%.2f' $n
|
||||||
|
fi
|
||||||
|
_p9k__ret=${${_p9k__ret%%0#}%.}$suf
|
||||||
}
|
}
|
||||||
|
|
||||||
if is-at-least 5.4; then
|
if is-at-least 5.4; then
|
||||||
|
|
Loading…
Reference in a new issue