1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2024-11-28 07:45:00 +00:00

ibuffer-do-view-other-frame: Display each buffer in a new frame

* lisp/ibuffer.el (ibuffer-do-view-1):
When TYPE equals 'other-frame, then display each buffer
in a new frame (Bug#24086).
This commit is contained in:
Tino Calancha 2016-09-23 15:16:15 +09:00
parent 0041ce8189
commit 87925f1125

View File

@ -1143,17 +1143,17 @@ a new window in the current frame, splitting vertically."
(ibuffer-do-view-1 (if other-frame 'other-frame 'horizontally)))
(defun ibuffer-do-view-1 (type)
(let ((marked-bufs (ibuffer-get-marked-buffers)))
(when (null marked-bufs)
(setq marked-bufs (list (ibuffer-current-buffer t))))
(let ((marked-bufs (or (ibuffer-get-marked-buffers)
(list (ibuffer-current-buffer t)))))
(unless (and (eq type 'other-frame)
(not ibuffer-expert)
(> (length marked-bufs) 3)
(not (y-or-n-p (format "Really create a new frame for %s buffers? "
(length marked-bufs)))))
(set-buffer-modified-p nil)
(delete-other-windows)
(switch-to-buffer (pop marked-bufs))
(unless (eq type 'other-frame)
(set-buffer-modified-p nil)
(delete-other-windows)
(switch-to-buffer (pop marked-bufs)))
(let ((height (/ (1- (if (eq type 'horizontally) (frame-width)
(frame-height)))
(1+ (length marked-bufs)))))