summaryrefslogtreecommitdiff
path: root/init/ibuffer/init-ibuffer-human-readable-size.el
diff options
context:
space:
mode:
authorJohn Turner <jturner.usa@gmail.com>2022-10-07 03:10:21 -0400
committerJohn Turner <jturner.usa@gmail.com>2022-10-07 03:10:21 -0400
commit6fac8a28da9bf30da71941340505c2316d0db5a3 (patch)
treef7d840005abe0195e093fa0db6f1e44ecba0ba8d /init/ibuffer/init-ibuffer-human-readable-size.el
parentceaa741cfb13938aa359f33f926ccdcb2689f303 (diff)
downloademacs.d-6fac8a28da9bf30da71941340505c2316d0db5a3.tar.gz
changed the config-* prefix to init-* for all of the init files
Diffstat (limited to 'init/ibuffer/init-ibuffer-human-readable-size.el')
-rw-r--r--init/ibuffer/init-ibuffer-human-readable-size.el16
1 files changed, 16 insertions, 0 deletions
diff --git a/init/ibuffer/init-ibuffer-human-readable-size.el b/init/ibuffer/init-ibuffer-human-readable-size.el
new file mode 100644
index 0000000..6d62521
--- /dev/null
+++ b/init/ibuffer/init-ibuffer-human-readable-size.el
@@ -0,0 +1,16 @@
+(define-ibuffer-column size-human-readable
+ (:name "Size" :inline t)
+ (let ((size (buffer-size)))
+ (cond
+ ((> size (expt 1000 4))
+ (error "buffer is over 1TB large!"))
+ ((> size (expt 1000 3))
+ (format "%sG" (/ size (expt 1000 3))))
+ ((> size (expt 1000 2))
+ (format "%sM" (/ size (expt 1000 2))))
+ ((> size 1000)
+ (format "%sK" (/ size 1000)))
+ (t
+ (format "%sB" size)))))
+
+(provide 'init-ibuffer-human-readable-size)