A new preview version of Windows Terminal is now available for testing.
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.
Features
- We're trying out a new tab switching experience! (#6732), followups: (#7263) (#7280) (#7321)
- The nextTab and prevTab bindings will now display an ephemeral UI that can be navigated with the mouse or keyboard
- If you would like to fall back to the original tab-switching UI (or lack thereof), set new useTabSwitcher (global, boolean, default true) to false.
- We'd love feedback on why the new tab switcher didn't work for you!
- Building on the infrastructure from the tab switcher, we're also flighting support for a new tab search/jump experience
- Bind the "tabSearch" action ({"command": "tabSearch", "keys": ...}) to open up a filterable list of open tabs!
- The "command palette" introduced in 1.2 is now bound to Ctrl+Shift+P by default (#7384)
- It has gained support for nested/repeated commands (#7299) (#6856) that can iterate over profiles and color schemes (#7329)
- We've shipped a couple convenience commands, like "set color scheme to ..." and "open split pane with ... in direction ..." (#7348)
- By starting your command with >, you can enter "commandline" mode and run any wt startup script, like > new-tab ; split-pane (#7293)
- It now has support for command icons! (#7368)
- We've added support for a new action, wt, that lets you run any WT commandline in your current session (#6537)
- Example: { "command": { "action": "wt", "commandline": "split-pane -p Ubuntu; new-tab; split-pane" }, "keys": ... }
- We've added a new action, sendInput, that can emit text directly into the terminal (thanks @lhecker!) (#7249)
- Example: you can bind a so that it sends the VT sequence for "up arrow"
- { "command": { "action": "sendInput", "input": "\u001B[A" }, "keys": "a" }
- You can now zoom one pane to temporarily take up the entire terminal with the togglePaneZoom action! (#6989) (#7273)
- You can now override the active color of the terminal using the setColorScheme action (#6993)
- A profile can now specify its default tabColor (profile setting, hex color, default unset) (#7162)
- Two actions have been added, closeOtherTabs and closeTabsAfter, to facilitate better tab management (#7176)
- The copyFormatting option and the copy.copyFormatting action argument have been taught finer-grained control
over the copied formats (#6004)
- You can now specify an array of formats, [ "rtf", "html" ], a string "html", "all", or a boolean to indicate
which formats to copy. true maps to all and false maps to none.Changes
- Windows Terminal 1.3 ships with Cascadia Code v2008.25
- The bindings keyword in settings has been replaced with actions in preparation for improvements to the action
binding experience (#7332)- All processes spawned under Terminal will be given a fresh new environment block (#7243)
- WARNING This may break some workflows, as environment variables from without Terminal will no longer be
inherited. If you have a broken workflow, please reach out.- Terminal is now a little more strict about parsing your settings (#6590), but it will now actually tell you why
something couldn't be understood (#7241)- Key bindings can now use the app or menu key (thanks @MichelleTanPY!) (#7328)
UI
- Clicking in the scrollbar track will now jump up/down by a whole screenful (#7385)
- The color picker is now more visually consistent, having learned to round its buttons (thanks @MichelleTanPY!) (#7305)
Terminal Basics
- We now have very basic support for DCS sequences (thanks @skyline75489!) (#6328)
- Even if we can't support sixels, the least we could do is not dump their raw data to the screen!
- If you really wanted their raw data dumped to the screen, why??
- Underlines are now rendered consistent with the font's metrics (thanks @j4james!) (#7148)
- We now have support for SGR 21, doubly-underlined (thanks @j4james!) (#7223)
- We now have support for SGR 9, crossed out (thanks @j4james!) (#7143)
- Our underline/strikethrough renderer has been refactored to be easier to work with (thanks @j4james!) (#7107)
- Our VT parser has been refactored to be easier to work with (thanks @j4james!) (#7304)
- Scroll locking should now work more reliably when the scrollback is at maximum length (#7247)
Bug Fixes
- The command palette now has a gutter so that it stops overlapping the scrollbar (thanks @jtippet!) (#6965)
- F7 will no longer not work after our "null scancode" change (whoops!) (#7298)
- altGrAliasing: false will no longer actually break AltGr (thanks @lhecker!) (#7400)
- Profiles whose indices are greater than 9 will now properly display their shortcuts in the menu (thanks
@MichelleTanPY!) (#7344)Performance
- Miscellaneous performance improvements for handling incoming data:
Windows Terminal Preview v1.3.2382.0