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:
©TriMoon™
2022-10-31 13:03:10 +03:00
committed by GitHub
parent ccd5d9f526
commit 67cf02c964
+18 -2
View File
@@ -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)