Windows 10 949 Published by

Microsoft has released a new version of Windows Terminal Preview.





Windows Terminal is a new, modern, feature-rich, productive terminal application for command-line users. It includes many of the features most frequently requested by the Windows command-line community including support for tabs, rich text, globalization, configurability, theming & styling, and more.

The Terminal will also need to meet our goals and measures to ensure it remains fast and efficient, and doesn't consume vast amounts of memory or power.

This is the last major update before 1.0! It's all servicing releases from here on out. There have been some breaking changes in settings. See below.

Features

  • This is the first version of Windows Terminal that has support for non-English UI languages.
    • We're not totally done with localization, so please bear with us.
    • If you see any egregious translation issues, file a bug!

Changes

Accessibility
  • Screen readers should now be able to read wide glyphs (#4946)
  • Screen readers should now be able to read block selections (#4991)
  • The "text cursor indicator" accessibility feature now follows the cursor (#4826)
    • While we were doing this, we realized we were sending thousands of cursor events to UIA. Now we're not. (#5196)
Azure Cloud Shell
  • The Azure Cloud Shell connection is now more robust in the face of errors and expired tokens (#5356)
    • When there's an error, we'll actually tell you what it is instead of blaming your ISP
    • Newly-added tenants will display their default domains instead of their GUIDs, as that's a lot more readable
    • When your token has expired, we'll just make you log in again (instead of blaming your ISP because we thought there was an error)
Settings
  • BREAKING CHANGE We've deleted a lot of legacy settings handling (#5190)
    • Please see  our blog post and our most recent status update for more information.
    • If you had settings hanging out in the globals dictionary, you'll want to move them out.
      • Failure to do so will cause us to ignore your default profile, launch mode, etc., etc.
  • profiles.json has been renamed to settings.json. This should be transparent to you as we'll rename it on first launch (#5199)
    • As a side effect, we'll finally stop resurrecting old pre-version-0.3 roaming profiles.
  • If you don't specify a splitPane split mode, it'll default to automatic (#5194)
  • copy's original and poorly-understood trimWhitespace argument is now called singleLine to indicate that it will, in fact, copy text as a single line (#5216)
  • requestedTheme has been renamed to theme (#5265)
  • The default font for any profiles that don't specify a font is now  Cascadia Code (#5121)
  • FOR NEW USERS
    • The default settings.json now contains a whole bunch of usability improvements (#5217), including:
      • Ctrl+C and Ctrl+V bound to copy and paste by default
      • Ctrl+Shift+F bound to find (as an example of how to write key bindings)
      • Alt+Shift+D bound to "open duplicate split of current profile" (as an example of how key bindings can have arguments)
      • comments everywhere
    • Your settings file will now indicate the version of Terminal that originally generated it (#5232)
    • (If you want these settings for yourself, delete your settings.json.)
  • defaults.json now contains more of the actual live defaults for reference (#5231)
  • Terminal now ships the Tango Dark and Tango Light color schemes by default (#5305)
  • You can now specify a cursorColor in a color scheme (instead of in your profiles) (#4651)
  • It is now possible to turn off HTML/RTF copy with the copyFormatting setting (default: true; new user template default: false) (#5404)
    • The "template" default differs from the real default so that existing users don't get this feature taken away from them.
  • The default background color for the legacy Windows PowerShell profile is now black (#5432)
    • The original blue background is available in the "Campbell PowerShell" scheme.
    • This change was made for accessibility reasons.
Input & Interaction
  • We've consolidated our input stack so that non-US-104 keyboard layouts work more reliably (#4192)
  • Deleting a composition in progress when entering Chinese now no longer breaks input forever (#5109)
  • Composing input should now look slightly better when it doesn't fit on the screen (#5005)
    • We know this isn't perfect, but it's shippable.
  • The composition field should more closely follow the cursor (#5135)
Miscellaneous
  • We've revamped selection! No longer will a single click select a single cell -- you must drag to select text. Rejoice! (#5096)
  • Touchpad scrolling on Synaptics touchpads should finally, mercifully, work properly (only on the terminal) (#5131)
  • The box cursors should now more accurately represent double-width glyphs (#5319)
  • Connected applications can now detect which profile spawned them by reading the WT_PROFILE_ID environment variable (#4852)
VT
  • The console host now responds to DSR-OS, the "operating status report" request (#5300)
Debuggability
  • We added an optional "debug tap" that you can enable to get a peek behind the curtain; see the pull request for more information (#5127)
Bug Fixes
  • We've fixed another couple instances of line wrapping being ignored for resize and copy/paste (#5181) (#5294)
  • Command-line arguments should now trigger more reliably in the order you expect them to (#5090)
  • Your window borders will now reflect the theme you want, rather than the theme you have (#5105)
  • Terminal will now issue the right error message when you, human that you are, use the wrong JSON value type (#4961)
  • DOSKEY users, your time has come: the console won't crash when you use doskey /listsize=0 to delete your CMD history
  • Search's Case Sensitivity button doesn't look like trash on High Contrast any longer (#5088)
  • We'll account for padding when we try to figure out the launch size (#5091)
  • VT parameters >32767 will now be clamped to 32767 (#5200)
  • We should now restore the window properly when you have an auto-hide taskbar (#5213)
  • Legacy applications hiding/showing the cursor should no longer make it revert to Vintage style (#5251)
  • Using Shift to extend your selection when copyOnSelect is enabled should no longer perform a single-line unwrapping copy (#5346)
  • Menus and buttons in dialogs should reflect your application theme instead of your system theme (#5224)
  • Terminal will look less terrible when you fullscreen it using Alt+Enter (#5046)
  • Terminal will try to avoid leaving the cursor visible while it's doing off-screen manipulation
Console Compliance and Correctness
  • Ctrl+Alt+Space should now work more "correctly" for VT input applications (#5208)
  • The pseudoconsole can now pass application cursor keys (#5383)
  • The pseudoconsole will now handle scrolling invalidation more correctly (#5122)
  • Your arrow keys should now be more meaningful to legacy applications (like GOW nano and python, which acts strangely like a legacy application) (#5021)
  • Tab stops should work more reliably (#5173)
  • RIS (hard reset) will now switch out of the alternate buffer (#5248)
Rendering
  • Those weird blurry lines between contiguous blocks of background color are now gone, GONE! (#5149)
Performance
  • The PTY now wastes way, way less time re-rendering stuff that hasn't changed (#5024)
  • We can now detect the width of a codepoint in even less time than before (#3727)
Reliability
  • When your graphics card goes away for longer than you'd like, Terminal will now now bite the dust (#5353)
    • Since we can't reliably tell when it's back, however, we'll prompt you to let us know. This should be rare.
  • We no longer hang when closing a tab on an intransigent application (#5303)
  • Terminal doesn't crash if you open the About dialog when you're running it outside of the MSIX package (#5274)
    • It'll do one better, and give you a meaningful version number.
  • The Terminal no longer crashes when you type before a new tab fully starts up, or use UIA sometimes, or really any number of other things caused by it not actually being ready (#5051) (#5225) (#5286)
WPF Control

Changes to the WPF control do not ship to the Windows Store, but they will appear in a future product.

  • The WPF control now supports VT mouse mode (#5375)
  • The selection changes noted above also apply to the WPF control
  • It now supports double- and triple-click selection for words and lines (#5374)
  • On x64, it should no longer crash when you scroll down (#5373)
  • Selection will only be dismissed for real input (#5388)
Download