Releases: microsoft/terminal
Windows Terminal Preview v1.19.2682.0
It's finally here: Windows Terminal Preview 1.19! We've been heads-down, working on a new input buffer, new output buffer, shell suggestions, and a bunch of other stuff that we're excited to finally release.
Buckle up! This release might be a little more Preview than you've come to expect . . . but that's the fun of the preview channel!
Why are there so many packages? How do I choose?
Please visit our page documenting the different [Windows Terminal Distributions]!
Features
- We've added support for a new opt-in and shell-driven suggestions UI (#14938) (#15848)
- The protocol for suggestions is not finalized, and will change before final release.
- You can find more information on the Experimental Shell Completion Menu wiki page
- Suggestions can take into account...
- The search box will now display a count of found results, and--if scrollbar marks are enabled--display graphical indicators for every match (#14045) (thanks @Don-Vito and @zadjii-msft!)
- You can now enable broadcast mode via the Command Palette, which will broadcast input to all panes in a tab (#14393) (#15993)
- You can now launch a profile via
wt
and keep its built-in command line with the--appendCommandLine
flag (#15822) (thanks @hanpuliu-charles!)- For example, if your PowerShell profile specifies
pwsh.exe
, you can runwt --appendCommandLine -p PowerShell -- -Command echo Hello
, which will runpwsh.exe -Command echo Hello
. That's a lot of dashes. Wow.
- For example, if your PowerShell profile specifies
- You can now search the web with your selected text via... (#15539) (thanks @mpela81!)
- ...the experimental right-click context menu!
- ...the
searchWeb
action!- You can customize each action to launch any search engine by specifying the
queryUrl
.%s
will be replaced with your query.
- You can customize each action to launch any search engine by specifying the
- You can customize the default search engine for both of these by specifying the global setting
searchWebDefaultQueryUrl
.%s
will be replaced with your query.
- If you have shell integration enabled, you can enable using the mouse to reposition the text cursor (#15758)
{profile}
.experimental.repositionCursorWithMouse
(the dot is part of the name, sorry) (boolean, defaultfalse
)
Theming and Scheming
- You can now set the window border color on Windows 11 via the
{theme}.window.frame
and{theme}.window.unfocusedFrame
color entries (#15441)- For more fun, you can set
{theme}.window
'sexperimental.rainbowFrame
totrue
🙂
- For more fun, you can set
- You can now (finally!) enable support for using the acrylic material in an unfocused window (#15923) (#15944) (thanks @Jaswir!)
- Set
useAcrylic
totrue
in{profile}.unfocusedAppearance
- You can turn unfocused acrylic off globally with the global setting
compatibility.enableUnfocusedAcrylic
(boolean, defaultfalse
)
- Set
- Themes can now indicate whether tab icons should be shown in color or monochrome or hidden entirely (#15948) (thanks @bundgaard!)
- Set
{theme}.tab.iconStyle
(enumdefault
,hidden
,monochrome
; defaultdefault
(default))
- Set
Changes
wt -- foo
will once again inherit the environment from its parent (#15897)- You can customize this behavior with
wt --inheritEnvironment
orwt --reloadEnvironment
on a per-tab/per-pane basis. - You can also override this behavior with the profile setting
{profile}.compatibility.reloadEnvironmentVariables
(boolean, defaulttrue
)
- You can customize this behavior with
- We have rewritten "cooked read", the input line used by Command Prompt, Python, and a whole host of other applications (#15930) (#15780) (#15782) (#15783) (#15880)
- This includes changes to command history, popups (F7 and the like), and how input is echoed to the display.
- This may have a wide-ranging impact, so please file any unexpected input issues in Win32 applications!
- Input event record handling has been rewritten to support wide encodings like UTF-8, to be more maintainable, and to be much simpler to read (#15671) (#15606) (#15605) (#15611) (#15673) (#15672)
- Console applications can now more reliably print characters composed of surrogate pairs (aka "We've been trying to reach you about your WriteCharsLegacy's extended Emoji support") (#15567)
- We've added an action that opens the about dialog (
openAbout
) (#15990) - conhost will now ignore key events with an invalid virtual keycode and a scan code of 0 (such as those emitted by strange software keyboards) (#15753) (thanks @tusharsnx!)
- We will no longer generate
WINDOW_BUFFER_SIZE_EVENT
when the viewport moves, confusing applications that translate it into a destructive operation (#15935) - You can now configure any
copy
action to dismiss or keep the selection after it runs (dismissSelection
, boolean, defaulttrue
) (#15552) (thanks @gonzalo-garcian!) - The text buffer has been reorganized to be (1) faster (2) smaller (3) harder, better, etc.
- Rows are initialized lazily in chunks of 128 or so; we no longer spend memory on blank space you'll never see (#15524) (#15582)
- Reading, writing, initialization, etc. has been cleaned up and vectorized (#15501) (#15498) with fast passes and other optimizations (#15499) (#15879) (#15541) (#15497)
- We've rewritten resize with reflow so it's like a billion times faster and more correct (#15701)
- If you see any issues when resizing (other than "bash prints the prompt 600 times every frame" (that's apparently just how bash works)), please file them!
- We no longer load the Settings editor library on launch, saving you tens of kilobytes of memory (#15628) (#15631)
- We will now display an indicator in the tab of any disconnected/closed/crashed application. You can right-click the tab to restart it! (#15760) (thanks @mpela81!)
- You can now run profiles as Admin from the new tab menu by right-clicking them (#15679) (thanks @jamespack!)
- The profile preview in settings now shows you what a "powerline" font will look like when one is selected (#15365)
- We actually did fix the homoglyph thing this time; hovering a URL that is pretending to be someone else through funny characters will see right through it (#15488)
- You can now right-click a tab and move it to a new window (#15376) (thanks @Jaswir!)
- All text search now uses ICU, and is like blazing fast. URL detection, Search, everything is covered! (#15858) (#15998) (#15892)
- For those of you debugging Terminal/the console with ETW, you can now group all API calls by originating process (#15737)
- Also for debugging purposes, you can now add the
debugTerminalCwd
action to display a pop-up with Terminal's current "virtual" working directory (#15282) - If you are using Preview, Canary or Dev we will now set an appropriate JSON
$schema
so you can auto-complete new settings (#15856)
VT
- We now support Erase Color Mode (DECECM) (#15469) (thanks @j4james!)
- The horizontal scrolling sequences
DECIC
,DECDC
,DECBI
andDECFI
finally work! (#15368) (thanks @j4james!) - @tusharsnx put a lot of work into making ITU T.416 color sequences work! He...
- We will now pass through kitty's underline color (
58:...
) and style (4:...
) sequences (we won't render them yet! but maybe soon! 🤞) (#15795) (thanks @tusharsnx!)
Bug Fixes
Accessibility
- We've added automation property names to the 'Delete Color Scheme' button (#15994)
- The key chord indicator in the command palette now has a background color (#15677) (thanks @RickleAndMortimer!)
- Settings now groups elements in their containers for screen readers (#15756)
- Screen reader users can now determine which color scheme is the current default (#15486)
- Default Terminal and Color Scheme ComboBoxes no longer crop at 200% text scale (#15762)
- Screen readers will now announce successful pane and tab moves (#15771)
VT and terminal emulation
- Hard Reset (
RIS
) no longer disables Win32 input mode or focus event mode for pty clients (like Terminal) (#15476) (thanks @j4james!) - We no longer log traces or telemetry about aggregated VT sequence use (#15494) (thanks @j4james!)
- We started to do this in ~2016 or so when we were trying to figure out what VT sequences applications were using. We're way beyond needing that now!
- The Terminal will now enter mouse mode immediately when a Win32 console app enables it (among other output flushing changes! If you see any flickering in modern VT applications, let us know!) (#15991)
- Scrollbar marks will now be cleared by
clear
(and friends) (#15686)
Usability and UI
- We will no longer reload the settings as often when various OS knobs and switches change (#16004)
- The tab right-click menu now remembers which terminal pane was active when it was invoked... (#15999)
- You can once again restart the first pane in a split with Enter after it exits (#16001)
- All actions now remember which pane originated them, so things like "export text" and "Move tab to new window" and "Duplicate" no longer summon one of the Old Ones (#15773)
- The about dialog no longer tells you that you've got an update available to the same version you already have (#15378)
- When the tab close button is disabled, it will no longer randomly reappear to taunt you (#15914)
- Duplicated tabs now consider the existing configuration option for where to put tabs (#15972) (thanks @codecruisedor!)
- The launch parameters (position, size) now properly support negative numbers (#15941) (thanks @codecruisedor!)
New R...
Windows Terminal v1.18.2681.0
Windows Terminal 1.18 is here, and with it comes the coolest set of features ever:
- You can finally pull tabs out of Terminal windows! You can also put other tabs back into other Terminal
windows. It's a whole thing. - A new new rendering engine that supports arbitrary glyph overhangs (including some new fixes backported from
1.19!) - An experimental (opt-in) right-click context menu (profile setting
{profile}.rightClickContextMenu
)
Please see the following release notes for additional details.
Note that scrollbar marks and shell integration features are still considered experimental and
are not included in this stable release!
Note
This version began rolling out to the Dev and Canary Windows Insider channels on 2023-09-26. Other channels will be released
as our reliability numbers indicate that we haven't broken anything. If you want to update to this release directly, download it below!
Why are there so many packages? How do I choose?
Please visit our page documenting the different Windows Terminal Distributions!
This release also includes the following changes and bug fixes backported from Preview 1.19:
Changes
wt -- foo
will once again inherit the environment from its parent (#15897)- You can customize this behavior with
wt --inheritEnvironment
orwt --reloadEnvironment
on a per-tab/per-pane basis. - You can also override this behavior with the profile setting
{profile}.compatibility.reloadEnvironmentVariables
(boolean, defaulttrue
)
- You can customize this behavior with
- We no longer load the Settings editor library on launch, saving you tens of kilobytes of memory (#15628) (#15631)
- You can now run profiles as Admin from the new tab menu by right-clicking them (#15679) (thanks @jamespack!)
- The profile preview in settings now shows you what a "powerline" font will look like when one is selected (#15365)
- We actually did fix the homoglyph thing this time; hovering a URL that is pretending to be someone else through funny characters will see right through it (#15488)
- For those of you debugging Terminal/the console with ETW, you can now group all API calls by originating process (#15737)
- If you are using Preview, Canary or Dev we will now set an appropriate JSON
$schema
so you can auto-complete new settings (#15856)
Bug Fixes
Accessibility
- We've added automation property names to the 'Delete Color Scheme' button (#15994)
- The key chord indicator in the command palette now has a background color (#15677) (thanks @RickleAndMortimer!)
- Settings now groups elements in their containers for screen readers (#15756)
- Screen reader users can now determine which color scheme is the current default (#15486)
- Default Terminal and Color Scheme ComboBoxes no longer crop at 200% text scale (#15762)
- Screen readers will now announce successful pane and tab moves (#15771)
VT and terminal emulation
- Hard Reset (
RIS
) no longer disables Win32 input mode or focus event mode for pty clients (like Terminal) (#15476) (thanks @j4james!)
Usability and UI
- We will no longer reload the settings as often when various OS knobs and switches change (#16004)
- You can once again restart the first pane in a split with Enter after it exits (#16001)
- All actions now remember which pane originated them, so things like "export text" and "Move tab to new window" and "Duplicate" no longer summon one of the Old Ones (#15773)
- The about dialog no longer tells you that you've got an update available to the same version you already have (#15378)
- When the tab close button is disabled, it will no longer randomly reappear to taunt you (#15914)
- The launch parameters (position, size) now properly support negative numbers (#15941) (thanks @codecruisedor!)
New Rendering Engine
- We no longer leave cursors all over the place (#15904)
- Fonts like JetBrains Mono that render their ligatures in reverse now appear in the right colors (#15810)
- We no longer invalidate more of the screen than we need to (#15929)
- It now works properly on Windows versions earlier than 10.0.14393.0 (#15485)
- Font features and axes work once again! (#15912)
- We no longer crash when trying to render to a 0x0 surface (#15615)
- DRCS soft fonts that are invalid (or have disappeared, or were never enabled) no longer crash the Terminal (#15889)
- Both rendering engines have been prepared for horizontal scrolling (???) (#15707)
Reliability
- We will no longer crash when checking for updates without a network (#16002)
- If you're the one person who marks
HKCU\Console
as read-only, we won't crash during save for you (#15916) - Actions with an empty
keys
array no longer cause unexpected kinetic disassembly (#16003) - Duplicating
elevate: true
tabs has been fixed to not blast terminal off into space (#15548) - The backing console no longer hangs when resizing while scrolling (#15618)
- Instead of leaking memory for each window on Windows 10, we'll cache old windows and recycle them as needed (#15424)
- We introduced the leak to fix a crash in closing windows on Windows 10; this allows us to still leak the window but still be able to reclaim them.
Schema
- No longer is there a multiple schema conflict on "colorScheme" (#15748) (thanks @brandondong!)
Miscellaneous
- The WPF control now delay-loads UIAutomationCore.dll because it's incomplete in Windows RS1 (#15614)
With additional thanks to @floh96, @daverayment, @ushuz, and @LitoMore for documentation updates and @tusharsnx,
@Jvr2022, @Dan-Albrecht, @ebarnabas644, @jamespack for build system, project config, and compiler compatibility fixes.
Binary files inside the unpackaged distribution archive bear the version number 1.18.230925001
.
Asset Hashes
- Microsoft.WindowsTerminal_1.18.2681.0_8wekyb3d8bbwe.msixbundle_Windows10_PreinstallKit.zip
- SHA256
BCAB5079B9F4E2ADBDA4B81D7482BA20BCBDA83B7BB77D7FFDBFF006234CE2A3
- SHA256
- Microsoft.WindowsTerminal_1.18.2681.0_8wekyb3d8bbwe.msixbundle
- SHA256
33A931384373DEEAF0E11F3E7BA985349FD2C32137DED81F9770F428558A76ED
- SHA256
- Microsoft.WindowsTerminal_1.18.2681.0_arm64.zip
- SHA256
C4D3D18A184FD0B6A246F2307A0D3FA6B869F9D5670B3161E490F2E520F569E7
- SHA256
- Microsoft.WindowsTerminal_1.18.2681.0_x64.zip
- SHA256
F4FE48C51B96B591B56B60A437ACDF73AA2797A01B77360660BDB47E1A9ED184
- SHA256
- Microsoft.WindowsTerminal_1.18.2681.0_x86.zip
- SHA256
7BF1A048FED827D8638DE934F5DE8EB711CEF42E0CE46E0A638E0AC87AE56D64
- SHA256
Windows Terminal Preview v1.18.1462.0
Wow, it looks like 1.18 had a bunch of issues. Thanks for bearing with us and using the Preview channel!
- Bug fixes for the new rendering engine:
- Glyphs that extend above or below the screen (like certain NerdFont varieties) no longer cause rendering failures (#15403)
- There should be 100% fewer leftover cursor pieces during scrolling (#15427)
DRCS
soft fonts no longer cause crashes (#15419)- We've improved scrolling and device invalidation (#15425)
wt --help
now no longer emits a crash log after it exits (oops) (#15445)- In general (outside of the
--help
case,) Terminal should crash even less on exit (#15451) - We've stamped out some crashes on resize during shutdown (#15457)
- The new environment variable support will now always expand
PATH
, even if it is not aREG_EXPAND_SZ
(#15444) (thanks @sotteson1!) - OpenConsole: block selection now properly records line breaks (#15423)
- The "Developer Command Prompt" profiles are no longer totally busted (#15439)
- Terminal no longer crashes when you have
focusFollowMouse
mode enabled (#15420)
Asset Hashes
- Microsoft.WindowsTerminalPreview_1.18.1462.0_8wekyb3d8bbwe.msixbundle
- SHA256
60BF2D35DAC57DC2878C71C581CC3F000E1875A08AF318615E8FA6DD9288BCDA
- SHA256
- Microsoft.WindowsTerminalPreview_1.18.1462.0_8wekyb3d8bbwe.msixbundle_Windows10_PreinstallKit.zip
- SHA256
17D30178FD2EA39B3DC91E874435025E74C676EF918F5BF79CDF789FE554EC99
- SHA256
- Microsoft.WindowsTerminalPreview_1.18.1462.0_arm64.zip
- SHA256
62FD69046CAF504C456BEB3004CF4E83207D25FD7A03B75D8B2D2A8175630D1D
- SHA256
- Microsoft.WindowsTerminalPreview_1.18.1462.0_x64.zip
- SHA256
C63E631EDBC8211E48EA299A33A5E0ACF713F3115258E8594EDCC402D2F7A093
- SHA256
- Microsoft.WindowsTerminalPreview_1.18.1462.0_x86.zip
- SHA256
B7D47EFA7862800D5CAC6CF75D7EFE2014ED1D0FAAC6B381DEB85F6F186DE915
- SHA256
Windows Terminal v1.17.11461.0
Enjoy this quick bug fix release!
- The "Developer Command Prompt" profiles are no longer totally busted (#15439)
- Terminal no longer crashes when you have
focusFollowMouse
mode enabled (#15420)
Asset Hashes
- Microsoft.WindowsTerminal_1.17.11461.0_8wekyb3d8bbwe.msixbundle
- SHA256
E3A5A581F2A404D9D97F6826890BE9FD7BFC827498035D6C45E1C12F9D2D4E8F
- SHA256
- Microsoft.WindowsTerminal_1.17.11461.0_8wekyb3d8bbwe.msixbundle_Windows10_PreinstallKit.zip
- SHA256
2BB87BC4EA358F58D1F1BF69486B133DB09EC509BF07A7BD740F9ABBE2F25CB5
- SHA256
- Microsoft.WindowsTerminal_1.17.11461.0_arm64.zip
- SHA256
2CB999CC7AF12245E08D57D5472571C126A411C38E20F8D66E2110650FD0D757
- SHA256
- Microsoft.WindowsTerminal_1.17.11461.0_x64.zip
- SHA256
F2B1539649D17752888D7944F97D6372F8D48EB1CEB024501DF8D8E9D3352F25
- SHA256
- Microsoft.WindowsTerminal_1.17.11461.0_x86.zip
- SHA256
6A052D0501680EEADF7971B72734AC0084ECBD65B0A420E3C49014BE1860E070
- SHA256
Windows Terminal Preview v1.18.1421.0
Welcome to the Q2 release of Windows Terminal! Since we moved to a quarterly release cycle, these release notes have
really gotten out of control. Buckle up!
Note Well, the change from v1.17.1073 where we would munge our version number didn't live much longer than a single release. We finally rejoined the Windows 10 and Windows 11 packages!
Why are there so many packages? How do I choose?
Please visit our page documenting the [Windows Terminal Distributions]!
Features
- You can now drag tabs between windows or drop them off in space to make a new window! (#14866) (#14901) (#14935)
- All instances of Windows Terminal now run in the same process (#14843); please know that this may expose some
reliability issues. This is a preview build! It might break! Please let us know if it does. - Terminal has learned to (optionally) keep running without any windows open (#14944)
- Enable global setting
compatibility.allowHeadless
(boolean, defaultfalse
). - This will allow you to summon a "Quake mode" window even if there aren't any other Terminal windows open!
- Enable global setting
- You can move tabs or panes individually to new windows with a new action in the command palette, as well (#15258)
- We have extended the
moveTab
andmovePane
actions with support for awindow
parameter; the format is the
same as that of the-w
command line argument.
- We have extended the
- As a side effect of this work, Terminal no longer locks the directory from which it was spawned (rejoice!)
- Please note: Due to a bug in Windows 10, every window you close will leak about 15MiB of memory. This is
intentional and prevents a crash (yeah, not amazing. We're tracking a fix!) (#15397)
- All instances of Windows Terminal now run in the same process (#14843); please know that this may expose some
- The experimental new text rendering engine
AtlasEngine
is now newer and still experimental!. It has been
nearly completely rewritten with support for overlapping text! (#14959)- Practically speaking, this means that it will no longer cut off italic text, Emoji, or "complex" scripts. It
will continue to clip box drawing glyphs to ensure that they look great. (#15343) - We've ensured that it still supports animated shaders (#15353), Han unification (#15358), and
locl
glyph variants (#15278) - It will now be used to display the Appearance preview in the Settings UI for profiles for which it is enabled (#15355)
- Practically speaking, this means that it will no longer cut off italic text, Emoji, or "complex" scripts. It
- Terminal now offers an experimental, optional right-click context menu (#14775) (#14252) (#15079)
- Enable the menu with the profile setting
experimental.rightClickContextMenu
(boolean, defaultfalse
) - You can invoke the menu--even if it is disabled--with action
showContextMenu
(#14254) - When you have shell integration enabled (FTCS marks, mentioned below), you can use the menu to select a command or
its output (#15020)
- Enable the menu with the profile setting
- You can now customize the height (and width) of character cells in the terminal (#14255)
- See the "line height" setting in Profile -> Appearance
- Configurable via JSON in
$profile.font.cellWidth
and$profile.font.cellHeight
(string, see below, default
automatically calculated for optimal rightness)- Valid units include:
1.0
,100%
: multiplier or percent of font size12px
: raw size in device independent pixels (supports fractional pixels)12pt
: raw size in font points (1/72 of an inch; supports fractional points)1ch
: multiplier of font advance width (supports fractional multiplier)
- Valid units include:
- Thanks to @ianjoneill, Terminal is now way better at handling environment variables.
- New tabs/panes will now automatically reload the system environment (#14999) (#14839)
- You can disable this feature with the global JSON setting
compatibility.reloadEnvironmentVariables
(bool,
defaulttrue
)
- You can disable this feature with the global JSON setting
- Profiles can now contain environment variables! (#15082)
- Set JSON setting
environment
(mapstring
->string
; defaultnull
)- As an example,
"environment": { "COOL": "very", "HOW_COOL_IS_THIS": "it is %COOL% cool" }
- As an example,
- Set JSON setting
- New tabs/panes will now automatically reload the system environment (#14999) (#14839)
- The "About" dialog will now inform you when an update is available (if you are using the "MSIX bundle" or
"preinstallation kit" distributions; see below) (#13437) - "Open Terminal Here" now supports Ctrl+Shift to launch an elevated session (#15137) (thanks @jamespack!)
- If you are using the FTCS "start of command", "start of output" and "end of output" marks (
OSC 133
), you can now use
theselectCommand
andselectOutput
actions to select the command or output as demarcated by those sequences (#14807) - You can now enable or disable read-only mode, rather than just toggling it, with the
enableReadOnly
and
disableReadOnly
actions (#14995) (thanks @Swinkid!) - You can now immediately restart a connection via the
restartConnection
action (#15241) - We have made some changes to the officially supported list of Terminal distributions!
- The "unpackaged" distribution of Terminal is now officially supported on Windows 10 (10.0.19041.1 and higher) and
Windows 11 (10.0.22000.1 and higher)! (#15034) - We now offer support for running in [portable mode], where settings are saved into a directory alongside the
app (#15051) - If you have multiple unpackaged or portable installations of Terminal, they will now properly isolate from
eachother (#15118) - LEARN MORE at our new documentation page for [Windows Terminal Distributions]!
- In 1.18 and above: We've removed any runtime dependency on the "desktop" C++ Runtime Library (#14733) (#15010) (#15097)
- If you are installing 1.17 or below, you still need to install a VC++ runtime. Even in portable mode. Sorry.
- The "unpackaged" distribution of Terminal is now officially supported on Windows 10 (10.0.19041.1 and higher) and
- We have added another way of detecting whether "Default Terminal" is available on your OS 👀 (#15040)
$theme.tab.showCloseButton
now supportsactiveOnly
, to display thex
only on the active tab (#15237) (thanks @kovdu!)
Changes
file:
URIs emitted byOSC 8
now supportwsl$
; URIs emitted byOSC 8
now support all valid schemas (#14993)- The "Adjust Indistinguishable Text" feature now uses the Oklab color space (by Björn Ottosson) (#15283)
- It no longer has a measurable performance impact, either, so feel free to turn it on!
- Terminal will now send individual key down and key up events to console applications (#15130) (thanks @j4james!)
- We've refactored how Unicode input works for the ReadConsoleInput APIs in the Console and Terminal (#14745)
- Any WSL distributions named
rancher-desktop
orrancher-desktop-data
will now be ignored (#15166) (thanks @jamespack!)- Really sorry if you were using those for your day-to-day WSLing, but... what?
User Interface and Usability
- Terminal has updated to Microsoft.UI.Xaml 2.8 (#15078) (#15183) (#15280) (#15313) (#15217)
- We have added a
Close Pane
action to the tab context menu (#15198) (thanks @joadoumie!) - Since we have so many Close-related actions in the tab context menu, they've moved into a
Close...
submenu (#15250) - The Profile Appearance preview now displays a more relevant and interesting preview (#15363)
- We rewrote a bunch of the subtitles in the Settings UI for diction and flow (#15362) (#15361)
- Rejoice! We have reintroduced the original Windows Terminal UI themes under the names
Dark (Legacy)
,Light (Legacy)
andSystem (Legacy)
(#15108) - You will now be reprimanded
harshlyfor choosing a proportional font (#15195) (thanks @jamespack!) - Connection restarting with Enter (after hangup) or via the new action above is now safer and more reliable (#15240)
Performance
- We have refactored text output to achieve a roughly 4x speedup in the common case (#14821)
- The "Azure Cloud Shell" connection no longer depends on "cpprestsdk", the removal of which shrinks our package
by about 3MB per architecture! (#14776)- Due to differences in credential storage, this will require you to go through the Device Code authentication flow
again.
- Due to differences in credential storage, this will require you to go through the Device Code authentication flow
- Terminal no longer needs to shell out to
reg.exe
to manipulate the registry to work around a platform
limitation (#15028) (#15050)
VT and Compatibility
- Thanks to @j4james, we now support a whole new heap of control sequences! Thank you!
- ... horizontal margins via
DECSLRM
(requires `DECSLRM) (#15084) - ...
LNM
(Line Feed/New Line Mode) (#15261) - ...
DECAC
queries viaDECRQSS
(#14990) - ...
DECRQCRA
, to checksum a region of the screen (#14989) - ... presentation state reports, via
DECRQPSR
andDECRSPS
(#14998) - ... a more detailed Device Attributes report
DA
(#14906) - (with additional thanks to @al20878 for hands-on validation against the original hardware ❤️)
- ... horizontal margins via
- The VT engine will now filter out control characters that don't do anything (#15075) (thanks @j4james!)
- In addition, @michalnpl added support for querying the window size in cells via
CSI 18 t
! (#15295) (thanks @michalnpl!) - Merge the LineFeed functionality into AdaptDispatch (#14874) (thanks @j4james!)
Bug Fixes
centerOnLaunch
no longer overrides the restoration of window positions (#15179)- Indirect icon references (like
foo.exe,-123
) now work in the jump list (#15221) (thanks @jamespack!) - The command palette should no longer flee in terror when you activate it from the dropdown menu (#15340)
- We believe we have staked the
DesktopWindowXamlSource
window that would sometimes appear through the heart like a
vampire (#15165) start /min wt
and friends should now work properly (#13838) (#15213)- Starting Terminal with an
elevate:true
profile should no longer cause an admin elevation loop (oops) (#14946) - "Open in Terminal" no longer shows up in ZIP files (???) (#15236) (thanks @jamespack!)
- The "Developer Command Prompt / PowerShe...
Windows Terminal v1.17.11391.0
Windows Terminal 1.17 is finally out of preview! It includes...
- The ability to customize the order and contents of the New Tab menu!
scrollbarState
always
, for those of you who want to have a scrollbar constantly.- Last-chance profile restarting with Enter after it exits! Excellent for those IoT devices you SSH into!
Please see the following release notes for additional details:
Note The change from v1.17.1073 where we would munge our version number didn't live much longer than a single release. We finally rejoined the Windows 10 and Windows 11 packages!
Note that the new scrollbar mark feature is still not included in this Stable build (?)
Why are there so many packages? How do I choose?
Please visit our page documenting the Windows Terminal Distributions!
Features
- We have made some changes to the officially supported list of Terminal distributions!
- The "unpackaged" distribution of Terminal is now officially supported on Windows 10 (10.0.19041.1 and higher) and
Windows 11 (10.0.22000.1 and higher)! (#15034) - We now offer support for running in portable mode, where settings are saved into a directory alongside the
app (#15051) - If you have multiple unpackaged or portable installations of Terminal, they will now properly isolate from
eachother (#15118) - LEARN MORE at our new documentation page for Windows Terminal Distributions!
- In 1.18 and above: We've removed any runtime dependency on the "desktop" C++ Runtime Library (#14733) (#15010) (#15097)
- If you are installing 1.17 or below, you still need to install a VC++ runtime. Even in portable mode. Sorry.
- The "unpackaged" distribution of Terminal is now officially supported on Windows 10 (10.0.19041.1 and higher) and
- We have added another way of detecting whether "Default Terminal" is available on your OS 👀 (#15040)
Changes
file:
URIs emitted byOSC 8
now supportwsl$
; URIs emitted byOSC 8
now support all valid schemas (#14993)- The "Adjust Indistinguishable Text" feature now uses the Oklab color space (by Björn Ottosson) (#15283)
- It no longer has a measurable performance impact, either, so feel free to turn it on!
- Any WSL distributions named
rancher-desktop
orrancher-desktop-data
will now be ignored (#15166) (thanks @jamespack!)- Really sorry if you were using those for your day-to-day WSLing, but... what?
User Interface and Usability
- The Profile Appearance preview now displays a more relevant and interesting preview (#15363)
- We rewrote a bunch of the subtitles in the Settings UI for diction and flow (#15362) (#15361)
- Rejoice! We have reintroduced the original Windows Terminal UI themes under the names
Dark (Legacy)
,Light (Legacy)
andSystem (Legacy)
(#15108) - You will now be reprimanded
harshlyfor choosing a proportional font (#15195) (thanks @jamespack!)
Performance
- The "Azure Cloud Shell" connection no longer depends on "cpprestsdk", the removal of which shrinks our package
by about 3MB per architecture! (#14776)- Due to differences in credential storage, this will require you to go through the Device Code authentication flow
again.
- Due to differences in credential storage, this will require you to go through the Device Code authentication flow
- Terminal no longer needs to shell out to
reg.exe
to manipulate the registry to work around a platform limitation
(#15028) (#15050)
Bug Fixes
- Starting Terminal with an
elevate:true
profile should no longer cause an admin elevation loop (oops) (#14946) - "Open in Terminal" no longer shows up in ZIP files (???) (#15236) (thanks @jamespack!)
- The "Developer Command Prompt / PowerShell" profiles no longer override your starting directory (#15035)
- Copying HTML to your clipboard no longer results in reeeeeally tiny text on high-DPI displays (#15046)
- On very wide monitors, the
Outlines
shader sample no longer looks quite bad (#14971)
Accessibility
- The about dialog heading is now read out properly to a screen reader (#15200) (thanks @BenConstable9!)
- The "reset color" button in the tab color picker is now more visible to screen readers (#15257) (thanks @BenConstable9!)
UI and stuff like it
- @jamespack has added epxlanatory text to "Always Show Tabs" explaining why it can't be turned off sometimes (#15154) (thanks @jamespack!)
- Opening a profile from a submenu no longer yeets keyboard focus off into space (#15077) (thanks @kkostrzewa>!)
- When you're hovering over a URL, we now display it in a partially-encoded form to help you avoid homoglyph attacks (#15095)
Reliability and Performance
- Animations are disabled during startup so as to make Terminal start a bit faster (#15204)
- The system menu now opens when you press
<kbd>Alt+Space</kbd>
in the Settings UI (#15189) (thanks @jamespack!) with bugfixes (#15253)
VT and Compatibility
Code Health, WPF and Windows Console
These changes impact the Terminal developer experience or the Windows Console Host. Changes to conhost will be released
in a coming Windows update.
- We have removed all traces of the UWP Terminal (which was an internal build for Windows 10X) (#15222)
- The WPF control now defaults to a history length of 9001 (#15129)
Asset Hashes
- Microsoft.WindowsTerminal_1.17.11391.0_8wekyb3d8bbwe.msixbundle
- SHA256
2C46A63C764C37DD602250F9173E30603F708780CB3D55C7381EE8126311B828
- SHA256
- Microsoft.WindowsTerminal_1.17.11391.0_8wekyb3d8bbwe_Windows10_PreinstallKit.zip
- SHA256
BB943E0CAA7569993DB906C7A9B386E122B95DC1074BD47BE363802450DD1DF6
- SHA256
- Microsoft.WindowsTerminal_1.17.11391.0_arm64.zip
- SHA256
F483D0D77097402DBCB3F40C60124A735D8E5FF30F7F1E2DA5412A17E0666A6A
- SHA256
- Microsoft.WindowsTerminal_1.17.11391.0_x64.zip
- SHA256
061E019C311592212C4A8C36ABDBDACACB2D875DE055FB3E28602900A35EE617
- SHA256
- Microsoft.WindowsTerminal_1.17.11391.0_x86.zip
- SHA256
5BFD0E7E0EC3BBC54201836F316AC6484E0EC9D192A77C1E24A34C4EC95C28CB
- SHA256
Windows Terminal v1.16.1026 (1.16.10261.0 and 1.16.10262.0)
This release of Windows Terminal addresses a crash in self-elevation.
Huge thanks to @jboelter for fixing it in 1.17 (#14637).
Asset Hashes
- Microsoft.WindowsTerminal_Win11_1.16.10262.0_8wekyb3d8bbwe.msixbundle
- SHA256
229ABC77AE04FC47037F1050C6971E967C840B368CFB92468A2E0EAA78245501
- SHA256
- Microsoft.WindowsTerminal_Win11_1.16.10262.0_8wekyb3d8bbwe.msixbundle_Windows10_PreinstallKit.zip
- SHA256
17C03963403EF72244E85AD097022B109D9A8502A73F76C8D034DAEDB9D123C4
- SHA256
- Microsoft.WindowsTerminal_Win10_1.16.10261.0_8wekyb3d8bbwe.msixbundle
- SHA256
BA6FC6854E713094B4009CF2021E8B4887CFF737AB4B9C4F9390462DD2708298
- SHA256
- Microsoft.WindowsTerminal_Win10_1.16.10261.0_8wekyb3d8bbwe.msixbundle_Windows10_PreinstallKit.zip
- SHA256
14A7C5D6743D0FF22397B9CFA43576F7193A29F1727C04C49652CDCBFA168634
- SHA256
Windows Terminal Preview v1.17.1023
Happy New Year! Unwrap the first Preview build of Terminal in 2023, and find inside . . .
a bunch of cool stuff! Our community really proverbially killed it last year, so we're proud to get their work (and ours, of course) out to the world.
Note From this version forward, we are dropping some of the more clutter-y parts of our version number in our git tag and about dialog.
For deployment purposes, however, the packages will retain all four version components. The package versions for this release are1.17.10234.0
and1.17.10235.0
.
Features
- You can now customize the order and contents of the New Tab menu (#13763) (thanks @FWest98!) (#14629)
- Right now, you can only do this with JSON; check out the docs for
newTabMenu
- The first time you save your settings in 1.17, we'll convert your existing menu to the new format. This is
lossless. - This feature includes support for adding folders, separators, and profiles that meet certain criteria in addition
to the standard/built-in default menu layout.
- Right now, you can only do this with JSON; check out the docs for
- You can now set the scroll bar to be "always" displayed (thanks @sotteson1!) (#14047)
- JSON field
$profile.scrollbarState
has learned the new enum valuealways
.
- JSON field
- After a process terminates, you can press Ctrl+D to close its pane or Enter to relaunch it (#14060)
- Terminal now supports the remaining FinalTerm mark types (command input start, command executed and command finished) (#14341)
Themes
- Terminal now supports using Mica as a background material on Windows 11 (#13935) (#14675) (#14567) (#14540) (#14644) (#14708)
-
Note As a reminder, theme settings are only available via JSON.
- To use Mica, set up a new theme with the following settings:
{"window": {"useMica": true}, "tabRow": {"background": "#00000000"}}
-
- You can now configure a color scheme (per profile) to apply in System Light theme and System Dark theme (#14064) (thanks @bennettnicholas!)
- Likewise, you can do the same thing for the application theme (#14497)
Changes
Fundamentals
- The backing buffer now stores surrogate pairs inline, and measures columns differently (#13626) with bug fixes from @j4james (thanks!) (#14650)
- Please report any unusual behavior regarding Unicode characters, including selection, copy, paste and display.
- The contents of the Terminal package are now code-signed, so those of you who deploy it unzipped will no longer
get in trouble with your IT folks (#14710)
UI
- We have changed how we display our version numbers, opting to hide "bookkeeping" information such as the final
digit of the version number. Those numbers will still be noted in the package release notes and are still germane to
deployment scenarios. (#14660) - You can now configure all of the launch position parameters in the Startup section of the Settings UI (#14569) (#14518) (#14186) (#14190) (#13605) plus community bug fixes (#14522) (thanks @ianjoneill!)
- We've revamped the color schemes page for ease of understanding and sheer coolness (#14470) (#14706) (#14631) (#14550) (#14704)
- When configuring a profile's color scheme, you will now see a tiny preview of that color scheme before you
select it (#14587) (#14572)
Usability
wt
now supports the--pos
and--size
commandline arguments to control the position and size of the new
window (#13730) (thanks @ianjoneill!)- When you duplicate a tab, the new will open next to the current tab (#14521) (thanks @vamsiikrishnaak!)
- You can now use
exe
anddll
resources for icon paths, as inC:\Windows\system32\shell32.dll,41
(#14107)- However, it looks like we have an off-by-one error (that should be
42
above, but whoops. We'll fix that.)
- However, it looks like we have an off-by-one error (that should be
- The context menu now has tooltips (#14058)
VT and Output
@j4james did approximately a hundred things, so I'm going to summarize them in brief here:
- ... added support for DEC macro operations (#14402)
- ... added support for
DECARM
(Auto Repeat Mode) (#13981) - ... added support for
IRM
(Insert Replace Mode), which will be of particular interest to @vixie (sorry for the
delay, Paul!) (#14700) - ... added support for private options in
DSR
queries (#14290) - ... added support for selective erase operations (
DECSED
) (#14046) - ... added support for the
DECRQM
escape sequence (#14444) - ... added support for the rectangular area operations (
DEC*RA
) (#14285) - ... merged the legacy and extended attributes (#14036)
- ... rewrote how we handled text embedded in a stream of VT, which closed like 8 bugs (seriously) (#14640)
- ... added support for line rendition attributes (
DECDHL
) over ConPTY (#13933) - ... added support for soft fonts over (
DECDLD
) ConPTY as well (#13965)
Bug Fixes
- The Export and Find context menu items work on unfocused tabs (#14673) (#14379) (thanks @ianjoneill!)
- We've retooled how we launch Terminal elevated when you use an
elevate: true
profile (or
Ctrl+Shift-click a profile in the dropdown menu.) (#14637) (thanks @jboelter!) - The about dialog (and other dialogs) will finally block the entire window even if you resize it (#14722)
- We now attempt to account for transparent tab backgrounds when calculating the text foreground color (#14643)
- You can now drag/drop more than 16 items directly out of 7-Zip (and some other applications) (#14648) (thanks @jiejasonliu!)
- Malformed settings objects will no longer cause an "Application error 0x%" settings warning (#14668)
- Note that "Use Acrylic in Tab Row" no longer requires a relaunch (#14478)
- Terminal now more reliably handles text selections in very scrolly environments (#14636)
- Split pane borders no longer display in the wrong theme color (#14486)
- We've updated the JSON schema to contain
theme
objects (#14672) (#14666) - In separate titlebar mode, Terminal will now default to a dark title bar when you are using a dark theme (#14536)
Reliability
- Voice Access will no longer crash Terminal (#14534)
- We've removed a leading cause of crashes closing panes and tabs while screen reading was active (#14714)
- Input will no longer (rarely) trigger a crash when a screen reader is enabled (#14694)
- wpf: stop dereferencing null pointers already! come on, it's 2023! (#14678)
Performance
- We've reworked how the locking around each terminal pane works (#13746)
- We have removed our dependency on Microsoft.Toolkit.Win32.UI.XamlApplication.dll (#14520)
Accessibility
- The "Add Appearance" button will now be read out properly by screen readers (#14564)
- ... so will the search box (#14519)
- Our internal management window will no longer appear as an empty pane to screen readers (#14541)
Compatibility
- We will now properly track console handle inheritance so that
cmd /c start /b cmd
(et al) can properly
reattach to the existing session (#14544)
VT
- Wide characters will no longer cause weird cursor leavings (#14661) (thanks @j4james!)
- VT reports once again work when DECARM is disabled (#14216) (thanks @j4james!)
conhost
Note These changes will be released to the vintage console in a future version of Windows.
- When the alternate buffer is in use, the scroll bar will no longer overlap the content (#14329) (thanks @j4james!)
With additional documentation, code health, grammar, spelling, workflow security and maintenance help from @AtariDreams,
@musvaage, @sashashura, @grammar-police, @Dan-Albrecht, @d-caldasCaridad and @ianjoneill, @jsoref. Thanks so much!
Asset Hashes
- Microsoft.WindowsTerminalPreview_Win10_1.17.10234.0_8wekyb3d8bbwe.msixbundle
- SHA256
8829BF4A1ECFFA384F2DBED1496C39DD291DB44D0D0FB3F81845AE76EB174484
- SHA256
- Microsoft.WindowsTerminalPreview_Win11_1.17.10235.0_8wekyb3d8bbwe.msixbundle
- SHA256
4E5C4E1BBE226B02817B7DED321F09CFCE582803800CCDB224236C98682ED643
- SHA256
Windows Terminal v1.16.1023 (10231 and 10232)
After a long wait, many of the features in Terminal Preview 1.16 are making their way to the stable channel:
- Themes: Terminal now has support for themes!
- We have a new experimental text rendering engine, which is off by default. It's faster and handles some situations better (and some much worse, like certain fonts that don't have a true "italic" style). You can enable it in the Rendering settings.
- This release marks the triumphant return of the "adjust brightness of indistinguishable colors" feature
- For the old conhost fans in the room, you can now set
experimental.enableColorSelection
(global, bool, defaultfalse
)
After this release, Terminal Stable is moving to a quarterly feature release cycle. Since we're the default console host in Windows 11 October 2022 Update, some care is required in how quickly we distribute updates. That having been said: there will still be servicing updates and Preview channel updates, so stay tuned!
Please see the following release notes for additional details:
- Windows Terminal Preview v1.16.252
- Windows Terminal Preview v1.16.264
- Windows Terminal Preview v1.16.346
Note that the new scrollbar mark feature is not included in this Stable build. Yet.
IMPORTANT
This version was made available to the Dev External flighting ring (Windows Insiders) first, and will be
released to general availability later depending on its reliability.
Preinstallation Kit info
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.
Why are there so many packages? How do I choose?
This version of Windows Terminal is distributed in two bundles, one of which works on Windows 10-11 and the other of which only works on Windows 11.If you intend on using Terminal as an unpackaged application--that is, extracting the msix
file--we recommend that
you use the Win10
bundle. You will need the Visual C++ runtime redistributable.
In addition, if you install the packaged version on either Windows 10 or Windows 11, it now depends on the Visual C++ Universal Runtime Package.
Despite these distributions having different version numbers, they are built from the same code and there is no
functional difference between them.
If you install the Windows 10 version on Windows 11, it will probably automatically upgrade itself to the Windows 11
version. It turns out that it is impossible to have two bundles with the same version number, so it has to be this
way.
In addition to the above, we've backported the following changes and bugfixes from Windows Terminal Preview 1.16:
Changes
Fundamentals
- The contents of the Terminal package are now code-signed, so those of you who deploy it unzipped will no longer get in
trouble with your IT folks (#14710)
Bug Fixes
- We now attempt to account for transparent tab backgrounds when calculating the text foreground color (#14643)
- You can now drag/drop more than 16 items directly out of 7-Zip (and some other applications) (#14648) (thanks @jiejasonliu!)
- Malformed settings objects will no longer cause an "Application error 0x%" settings warning (#14668)
- We've updated the JSON schema to contain
theme
objects (#14672) (#14666)
Reliability
- We've removed a leading cause of crashes closing panes and tabs while screen reading was active (#14714)
- Input will no longer (rarely) trigger a crash when a screen reader is enabled (#14694)
- wpf: stop dereferencing null pointers already! come on, it's 2023! (#14678)
Performance
- We have removed our dependency on Microsoft.Toolkit.Win32.UI.XamlApplication.dll (#14520)
Accessibility
- Our internal management window will no longer appear as an empty pane to screen readers (#14541)
With additional documentation, code health, grammar, spelling, workflow security and maintenance help from @AtariDreams,
@musvaage, @sashashura, @grammar-police, @Dan-Albrecht, @d-caldasCaridad and @ianjoneill, @jsoref. Thanks so much!
Asset Hashes
- Microsoft.WindowsTerminal_Win10_1.16.10231.0_8wekyb3d8bbwe.msixbundle
- SHA256
66856D96BB62AFB175ED9C1C267C145F494549F02416CD5CF33C194790D9C9BC
- SHA256
- Microsoft.WindowsTerminal_Win10_1.16.10231.0_8wekyb3d8bbwe.msixbundle_Windows10_PreinstallKit.zip
- SHA256
0719A0E024E0E4ED37A9434308D7A0FC5A86769F209F9F68F7B744D7154390D5
- SHA256
- Microsoft.WindowsTerminal_Win11_1.16.10232.0_8wekyb3d8bbwe.msixbundle
- SHA256
786FE246C30F672D8464A1303917F9166B4809F8589C51B95B4DF33388FCA3AD
- SHA256
- Microsoft.WindowsTerminal_Win11_1.16.10232.0_8wekyb3d8bbwe.msixbundle_Windows10_PreinstallKit.zip
- SHA256
3DD84940EBEA9F5BE0F69AEE326DB902116F9F8E5DE55DD5EDE966C4323C1F0E
- SHA256
Windows Terminal v1.15.3465.0 and v1.15.3466.0
v1.15.3465.0 (Windows 10) and v1.15.3466.0 (Windows 11) are servicing updates to Windows Terminal Stable v1.15.
Warning
As a reminder, Terminal 1.12 was the last version of Windows Terminal that supports Windows 19H1 or 19H2.
Those versions of Windows went out of support in May 2022, so you really may want to consider upgrading.This message will self-destruct before the next release.
Preinstallation Kit info
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.
Why are there so many packages? How do I choose?
This version of Windows Terminal is distributed in two bundles, one of which works on Windows 10-11 and the other of which only works on Windows 11. The Windows 11 version is much smaller because we no longer need to work around a platform issue related to our dependencies.If you intend on using Terminal as an unpackaged application--that is, extracting the msix
file--we recommend that
you use the Win10
bundle. You will need the Visual C++ runtime redistributable.
In addition, if you install the packaged version on either Windows 10 or Windows 11, it now depends on the Visual C++ Universal Runtime Package.
Despite these distributions having different version numbers, they are built from the same code and there is no
functional difference between them.
If you install the Windows 10 version on Windows 11, it will probably automatically upgrade itself to the Windows 11
version.
It includes the following fixes (backported from 1.16 and https://github.com/microsoft/terminal/tree/main).
Changes
- Vintage transparency now works on Windows 10! Turn off
useAcrylic
to use it! (#14481) - Using the mouse wheel to turn off transparency will now disable the acrylic material effect (#14193) (thanks @JerBast!)
Bug Fixes
- Bracketed paste, forced titles, and the default cursor shape are no longer randomly initialized (#14345)
- This fixes an issue where pasted text would occasionally be incorrectly mangled (as opposed to correctly mangled...)
RIS
will no longer utterly tank Terminal's ability to handleC1
control characters (#13969) (thanks @j4james!)- Console applications will now be correctly identified as the owners of their associated "pseudo-console" window (#14196)
- Ctrl+C will now skip any currently-playing
DECPS
sounds (thanks @dgl for reporting) (#14214) - Applications should more reliably receive close signals when you close a tab, and we will no longer unceremoniously terminate their console sessions (#14282)
- JSON Schema:
startingDirectory
is now correctly identified as supportingnull
(#14408)
Accessibility & Usability
- Text boxes in the settings UI have been made more discoverable by screen readers (#14178)
- There will no longer no longer not be redundant tooltips in the Settings UI (#14244)
Reliability
- We've fixed one source of deadlocks in windowing management for console applications (such as hanging when they're exiting...) (#14463)
- Launching thousands of instances of
cmd.exe
back to back will no longer take down your console session (MSFT PR !8072712, 86928bb) - We've worked around a miscompilation in Visual Studio 2022 Update 4 that results in an out-of-bounds read (MSFT PR !8189936, 3c10444)
- wpf: it is no longer possible to call
WriteString
with a null terminal instance (#14515) - wpf: It is now no longer possible to resize the terminal down to 0x0 (#14467)
Code Hygiene
Dependency Updates
brought to you by @AtariDreams