Skip to content

Windows Terminal Preview v1.16.252

Pre-release
Pre-release
Compare
Choose a tag to compare
@DHowett DHowett released this 13 Sep 17:01
· 70 commits to release-1.16 since this release

This one almost speaks for itself. Dang. Welcome to Terminal: Really Long Release Notes Edition!

Features

  • Themes: Terminal now has support for themes! (#12992) (#13049) (#13178) (#13348) (#13465) (#13689) (#13702) (#13871)
    • To celebrate this, we've changed the default theme to Windows Dark. If you are not happy about that, you can change it back to light or anything you like (#13743)
  • New Text Rendering Engine
    • The new text rendering engine is now enabled by default in Preview builds (#13752)
    • We've added support for the experimental.pixelShaderPath and experimental.retroTerminalEffect settings... (#13885)
      • ... with a further optimization: shaders that do not use the time component will not trigger a redraw every frame! (#13903)
    • It now supports...
      • experimental.rendering.software (#13886)
      • intenseTextStyle bold (#13458)
      • underline/overline/hyperlink lines (#13587)
    • Glyphs that have not been used in some time will be aged out and replaced (#13458) (#13607) (#13784) (#13477)
    • Performance over RDP to a machine that has no GPU has been improved (#13816)
      • (at the cost of some fidelity)
      • experimental.rendering.software will enable this fallback mode as a last resort for compatibility
    • Glyphs that do not fit in a cell will be scaled up or down as appropriate (#13549), including "Powerline" glyphs (#13650)
    • We've added a setting in the Rendering section, and promoted useAtlasEngine out of the experimental. compartment (#13939)
    • Fonts whose cell sizes were borderline are now rounded instead of clamped to the next pixel size up (#13833)
    • We've made some other correctness and compatibility fixes, far too minute to name (#13956) (#13496) (#13906) (#13530) (#13608)
    • Somewhat as a side effect of all this, you may notice that you're seeing an inverted cursor where you had not previously seen one!
  • This release marks the triumphant return of the "adjust brightness of indistinguishable colors" feature... (#13343)
    • ...and it's brought friends: you can now enable it for all color pairs (#13512)
    • You can enable it with the profile setting adjustIndistinguishableColors (enum never, indexed, always; default never)
  • We've redesigned the color schemes page (#13269) and made updates all over the settings UI (#13179) (#13390) (#13378) (#13377) (#13391)
    • New in this release: color scheme previews, and an easy-access "Set as default color scheme" button!
  • You can now configure Terminal to hide when it loses focus (#13478) (thanks @davidegiacometti!)
  • You can now close all panes other than the focused one with the closeOtherPanes action! (#13547) (thanks @JerBast!)
  • There's a new option that lets you configure where new tabs appear: next to the current one, or at the end (#13421) (#13602) (#13469) (thanks @serd2011!)
    • JSON setting newTabPosition (enum afterLastTab (default), afterCurrentTab)
  • Tab and Shift+Tab now navigate between hyperlinks in Mark Mode. You can open the selected link with Ctrl+Enter. (#13405) (#13494)
  • You can now expandSelectionToWord, which will... well, you know. (#13765)
  • We will now try to detect the title when Terminal is launched by default from an LNK file (#13570)
  • For the old conhost fans in the room, you can now set experimental.enableColorSelection (global, bool, default false) to add 31 new actions that will highlight search results in the colors of the rainbow (#13429)
    • This conhost feature used to be hidden behind a registry key. If you know about it, I think I'm supposed to say you're "one of the real ones?"

Changes

Interaction

  • When in mark mode, its built in key bindings Ctrl+A and the modified arrow keys will take precedence over your key bindings (#13659)
  • We've polished how existing selections interact with mark mode (#13893)
  • @AdamSotak has added quick access buttons for the source code and filing feedback to the About dialog (#13510) (thanks!)
  • When your pane is in a light color scheme, the bell flash will now be dark (#13707) (thanks @Fyrebright!)
  • Inverted cursors (which you might find lying around) will now be slightly modulated to account for accidental color overlaps (#13748) (thanks @alabuzhev!)
  • When you Select All, we'll scroll to the top of the screen (#13656)
  • Multi-line paste will no longer strip newlines if there are other newlines in the content (#13698) (thanks @serd2011!)
    • This is to aid in the pasting (after confirmation, of course!) of multi-line commands.

UI

  • @dansmor7 figured out that we don't need to draw our caption buttons ourselves; now they look great on all versions of Windows! (#13341) (thanks!)

Console Compatibility

  • We will now discard empty command histories before discarding LRU non-empty ones (#13869) (thanks @serd2011!)
  • ReadConsoleOutput will no longer return nonsense if you wrote nonsense to the text buffer (API BREAKING CHANGE) (#13321)

VT Support

  • We now support DECBKM (Backarrow Key Mode) (#13894) (thanks @j4james!)
  • The slow march to soft font support in Terminal continues . . . (#13362) (thanks @j4james!)

Bug Fixes

Interaction

  • Terminal will now use the tab's active title for Export Text (#13915) (thanks @serd2011!)
  • The Emoji picker, PinYin IME or any other IME will no longer drift off the bottom of the screen (oops) (#13785)
  • The settings UI will now disable "Always show tabs" when "Hide the title bar" is enabled (#13694) (thanks @leejy12!)
  • We'll no longer helpfully offer to put things like \\ and : in your filenames for Export Text (oops) (#13693) (thanks @eliaschiavon!)
  • We've fixed command line argument parsing when there was a one-letter argument followed by a ; (#13706) (thanks @serd2011!)
  • In the command palette, the 'go back' button will finally returns to the previously selected action (#13504) (thanks @JerBast!)

UI

  • No longer is there a 1-pixel gap under inactive tabs (#13897)

Accessibility

  • The Command Palette has become much chattier, announcing (to a screen reader) the name of the selected item (#13519)
  • Asking for INT_MAX characters via UIA will no longer wig us out or try to send you multiple gigabytes of null bytes (#13779)
    • However, it remains impolite to ask for INT_MAX characters via ITextPattern::GetText.

Performance

  • Terminal is now 1.2 megabytes smaller on disk (uncompressed) thanks to not using RTTI (#13947) (thanks RTTI!)
  • Updating the jumplist used to happen on every launch. Now it will only happen if you've actually changed your settings (#13692)

Reliability

  • Fixed a number of crashes, not all of which were common or user-impacting:
    • Attempted a fix for the SignalTextChanged crash (#13876)
    • Attempted another fix, this time for the _refreshSizeUnderLock crash (#13857)
    • Fixed a crash in _WritePseudoWindowCallback (#13777)
    • Fixed a crash on exit with the command palette open (#13778)
    • Fixed a race condition in UpdatePatternLocations (#13859)
    • Fixed two race conditions around pseudo window visibility (#13832)
    • Fixed a crash in NVDA, caused by us considering a specific text range invalid (#13907)
    • Fixed a ControlCore race condition on connection close (#13882)
    • Fixed a crash on settings reload (#13644)
    • Fixed a crash when showTabsInTitlebar:false (#13561)
    • Fixed crash on save in rejuv'd Color Schemes page (#13902)
  • Terminal should now more reliably appear in the context menu
  • We've stopped conhost from buying the farm when it got --headless without --signal (#13950)

With additional thanks to our documentation and code health contributors @jsoref and @LitoMore.