Windows Terminal Preview 1.17 Release

Christopher Nguyen

The Windows Terminal team is back with our first release of the year! πŸŽ‰
This release introduces version 1.17 to Windows Terminal Preview and updates Windows Terminal to version 1.16 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 in Windows Terminal Preview 1.17:

Windows Terminal now supports dropdown menu customization! Shoutout to @fwest98 for this feature! This feature includes support for adding folders, adding separators, and adding profiles. You can now arrange the dropdown menu to your liking! This is especially useful for organizing your Profiles. For now, this can be done in your settings.json file. The first time you save your settings in 1.17, we’ll convert your existing menu to the new format. This is lossless!

Here’s an example of how I customized my dropdown menu!

I have four Profiles (Windows PowerShell, Command Prompt, Developer Command Prompt for VS 2022, Developer PowerShell for VS 2022). I made my Command Prompt profile appear at the top of my dropdown menu, followed by my Windows PowerShell profile. After that, I added a separator and put all my VS 2022 profiles all under one folder called My VS Profiles to keep things tidy.

JSON

    "profiles": 
    {
        "list": 
        [
            {
                "guid": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}",
                "hidden": false,
                "name": "Command Prompt"
            },
            {
                "guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
                "hidden": false,
                "name": "Windows PowerShell"
            },
            {
                "guid": "{b16adc35-bf43-5693-b902-a45c96cb4735}",
                "hidden": false,
                "name": "Developer Command Prompt for VS 2022",
                "source": "Windows.Terminal.VisualStudio"
            },
            {
                "guid": "{3f518484-8030-5878-852d-8c9f0c8dd93e}",
                "hidden": false,
                "name": "Developer PowerShell for VS 2022",
                "source": "Windows.Terminal.VisualStudio"
            }
        ]
    },

    "newTabMenu": [
        { "type":"profile", "profile": "Command Prompt" },
        { "type":"profile", "profile": "Windows PowerShell" },
    { "type":"separator"},
        {
            "type":"folder",
            "name": "My VS Profiles",
            "icon": "",
            "entries":[
                { "type":"profile", "profile": "Developer Command Prompt for VS 2022" },
                { "type":"profile", "profile": "Developer PowerShell for VS 2022" }
            ]
        },
    ]

And here is the result!
Dropdown Menu Customization

Process Restart

After a process has been terminated, you can press Ctrl+D to close its pane or Enter to relaunch it.
If we can determine your working directory, we’ll also try to preserve it after you restart the process. Process Restart

Mica Support

Windows Terminal now supports using Mica as a background material on Windows 11.
Mica is an opaque, dynamic material that incorporates the theme and desktop wallpaper to create a highly personalized appearance. Mica is also designed for performance as it only captures the background wallpaper once to create its visualizations. You can read more about the Mica material here.

Mica support can be enabled in your settings.json file by setting useMica to true in your theme settings. Note that this is just a theme.window property. Let’s try this out!
Here is a Terminal without Mica applied. Windows Terminal without Mica applied Let’s try Mica out by creating a new theme called myNewTheme (I know, I’m creative 😏) in our settings.json and setting useMica to true.
πŸ‘‰ Tip: For the best visual results, set unfocusedBackground to #00000000 in tab and tabRow.

JSON

"theme": "myNewTheme",
    "themes": 
    [
        {
            "name": "myNewTheme",
            "tab": 
            {
                "unfocusedBackground": "#00000000"
            },
            "tabRow": 
            {
                "background": "#00000000",
                "unfocusedBackground": "#00000000"
            },
            "window": 
            {
                "applicationTheme": "dark",
                "useMica": true
            }
        }
    ]

Voila! Here is our Terminal with Mica! It’s definitely a big (yet subtle) change. Windows Terminal with Mica applied.

Launch Position Params

You can now configure all of the launch position parameters in the Startup section of the Settings UI. Updated Launch position parameters

Color Schemes Page updates

Our Color Schemes page has been revamped yet again for a more intuitive user flow thanks to your feedback! 🎨
Now, clicking on a color scheme in the list view and adding a new scheme will immediately take you to the edit scheme page. The “Delete” and “Set as Default” buttons have also been moved to the edit scheme page.

New Design on Windows Terminal 1.17 Preview

New Color Schemes page

Old Design on Windows Terminal 1.15 Stable

Old Color Schemes page

Also, when configuring a profile’s color scheme, you will now see a tiny preview of that color scheme before you select it. Color Schemes preview in Appearance

Other Color Scheme Improvements

πŸ› οΈ You can now configure a color scheme (per profile) to apply in System Light theme and System Dark theme

πŸ› οΈ You can now configure a color scheme (per profile) to apply in Application theme

Virtual Terminal (VT) and Output

HUGE shoutout to @j4james for his amazing contributions in the VT space. James worked tirelessly to improve support for VT features, including rewriting how text output is processed in Windows Terminal. Here is a brief summary of the VT contributions that James made for this release:

🌟 Added support for DEC macro operations

🌟 Added support for DECARM (Auto Repeat Mode)

🌟 Added support for IRM (Insert Replace Mode)

🌟 Added support for private options in DSR queries

🌟 Added support for selective erase operations (DECSED)

🌟 Added support for the DECRQM escape sequence

🌟 Added support for the rectangular area operations (DEC*RA)

🌟 Merged the legacy and extended attributes

🌟 Rewrote how we handled text embedded in a stream of VT, which closed 8 bugs!

🌟 Added support for line rendition attributes (DECDHL) over ConPTY

🌟 Added support for soft fonts over (DECDLD) ConPTY as well

🌟 Wide characters will no longer cause weird cursor leavings

🌟 VT reports once again work when DECARM is disabled

Thanks again for all your help, James! πŸ₯³

Usability Updates

⚑ wt now supports the --pos and --size commandline arguments to control the position and size of the new window (thanks @ianjoneill!)

⚑ When you duplicate a tab, the new tab will open next to the current tab (thanks @vamsiikrishnaak!)

⚑ You can now use exe and dll resources for icon paths

Accessibility Improvements

πŸ› οΈ We’ve removed a leading cause of crashes closing panes and tabs while screen reading was active

πŸ› οΈ Our internal management window will no longer appear as an empty pane to screen readers

Miscellaneous Improvements

πŸ› οΈ Windows Terminal now supports remaining FinalTerm mark types (command input start, command executed, and command finished)

πŸ› οΈ You can now set the scroll bar to be always displayed in $profile.scrollbarState

πŸ› οΈ The contents of the Terminal package are now code-signed, so those of you who deploy it unzipped will no longer get in trouble with your IT folks πŸ˜‰ πŸ˜‰

Bug Fixes

πŸ› The Export and Find context menu items work on unfocused tabs (thanks @ianjoneill!)

πŸ› We’ve retooled how we launch Terminal elevated when you use an elevate: true profile (or Ctrl+Shift-click a profile in the dropdown menu.) (thanks @jboelter!)

πŸ› The about dialog (and other dialogs) will finally block the entire window even if you resize it

πŸ› We now attempt to account for transparent tab backgrounds when calculating the text foreground color

πŸ› You can now drag/drop more than 16 items directly out of 7-Zip (and some other applications) (thanks @jiejasonliu!)

πŸ› Malformed settings objects will no longer cause an “Application error 0x%” settings warning

πŸ› “Use Acrylic in Tab Row” no longer requires a relaunch

πŸ› Split pane borders no longer display in the wrong theme color

πŸ› In separate titlebar mode, Terminal will now default to a dark title bar when you are using a dark theme

πŸ› The “Add Appearance” button will now be read out properly by screen readers

Top contributors

We love working with the community and recognizing those who made an impact for each release. Here are the community members who helped out for this one!

Contributors who opened the most non-duplicate issues

πŸ† j4james

πŸ† brupelo

πŸ† Shubham786786

Contributors who created the most merged pull requests

πŸ† AtariDreams

πŸ† j4james

πŸ† @ianjoneill!

Contributors who provided the most comments on pull requests

πŸ† j4james

πŸ† mrange

πŸ† KalleOlaviNiemitalo

I would also like to give additional recognition to @musvaage, @sashashura, @grammar-police, @d-caldasCaridad, and @jsoref for their help on documentation, code health, grammar, spelling, workflow security and maintenance!

Mahalo!

We hope you enjoy this latest release of Windows Terminal Preview! 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 Christopher Nguyen (@nguyen_dows) on Twitter. Happy New Year everyone!

P.S. “Mahalo” means “Thank you” in Hawaiian πŸ™‚ πŸ€™

January 2023 Signatures