Windows Terminal, announced at the build conference in May, is now available as a preview in the Microsoft Store. In the future it should become the common console for all shells and command-line programs. Currently, it stands out from the conventional console primarily because of its design options.

Wolfgang Sommergut

Wolfgang Sommergut has over 20 years of experience in IT journalism. He has also worked as a system administrator and as a tech consultant. Today he runs the German publication WindowsPro.de.

The console built into Windows 10 made significant progress during the latest updates. These include for example, enhanced text selection and copying and pasting capabilities (selecting across line breaks and support for Ctrl+C and Ctrl+V). The latest achievement in Windows 1903 is zooming the console window with Ctrl plus the mouse wheel.

Support for virtual terminal escape sequences ^

Another significant change that Windows users have barely noticed is the support for virtual terminal (VT) escape sequences. With its help, many Unix programs running in text mode control the terminal appearance, including not only the colors but also the cursor position and shape.

Default settings for programs using VT codes under the Terminal tab

Default settings for programs using VT codes under the Terminal tab

This extension was Microsoft's response to the requirements of the Linux subsystem, whose programs often use VT sequences. However, according to Microsoft, the aforementioned innovations also revealed the limitations of the existing console subsystem, which must remain compatible with existing text-mode programs.

Open-source Windows Terminal ^

As a result, the manufacturer began developing Windows Terminal, which will form the basis for various shells and command-line tools in the future. Like a number of other recent projects, such as PowerShell Core, it appears under an open-source license.

One innovation of Windows Terminal is the support for tabs. There were tabs for the conventional console in build 17666 of Windows 10, but they have removed the feature and have never shipped it with an official release.

Redstone 5 has already offered tabs; this screen shows the command prompt, Windows Explorer, and several apps in the same window

Redstone 5 has already offered tabs; this screen shows the command prompt, Windows Explorer, and several apps in the same window

Another special feature of Windows Terminal is that it uses a DirectWrite/DirectX-based rendering engine. Therefore, it can display all characters and symbols (including emoticons) contained in the computer's fonts. In addition, the display should be much faster than the old console's.

Deployment as a Store app ^

An essential difference to the previous console system is that the Windows Terminal is a Universal Windows Platform (UWP) app. As such, it has recently become available via the Microsoft Store. It requires at least Windows 10 1903 and is, as is usual with Store apps, separately installed for each user.

The Windows Terminal preview is downloadable from the Microsoft Store

The Windows Terminal preview is downloadable from the Microsoft Store

After the first start, the Windows Terminal preview presents itself relatively plainly. There is no system menu where the conventional console has entries for edit, properties, and default values. By default, PowerShell Core starts automatically in the first tab.

Idiosyncratic usability ^

If you try to move the window by holding it with the mouse on the title bar, you will notice that this does not work, and the Terminal behaves against this Windows convention. You can only move it if you place the mouse to the right of the plus symbol.

The window is not movable using the title bar to the left of the + symbol

The window is not movable using the title bar to the left of the + symbol

The plus symbol lets you open a new tab where you can immediately decide whether to run PowerShell Core, Windows PowerShell, or cmd.exe in it. So-called profiles determine the tab configuration, that is, which shell should run in them and what the window appearance should look like.

Configuration by editing a JSON file ^

A configuration file opens as soon as you execute the Settings command. It is available in JavaScript Object Notation (JSON) format and offers numerous parameters for customizing a terminal. The currently supported settings are documented on GitHub. Configuring the console via a GUI is currently not available.

Structure of the JSON configuration file for Windows Terminal

Structure of the JSON configuration file for Windows Terminal

If you change a profile's settings, for example, the font size or background color, the terminal will immediately apply the changes so that no restart is required.

Integrating your own programs in Windows Terminal FTP here

Integrating your own programs in Windows Terminal FTP here

You can integrate via your own profiles any other text-mode programs, such as the FTP or Telnet included in Windows. The easiest way to do this is to copy an existing section within the JSON file and adapt it accordingly. Among other things, you must have your own GUID for each profile, which you can easily create via PowerShell.

Running Terminal as administrator ^

A common requirement with the various shells and command-line tools is that you start them as administrator. Microsoft's decision to implement the Windows Terminal as a Store app has an undesirable effect here.

Running Windows Terminal as administrator

Running Windows Terminal as administrator

My attempt to start the Windows Terminal as the default user under a privileged account caused an error message to pop up because I hadn't yet installed the app for this administrative user.

You must install Windows Terminal separately for each user, or you might not be able to run it as administrator

You must install Windows Terminal separately for each user, or you might not be able to run it as administrator

Only after I had done this could I start the Terminal in this privileged context. It then opens all shells as administrator in each new tab.

The alternative approach of starting PowerShell or cmd.exe with elevated privileges using the runas command or PowerShell's Start-Process -NoNewWindow from an existing session always opened an external window with a conventional console.

Conclusion ^

The extent to which these shortcomings are only symptoms of an early preview will soon become apparent. The number of settings is already greater than the conventional console's, so many Windows Terminal aspects are customizable (albeit by editing a JSON file).

Microsoft's approach to making new products available to users at a very early stage also means that they initially have little value. There are currently very few reasons to use the tool.

Are you an IT pro? Apply for membership!

4+

Users who have LIKED this post:

  • avatar
  • avatar
  • avatar
Share
2 Comments
  1. Mike Kanakos 2 months ago

    Nice write-up Wolfgang!

    0

  2. Paolo Maffezzoli 2 months ago

    Nice info, Windows terminal is an interesting tool to have a central location for cmd line, PowerShell, and WSL.

    0

Leave a reply

Your email address will not be published. Required fields are marked *

*

© 4sysops 2006 - 2019

CONTACT US

Please ask IT administration questions in the forums. Any other messages are welcome.

Sending

Log in with your credentials

or    

Forgot your details?

Create Account