First Look: Hands-On with Windows Terminal

Tom Fenton goes under the hood of Windows Terminal (currently only available in Preview Mode).

One of my many pet peeves with Microsoft Windows is Windows Console – I find it asinine that you cannot resize it, it doesn't have tabs, and reconfiguring it is irritating. Now, after 20 plus years of aggravation, Microsoft has finally released an update to Console called Windows Terminal. In this article, I'll give a basic overview of Windows Terminal and its features, how to install it, and then I will give some of my final thoughts.

For the time being, Windows Terminal is only available in preview mode, and to access it you will need to be running Windows version 18362.0 or higher; in order to do so, you will need to first be part of the Windows 10 Insider program. You can see my article on how to join the Insider program here.

Some of the general features of Windows Terminal include emulation for VT, 24-bit color, and ConPty. Windows Terminal also allows you to open multiple sessions that you can switch between via tabs, and these sessions can be connected to a standard command-line shell, a PowerShell shell, a Windows Subsystem for Linux (WSL) shell, or you can even access Azure via an Azure-hosted Cloud shell. Moreover, you can resize and assign custom backgrounds to these sessions, including custom colors, custom images, or transparent. Also, within the sessions, you can display text characters or you can use glyphs and emojis. To accomplish this, Windows Terminal uses a GPU-accelerated DirectWrite/DirectX-based text rendering engine.

To install Windows Terminal, I went to Windows Store from my Windows 10 system and searched for it. After I saw Windows Terminal (Preview) (Figure 1) come up, I clicked Get, which downloaded and installed it on to my system. Note: Windows Store will not allow you to get Windows Terminal on an unsupported version of Windows 10.

Figure 1. Windows Store

After Windows Terminal had finished installing, I launched it and found that I could resize it. When I selected the down arrow on the header, it displayed a drop-down menu that allowed me to select the shell that I wanted to access or to configure its settings (Figure 2).

Figure 2. Drop-down menu

From the drop-down menu, I was able to launch a Windows PowerShell (Figure 3), Windows Subsystem for Linux shell (Figure 4), and a Azure Cloud Shell (Figure 5)—and switch between them by using the tabs at the top of Windows Terminal.

Figure 3. PowerShell
Figure 4. WSL shell
Figure 5. Azure shell

I selected Settings from the drop-down menu, which brought up a file named profiles.json in Notepad (Figure 3). The file was divided into four sections: Global, Key Binding, Profiles, and Schemes. I didn't modify any of the setting, but information on the values for the settings can be found in the Windows Terminal documentation found here.

Figure 6. Configuration file

I found that I could open an instance of Windows Terminal from the command line or from Windows Run prompt (WIN +R) by entering wt.

After working with Windows Terminal for a couple of hours, I found that it was pretty basic and lacks a lot of essential features; for instance, you can't reorganize the tabs for the shells that you have open or tear off tabs to create new windows, and you have to use a Jason file to configure the shells. Despite these shortcomings, however, I will continue to use it as I can easily resize it and open multiple shells in a single window. Yes, there are more powerful 3rd party shell managers available, but it seems like whenever I get around to using one, it becomes a pay-for product, does not support the release/version of Windows that I am using, or quits being maintained.

Microsoft has said they will take feedback on Windows Terminal this summer and fall, and that it should be available to the general public by the end 2019.

About the Author

Tom Fenton has a wealth of hands-on IT experience gained over the past 30 years in a variety of technologies, with the past 20 years focusing on virtualization and storage. He previously worked as a Technical Marketing Manager for ControlUp. He also previously worked at VMware in Staff and Senior level positions. He has also worked as a Senior Validation Engineer with The Taneja Group, where he headed the Validation Service Lab and was instrumental in starting up its vSphere Virtual Volumes practice. He's on X @vDoppler.


Subscribe on YouTube