Am 04.11.2019 um 10:06 schrieb martin rudalics <rudalics@gmx.at>:> Suppose, without any display-buffer-alist customization, I have just
>
> (setq display-buffer-base-action
> (quote (
> (display-buffer-reuse-window display-buffer-pop-up-frame)
> (reusable-frames . x)
> )))
>
> in my init file, where x can be any of 0,1, nil, visible, all these
> choices don’t matter for this: If I open Emacs, the initial frame
> shows up, and any file loaded via recent-files, or by dragging on
> the Emacs icon, or by clicking on the file icon, shows up in the
> initial frame, contrary to what is advertised in the
> manual.
What _is_ advertised in the manual?
(customize-set-variable 'display-buffer-base-action '((display-buffer-reuse-window display-buffer-pop-up-frame) (reusable-frames . 0)))
This setting will cause display-buffer
to first try to find a window showing the buffer on a visible or iconified frame and, if no such frame exists, pop up a new frame.
> However, once a file is loaded, then re-selecting it via
> Menu->Buffers, pops it up in a new frame (with properties as
> specified in defaults-frame-alist). So, what is the relation between
> "display-buffer-base-action” and “default-frame-alist”?
If a new frame is created by 'display-buffer', its parameters are
determined by
(1) any 'pop-up-frame-parameters' entry found,
(2) the value of 'pop-up-frame-alist' (if the function specified by
'pop-up-frame-function' processes it - the default does) and
(3) the value of 'default-frame-alist'.
So if you use the 'display-buffer-base-action' specification from the
top, only 'default-frame-alist' will be used because you neither
customized any 'pop-up-frame-parameters' nor 'pop-up-frame-alist' (the
latter should not be used anyway). All based on the assumption that
you have customized 'switch-to-buffer-obey-display-actions' so that
Menu->Buffers indeed tries to pop to the buffer.
martin