]> git.eshelyaron.com Git - emacs.git/commitdiff
* lisp/files.el (file-size-function): New defcustom
authorOleh Krehel <ohwoeowho@gmail.com>
Fri, 19 Jul 2019 16:55:29 +0000 (18:55 +0200)
committerOleh Krehel <ohwoeowho@gmail.com>
Fri, 19 Jul 2019 16:55:47 +0000 (18:55 +0200)
etc/NEWS
lisp/files.el

index c875fc693c8d87f14367aedd2a193b74e5792a7f..5cbe60c6d8ad4e0e76d3c86a8da71c39960f7223 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -400,6 +400,7 @@ mode they are described in the manual "(emacs) Display".
 ---
 ** New variable 'xref-file-name-display' controls the display of file
 names in xref buffers.
+** New variable `file-size-function' controls how file sizes are displayed
 
 \f
 * Editing Changes in Emacs 27.1
index 238aa3779858b123a22321455a85323be6300f3c..e26b4820f5eed702462f170ee7985af9861c3f03 100644 (file)
@@ -6696,13 +6696,21 @@ This variable is obsolete; Emacs no longer uses it."
                        "ignored, as Emacs uses `file-system-info' instead"
                        "27.1")
 
+(defcustom file-size-function #'file-size-human-readable
+  "Function that transforms the number of bytes into a human-readable string."
+  :type '(choice
+          (const :tag "default" file-size-human-readable)
+          (const :tag "iec"
+           (lambda (size) (file-size-human-readable size 'iec " ")))
+          (function :tag "Custom function")))
+
 (defun get-free-disk-space (dir)
   "String describing the amount of free space on DIR's file system.
 If DIR's free space cannot be obtained, this function returns nil."
   (save-match-data
     (let ((avail (nth 2 (file-system-info dir))))
       (if avail
-          (file-size-human-readable avail 'iec " ")))))
+          (funcall file-size-function avail)))))
 
 ;; The following expression replaces `dired-move-to-filename-regexp'.
 (defvar directory-listing-before-filename-regexp