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

Please implement a tabbed command line window #2393

Closed
Chris2011 opened this issue Aug 3, 2017 · 31 comments
Closed

Please implement a tabbed command line window #2393

Chris2011 opened this issue Aug 3, 2017 · 31 comments
Labels
Milestone

Comments

@Chris2011
Copy link

  • Your Windows build number: Microsoft Windows [Version 10.0.15063]

It would be very nice to have a tabbed command line window, where you can ust ctrl + t to open a new command line. I would like to see it inside the WSL Bash, but of course it would be great to have it for cmd and ps too for all users. I know this is not related to WSL but I only wanted to mention it.

Yes I know ConEmu but for only this little feature, it is a bit to overloaded with functions which I don't need. I used it very often but it should be a build in functionality as for Linux terminals.

Regards

Chris

@Chris2011
Copy link
Author

I think the tool is called terminator for ubuntu.

@masoomshaikh
Copy link

umm, why not use tmux instead?

@Chris2011
Copy link
Author

I only know tmux from using it while you can split the screen in more than one terminal. I want to have this functionality + to open a new tab with a new terminal, while you don't see the others. Like a new tab in a browser. Is this possible with tmux?

The other thing of tmux is, I thought you have to know the tmux shortcuts to use it correctly. Only guessing. I saw it from a presentation that I have to use some shortcuts to use it.

@zadjii-msft
Copy link
Member

This is our highest requested feature, and we've discussed it before on github at greater length.

We're not ruling it out. I can't confirm or deny that work is being done on it. I can't commit to a timeframe.

... Though somehow it doesn't look like there's already an issue for this... Not really sure how that's possible, so I guess congrats on being the first to file it here :)

@Chris2011
Copy link
Author

Wuhu, great. Thx :D

@guijianchou
Copy link

VScode will meet u need

@SRGOM
Copy link
Contributor

SRGOM commented Aug 6, 2017

So I just noticed there is a comment from user:bitcrazed saying "Would LOVE the console team to go to town on the mult-pane/tabbed interface and do something like this!!". It's from beginning of last year. I always thought he WAS the console team (in some capacity). Is he not or is the comment old?

Also, I don't know what team you guys are, kernel or what but I think you should take over some kinda PowerUser/devexperience team and create a good tiling window manager for Windows, like i3 (as referred to my BitCrazed in the comment). Just my two cents lol, but seriously, do it!

@benhillis
Copy link
Member

@SRGOM - You are correct, @bitcrazed is a PM on the console team. There is a mix of console people and kernel people (like me) on this GitHub.

@SRGOM
Copy link
Contributor

SRGOM commented Aug 6, 2017

@benhillis Ok, cool. Trimonthly reminder (lol) that you're doing God's work by making WSL. Thank you!

@benhillis
Copy link
Member

@SRGOM - the pleasure is ours! It's so rewarding to work on a project that people find so useful, and are passionate about. This GitHub community has been pivotal to our success.

@Chris2011
Copy link
Author

@benhillis great work. Really :) I use WSL every day. No need to install Linux or using a VM anymore :D

@MikeGitb
Copy link

MikeGitb commented Aug 8, 2017

So what is the reason this hasn't been implemented yet, despite being a highly rated feature for years? Backwards compatibility? Not enough developers? No one cares to touchy decade old code? Or was someone afraid that it would confuse the users (don't remember in which exact context I heard the last argument, but it was something windows related - maybe tabbed explorer)?

And yes: The WSL is great!

@mjblack
Copy link

mjblack commented Sep 18, 2017

There are tools out there that can do this currently. The one that I use is ConEmu. What they call tasks is pretty much different programs to launch. They also have a task for bash on windows as below is copied from it but adds a param to execute zsh shell.

%windir%\system32\bash.exe -cur_console:pm:/mnt -c zsh

@Chris2011
Copy link
Author

As you can see it in my original post, I already mentioned it ;)

Yes I know ConEmu but for only this little feature, it is a bit to overloaded with functions which I don't > need. I used it very often but it should be a build in functionality as for Linux terminals.

But it is to much boilerplate code, it is for more advanced usage, I don't need this, It should be simple as hell.

@wasabigeek
Copy link

@Chris2011 would Hyper suit your needs? CTRL + SHIFT + T opens a new tab.

@Chris2011
Copy link
Author

Maybe yes, but I don't want to use a 3rd-party-tool anymore like cygwin or babun shell or whatever, when we have it right now in Windows. I really like the idea of Hyper but I will use native bash here. But thx for the hint anyway :)

@kevinknowscs
Copy link

kevinknowscs commented Oct 20, 2017

Here is my experience using tmux with WSL. It has all kinds of painting bugs. I also show using Gnome-Terminal with tmux.

https://www.youtube.com/watch?v=GMHxSvuXDYc

@kevinknowscs
Copy link

kevinknowscs commented Oct 20, 2017

BTW, since someone mentioned Hyper, I just spent some time evaluating it. On the surface, it looks totally awesome. It has the features I'm looking for: tabs, panes, clipboard, etc.

Sadly, I found it too slow, especially when using it with vim. So I think we still need a good, high-performance, native console. It is the missing link in what could be a truly awesome Linux-on-Windows experience.

And then people can stop buying Macs just because they want a *nix command line.

@kevinknowscs
Copy link

Here's my experience with WSL and Hyper.js

https://www.youtube.com/watch?v=fZMVzk1ujf0

@zadjii-msft
Copy link
Member

@kevinknowscs The problem with the up arrow key not working in ConEmu is #111, and that's fixed in insiders builds. Your concerns with tmux repainting incorrectly are definitely real, something that I should look at, though, you can usually hit Ctrl+B, R in tmux to force a repaint of the entire window, and that should solve anything weird you get from resizing. I use tmux as my daily driver, and it's really gotten a hell of a lot better since release.

@bgshacklett
Copy link

There's a lot to like about Hyper.js; I especially like the fact that the configuration is just a .js file which can be versioned with the rest of my dot files. Unfortunately, there are two major short-falls for me: Ctrl+C doesn't function as expected with PowerShell (vercel/hyper#1121). In their defense, it looks like this might actually be an issue in win-pty, if not further upstream (rprichard/winpty#116). Aside from that, it doesn't appear to support 256+ colors on Windows (again due to limitations in winpty: rprichard/winpty#108). For now, ConEmu is the best option for me, though It's been crashing while attempting to open Vim on my home machine after installing some updates, which makes it impossible for me to use at the moment.

@kumarharsh
Copy link

There is a lot to like about Hyper, yes, but it's so slow that doing anything non-trivial is not possible. An electron terminal app won't even come close to the performance of a native program like CMD/PS. ConEmu is the closest there is to a great console on Windows. I shiver at the amount of hacks hacks Maximus would have put into that to just play well with everything (CMD, PS, Git Bash, etc), and its far lighter than Hyper, which sometimes collapses under it's own weight (it's Memory usage is alarming). Yeah, ConEmu doesn't do this, but I think I'm fine with that. The only main issue I have with ConEmu is that it sometimes becomes slow after showing output, such as for git commands, etc. But I think that's mostly because of Windows limitations, as stated elsewhere in this repo.

@kghost
Copy link

kghost commented Dec 2, 2017

Please implement native win32 pty API (#1117), and let communities do the remaining works.

conhost/cmd sucks for years

@bgshacklett
Copy link

I'm sure we'd all like to see a proper extensible API, but there's no call to be rude about it. The Conhost team has been working extremely hard to make things better for us, and there have been a lot of improvements made in a short period of time, especially for something so core to the OS. We're going to have to be patient. This isn't the type of thing that can be fixed overnight.

@khuongduybui
Copy link

Will we be able to leverage the coming "Sets" feature?

@bitcrazed
Copy link
Contributor

Alas, no - sets only works with modern UWP apps - Console is (currently) a Win32 app which predates UWP by several decades.

Bear with us - we're working on a plan to fix this ;)

@bitcrazed
Copy link
Contributor

Note: Closing this issue as it's not WSL-specific, isn't a bug-level issue - it's a feature that's being tracked via the #1 Console UserVoice ask.

@kumarharsh
Copy link

Console is (currently) a Win32 app

Do you mean there's a UWP version in the works? 🤓

@Chris2011
Copy link
Author

Afaik it should work later for Win32 apps too, as I read news about the sets, but I think @bitcrazed knows best about that :D.

@bitcrazed
Copy link
Contributor

bitcrazed commented Dec 7, 2017

image

@WSLUser
Copy link

WSLUser commented Dec 7, 2017

Do you mean there's a UWP version in the works?

That would be great if they changed the console to a UWP app but alas, that day is far in coming.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests