diff options
author | Colin Walters <walters@gnu.org> | 2002-06-08 20:42:26 +0000 |
---|---|---|
committer | Colin Walters <walters@gnu.org> | 2002-06-08 20:42:26 +0000 |
commit | 4c84a9abba1c76dcad9070c7a6f65da3bb88b4c3 (patch) | |
tree | 03e1f03b9fc42f1d24122806512acde86c6d9400 /lisp/ibuffer.el | |
parent | a3fba24a517e3524ace8be364b2ac9a4104027f6 (diff) | |
download | emacs-4c84a9abba1c76dcad9070c7a6f65da3bb88b4c3.tar.gz |
(ibuffer-category-alist): Delete.
(ibuffer-get-category): Delete.
(ibuffer-compile-make-eliding-form): Use `font-lock-face' instead
of categories.
(ibuffer-compile-format): Don't treat `name' category specially.
(ibuffer-column name): Use `font-lock-face'.
(filename-and-process): Ditto.
(ibuffer-buffer-name-category): Renamed to
`ibuffer-buffer-name-face'. Don't use categories.
(ibuffer-update-title-and-summary): Use `font-lock-face'.
(ibuffer-insert-filter-group): Ditto.
(ibuffer-mode): Don't set up categories.
Diffstat (limited to 'lisp/ibuffer.el')
-rw-r--r-- | lisp/ibuffer.el | 68 |
1 files changed, 13 insertions, 55 deletions
diff --git a/lisp/ibuffer.el b/lisp/ibuffer.el index b4f4aecf720..3c9bf9eb679 100644 --- a/lisp/ibuffer.el +++ b/lisp/ibuffer.el @@ -742,7 +742,7 @@ directory, like `default-directory'." '(menu-item "Kill filter group" ibuffer-kill-line :enable (and (featurep 'ibuf-ext) ibuffer-filter-groups))) -(define-key ibuffer-mode-groups-popup [yank-filter-group] +(define-key ibuffer-mode-groups-popup [yank-filter-group] '(menu-item "Yank last killed filter group" ibuffer-yank :enable (and (featurep 'ibuf-ext) ibuffer-filter-group-kill-ring))) @@ -777,7 +777,6 @@ directory, like `default-directory'." "Whether or not to delete the window upon exiting `ibuffer'.") (defvar ibuffer-did-modification nil) -(defvar ibuffer-category-alist nil) (defvar ibuffer-sorting-functions-alist nil "An alist of functions which describe how to sort buffers. @@ -1351,14 +1350,9 @@ If point is on a group name, this function operates on that group." elide nil)) (list sym min max align elide))) form)) - -(defsubst ibuffer-get-category (name) - (cdr (assq name ibuffer-category-alist))) (defun ibuffer-compile-make-eliding-form (strvar elide from-end-p) - (let ((ellipsis (propertize ibuffer-eliding-string 'category - (ibuffer-get-category - 'ibuffer-category-eliding-string)))) + (let ((ellipsis (propertize ibuffer-eliding-string 'font-lock-face 'bold))) (if (or elide ibuffer-elide-long-columns) `(if (> strlen 5) ,(if from-end-p @@ -1469,16 +1463,8 @@ If point is on a group name, this function operates on that group." (put ',sym 'ibuffer-column-summary (cons ret (get ',sym 'ibuffer-column-summary))) ret))) - ;; We handle the `name' column specially. - (if (eq sym 'ibuffer-make-column-name) - (lambda (arg sym) - `(let ((pt (point))) - (insert ,arg) - (put-text-property pt (point) - 'category - (ibuffer-buffer-name-category buffer mark)))) - (lambda (arg sym) - `(insert ,arg))))) + (lambda (arg sym) + `(insert ,arg)))) (mincompform `(< strlen ,(if (integerp min) min 'min))) @@ -1611,7 +1597,7 @@ If point is on a group name, this function operates on that group." ('mouse-face 'highlight 'keymap ibuffer-name-map 'ibuffer-name-column t 'help-echo "mouse-1: mark this buffer\nmouse-2: select this buffer\nmouse-3: operate on this buffer")) - (buffer-name)) + (propertize (buffer-name) 'font-lock-face (ibuffer-buffer-name-face buffer mark))) (define-ibuffer-column size (:inline t) (format "%s" (buffer-size))) @@ -1641,9 +1627,7 @@ If point is on a group name, this function operates on that group." (filename (ibuffer-make-column-filename buffer mark ibuffer-buf))) (if proc (concat (propertize (format "(%s %s) " proc (process-status proc)) - 'category - (with-current-buffer ibuffer-buf - (ibuffer-get-category 'ibuffer-category-process))) + 'font-lock-face 'italic) filename) filename))) @@ -1655,22 +1639,20 @@ If point is on a group name, this function operates on that group." (:center (concat left str right)) (t (concat str left right))))) -(defun ibuffer-buffer-name-category (buf mark) +(defun ibuffer-buffer-name-face (buf mark) (cond ((char-equal mark ibuffer-marked-char) - (ibuffer-get-category 'ibuffer-category-marked)) + ibuffer-marked-face) ((char-equal mark ibuffer-deletion-char) - (ibuffer-get-category 'ibuffer-category-deleted)) + ibuffer-deletion-face) (t (let ((level -1) - (i 0) result) (dolist (e ibuffer-fontification-alist result) (when (and (> (car e) level) (with-current-buffer buf - (eval (cadr e)))) + (eval (nth 1 e)))) (setq level (car e) - result (car (nth i font-lock-category-alist)))) - (incf i)))))) + result (nth 2 e)))))))) (defun ibuffer-insert-buffer-line (buffer mark format) "Insert a line describing BUFFER and MARK using FORMAT." @@ -1922,7 +1904,7 @@ the value of point at the beginning of the line for that buffer." str))) (insert "\n")) (point)) - `(ibuffer-title t category ,(ibuffer-get-category 'ibuffer-category-title))) + `(ibuffer-title t font-lock-face ,ibuffer-title-face)) ;; Now, insert the summary columns. (goto-char (point-max)) (if (get-text-property (1- (point-max)) 'ibuffer-summary) @@ -2066,7 +2048,7 @@ Do not display messages if SILENT is non-nil." (point)) `(ibuffer-filter-group-name ,name - category ,(ibuffer-get-category 'ibuffer-category-filter-group-name) + font-lock-face ,ibuffer-filter-group-name-face keymap ,ibuffer-mode-filter-group-map mouse-face highlight help-echo ,(concat filter-string "mouse-1: toggle marks in this group\nmouse-2: hide/show this filtering group "))) @@ -2396,30 +2378,6 @@ will be inserted before the group at point." ;; This makes things less ugly for Emacs 21 users with a non-nil ;; `show-trailing-whitespace'. (setq show-trailing-whitespace nil) - - (set (make-local-variable 'font-lock-category-alist) nil) - (set (make-local-variable 'ibuffer-category-alist) nil) - (dolist (elt (list - (cons (make-symbol "ibuffer-category-title") - ibuffer-title-face) - (cons (make-symbol "ibuffer-category-marked") - ibuffer-marked-face) - (cons (make-symbol "ibuffer-category-deleted") - ibuffer-deletion-face) - (cons (make-symbol "ibuffer-category-filter-group-name") - ibuffer-filter-group-name-face) - (cons (make-symbol "ibuffer-category-process") - 'italic) - (cons (make-symbol "ibuffer-category-eliding-string") - 'bold))) - (push (cons (intern (symbol-name (car elt))) (car elt)) ibuffer-category-alist) - (push elt font-lock-category-alist)) - (let ((i (1- (length ibuffer-fontification-alist)))) - (while (>= i 0) - (push (cons (make-symbol (format "ibuffer-category-%d" i)) - (nth 2 (nth i ibuffer-fontification-alist))) - font-lock-category-alist) - (decf i))) (set (make-local-variable 'revert-buffer-function) #'ibuffer-update) (set (make-local-variable 'ibuffer-sorting-mode) |