Windows Terminal Preview v0.11 Release

Kayla

April 22nd, 2020

We are back with one last major update before the 1.0 release of Windows Terminal! Releases between now and then will be revisions of this version. This is the v0.11 release and you can download the Terminal from the Microsoft Store or from the GitHub releases page. Let’s see what has changed with this update!

Azure visualization – https://github.com/msleal/asciivmssdashboard

Localization

This is the first Windows Terminal version that has support for non-English UI languages. We are still working out the bugs with this, so please bear with us. 😊 If you find any translation issues, please file them on our GitHub!

We have made some changes to our settings that we’d like to bring to your attention. We recommend you move your settings file out of the folder and have the Terminal automatically generate a new one. Then, you can copy your settings back over.

Settings.json

The profiles.json file has been renamed to settings.json. If you already have the Terminal installed, your file name will automatically update.

Cascadia Code

Cascadia Code has been set as the default font for all profiles automatically generated by the Terminal. If you want to change your font, you can add the fontFace property to any profile or to the defaults section.

Tango color schemes

Terminal now ships with the Tango Dark and Tango Light color schemes.

Copy and paste

Copy and paste are bound to ctrl+c and ctrl+v , respectively, in the newly generated settings.json file. This means these key bindings will work alongside ctrl+shift+c and ctrl+shift+v and you can easily remove them. Ctrl+shift+c and ctrl+shift+v are still included in the defaults.json file, so you will still have a key combination you can use to copy and paste if you choose to remove ctrl+c and ctrl+v .

👉 Note: If you want to free up a default key combination, you can set it to unbound or null in your settings.json file.

{ "command": "unbound", "keys": "ctrl+shift+c" }, { "command": null, "keys": "ctrl+shift+v" }

Formatted copying

We have changed the default behavior of copying to copy plain text by default. A new global setting has been added to the newly generated settings.json file called copyFormatting . This is set to false by default, however you can change it to true to always copy the HTML and RTF formatting.

👉 Note: In defaults.json, copyFormatting is set to true in order to not break existing users.

Removed settings

In preparation for v1.0, we have removed some previously deprecated settings. We know this will likely impact your workflows, but we are hoping this is a one-time event.

“Globals” namespace

The Terminal no longer supports the globals property in the JSON file. If you have settings inside the globals object, they will be ignored. To fix this, remove the globals object and move your global settings into the root of the JSON file.

Application theme

The global setting requestedTheme has been renamed to theme . This helps clean up the naming and provide flexibility for theming in the future.

"theme": "system"

Copying as a single line

The copyTextWithoutNewlines command and the argument trimWhitespace for copy have been removed in favor of the singleLine argument. This naming change helps better explain how the feature works. If you enable this as true for a copy key binding, the content copied from the Terminal will be on one line when pasted.

{ "command": { "action": "copy", "singleLine": true ), "keys": "ctrl+alt+c" }

Creating a tab of a specific profile

The first iteration of creating a new tab of a specific profile had key binding commands from newTabProfile0 to newTabProfile8 . We removed these commands in favor of a more flexible alternative.

👉 Note: Indexing in the Terminal starts at 0.

{ "command": { "action": "newTab", "index": NUMBER }, "keys": "ctrl+shift+NUMBER" }

Navigating to a specific tab

Tab navigation now has the same structure as new tab creation, where switchToTab0 through switchToTab8 have been removed in favor of the index property.

👉 Note: Indexing in the Terminal starts at 0.

{ "command": { "action": "switchToTab", "index": NUMBER }, "keys": "ctrl+alt+NUMBER" }

Splitting panes

To allow for more options when splitting panes, the splitHorizontal and splitVertical commands have been removed in favor of the new key binding format. Additionally, if you don’t provide a split direction, the Terminal will default to splitting using auto , which will split to provide the largest surface area.

{ "command": { "action": "splitPane", "split": "horizontal"}, "keys": "alt+shift+-" }, { "command": { "action": "splitPane", "split": "vertical"}, "keys": "alt+shift+plus" }

Focusing between panes

Originally, you could use moveFocusDown , moveFocusUp , moveFocusLeft , moveFocusRight as key binding commands to navigate between panes. We have removed these and have added the following formats as replacements:

{ "command": { "action": "moveFocus", "direction": "down" }, "keys": "alt+down" }, { "command": { "action": "moveFocus", "direction": "up" }, "keys": "alt+up" }, { "command": { "action": "moveFocus", "direction": "left" }, "keys": "alt+left" }, { "command": { "action": "moveFocus", "direction": "right" }, "keys": "alt+right" }

Resizing panes

To follow the same key binding architecture, the pane resizing commands ( resizePaneDown , resizePaneUp , resizePaneLeft , resizePaneRight ) have been removed. Below is the new format for resizing panes.

{ "command": { "action": "resizePane", "direction": "down" }, "keys": "alt+shift+down" }, { "command": { "action": "resizePane", "direction": "up" }, "keys": "alt+shift+up" }, { "command": { "action": "resizePane", "direction": "left" }, "keys": "alt+shift+left" }, { "command": { "action": "resizePane", "direction": "right" }, "keys": "alt+shift+right" }

Changing the font size

The following key binding commands allowed you to change your font size, but they are now removed: decreaseFontSize , increaseFontSize .

You can modify your font size by using the below key bindings, which use a delta that defines the font size change in points.

{ "command": { "action": "adjustFontSize", "delta": -1 }, "keys": "ctrl+-" }, { "command": { "action": "adjustFontSize", "delta": 1 }, "keys": "ctrl+=" }

Bug fixes

🐛 The lines that appeared between solid blocks of background color are gone!

🐛 Command line arguments should trigger more reliably in the order you expect them to.

🐛 The input stack has been changed to address some issues with non-US-104 QWERTY keyboard layouts.

🐛 The window borders now respect your application theme.

Top Contributors

We love working with the community on GitHub and we’d like to recognize some individual contributors who have made an impact on this release!

Contributors Who Opened the Most Non-Duplicate Issues

🏆 Qantex

🏆 j4james

🏆 codeofdusk

🏆 AnuthaDev

🏆 Chips1234

Contributors Who Created the Most Merged Pull Requests

🏆 pi1024e

🏆 j4james

🏆 jsoref

🏆 jsoref

🏆 pi1024e

🏆 j4james

Until next time

We hope you’ve been enjoying the Windows Terminal so far and we’re eager to release v1.0 very soon. If you have any questions or feedback, feel free to reach out to Kayla on Twitter (@cinnamon_msft). If you find any bugs or would like to file a feature request, you can create a new issue on our GitHub page. We’ll see you soon with our 1.0 release!