summaryrefslogtreecommitdiff
path: root/config/ibuffer/config-ibuffer-human-readable-size.el
blob: 5cec3a9fd43892181349e8bef908de2e435dc185 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
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 'config-ibuffer-human-readable-size)