# HG changeset patch # User Eli Zaretskii # Date 998980417 0 # Node ID f12d1ec614e9af51bdb5b3a906d0848cd2e0e0a0 # Parent 89251bf024b545c7d64054f669388adab1db379d (mouse-buffer-menu): If the buffer menu is split by major modes, don't create panes for modes for which mouse-buffer-menu-alist returns an empty alist. diff -r 89251bf024b5 -r f12d1ec614e9 lisp/mouse.el --- a/lisp/mouse.el Mon Aug 27 22:29:35 2001 +0000 +++ b/lisp/mouse.el Tue Aug 28 06:33:37 2001 +0000 @@ -1571,26 +1571,29 @@ (while (and split-by-major-mode (and (> (length (car split-by-major-mode)) 3) (> (* buffers-left 10) (length buffers)))) - (setq subdivided-menus - (cons (cons - (nth 1 (car split-by-major-mode)) - (mouse-buffer-menu-alist - (cdr (cdr (car split-by-major-mode))))) - subdivided-menus)) + (let ((this-mode-list (mouse-buffer-menu-alist + (cdr (cdr (car split-by-major-mode)))))) + (and this-mode-list + (setq subdivided-menus + (cons (cons + (nth 1 (car split-by-major-mode)) + this-mode-list) + subdivided-menus)))) (setq buffers-left (- buffers-left (length (cdr (car split-by-major-mode))))) (setq split-by-major-mode (cdr split-by-major-mode))) ;; If any major modes are left over, ;; make a single submenu for them. (if split-by-major-mode - (setq subdivided-menus - (cons (cons - "Others" - (mouse-buffer-menu-alist - ;; we don't need split-by-major-mode any - ;; more, so we can ditch it with nconc. - (apply 'nconc (mapcar 'cddr split-by-major-mode)))) - subdivided-menus))) + (let ((others-list + (mouse-buffer-menu-alist + ;; we don't need split-by-major-mode any more, + ;; so we can ditch it with nconc. + (apply 'nconc (mapcar 'cddr split-by-major-mode))))) + (and others-list + (setq subdivided-menus + (cons (cons "Others" others-list) + subdivided-menus))))) (setq menu (cons "Buffer Menu" (nreverse subdivided-menus)))) (progn (setq alist (mouse-buffer-menu-alist buffers))