diff options
author | Stefan Monnier <monnier@iro.umontreal.ca> | 2008-02-11 18:39:22 +0000 |
---|---|---|
committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2008-02-11 18:39:22 +0000 |
commit | 6d11a78b0951d4bda23fb4ea5c3462bc9164ee18 (patch) | |
tree | 98aa54560a8dd3e697c375088a7871e41b24cd07 | |
parent | 3ee24aecf63898e562772ed1e13b2b740937d057 (diff) | |
download | emacs-6d11a78b0951d4bda23fb4ea5c3462bc9164ee18.tar.gz |
(ibuffer-header-line-format): New var.
(ibuffer-mode): Set it instead of header-line-format.
(ibuffer-update): Use it to set header-line-format.
-rw-r--r-- | lisp/ChangeLog | 4 | ||||
-rw-r--r-- | lisp/ibuffer.el | 26 |
2 files changed, 21 insertions, 9 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog index e52057bb9b8..7bacad73ca7 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,9 @@ 2008-02-11 Stefan Monnier <monnier@iro.umontreal.ca> + * ibuffer.el (ibuffer-header-line-format): New var. + (ibuffer-mode): Set it instead of header-line-format. + (ibuffer-update): Use it to set header-line-format. + * international/mule-cmds.el (ucs-insert): Inherit surrounding properties like self-insert-command. diff --git a/lisp/ibuffer.el b/lisp/ibuffer.el index 7c6da00cf0f..59f8c96af2e 100644 --- a/lisp/ibuffer.el +++ b/lisp/ibuffer.el @@ -49,6 +49,7 @@ (defvar ibuffer-filter-group-kill-ring) (defvar ibuffer-filter-groups) (defvar ibuffer-filtering-qualifiers) +(defvar ibuffer-header-line-format) (defvar ibuffer-hidden-filter-groups) (defvar ibuffer-inline-columns) (defvar ibuffer-show-empty-filter-groups) @@ -2164,7 +2165,14 @@ If optional arg SILENT is non-nil, do not display progress messages." (ibuffer-shrink-to-fit t) (when ibuffer-shrink-to-minimum-size (ibuffer-shrink-to-fit))) - (ibuffer-forward-line 0)) + (ibuffer-forward-line 0) + ;; I tried to update this automatically from the mode-line-process format, + ;; but changing nil-ness of header-line-format while computing + ;; mode-line-format is asking a bit too much it seems. --Stef + (setq header-line-format + (and ibuffer-use-header-line + ibuffer-filtering-qualifiers + ibuffer-header-line-format))) (defun ibuffer-sort-bufferlist (bmarklist) (let* ((sortdat (assq ibuffer-sorting-mode @@ -2537,14 +2545,14 @@ will be inserted before the group at point." (:eval (if (functionp 'ibuffer-format-qualifier) (mapconcat 'ibuffer-format-qualifier ibuffer-filtering-qualifiers "")))))) - (setq header-line-format - (if ibuffer-use-header-line - ;; Display the part that won't be in the mode-line. - (list* "" mode-name - (mapcar (lambda (elem) - (if (eq (car-safe elem) 'header-line-format) - (nth 2 elem) elem)) - mode-line-process)))) + ;; `ibuffer-update' puts this on header-line-format when needed. + (setq ibuffer-header-line-format + ;; Display the part that won't be in the mode-line. + (list* "" mode-name + (mapcar (lambda (elem) + (if (eq (car-safe elem) 'header-line-format) + (nth 2 elem) elem)) + mode-line-process))) (setq buffer-read-only t) (buffer-disable-undo) |