Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow maximizing/restoring a single terminal or editor pane #47661

Open
costincaraivan opened this issue Apr 11, 2018 · 18 comments
Open

Allow maximizing/restoring a single terminal or editor pane #47661

costincaraivan opened this issue Apr 11, 2018 · 18 comments
Assignees
Labels
feature-request Request for new features or functionality workbench-views Workbench view issues
Milestone

Comments

@costincaraivan
Copy link
Contributor

I'd be surprised if this hasn't been asked before, but tmux supports a thing it calls "pane zooming", if I recall correctly.

Basically once you start splitting a window, vertically, horizontally, it doesn't matter, you press a certain keyboard shortcut and the current pane is "maximized", hiding all the other panes. Text is reflowed, so you actually see the former pane as a full window. This is incredibly useful once you launch some command that has a ton of unexpected output that you want to check out.

When you're done you press the same keyboard shortcut and the pane "reverts", showing the previous layout. The text in the pane is reflowed again to make it fit in the smaller pane size.

Very, very handy when you're moving through terminals quickly and you want to check out something.

@vscodebot
Copy link

vscodebot bot commented Apr 11, 2018

@Tyriar
Copy link
Member

Tyriar commented Apr 11, 2018

This has not been asked for before but I'm aware of the feature. You currently have the ability to maximize the panel (workbench.action.toggleMaximizedPanel), not a split within the terminal.

@Tyriar Tyriar added feature-request Request for new features or functionality terminal Integrated terminal issues labels Apr 11, 2018
@costincaraivan
Copy link
Contributor Author

costincaraivan commented Apr 11, 2018

I know about that toggle, but it's not the same thing 😄

Offtopic: And that toggle doesn't really do what it says on the tin 😛 (it doesn't maximize "fully")

@FancyBanana
Copy link
Contributor

Found a solution (which should be included by default IMO):
in settings.json add "workbench.action.toggleMaximizedPanel" to "terminal.integrated.commandsToSkipShell" list.

@Tyriar
Copy link
Member

Tyriar commented Sep 19, 2018

@FancyBanana I think the OP wants the active terminal split pane to go full screen, including the side bar. Your issue is a problem though which I'll fix up now.

@Tyriar
Copy link
Member

Tyriar commented Sep 19, 2018

@FancyBanana coming in 1.28 aacaecc

@costincaraivan
Copy link
Contributor Author

costincaraivan commented Sep 20, 2018

Yes, I want the active terminal split pane to go full screen, filling at least the terminal side bar to 100%.

Ideally, if the terminal evolves and can be placed anywhere, including a normal tab, the terminal will have the ability to be maximized and terminal splits will also have this ability (+ the ability to be restored to their previous size).

Check out tmux for clarification: https://sanctum.geek.nz/arabesque/zooming-tmux-panes/ (there's even a nice animation showing exactly what I mean)

@glowtape
Copy link

glowtape commented Oct 4, 2018

Maximized terminal pane would be nice. VS Code makes as a nice host for a Powershell console.

@robclancy
Copy link

I use vscode in i3 with 3 terminals tiled below. I'm moving to inbuilt terminal now that it has splitting but I used to fullscreen a terminal often when doing things like git status or git diff. So that's my use case for wanting proper terminal fullscreen.

@Tyriar Tyriar changed the title Allow maximizing/reverting the terminal pane Allow maximizing/restoring a single terminal pane Aug 14, 2019
@Tyriar
Copy link
Member

Tyriar commented Oct 8, 2019

FYI @sbatten, this could be generalized for editors and the other panels as well.

@Tyriar Tyriar added this to the Backlog milestone Oct 8, 2019
@umdstu
Copy link

umdstu commented Mar 19, 2021

I too was looking for this functionality as well (or rather, in a roundabout way). I had been attempting to move a split terminal back to its own panel (uniquely accessible via the active terminals dropdown that exists) so that I could then see more of the context (and then could optionally use the existing terminal "Maximize Panel Size" functionality to see even more of it) .

Please consider adding this!

Thanks

@Tyriar Tyriar changed the title Allow maximizing/restoring a single terminal pane Allow maximizing/restoring a single terminal or editor pane Sep 1, 2021
@Tyriar Tyriar assigned sbatten and unassigned Tyriar Sep 1, 2021
@Tyriar Tyriar added workbench-views Workbench view issues and removed terminal Integrated terminal issues labels Sep 1, 2021
@Tyriar
Copy link
Member

Tyriar commented Sep 1, 2021

Reassigning as this should be a feature that works across editors and maybe arbitrary views as well.

@zljubisic
Copy link

I would like to have a key binding to maximize terminal to full screen with no VS code interface. Something like I have just started a new "Windows terminal". With the same key binding terminal should be restored to its previous size.

@erikbjoern
Copy link

erikbjoern commented Nov 5, 2022

In my experience there is more similar keyboard shortcuts missing, not least such a small thing as resetting the side panel width (just like it behaves when you double click its border).

Having the ability to in-/decrement the size like we can with the terminal would also be great. Especially if there were, as many have requested before, the option to decide for yourself how large the steps should be.

This could also be implemented as "resize currently focused pane" and the ability to move focus between different sections could be improved.

@Gerschel
Copy link

Gerschel commented Dec 6, 2022

I'm a heavy vim/tmux user. I've got my vim keybindings setup in vscode, and tmux in my terminal. I'm very accustomed to ctrl+b z to zoom into a pane, and out. Sometimes in vim I go zen mode. So in a terminal, I can already zoom in and zen 80% wide from 10% off the left, using two keybindings. I put in my vote for this to be added to vscode. Vscode has been the only contender that could pull me away from my setup (that I can scp into any environment or use remotely).

image

@shankara-n
Copy link

Is this planned to be done?

@carlosflorencio
Copy link

Very good demo of this functionality:

190786962-01047891-38b1-4e87-bd9b-e8eca9acc8b8.mp4

From https://github.com/anuvyklack/windows.nvim.

Instead of having this feature builtin in the editor, with the right exposed apis we can have an extension providing this feature.

Some APIs I think are missing and required for this:

  • Control the editors size (width and height)
  • More accurate event listeners when switching editors (e.g window.onDidChangeActiveEditorGroup())
    • The existing window.onDidChangeActiveTextEditor() might be enough for a hacky solution but it's not ideal because when it fires the current state of the window.tabGroups.activeTabGroup is still outdated iirc)
  • Command to open the sidebar (currently there is only workbench.action.toggleSidebarVisibility and workbench.action.closeSidebar)

@madprops
Copy link

Only having horizontal splits that can't be maximized makes the terminal too cramped and hard to work with.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature-request Request for new features or functionality workbench-views Workbench view issues
Projects
None yet
Development

No branches or pull requests