Skip to content

Let every shell backend open in another window - #2180

Merged
bbatsov merged 2 commits into
masterfrom
feature/terminal-other-window
Aug 29, 2026
Merged

Let every shell backend open in another window#2180
bbatsov merged 2 commits into
masterfrom
feature/terminal-other-window

Conversation

@bbatsov

@bbatsov bbatsov commented Aug 28, 2026

Copy link
Copy Markdown
Owner

Only vterm, eat and ghostel had an -other-window command, so the three third-party terminals were better served than the shells that ship with Emacs. The four built-in runners took the OTHER-WINDOW argument and ignored it, so there was nothing to build a variant on.

term just needed the branch on its final switch-to-buffer. shell, eshell and ielm display their own buffer and have no -other-window flavour to call, so they go through display-buffer-overriding-action, which outranks the action they pass. projectile-run gets a variant too, bound to s-p x 4 r.

Only vterm, eat and ghostel had an `-other-window' command. The four
built-ins took the OTHER-WINDOW argument and ignored it, so there was
nothing to build a variant on - meaning the three third-party terminals
were better served than the shells that ship with Emacs.

`term' just needed the branch on its final `switch-to-buffer', the same
shape `vterm' already uses. `shell', `eshell' and `ielm' display their
own buffer and have no `-other-window' flavour to call, so they go
through `display-buffer-overriding-action', which outranks the action
they pass.

`projectile-run' gets a variant too, since it dispatches to whichever
backend you configured and all of them now honour the flag.
@bbatsov
bbatsov merged commit 65976a4 into master Aug 29, 2026
5 checks passed
@bbatsov
bbatsov deleted the feature/terminal-other-window branch August 29, 2026 08:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant