Enhancing --memory_unit functionality
Improving https://github.com/dylanaraps/neofetch/commit/0435dcd0cd44bb22afa9b986f15742cc05de7b20 - Implementing https://github.com/dylanaraps/neofetch/issues/1170#issuecomment-455576889 to avoid awk usage. - Adding ability to configure precision of output using `mem_precision` which defaults to `2`. - Added `tib` to accommodate TiB mentioned in https://github.com/dylanaraps/neofetch/issues/1170#issuecomment-894705941
This commit is contained in:
@@ -2802,10 +2802,26 @@ get_memory() {
|
||||
[[ "$memory_percent" == "on" ]] && ((mem_perc=mem_used * 100 / mem_total))
|
||||
|
||||
case $memory_unit in
|
||||
tib)
|
||||
mem_label=TiB
|
||||
memory_unit_divider=$((1024 * 1024))
|
||||
printf -v mem_used "%'.*f" \
|
||||
${mem_precision:-2} \
|
||||
$(($mem_used / $memory_unit_divider)).$(($mem_used % $memory_unit_divider))
|
||||
printf -v mem_total "%'.*f" \
|
||||
${mem_precision:-2} \
|
||||
$(($mem_total / $memory_unit_divider)).$(($mem_total % $memory_unit_divider))
|
||||
;;
|
||||
|
||||
gib)
|
||||
mem_used=$(awk '{printf "%.2f", $1 / $2}' <<< "$mem_used 1024")
|
||||
mem_total=$(awk '{printf "%.2f", $1 / $2}' <<< "$mem_total 1024")
|
||||
mem_label=GiB
|
||||
memory_unit_divider=1024
|
||||
printf -v mem_used "%'.*f" \
|
||||
${mem_precision:-2} \
|
||||
$(($mem_used / $memory_unit_divider)).$(($mem_used % $memory_unit_divider))
|
||||
printf -v mem_total "%'.*f" \
|
||||
${mem_precision:-2} \
|
||||
$(($mem_total / $memory_unit_divider)).$(($mem_total % $memory_unit_divider))
|
||||
;;
|
||||
|
||||
kib)
|
||||
|
||||
Reference in New Issue
Block a user