summaryrefslogtreecommitdiff
path: root/lisp/ibuf-macs.el
diff options
context:
space:
mode:
authorColin Walters <walters@gnu.org>2002-03-08 04:03:36 +0000
committerColin Walters <walters@gnu.org>2002-03-08 04:03:36 +0000
commitceb449353ba812ccf3be57c6ab8bf54ab01b121c (patch)
treeb1b40029bb763e5af1a5ea4ce70f3ba74dc1210b /lisp/ibuf-macs.el
parent2ef3551dfdc464e69619e3d75ed5563bb8984c9d (diff)
downloademacs-ceb449353ba812ccf3be57c6ab8bf54ab01b121c.tar.gz
(define-ibuffer-column): Add :summarizer property.
Diffstat (limited to 'lisp/ibuf-macs.el')
-rw-r--r--lisp/ibuf-macs.el15
1 files changed, 5 insertions, 10 deletions
diff --git a/lisp/ibuf-macs.el b/lisp/ibuf-macs.el
index 6ef83594e0c..23b5e18fed4 100644
--- a/lisp/ibuf-macs.el
+++ b/lisp/ibuf-macs.el
@@ -93,14 +93,8 @@ change its definition, you should explicitly call
`ibuffer-recompile-formats'."
(let* ((sym (intern (concat "ibuffer-make-column-"
(symbol-name symbol))))
- (bod-2 `(with-current-buffer buffer
+ (bod-1 `(with-current-buffer buffer
,@body))
- (bod-1 (if summarizer
- `(car
- (push ,bod-2
- ,(intern (format "ibuffer-summary-for-column-%s"
- name))))
- bod-2))
(bod (if props
`(propertize
,bod-1
@@ -116,12 +110,13 @@ change its definition, you should explicitly call
name
(capitalize (symbol-name symbol))))
,(if summarizer
+ ;; Store the name of the summarizing function.
`(put (quote ,sym) 'ibuffer-column-summarizer
(quote ,summarizer)))
,(if summarizer
- `(defvar ,(intern (format "ibuffer-summary-for-column-%s"
- name))
- nil))
+ ;; This will store the actual values of the column
+ ;; summary.
+ `(put (quote ,sym) 'ibuffer-column-summary nil))
:autoload-end)))
;; (put 'define-ibuffer-column 'lisp-indent-function 'defun)