Software 42800 Published by

Windows Terminal Preview 1.8.1032.0 has been released.





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

Download Windows Terminal Preview 1.8.1032.0