Features
A profile can now specify how it will appear when it's not focused via the unfocusedAppearance settings.json key (#8392)
Supported settings: foreground, background, selectionBackground, cursorColor, cursorShape, cursorHeight, backgroundImage, colorScheme, backgroundImageOpacity, backgroundImageStretchMode, backgroundImageAlignment, experimental.retroTerminalEffect, and experimental.pixelShaderPath
Windows can now be named for automation and scripting purposes
With the -w parameter, as in wt -w razzle and wt -w dazzle (#9300)
Via the renameWindow action (parameters: name, string, required), and the openWindowRenamer action (#9662)
Windows can be identified with the identifyWindow (or identifyWindows, not bound by default) action (#9523) (#9726)
You can now bind MRU-based and in-order tab switching to separate keys (#9507) (thanks
@don-Vito!)
For those of you for whom "most recent" Ctrl+Tab is really cool, but who also want Ctrl+Shift+[ to go in the logical direction!
Bind prevTab or nextTab with the tabSwitcherMode parameter (enum disabled (no UI), inOrder (tab UI, creation order), mru (tab UI, recency order))
We've added a Duplicate Tab item to the tab context menu (#9388) (thanks
@don-Vito!)
It works just like the duplicateTab action, which is to say that it works in unexpected ways.
Here in 2021, what it means is "duplicate the current terminal as its own tab"
We're tracking "duplicate the entire pane tree" in #4674.
Changes
Ctrl+Numpad Plus and Ctrl+Numpad Minus are now bound to the font zoom controls (#9753) (thanks @hessedoneen!)
We will no longer warn you about a multi-line paste when the remote application tells us that it understands multi-line pastes (#9586) (thanks @skyline75489!)
Shift+Click on a profile in the dropdown will now open it in a new window (#9429)
Accessibility
When navigating and searching the command palette, Terminal will now announce more status changes to Narrator/NVDA (#9582)
Settings and Settings UI
We've decided to remove "base layer" from the Settings UI for its move into the stable channel so that we can nail its design (#9655)
Please direct feedback about this into #9539. It's closed, but it's an excellent discussion issue.
The vintage cursor height and history size boxes in the UI are now clamped to appropriate ranges (#9370) (thanks @eugenesmlv!)
The vintage cursor height is now represented as a slider and has been unlocked to shrink down to 1px (from the old minimum of 25%) (#9386) (thanks @eugenesmlv!)
We will now show you a beautiful dropdown for fonts in the Settings UI (#9275)
thanks to @kovdu, they'll appear in alphabetical order (#9653)
Command-line arguments and action bindings
Commands new-tab and split-pane have learned the --colorScheme option (#9602)
Command split-pane has learned how to duplicate with -D (#9652) (thanks
@don-Vito!)
Bindings newTab, splitPane and newWindow have been taught how to handle suppressApplicationTitle (#9392) (thanks
@don-Vito!)
Bug Fixes
You can now interact with hyperlinks when the application is in mouse mode (#9396) (thanks
@don-Vito!)
Terminal Stable, Preview and Dev will now use different shell extension IDs (#9510)
You may hate this one if you use a bunch of different Terminal installs...
scrollToBottom will no longer puzzlingly make the viewport jump to the ... top? That can't be right... (#9389) (thanks
@don-Vito!)
In preview 1.7, we broke pixel shader loading. We've now unbroken it. (#9371)
The read-only tab dialog no longer treats Escape to mean "please yes, kill the read-only tab" (#9573) (thanks
@don-Vito!)
You can now duplicate panes/tabs that have not yet told us their working directory (because we already know which one we started them in...) (#9397) (thanks
@don-Vito!)
The settings UI sidebar will no longer appear as floating text over a transparent background (#9752)
If you try to (with a key binding) switch to a tab that does not exist, we will no longer send the resulting control sequence into the terminal (#9781) (thanks
@don-Vito!)
The arrow keys will no longer dismiss the tab renamer (oops) (#9633) (thanks
@don-Vito!)
The tab close menu will no longer circumvent read-only panes (#9571) (thanks
@don-Vito!)
We now propagate taskbar progress state in more places, so they should be more reliable (#9779) (thanks
@don-Vito!)
Reliability
The browse buttons will no longer cause a crash when you're running as Administrator (ugh) (#9760)
We're going to immediately cease and desist shouting at you about totally valid font names (#9734)
Font fallback used to be detected by string comparison, so "JetBrains Mono" and "Jetbrains Mono" were considered to be different...
Sometimes we couldn't find Cascadia, even though it's in our package...
We did not support localized names for fonts, so we thought that "MS ゴシック" and "MS Gothic" were two different fonts (they are not)
We've resolved a resource leak that resulted in Terminal slowing down, down, down over time (#9729)
This is @lhecker's first commit since he officially joined the team! Woo!
We will finally no longer crash when you display a bunch of wide glyphs and resize like crazy (MSFT !5903250) (#4907)
We've fixed a crash in the pattern buffer (thanks Miles O'Brien) (#9618)
App package fragments in invalid folders will no longer trip us up (#9477)
The shell extension lost 50% of its weight (yay!) (#9552)
We've shaved 120kb off OpenConsole.exe (#9581)
Terminal will no longer crash if you write weird empty nested commands in your settings.json file (#9495) (thanks
@don-Vito!)
Selection
We (well,
@don-Vito) fixed so many issues in selection that we're giving it its own subcategory.
Shift + multiple clicks will now work more reasonably (#9403); multi-click selection is now more reliable (#9455); selection start (#9727) and drag (#9790) have been vetted and fixed where appropriate.
Visual fit and finish
The maximize/restore button will now actually display the right tooltip when maximized (#9412) (thanks @Chips1234!)
We've fixed the bug where the tab switcher/command palette displayed chevrons and icons in all the wrong places (#9487) (thanks
@don-Vito!)
The actions page no longer has a strange gap on the left (#9780) (thanks
@don-Vito!)
The settings tab's close menu item looked different from everyone else's; now it does not (#9324)
The close button now fades to the correct color (#9763) (thanks @BreeceW!)
The tab bar has been given some horizontal breathing room (#9575) (thanks @gabrielconl!)
Code health and preparatory work
These are changes we've made to prepare us better for future work.
Add a sample outline shader (#9646)
dx: add support for inverting all types of cursor (#9665)
Introduce MS.Term.Core.Color to replace W.U.Color for Core/Control/TSM (#9658)
Update {fmt} to 7.1.3 (#9580)
Separate between Close Tab Requested and Tab Closed flows (#9574) (thanks
@don-Vito!)