>>> I have a question the other way. I forgot that `C-x 5 .' >>> exists and tried `C-x 5 5 M-.' and was surprised to find it >>> didn't work (it opened in the same frame as if I just did >>> `M-.'. Is it supposed to work or should I open a bug? >> >> It does the right thing after customizing >> switch-to-buffer-obey-display-actions to t. > > Yes I see that too. > >> Maybe its default value should be changed to t? > > At least the docstring of other-frame-prefix (and friends) should > be clearer about it's effect. I don't think I'm supposed to know > which commands use switch-to-buffer internally. Maybe more commands should use pop-to-buffer-same-window instead of switch-to-buffer. But OTOH, too much commands already use switch-to-buffer. > If the default value isn't changed, maybe other-frame-prefix > should let bind it to t since if you're using it you presumably > want a new frame. Same for the window and tab variants. > project.el seems to do this in project--other-place-command > which the project-other-{frame,window,tab}-commands use. I'm not sure if the default value can be changed, but you are right about other-frame-prefix. I didn't know that project--other-place-command let binds it to t. But doing the same is not possible in other-frame-prefix, that just sets a display action for the next command. So a more elaborate fix is required: