emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/ibuffer.el


From: Colin Walters
Subject: [Emacs-diffs] Changes to emacs/lisp/ibuffer.el
Date: Sat, 08 Jun 2002 16:42:26 -0400

Index: emacs/lisp/ibuffer.el
diff -c emacs/lisp/ibuffer.el:1.30 emacs/lisp/ibuffer.el:1.31
*** emacs/lisp/ibuffer.el:1.30  Tue May 21 16:59:28 2002
--- emacs/lisp/ibuffer.el       Sat Jun  8 16:42:26 2002
***************
*** 742,748 ****
        '(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]
        '(menu-item "Yank last killed filter group"
                  ibuffer-yank
                  :enable (and (featurep 'ibuf-ext) 
ibuffer-filter-group-kill-ring)))
--- 742,748 ----
        '(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]
        '(menu-item "Yank last killed filter group"
                  ibuffer-yank
                  :enable (and (featurep 'ibuf-ext) 
ibuffer-filter-group-kill-ring)))
***************
*** 777,783 ****
    "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.
--- 777,782 ----
***************
*** 1351,1364 ****
                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))))
      (if (or elide ibuffer-elide-long-columns)
        `(if (> strlen 5)
             ,(if from-end-p
--- 1350,1358 ----
                elide nil))
        (list sym min max align elide)))
      form))
    
  (defun ibuffer-compile-make-eliding-form (strvar elide from-end-p)
!   (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,1484 ****
                                        (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)))))
                   (mincompform `(< strlen ,(if (integerp min)
                                                min
                                              'min)))
--- 1463,1470 ----
                                        (put ',sym 'ibuffer-column-summary
                                             (cons ret (get ',sym 
'ibuffer-column-summary)))
                                        ret)))
!                                 (lambda (arg sym)
!                                   `(insert ,arg))))
                   (mincompform `(< strlen ,(if (integerp min)
                                                min
                                              'min)))
***************
*** 1611,1617 ****
                             ('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))
    
  (define-ibuffer-column size (:inline t)
    (format "%s" (buffer-size)))
--- 1597,1603 ----
                             ('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"))
!   (propertize (buffer-name) 'font-lock-face (ibuffer-buffer-name-face buffer 
mark)))
    
  (define-ibuffer-column size (:inline t)
    (format "%s" (buffer-size)))
***************
*** 1641,1649 ****
        (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)))
                filename)
        filename)))
  
--- 1627,1633 ----
        (filename (ibuffer-make-column-filename buffer mark ibuffer-buf)))
      (if proc
        (concat (propertize (format "(%s %s) " proc (process-status proc))
!                           'font-lock-face 'italic)
                filename)
        filename)))
  
***************
*** 1655,1676 ****
        (:center (concat left str right))
        (t (concat str left right)))))
  
! (defun ibuffer-buffer-name-category (buf mark)
    (cond ((char-equal mark ibuffer-marked-char)
!        (ibuffer-get-category 'ibuffer-category-marked))
        ((char-equal mark ibuffer-deletion-char)
!        (ibuffer-get-category 'ibuffer-category-deleted))
        (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))))
               (setq level (car e)
!                    result (car (nth i font-lock-category-alist))))
!            (incf i))))))
  
  (defun ibuffer-insert-buffer-line (buffer mark format)
    "Insert a line describing BUFFER and MARK using FORMAT."
--- 1639,1658 ----
        (:center (concat left str right))
        (t (concat str left right)))))
  
! (defun ibuffer-buffer-name-face (buf mark)
    (cond ((char-equal mark ibuffer-marked-char)
!        ibuffer-marked-face)
        ((char-equal mark ibuffer-deletion-char)
!        ibuffer-deletion-face)
        (t
         (let ((level -1)
               result)
           (dolist (e ibuffer-fontification-alist result)
             (when (and (> (car e) level)
                        (with-current-buffer buf
!                         (eval (nth 1 e))))
               (setq level (car e)
!                    result (nth 2 e))))))))
  
  (defun ibuffer-insert-buffer-line (buffer mark format)
    "Insert a line describing BUFFER and MARK using FORMAT."
***************
*** 1922,1928 ****
                            str)))
         (insert "\n"))
         (point))
!      `(ibuffer-title t category ,(ibuffer-get-category 
'ibuffer-category-title)))
      ;; Now, insert the summary columns.
      (goto-char (point-max))
      (if (get-text-property (1- (point-max)) 'ibuffer-summary)
--- 1904,1910 ----
                            str)))
         (insert "\n"))
         (point))
!      `(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,2072 ****
       (point))
     `(ibuffer-filter-group-name
       ,name
!      category ,(ibuffer-get-category 'ibuffer-category-filter-group-name)
       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 ")))
--- 2048,2054 ----
       (point))
     `(ibuffer-filter-group-name
       ,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,2425 ****
    ;; 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)
--- 2378,2383 ----



reply via email to

[Prev in Thread] Current Thread [Next in Thread]