Support tabbed interface
Great to see some of these improvements, especially the cut/copy/paste keyboard shortcuts. However, I've been seeking for a way for the cmd window to have a tabbed interface for a while. So, for example, I can run a ping/tracert etc. in one tab, a chkdsk in another tab, and something else in a third, without having multiple windows open taking up screen real estate.
Also consider adding panes side-by-side within the console.
Paul Pacheco commented
A thousand+ votes and 3 years stuck in the backlog. Meanwhile all MS has managed to do is change the color scheme:
Arg... the glacial pace of improvements to the console is so frustrating.
It is decades behind other operating systems.
Ives Stoddard commented
Having worked with a lot of operating systems, I still feel iTerm2 on macOS is one of the best terminal apps ever written. ConEmu is good, but doesn't feel as polished.
I almost wish Microsoft could throw some $$ at the iTerm2 project for a Windows port (with support from a few Win devs for low-level translations). The result would be an amazing cross-platform terminal app.
iTerm (plus posix / shell support) is one of the reasons I moved away from Windows in the first place. I got tired of cygwin + sshd + putty to localhost.
Valtteri Vuorikoski commented
Several people have suggested ConEmu, but I'd note that ConEmu (and ConsoleZ and similar applications) work by continuously polling the console buffer. ConEmu prioritizes performance and polls the foreground window at 60fps, while ConsoleZ polls far slower but feels a bit sluggish.
This pretty much prevents laptop processors from sleeping and kills battery life on "ultrabook" type machines. While the CPU use percentage as seen in Task Manager isn't that high, enabling the context switch delta column in Process Explorer or Process Hacker shows ConEmu causing thousands of context switches per second.
Therefore, improving conhost's interface is important. Of course it would be even better to have an official method for getting conhost's content without polling to allow alternate terminal apps to work more efficiently, but I guess this might go beyond the WSL team's mandate.
Brian Hirst commented
I would also include the ability for commands to be entered automatically into multiple tabs. As mentioned, copy/paste with keyboard, keyboard driven tab switching, and frankly, Properties could use a little modernizing.
Xeatheran Minexew commented
Note: you can have this today by using ConEmu
Gary Sieling commented
On the Mac, ITerm2 is a nice alternative to the screen / tmux, because it gives you a right click menu in the console that lets you split it vertically / horizontally.
Roy Tinker commented
Since WSL now supports 2-way invocation between Windows and ELF binaries, perhaps running multiple cmd.exe instances inside of tmux would accomplish this?
Scott Wade commented
Cmdr.net [ http://cmder.net/ ] has a great feature set that includes the ability to specify and/or configure what shell and config I want when opening up a new console tab. I would suggest Cmdr.net be a baseline feature set/configuration options that any new console functionality have
Aside, any/all advancements in this be the same and used as the console tab/window in Visual Studio Code
Clayton Dittman commented
You can just use the screen command to do this. It's really easy and the same thing really.
This isn't a feedback page for ConEmu. ConEmu having tabs does not preclude CMD from having the same feature. We want tabs in CMD.
There is already ConEmu. What's wrong with it?
Federico Ramírez commented
If it supports tmux, then I don't care about this feature.
Cory Calahan commented
Please make sure that PowerShell's interface is included as well as an additional entry was closed here: https://windowsserver.uservoice.com/forums/301869-powershell/suggestions/12844050-feature-request-provide-working-tabs-for-powershe?tracking_code=803f2fda167bc07ac11a1bd9ed20dcae
Would LOVE the console team to go to town on the mult-pane/tabbed interface and do something like this!!
It will be much more manageable if cmd support tabs. Just like the new editor Code we can make cmd single instance for better experience.
Daniel Watkins commented
And make the Screen Buffer Size Height value set to 32766 by default so we don't have to set it every time we open a cmd window! 300 lines of screen history is not enough!
I'm also looking for the option to attach a cmd window some other process started as a tab and detach of course.
Sometimes I have 4 cmd windows running applications that logs to the console and want to see the state of them in a grouped organized fashion in dynamic tiles of my choosing. Next to those I have cmd prompts for source control purposes in different paths.
Please make use of a frame with docking capabilities and draggable and resizeable so the user can create a layout.
It's a pretty common idea these days in IDEs.
Or use an OLE so the actual CMD window could be integrated in external apps like mremoteng or eclipse.
Here is how I'd do it.
Instead of squishing in tabs and multiple windows into cmd and then again doing the same work for powersehll all over again, why not let an independent procecess handle that part of user interaction.
So basic idea: When any one of the thus grouped cmd or powershell windows crashes, all the others remain unaffected. The presentation tool might even show some more or less helpful notification, when it looses contact to one of its shells.
If, on the other hand the presentation process dies, the shells themselves should simply keep running. (The user would not be able to interact with them or see their output for a few moments). If that happens simply after launching the presentation process again it should by default look for any orphaned running shells and present them to the user.
Later, when the basics are working add some nice features like grouping shell windows by "runs as administator" or "runs as user xy". All without compromising the speed and stability of the shell(s) itself.
I hear this one all the time... and I yearn for it as well. I find myself pressing Ctrl+T and Ctrl+W in pretty much every window I use. Thanks, browsers. :P
It's just one of the harder things to get right (either in this form, or the multiplexing form). If you've ever seen a sad tab in your favorite browser when some component crashes (or experienced the entire thing freezing up because one part misbehaved), that's most of what gives me trouble in thinking this one through.
There's a lot of good talk on this thread. Using hotkeys to switch tabs, blinking for succeeded/failed, tear away tabs... I'm taking notes.
I personally hope we get to this one day as well. :) --Michael