> I'm trying to use your implementation of display-buffer-in-direction, > but with this patch: > > diff --git a/lisp/files.el b/lisp/files.el > index 9948bd4a03..dac75fdb78 100644 > --- a/lisp/files.el > +++ b/lisp/files.el > @@ -3396,7 +3396,7 @@ hack-local-variables-confirm > > ;; Display the buffer and read a choice. > (save-window-excursion > - (pop-to-buffer buf '(display-buffer--maybe-at-bottom)) > + (pop-to-buffer buf '(display-buffer-in-direction (direction bottom main))) > (let* ((exit-chars '(?y ?n ?\s ?\C-g ?\C-v)) > (prompt (format "Please type %s%s: " > (if offer-save "y, n, or !" "y or n") > > while visiting a file with Local Variables it fails with: > > Debugger entered--Lisp error: (error "Cannot share edge from within live window # signal(error ("Cannot share edge from within live window # error("Cannot share edge from within live window %s" #) > windows-sharing-edge(# below t) > display-buffer-in-direction(# ((direction bottom main))) > display-buffer(# (display-buffer-in-direction (direction bottom main))) > pop-to-buffer(# (display-buffer-in-direction (direction bottom main))) I attach a version which should handle this now. I still can't get used to a positional specification of direction and reference window so ALIST now has to contain separate 'direction' and 'window' entries as in (pop-to-buffer buf '(display-buffer-in-direction (direction . bottom) (window . main))) where the 'direction' entry is mandatory. martin