Windows Terminal Preview 1.16 Release

Kayla Cinnamon

The Windows Terminal team is back with another release for you! This release introduces version 1.16 to Windows Terminal Preview and updates Windows Terminal to version 1.15 with these new features. As always, you can install Windows Terminal and Windows Terminal Preview from the Microsoft Store, from the GitHub releases page, or by using winget. Here’s what’s new:

Image Terminal sizzle themes Screenshot from the Windows Terminal launch video

Theming

We’ve added even more customization possibilities with the introduction of themes.

Image Terminal Themes It could be brown, it could be blue, it could be violet sky… 🎢

themes is a global property that can contain a variety of themes objects, which will appear in the Theme dropdown on the Appearance page of the settings UI. Below are the objects each themes object can accept.

πŸ‘‰ Note: Themes are only editable using the JSON file, but they will appear in the Theme dropdown in the settings UI.

Image Terminal Theme setting

Sample JSON

"themes": 
[
    {
        "name": "Grace Kelly",
        "tab": 
        {
            "background": "#00515EFF",
            "showCloseButton": "always",
            "unfocusedBackground": null
        },
        "tabRow": 
        {
            "background": "#061612FF",
            "unfocusedBackground": "#061612FF"
        },
        "window": 
        {
            "applicationTheme": "dark"
        }
    }
]

Tab

You can modify settings that are applied to the tab with the tab object inside a themes object. The tab object supports background, unfocusedBackground, and showCloseButton properties. background will set the color of the tab background when the tab is active and will always show colors at full opacity. unfocusedBackground sets the color when the tab is inactive and showCloseButton toggles the appearance of the close button on the tab.

Tab row

You can modify settings that are applied to the tab row with the tabRow object inside a themes object. The tabRow object supports background and unfocusedBackground properties. background will set the color of the tab row background when the window is focused. unfocusedBackground will set the color of the tab row background when unfocused.

Window

You can modify settings that are applied to the window with the window object inside a themes object. The window object supports applicationTheme. applicationTheme will apply the colors of the selected application theme to the terminal window unless other colors are specified.

Full documentation on how to set up themes can be found on our docs site.

New default colors

We have modified some of the default colors in Windows Terminal for a more cohesive appearance. Additionally, we are defaulting Terminal to use dark theme, rather than following the system theme. The reasoning behind this change is that the color scheme is dark by default, but our window theme had been set to system. System theme in Windows 11 is defaulted to light unless changed by the user. This presented a conflict between the theme and color scheme in Terminal. Given that Terminal has historically had a black background with its Campbell color scheme, for a consistent UI experience, we’ve decided to change the window theme to be dark by default as well, rather than the alternative of making the color scheme have a light background.

New colors

Image New Dark Terminal Colors

Image New Light Terminal Colors

Old colors

Image Old Dark Terminal Colors

Image Old Light Terminal Colors

New text rendering engine

In version 1.13, we released the new, experimental text rendering engine under an experimental feature you could enable for a profile (experimental.useAtlasEngine). In this release, we are making this new renderer the default text renderer for all profiles. The new renderer is more performant and now supports additional pixel shaders (including the retro effect), bold text, and underline/overline/hyperlink lines. If your machine doesn’t have a GPU, or you’re remoting to a virtual machine that doesn’t have a GPU, it will fall back to a more performant mode that doesn’t require hardware support.

Set where new tabs appear

You can now set where new tabs open with the new newTabPosition global setting (Thanks @serd2011!). This setting also appears on the Appearance page in the settings UI. You can set new tabs to open either at the end of all of your tabs, or after the currently selected tab.

"newTabPosition": "atTheEnd",
"newTabPosition": "afterCurrentTab"

Redesigned color schemes page

We found that our color schemes page wasn’t the most intuitive and could use a design refresh. We’ve updated the settings UI color schemes page to improve its styling and user flow. We’ve also added a “Set as default” button, which will apply a color scheme as your default color scheme across all profiles. Profiles that specify a color scheme will use their specified scheme instead of the default.

New design

Image New Color Schemes Page

Old design

Image Old Color Schemes Page

New actions

Expand selection to word

The new expandSelectionToWord action expands the beginning and end of a text selection to encompass the word(s) the selection is on.

{ "command": "expandSelectionToWord" },

Miscellaneous improvements

πŸ› οΈ Mark mode key bindings now precede custom key bindings.

πŸ› οΈ When in mark mode, you can now Tab and Shift+Tab between hyperlinks.

πŸ› οΈ The setting to adjust the colors of indistinguishable text is now enabled by default.

πŸ› οΈ We’ve modified the default dark and light theme colors for a more seamless appearance between the tab and the text buffer.

πŸ› οΈ The back button in the command palette now returns to the previously selected item in the filtered action list (Thanks @JerBast!).

Bug fixes

πŸ› When BEL is emitted in a light terminal, the flash in the pane will now darken rather than brighten (Thanks @Fyrebright!).

πŸ› When pasting a multiple lines, the whitespace is no longer removed (Thanks @serd2011!).

πŸ› CloseOnExit will now automatically close the Terminal when terminated if it launched by a process, otherwise Terminal will close with the graceful behavior.

Top contributors

We’ve had a lot of contributions for this release and we’d love to showcase those who have especially made an impact!

Contributors who opened the most non-duplicate issues

πŸ† vertigo220

πŸ† j4james

πŸ† ashemedai

Contributors who created the most merged pull requests

πŸ† serd2011

πŸ† j4james

πŸ† MyloCyrus

πŸ† davidegiacometti

Contributors who provided the most comments on pull requests

πŸ† j4james

πŸ† JerBast

πŸ† EliaSchiavon

Cheers!

We hope you enjoy this latest release of Windows Terminal! More information on these new features can be found on our docs site and if you find any bugs or have feature requests, feel free to file them on GitHub. If you have any questions you can reach out to Kayla (@cinnamon_msft) on Twitter. Happy theming!

May 2022 signatures