Mercurial > emacs
changeset 45442:5bc8bee6a228
(define-ibuffer-column): Add third argument `ibuffer-buf'.
author | Colin Walters <walters@gnu.org> |
---|---|
date | Tue, 21 May 2002 20:59:04 +0000 |
parents | e552d3f59fb0 |
children | 8fd13e1863ed |
files | lisp/ibuf-macs.el |
diffstat | 1 files changed, 9 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/lisp/ibuf-macs.el Tue May 21 20:58:06 2002 +0000 +++ b/lisp/ibuf-macs.el Tue May 21 20:59:04 2002 +0000 @@ -78,8 +78,8 @@ "Define a column SYMBOL for use with `ibuffer-formats'. BODY will be called with `buffer' bound to the buffer object, and -`mark' bound to the current mark on the buffer. The current buffer -will be `buffer'. +`mark' bound to the current mark on the buffer. The original ibuffer +buffer will be bound to `ibuffer-buf'. If NAME is given, it will be used as a title for the column. Otherwise, the title will default to a capitalized version of the @@ -105,7 +105,7 @@ `(progn ,(if inline `(push '(,sym ,bod) ibuffer-inline-columns) - `(defun ,sym (buffer mark) + `(defun ,sym (buffer mark ibuffer-buf) ,bod)) (put (quote ,sym) 'ibuffer-column-name ,(if (stringp name) @@ -160,7 +160,9 @@ (active-opstring "Operate on") complex) &rest body) - "Generate a function named `ibuffer-do-OP', which operates on a buffer. + "Generate a function which operates on a buffer. +OP becomes the name of the function; if it doesn't begin with +`ibuffer-do-', then that is prepended to it. When an operation is performed, this function will be called once for each marked buffer, with that buffer current. @@ -188,7 +190,9 @@ COMPLEX means this function is special; see the source code of this macro for exactly what it does." `(progn - (defun ,(intern (concat "ibuffer-do-" (symbol-name op))) ,args + (defun ,(intern (concat (if (string-match "^ibuffer-do" (symbol-name op)) + "" "ibuffer-do-") (symbol-name op))) + ,args ,(if (stringp documentation) documentation (format "%s marked buffers." active-opstring))