Skip to content

Windows Terminal Preview v1.8.1032.0

Pre-release
Pre-release
Compare
Choose a tag to compare
@DHowett DHowett released this 14 Apr 17:01
· 2306 commits to main since this release

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, 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!)