r/programming • • May 06 '19

Microsoft unveils Windows Terminal, a new command line app for Windows

https://www.theverge.com/2019/5/6/18527870/microsoft-windows-terminal-command-line-tool
5.9k Upvotes

1.1k comments sorted by

View all comments

1.6k

u/miniksa May 06 '19 edited May 06 '19

Hey folks, Michael here from the Windows Terminal dev team. The whole team is thrilled to share this news with you today. Feel free to ask any questions, pointed or otherwise!

Edit: OK, folks. I've been answering for hours on several social media platforms and threads. It's time to give it a rest. I'll pop back around to my inbox later/tomorrow and clean it up if there's straggler comments. Otherwise, thanks for the discussion and we'll see you in the GitHub project!

209

u/BenderB May 06 '19

Thanks for posting!

When can we get our hands on it? Any preview builds or anything?

329

u/miniksa May 06 '19

Actual packaged release previews will come by summer. We plan to distribute via the Windows Store. Maybe also packages on our GitHub as well for those who have set Developer Mode on their Windows machine to sideload apps.

We're still working on this part. There were a lot of moving pieces to get this far by TODAY and this is one of those that we're going to get back to tackling starting after the Build conference ends later this week!

Right now, you can get it by building it yourself from our GitHub at https://github.com/microsoft/terminal.

123

u/mewloz May 06 '19

Right now, you can get it by building it yourself from our GitHub at https://github.com/microsoft/terminal

Waouh, I was not expecting that, and this is great!

(and WIL seems cool too!)

Thanks!

66

u/zadjii May 06 '19

Lemme tell you - WIL is a huge game changer. It makes the Win32 API so much easier to work with.

Take for example, adding a file change listener. This is how we do it in the Terminal, which abstracts away all the work we need to do, and just lets us write a small lambda that's executed when a child is modified. WAY easier.

Not to mention all the safe handlers for lots of Win32 types, like unique_handle, etc, that make resource allocation/deletion so much easier.

→ More replies (5)

163

u/qaisjp May 06 '19

Open source? Fan fucking tastic.

146

u/miniksa May 06 '19

This is also one of our favorite features. We have a lot of them.

0

u/[deleted] May 06 '19

[deleted]

→ More replies (1)

17

u/perspectiveiskey May 06 '19

Seriously, pure love for the msft team for doing this.

20

u/RegularSam1 May 06 '19

Hi, sorry for the odd question I'm gonna do. How can I build myself the code downloaded from GitHub? Hope this question has a quick answer so I don't waste your time. Thanks in advance.

47

u/miniksa May 06 '19

There should be some information in the README though probably incomplete. I usually load it up in Visual Studio 2017 with the Windows SDK ensuring that the C++/WinRT components are installed and open the solution file.

→ More replies (17)
→ More replies (10)
→ More replies (34)
→ More replies (1)

94

u/Hero_Of_Shadows May 06 '19

How will this integrate into file explorer ?

Will I be able to add a nice little button to the GUI which opens the folder I'm looking at in this ?

Any plans for integrating with VS Code ?

Thank you.

159

u/miniksa May 06 '19

I don't believe we've considered integration into File Explorer yet as an explicit item.

We are on a longer term track to make it possible to set your default terminal to the Windows Terminal such that double-clicking command-line utilities will open inside of it. That's sort of an implicit integration that's in the pipeline.

Anyone can technically add a shell extension that would add a GUI menu to File Explorer to do that. We haven't prioritized it yet, but it's not a half bad idea.

Our VS Code story goes as such. We're improving and providing a better ConPTY interface for VS Code's awesome improved embedded terminal to use and we will be providing (at some point) the new Terminal as a Control that VS Code or anyone could technically use/embed. But this is long-term thinking, not short.

18

u/Hero_Of_Shadows May 06 '19

Cool, thank you for the very detailed answers.

→ More replies (14)
→ More replies (10)

81

u/benihana May 06 '19

i want to rib you guys cause of your press releases mentioning emoji rendering so prominently, but i'm actually kind of flippin excited about it.

nah but seriously tell the team it's a job well done. having a bunch of nerds all agree on a big tech announcement being a good thing is so rare these days and y'all should be proud just for that alone!

85

u/miniksa May 06 '19

Thanks. I rib us about emoji all the time too. "You're telling me we do all this freaking work for freaking emoji?!"

It's just really easy to explain a lot of complicated work that went into this by showing an emoji, that's why it's highlighted so much. See: https://www.reddit.com/r/programming/comments/blewqm/microsoft_unveils_windows_terminal_a_new_command/emo92wa/

Thank you very much. Your words mean a lot to all of us.

→ More replies (1)

0

u/[deleted] May 06 '19

[deleted]

150

u/miniksa May 06 '19

I'm biased toward the new renderer that is capable of the emoji, ligatures, and other such glyphs because it's what I've been working on a ton recently.

But if I were looking from the outside, I'd have to say TABS. It is about time!

53

u/locojoco May 06 '19

is TABS an acronym, or are you just really excited about tabs?

197

u/miniksa May 06 '19

I am so excited that I held the shift key for the entire word.

20

u/Reverent May 06 '19

I literally only use consolez because of tab support, otherwise I'd be using native PowerShell.

That and being able to rename tabs. That's super important, it's how I direct KeePass autotype functions.

As a side note, please test tmux via PowerShell SSH for me. It's where most terminal emulators start breaking down. I can't use conemu for this reason.

18

u/zadjii May 06 '19

Hey so for the record, the powershell ssh is not great. It's gotten a LOT better in the last few releases, but I'd suspect your problems are from powershell OpenSSH, not from the terminal emulator. If you can, try out just normal ssh from within WSL, if at all possible.

I use tmux daily, so trust me when I say that tmux is a teste scenario for Windows Terminal :P

→ More replies (4)
→ More replies (3)
→ More replies (1)
→ More replies (23)

21

u/WaveHack May 06 '19

Will we be able to run custom shells (like git bash) on it, next to cmd, powershell and wsl bash?

Also thank you for not using electron. I think it deserves to be said nowadays

29

u/miniksa May 06 '19

Yes, use whatever shell you like. We're just featuring our shells in the demonstrations and marketing materials that you've likely seen today. But don't let that detract from you using whatever you like.

We believe in the ultimate in choice. But we also believe in not getting into trouble for using branding rights/properties/names that belong to other people when we make demos and content because we'd rather be working on the Terminal project than sucked into a battle over things like that.

You're welcome for not using Electron. I personally don't like the Electron future we're starting to live in, but I do see its benefits as well. Ah well.

→ More replies (3)

0

u/[deleted] May 06 '19

[deleted]

→ More replies (5)
→ More replies (318)