Welcome to the early spring (here in the northern hemisphere) preview release of Terminal!
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
, andexperimental.pixelShaderPath
- Supported settings:
- Windows can now be named for automation and scripting purposes
- 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
ornextTab
with thetabSwitcherMode
parameter (enumdisabled
(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.
- It works just like the
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)
Command-line arguments and action bindings
- Commands
new-tab
andsplit-pane
have learned the--colorScheme
option (#9602) - Command
split-pane
has learned how to duplicate with-D
(#9652) (thanks @Don-Vito!) - Bindings
newTab
,splitPane
andnewWindow
have been taught how to handlesuppressApplicationTitle
(#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.