Skip to content

Releases: microsoft/terminal

Windows Terminal Preview v1.8.1032.0

14 Apr 17:01
Compare
Choose a tag to compare
Pre-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!)

Windows Terminal v1.7.1033.0

14 Apr 17:01
Compare
Choose a tag to compare

This release brings all of the preview changes in Windows Terminal 1.7 to the stable channel. Notable changes include:

  • Terminal now has a UI that you can use to edit your settings!
    • If you prefer JSON, do not fear! You can, of course, still get at that JSON file you know and love.
  • Opt-in single-instancing and window remote control
    • You can run a command in the current active window with wt -w 0, or in a specific window with wt -w 1 (or 2, 3, ...)
    • NOTE: Even in single instance mode, Terminal windows are isolated based on elevation status or user identity.
  • Profile fragments, which app developers can use to provide additional information to Terminal

Please see the following release notes for additional details:

A preinstallation kit is available for system integrators and OEMs interested in prepackaging Windows Terminal with a Windows image. More information is available in the DISM documentation on preinstallation. Users who do not intend to preinstall Windows Terminal should continue using the msixbundle distribution.

We've also backported the following changes and bug fixes from Windows Terminal Preview 1.8.1032.0:

Changes

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

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

Windows Terminal Preview v1.7.572.0

01 Mar 18:00
89c9e6d
Compare
Choose a tag to compare
Pre-release

Features

  • Terminal now supports single-instancing and remote control!
    • You can configure whether new instances of Terminal launch in a new window (#9118)
      • For now, the default is to launch in a new window. Available options include launching in "a new window", "a window on the same desktop", "any existing window", "a totally random window"
        • I regret to inform you that the last option was a joke.
    • The newWindow action (bound to Ctrl+Shift+N by default) will create a new window (#9208)
    • wt can now run commands in any window that already exists with wt -w # (#8898)
      • You can specify wt -w -1 to force the creation of a new window even if you've disabled it with the Windowing Behaviors
      • Specifying a window that does not exist (wt -w 1048576) will result in a new window being created with that ID (!)
    • Windows that are activated through remote control will be pulled to the foreground (#9137)
  • The Settings UI, first released in 1.6 preview, is now the default settings experience (#9224)
    • The settings UI has been disabled in the stable release to give us more time to iterate on it.
  • Terminal now supports focus-follows-mouse mode among panes for that authentic X11 feeling (thanks @Don-Vito!) (#8965) (#9198)
  • You can now mark a pane as read-only—it can't be closed and will warn you if you type into it (thanks @Don-Vito!) (#8867) (#9107)
  • You can now bind the findNext and findPrev actions to move to the previous/next search (respectively) (thanks @Hegunumo!) (#8917)
  • There is a new global setting, centerOnLaunch (boolean, default false) that determines pretty much what it says on the tin (#9036)
  • We now have support for loading profiles and color schemes from auxiliary fragments provided by applications. See the fragment extension documentation for more details! (#7632)

Changes

  • This version of Terminal comes with Cascadia Code 2102.25, which contains a number of bug fixes to the 2102.03 release.
  • You can now suppress that somewhat annoying "Touch Keyboard and Dialogs That Stop Me From Doing My Job" service warning with the inputServiceWarning global settings (boolean; default true) (thanks @WVVxm!) (#9015)
  • The tab bell icon will now show up even when visual belling is disabled (#9212)
  • The zoom, bell, read-only and progress indicators will now show up in the tab switcher (thanks @Don-Vito!) (#9041) (#9076)
  • A number of keys that did not properly report their Ctrl status now do so (thanks @lhecker!) (#8870)
  • Leonard's fixed Ctrl+Alt+2 to properly send ^[^@ (thanks @lhecker!) (#5272)
  • We've refactored how terminal settings propagate from your profile to a terminal, so please report any issues where your settings are lost/ignored/flicker/etc. (#8602)
  • URLs under the file scheme are no longer considered invalid (#7526)

Settings UI

  • Overridden settings will now present a "revert" arrow that lets you clear the overriding value (#8919) (#9079)
  • You can now typeahead search in combo boxes (#9206)
  • The color schemes page has received a huge redesign (thanks @Chips1234, @mdtauk, @carlos-zamora!) (#9196)
  • We've added a simple read-only page to the Settings that shows your key bindings (#9253)

VT Support

  • Terminal now supports "bracketed paste" mode (DECSET 2004) and will filter out all control characters even during non-bracketed ("plebian") paste (thanks @skyline75489!) (#9034)
  • We now support XTPUSHSGR and XTPOPSGR, sequences which will manipulate a 10-deep "SGR stack" (thanks @jazzdelightsme!) (#1978)
    • XTPUSH/POPSGR are intended to allow applications to better coordinate their colors. Instead of resetting to the default colors at the end of a run, an
      enlightened application can push a "stack frame" before it changes the colors, change them, then pop that frame when it is done.
    • This sequence first became available in xterm-334.
  • You can now "chain" OSC 10, 11 and 12 color changes (thanks @skyline75489!) (#8999)

Bug Fixes

  • You can now navigate the tab color picker with the directional arrows (thanks @BenConstable9!) (#9144)
  • We will try not to dismiss the selection when you're using a Windows-key shortcut (thanks @imaginary-person!) (#9163)
  • We've ensured that hyperlinks de-underline when the pointer leaves the terminal (thanks @Don-Vito!) (#9195)
  • The arrow keys should work in the tab switcher once more (thanks @Don-Vito!) (#9140)
  • The build system was leaving a stray 600kb file in our package, which we've now removed (making the package smaller!) (#9153)
  • Focus should now return to the terminal after you dismiss the tab rename field (thanks @Don-Vito!) (#9162)

Accessibility

  • Narrator will no longer repeat the key binding twice when reading the command palette (#9234)
  • Command palette items that open submenus now have an audible "help text" that mentions this fact (#9271)
  • 1.6 preview totally broke the command palette being read by Narrator; that is now fixed! (#9143)
  • 1.6 preview regressed tab headers being read by Narrator; this is also now fixed! (#9258)

Performance and Reliability

  • We've further reduced the memory usage of the console host backing each terminal tab (#8621)

Windows Terminal v1.6.10571.0

01 Mar 18:00
507a846
Compare
Choose a tag to compare

This release brings all of the preview changes in Windows Terminal 1.6 to the stable channel. Notable changes include:

  • Experimental support for HLSL pixel shaders
  • Italic text (SGR 3), OSC 9;4 progress reports and OSC 9;9 CWD reports

Please see the following release notes for additional details:

A preinstallation kit is available for system integrators and OEMs interested in prepackaging Windows Terminal with a Windows image. More information is available in the DISM documentation on preinstallation. Users who do not intend to preinstall Windows Terminal should continue using the msixbundle distribution.

We've also backported the following changes and bug fixes from Windows Terminal Preview v1.7.572.0:

Changes

  • 1.6 stable only: The settings UI has been disabled for this stable release so that we can continue to iterate on it.
  • This version of Terminal comes with Cascadia Code 2102.25, which contains a number of bug fixes to the 2102.03 release.
  • The tab bell icon will now show up even when visual belling is disabled (#9212)

Bug Fixes

  • You can now navigate the tab color picker with the directional arrows (thanks @BenConstable9!) (#9144)
  • We will try not to dismiss the selection when you're using a Windows-key shortcut (thanks @imaginary-person!) (#9163)
  • We've ensured that hyperlinks de-underline when the pointer leaves the terminal (thanks @Don-Vito!) (#9195)
  • The arrow keys should work in the tab switcher once more (thanks @Don-Vito!) (#9140)
  • The build system was leaving a stray 600kb file in our package, which we've now removed (making the package smaller!) (#9153)
  • Focus should now return to the terminal after you dismiss the tab rename field (thanks @Don-Vito!) (#9162)

Accessibility

  • Narrator will no longer repeat the key binding twice when reading the command palette (#9234)
  • 1.6 preview totally broke the command palette being read by Narrator; that is now fixed! (#9143)
  • 1.6 preview regressed tab headers being read by Narrator; this is also now fixed! (#9258)
  • Command palette items that open submenus now have an audible "help text" that mentions this fact (#9262)

Windows Terminal Preview v1.6.10412.0

11 Feb 20:28
v1.6.10412.0
c24194a
Compare
Choose a tag to compare
Pre-release

This is a quick servicing release to address a number of issues in the 1.6 preview release.

Changes

  • This version of Windows Terminal comes with Cascadia Code 2102.03, which offers 23 bug fixes, support for new glyphs, control pictures, infinite arrow ligatures and more! (#9088)
  • If you completely delete settings.json while WT is running, it will now generate a new one (#9012)

Bug Fixes

  • The window titlebar, once a sacred place, will now be updated correctly when terminal titles and tabs change (thanks @sarim!) (#9054)
  • Pixel shaders that rely on the time input will now actually work (thanks @Nacimota!) (#8994)
    • They'll also now update at 60fps (or whatever)! This will almost certainly tank your battery life, but you didn't sign up for pixel shaders because you like batteries (#9091)
  • Right-clicking in the tab renamer should no longer cause it to stop renaming (thanks @Don-Vito!) (#8979)
  • Right-clicking in the command palette should also no longer cause it to stop commanding (or paletting) (thanks @Don-Vito!) (#9057)
  • We now better track the hidden/shown state of the cursor when you're typing to prevent it from being lost forever(*) (thanks @Don-Vito!) (#8952)
    • (*) sometimes it still gets banished to the Land of Lost Things
  • Hyperlinks, which started to underline even with the window out of focus, should now properly de-underline when out of focus (thanks @Don-Vito!) (#9039)
  • We fixed an issue where we mis-parsed OSC 9;9 directories wrapped in double quotes (thanks @skyline75489!) (#8934)
  • You should now be able to use Ctrl+C and Ctrl+V in the command palette even if they're bound in your terminal (thanks @Don-Vito!) (#9056)

Settings UI (Preview)

  • We've stopped accidentally deleting disabledProfileSources from your settings. Sorry! (#9038)
  • The "Launch Mode" and "Tab Switcher Mode" switches in the settings page now work properly (#8956)
  • Renaming a color scheme in use by the base layer will no longer corrupt all your other color schemes (#9103)

Reliability and Performance

  • The "Open Windows Terminal Here" shell extension will no longer throw a cryptic error about servers (thanks @hereafter!) (#8977)
  • The terminal should no longer crash if you close a tab while it's printing text [whoops] (thanks @j4james!) (#8982)
  • We've stopped crashing or displaying random errors about a blank pixel shader path (#9092)
  • schemes:[] or schemes:[{}] should no longer cause a crash on launch (#8995)
    • (There were a few scenarios that would cause this, but this is the easiest to write a release note about.)
  • No longer will we crash when you right-click and close a tab containing multiple splits (#9028)
  • We had to disable the "Close..." submenu because of a platform issue that resulted in a crash (#9102)

Windows Terminal v1.5.10411.0

11 Feb 20:28
v1.5.10411.0
5fdd156
Compare
Choose a tag to compare

This is a quick servicing release to address a few issues in the 1.5 stable release.

A preinstallation kit is available for system integrators and OEMs interested in prepackaging Windows Terminal with a Windows image. More information is available in the DISM documentation on preinstallation. Users who do not intend to preinstall Windows Terminal should continue using the msixbundle distribution.

Changes

  • This version of Windows Terminal comes with Cascadia Code 2102.03, which offers 23 bug fixes, support for new glyphs, control pictures, infinite arrow ligatures and more! (#9088)
  • If you completely delete settings.json while WT is running, it will now generate a new one (#9012)

Bug Fixes

  • The window titlebar, once a sacred place, will now be updated correctly when terminal titles and tabs change (thanks @sarim!) (#9054)

Reliability and Performance

  • The "Open Windows Terminal Here" shell extension will no longer throw a cryptic error about servers (thanks @hereafter!) (#8977)
  • The terminal should no longer crash if you close a tab while it's printing text [whoops] (thanks @j4james!) (#8982)
  • schemes:[] or schemes:[{}] should no longer cause a crash on launch (#8995)
    • (There were a few scenarios that would cause this, but this is the easiest to write a release note about.)
  • We had to disable the "Close..." submenu because of a platform issue that resulted in a crash (#9102)

Windows Terminal Preview v1.6.10272.0

28 Jan 18:00
v1.6.10272.0
96e0232
Compare
Choose a tag to compare
Pre-release

Features

  • IN PREVIEW TODAY: Terminal now has an optional graphical settings editor! Until it's ready for prime time, it's hidden behind a NON-DEFAULT key binding. (#8048)
    • To bind the settings UI to Ctrl+Shift+,, add the following to your keybindings/actions.
{ "command": { "action": "openSettings", "target": "settingsUI" }, "keys": "ctrl+shift+," },
    • The settings editor will become the default action for the Settings menu item and key binding in a future release.
    • Follow along at #6800 for completion stats and community feedback!
  • Terminal now supports "Startup Actions" (thanks @Don-Vito!) (#8770)
    • The startupActions settings key can be filled out with a WT commandline execute on launch.
    • That commandline will be run if no arguments are provided to WT.
    • You can use this to start with multiple tabs, multiple panes, or any combination of the above.
    • Examples:
      • Start with multiple tabs: "startupActions": "new-tab; new-tab"
      • Start with multiple panes: "startupActions": "split-pane -p PowerShell ; split-pane -p Ubuntu"
  • Terminal 1.6 has gained experimental support for HLSL pixel shaders (thanks @mrange!) (#8565)
    • For a profile, set "experimental.pixelShaderPath" to the path to an hlsl file.
    • There are some shader examples in the samples/PixelShaders directory of our repository.
    • Like the experimental "retro terminal effects" flag, using pixel shaders has a nonzero performance cost.
    • For the price of lower performance, you can have sick visual effects.
  • We've gained support for application progress reports on OSC 9;4 (originally offered by ConEmu) (#8055)
    • Application-reported progress will be displayed in the taskbar and a new progress ring displayed in the tab (#8133)
  • Terminal has gained two new visual bell features (available when bellStyle is set to audible or all):
    • ... flashing the taskbar (#8215)
    • ... displaying a small bell icon in the tab until you interact with it (#8637)
  • The italic graphic rendition (SGR 3) is now supported (thanks @j4james!) (#8580)
    • Fonts that do not offer an italic variant will be digitally enhanced, like the bicentennial man (though with admittedly less sentience)
  • Terminal has learned a new cursor style: double underscore (thanks @rhorber!) (#7827)
  • @Hegunumo taught us the scrollToTop and scrollToBottom key binding actions (#8459)
    • By default, they are bound to Ctrl+Shift+Home and Ctrl+Shift+End (respectively.)
  • The moveFocus pane move action has gained a new power: the ability to move to the last-used pane (#8183)
    • This is achieved by setting "direction": "previous".
  • Tabs can now be moved left/right with the keyboard with action binding moveTab (thanks @Don-Vito!) (#8338)
    • moveTab accepts a direction argument (enum "forward", "backward")
    • This action is not bound by default.
  • We now support ConEmu's OSC 9;9 ("set current working directory"), which a shell can use to communicate its current location (thanks @skyline75489!) (#8330)
    • When you duplicate a tab or pane with a known working directory, the new terminal will start in that directory.
  • You can now specify a tab color for each new tab or pane on the commandline with --tabColor #rrggbb (thanks @Don-Vito!) (#8102)
  • For those of you hacking on Terminal, we've added a new breakIntoDebugger action (not bound by default) (#8498)
    • breakIntoDebugger only works when debugFeatures are enabled.
    • If you activate this action and no debugger is present, Terminal will exit. I don't recommend doing that.

Changes

  • Our annoying "keyboard/handwriting service" dialog is now a slightly less annoying info bar (#8524)
  • We're finally on Microsoft.UI.Xaml 2.5.0, not a prerelease! (#8500)
  • When you paste multiple lines, we'll give you a preview before making you decide to continue/cancel (#8744)
  • Hyperlinks will now reveal themselves on hover even when the window isn't focused (thanks @Hegunumo!) (#8615)
  • The "Open Windows Terminal here" menu item will now (finally!) show up inside directories (thanks @hereafter!) (#8638)
    • There was a Windows bug preventing this from working properly, but @hereafter stepped up with a VERY CLEVER workaround.
  • Manually-renamed tabs can no longer have names >1024 chars in length (thanks @Don-Vito!) (#8433)
    • This prevents an issue where the tab renaming field would get cut off on the top/bottom (?) while renaming.
    • If you want one of these, you are free to e-mail me a 1024-word essay on why you need a tab title this long.
      • I will ignore it, but you are still free to do so.
  • You can now drag/drop more types of things on Terminal: files, links, weird VS Code tab items (?) (thanks @skyline75489!) (#8461)
    • This also fixes a crash in drag/drop caused by those weird VS code tab items
  • No longer will your mouse cursor hang around while you're typing (thanks @Don-Vito!) (#8629)
  • The tooltip that appears when you hover over a tab now displays a switching keyboard shortcut (thanks @Don-Vito!) (#8810)
  • wt has learned move-focus, which lets you change pane focus while building a commandline (#8546)
  • splitPane and wt split-pane have grown support for "size" (float 0.0 - 1.0) and --size respectively (#8543)
  • Shift+click now supports single-character selection so that you can set your selection endpoints separately (thanks @Don-Vito!) (#8611)
  • When most-recently-used tab switching is enabled, closing a tab will move you to the previously-used tab (thanks @Don-Vito!) (#8610)
  • Block copy (Alt + copy) will now try harder to preserve the spacing characteristics of the copied region (thanks @Don-Vito!) (#8579)
  • We'll now give a more accurate error message when we can't handle a bad mixed-type field in your settings (thanks @Don-Vito!) (#8558)
  • In focus mode, closing a tab will no longer result in an unusable terminal (thanks @Don-Vito!) (#8549)
  • We've updated the iconography in the menus to better match its purpose (thanks @Hegunumo!) (#8424)
  • Starting a search with text selected will now copy that text into the search field (thanks @Don-Vito!) (#8521)
  • Non-existent color schemes will no longer be silently ignored in color scheme-changing actions (thanks @mpela!) (#8147)
  • We will now warn you when you select an invalid font instead of silently using Consolas (#8207)
    • You'd be surprised at how many reports we got from confused users who thought their flashy new fonts were simply boring.
  • The command palette, in commandline mode, will now parse and validate commands you've typed and display recent commands (thanks @Don-Vito!) (#8515) (#8317)
  • The command palette now supports "launchMode", which can be set to "action" or "commandLine" (thanks @Don-Vito!) (#8382)
  • The command palette now treats Home and End more predictable (thanks @Hegunumo!) (#8194)
  • Some setting fields that used to tolerate null no longer do so (#8175)
  • We now respond to DECID (thanks @j4james!) (#8864)

Bug Fixes

General

  • Terminal now tries harder to scroll tabs into view when you navigate (thanks @Don-Vito!) (#8832)
  • Right-click paste now clears any active selection (thanks @Don-Vito!) (#8742)
  • Pastes containing \n are now properly normalized to \r (#8634)
  • The buttons in the title bar have been cajoled into being the right colors when the app theme doesn't match the system theme (thanks @satken2!) (#8649)
  • The initialRows/initialCols settings should work more reliably in the presence of padding (thanks @Hegunumo!) (#8584)
    • (Are we bad at math? You'd never be able to tell after this pull request!)
  • Commandline arguments to wt that conflict with wt new-tab should now be detected properly (thanks @Don-Vito!) (#8315)
  • The tab close button now matches the tab text when you override the tab color (whoops) (thank #dcheatha!) (#8209)
  • There were apparently still ways to make the terminal window too small. NO LONGER! (thanks @Don-Vito!) (#8066)
  • The profile menu and command palette will now prefer your shortcut keys over the inbuilt ones (thanks @Don-Vito!) (#8725)
  • @Don-Vito contributed an absolute heap of fixes for tab switching, the command palette, etc. (#8653) (#8655) (#8609)

Performance

  • We've greatly reduced the number of transient allocations the console host (and therefore Terminal) do when printing large amounts of text (#8617)
  • We've done likewise for text buffer initialization, startup, attribute storage, and the default conhost steady state (thanks @Austin-Lamb!) (#8489)

Command Palette

  • @Don-Vito did a whole heap of work to make the command palette better:
    • Cleaned up the ownership of tab switching/search (#8656)
    • Cleaned up the ownership of commandlines and tabs (#8420)
    • Removed action dispatch from the command palette to make it more reusable (#8628)
    • Made the palette dismiss on focus change, action dispatch, etc. so it doesn't stay on screen (#8377)
    • Made sort case-insensitive (#8432)

VT

  • It turns out that we had the modifier key encodings wrong for VT mouse mode for, like, four years. Now they're right (#8379)

Reliability

  • Terminal no longer leaks pty process handles when you close tabs (thanks to @vefatica for discovering this!) (#8707)
  • There was a race condition in pane animation that broke pane sizes. The race has been cancelled (thanks @Don-Vito!) (#8241)
  • There was also an access violation in animated pane closure, which has also been cancelled (thanks @Don-Vito!) (#8218)
  • We will no longer leak a smal lamount of memory while parsing VT (#8618)
  • Some command palette/tab switcher navig...
Read more

Windows Terminal v1.5.10271.0

28 Jan 18:00
v1.5.10271.0
Compare
Choose a tag to compare

This release brings all of the preview changes in Windows Terminal 1.5 to the stable channel. Notable changes include:

  • Support for automatic detection of URLs
  • A tab switching UI that supports in-order navigation and most recently used navigation.

Please see the following release notes for additional details:

A preinstallation kit is available for system integrators and OEMs interested in prepackaging Windows Terminal with a Windows image. More information is available in the DISM documentation on preinstallation. Users who do not intend to preinstall Windows Terminal should continue using the msixbundle distribution.

We've also backported the following changes and bug fixes from Windows Terminal Preview v1.6.10272.0:

Changes

  • We're finally on Microsoft.UI.Xaml 2.5.0, not a prerelease! (#8500)
  • Our annoying "keyboard/handwriting service" dialog is now a slightly less annoying info bar (#8524)
  • The "Open Windows Terminal here" menu item will now (finally!) show up inside directories (thanks @hereafter!) (#8638)
  • You can now drag/drop more types of things on Terminal: files, links, weird VS Code tab items (?) (thanks @skyline75489!) (#8461)
  • We've updated the iconography in the menus to better match its purpose (thanks @hegenumo!) (#8424)

Bug Fixes

General

  • Terminal now tries harder to scroll tabs into view when you navigate (thanks @Don-Vito!) (#8832)
  • Right-click paste now clears any active selection (thanks @Don-Vito!) (#8742)
  • Pastes containing \n are now properly normalized to \r (#8634)
  • The buttons in the title bar have been cajoled into being the right colors when the app theme doesn't match the system theme (thanks @satken2!) (#8649)
  • The initialRows/initialCols settings should work more reliably in the presence of padding (thanks @hegenumo!) (#8584)
    • (Are we bad at math? You'd never be able to tell after this pull request!)
  • Commandline arguments to wt that conflict with wt new-tab should now be detected properly (thanks @Don-Vito!) (#8315)
  • The tab close button now matches the tab text when you override the tab color (whoops) (thank #dcheatha!) (#8209)
  • There were apparently still ways to make the terminal window too small. NO LONGER! (thanks @Don-Vito!) (#8066)
  • The profile menu and command palette will now prefer your shortcut keys over the inbuilt ones (thanks @Don-Vito!) (#8725)

VT

  • It turns out that we had the modifier key encodings wrong for VT mouse mode for, like, four years. Now they're right (#8379)

Reliability

  • Terminal no longer leaks pty process handles when you close tabs (thanks to @vefatica for discovering this!) (#8707)
  • There was a race condition in pane animation that broke pane sizes. The race has been cancelled (thanks @Don-Vito!) (#8241)
  • There was also an access violation in animated pane closure, which has also been cancelled (thanks @Don-Vito!) (#8218)
  • @j4james fixed an out-of-bounds exceptions in Set...{Buffer,Screen}Size (thanks!) (#8309)

WPF Control

  • The WPF control now better validates its size during resize operations (#8792)

Windows Terminal Preview v1.5.3242.0

20 Nov 21:47
v1.5.3242.0
Compare
Choose a tag to compare
Pre-release

This is a quick servicing release to address a couple annoying issues in the 1.5 preview release.

Bugs fixed in this release:

  • We reverted the tab switcher to in-order, but visible, by default, because we changed your defaults on you so that tab switching was both enabled and in most-recently-used order. I'm sorry about that. (#8326)
    • To turn the switcher back to MRU order, add the global setting "tabSwitcherMode": "mru".
  • We'd previously said the default value for backgroundImageStretch was uniformToFill, but it was actually fill. We've updated the code to make it uniformToFill. (#8280)
  • The tab switcher used to occasionally eat custom key bindings and break, but @Don-Vito came through and helped it not do that. Thanks! (#8250)
  • We accidentally left pane animations enabled sometimes, so we've gone and let you disable them for real (thanks @Don-Vito!) (#8237)
  • Our schema document was super busted because of a stray comma, but @slopra came through and fixed it. Thanks! (#8257)
  • The [x] button and mouse-based text selection were horked in the command palette. Now they are not. (thanks @bhaskarshankarling!) (#8279)

Windows Terminal v1.4.3243.0

20 Nov 21:43
v1.4.3243.0
Compare
Choose a tag to compare

This is a quick servicing release to address a couple glaring issues in the 1.4 stable release.

A preinstallation kit is available for system integrators and OEMs interested in prepackaging Windows Terminal with a Windows image. More information is available in the DISM documentation on preinstallation. Users who do not intend to preinstall Windows Terminal should continue using the msixbundle distribution.

Bugs fixed in this release:

  • We reverted the tab switcher to off by default, because we changed your defaults on you so that tab switching was both enabled and in most-recently-used order. I'm sorry about that. (#8325)
    • To turn the switcher back on, in MRU order, add the global setting "useTabSwitcher": true.
  • We'd previously said the default value for backgroundImageStretch was uniformToFill, but it was actually fill. We've updated the code to make it uniformToFill. (#8280)
  • The tab switcher used to occasionally eat custom key bindings and break, but @Don-Vito came through and helped it not do that. Thanks! (#8250)