comparison lisp/ibuffer.el @ 94905:c3aeab0459b2

(ibuffer-buffer-file-name): New function. (define-ibuffer-column filename): Use it.
author John Paul Wallington <jpw@pobox.com>
date Tue, 13 May 2008 21:07:21 +0000
parents ee5932bf781d
children 905940be40d9
comparison
equal deleted inserted replaced
94904:c71ea3609cd7 94905:c3aeab0459b2
1230 #'(lambda (buf mark) 1230 #'(lambda (buf mark)
1231 (char-equal mark ibuffer-deletion-char)))) 1231 (char-equal mark ibuffer-deletion-char))))
1232 1232
1233 (defsubst ibuffer-map-deletion-lines (func) 1233 (defsubst ibuffer-map-deletion-lines (func)
1234 (ibuffer-map-on-mark ibuffer-deletion-char func)) 1234 (ibuffer-map-on-mark ibuffer-deletion-char func))
1235
1236 (defun ibuffer-buffer-file-name ()
1237 (or buffer-file-name
1238 (let ((dirname (or (and (boundp 'dired-directory)
1239 (if (stringp dired-directory)
1240 dired-directory
1241 (car dired-directory)))
1242 (and (memq major-mode '(cvs-mode vc-dir-mode))
1243 (bound-and-true-p default-directory)))))
1244 (and dirname (expand-file-name dirname)))
1245 ""))
1235 1246
1236 (define-ibuffer-op ibuffer-do-save () 1247 (define-ibuffer-op ibuffer-do-save ()
1237 "Save marked buffers as with `save-buffer'." 1248 "Save marked buffers as with `save-buffer'."
1238 (:complex t 1249 (:complex t
1239 :opstring "saved" 1250 :opstring "saved"
1751 (cond ((zerop total) "No files") 1762 (cond ((zerop total) "No files")
1752 ((= 1 total) "1 file") 1763 ((= 1 total) "1 file")
1753 (t (format "%d files" total)))))) 1764 (t (format "%d files" total))))))
1754 (let ((directory-abbrev-alist ibuffer-directory-abbrev-alist)) 1765 (let ((directory-abbrev-alist ibuffer-directory-abbrev-alist))
1755 (abbreviate-file-name 1766 (abbreviate-file-name
1756 (or buffer-file-name 1767 (ibuffer-buffer-file-name))))
1757 (and (boundp 'dired-directory)
1758 (if (stringp dired-directory)
1759 dired-directory
1760 (car dired-directory)))
1761 (and (eq major-mode 'vc-dir-mode)
1762 (bound-and-true-p default-directory))
1763 ""))))
1764 1768
1765 (define-ibuffer-column filename-and-process 1769 (define-ibuffer-column filename-and-process
1766 (:name "Filename/Process" 1770 (:name "Filename/Process"
1767 :header-mouse-map ibuffer-filename/process-header-map 1771 :header-mouse-map ibuffer-filename/process-header-map
1768 :summarizer 1772 :summarizer