Windows Terminal Preview v0.10.761.0
Pre-release
Pre-release
Features
- Mouse Support (for WSL and Windows applications using
ENABLE_VIRTUAL_TERMINAL_INPUT
) - A new profile setting,
antialiasingMode
, lets you configure whether you want text to be blurry or jagged (#4711)- The accepted options are actually not
"blurry"
and"jagged"
, they are"grayscale"
,"cleartype"
and"aliased"
- The default is
"grayscale"
, because grayscale antialiasing is most compatible with alpha blending
- The accepted options are actually not
splitPane
learned a new option,splitMode
, which accepts the value"duplicate"
(#4683)- Setting a key binding to
splitMode: "duplicate"
will make it open a copy of the current profile when you use it
- Setting a key binding to
- Resizing is so much better we decided to call it a feature, even though really it was just a hundred bugs wearing a trenchcoat (#4415) (#4741)
- We'll also try to maintain your position in the scrollback when you resize (#4903)
Changes
Accessibility
- Selection ranges now work properly (#4466)
- "Visible ranges" now work properly (#4495)
- The terminal control now has automation properties (#4732) (#4805)
- Minor refactoring to improve code sharing and performance--it turns out that selection and UIA are very similar (#4560) (#4578) (#4797)
- The cursor can now be hidden by client applications; there will be much rejoicing, but it will be invisible (#4902)
- Since the pseudoconsole hides the cursor when it moves it around, this should also hide some of the console host's weirdness
Azure Cloud Shell
- ACS is now insulated from Terminal's relatively poor VT implementation (all our VT magic is in the console host, which is a problem that nags us daily) (#4652)
- This means that PowerShell works inside ACS
- A bunch of other things work too, like mouse mode and vim and things people actually want to use
- ACS has received an input and UI/UX overhaul (#4756)
- You can now enter tenant numbers greater than 9
- User-enterable text will be highlighted to indicate actionability
- When you type before connecting, you can now see what you've typed and confirm it before hitting Enter
- Things you type after connecting but before you get a shell now get sent across the wire
- ACS now follows your shell choice set on shell.azure.com
Settings
- A keybinding's
keys
can now be a simple string (#4714)- This is intended to reduce confusion regarding key chords, which we do not yet support.
- All existing settings should work as-is.
- We've added a number of warnings for unexpected keybinding situations (#4746)
snapToGridOnResize
is now on by default (#4569)
Input & Interaction
- The touch keyboard will now show up when you focus/click the terminal (#4867)
- Emoji, Kaomoji and symbols should appear during composition (#4688)
- We now allow IME input in Search Box (#4723)
- We've made some changes to TSF input to compensate for Korean input methods not behaving the way we expected (#4796) (#4836)
- Touchpad and touchscreen scrolling will now go at a completely normal speed instead of jumping straight to plaid (#4554)
- If you've set
rowsToScroll
to1
, scrolling will now be weirdly slow for you. Remove that setting; we're considering removing it officially ourselves.
- If you've set
- When
copyOnSelect
is on, clicking, right-clicking, and click-dragging in terminals both focused and unfocused should act more reasonably (#4596) (#4819)
Miscellaneous
- Ctrl+Shift+Wheel will now turn acrylic on or off at 100% (#4853)
- An active selection will be deactivated when the window resizes (#4777)
- When the pseudoconsole sends something it doesn't understand, it'll now do so immediately so the Terminal can handle it (#4896)
- VT sequences that we didn't understand but it took us two reads to figure that out will be flushed as a single unit (#4870)
Bug Fixes
- When your system is in Dark theme (the one true theme), Terminal's window borders will now behave (#4817)
- Characters that would have rendered outside their cells are now being kept in line (aggressively) (#4671)
- When you press F7, it won't be snatched still-beating out of your clutches and taken away to Xaml land (#4807)
- We had slightly regressed writing UTF-8 to the console if you broke up the lead/continuation bytes, and now that's fixed (#4685) (#4798)
- We've fixed the leading two causes of there being a weird gray hole in the titlebar (#4829) (#4845)
- When the terminal is maximized or fullscreen, Windows will no longer think we're a game and suppress the taskbar and notifications (#4857)
initialRows
andinitialColumns
(if that's what we called them) should now be applied more accurately (#4825)- We'll no longer try to cut a hole in a fullscreen window so that you can drag it around (#4904)
- When the cursor's off the screen, but only by a little bit, we won't try to draw it (#4901)
- Terminal will now receive
RIS
(hard reset) from client applications (#4909) - Ctrl+Alt+X and Ctrl+Alt+Z will now be received by client applications correctly; previously they would be received with their Alt status stripped (#4940)
Rendering
- Sometimes we would decide that your font was 0.00001 pixels too wide and try to shrink it; we now don't do something so silly (#4861)
- We fixed a bug where sometimes we would break an emoji (or more importantly, a CJK ideograph) in half and render two copies of it, one big and one small (#4668) (#4731)
- When we have to shrink a glyph to fit it in a cell, we no longer shrink everything else on that line (#4747) (#4781)
- If you like retro scanlines and have a high-DPI display, those scan lines should now be way more visible and not cause visual issues at the right side of the screen (#4716)
- Fonts with glyphs with locale-specific differences should, when fallen back to, render as though they're in your system's locale (#4934)
Performance
- The VT renderer won't generate a bunch of formatted diagnostic strings unless somebody's really listening (#4594)
- We won't try to render more than once per frame (#3511) (#4698)
- The VT renderer will now keep a format buffer high water mark to avoid allocating and freeing memory tens or hundreds of times per frame (#4890)
- When an application changes the color but doesn't print anything using that color, we'll silently ignore it (#4877)
- It turns out cmatrix does this all the time, so now cmatrix runs a lot faster.
Reliability
- TermControl is no longer too strict about some of the pixel math done inside it (#4721)
- You can no longer reorder tabs while elevated, sorry (#4874)
- We are pursuing a fix with the platform
- ConptyConnection's had a use-after-free eliminated (#4871)
- Fixed a rampant crash in
TSFInputControl
when opening new tabs (#4830)