release notes
The new Windows Terminal and the original Windows console host, all in the same place!
release notes
Published 1/14/2020
Contains breaking changesrelease notes
Published 1/14/2020
Contains breaking changesFirst, the flashiest new feature: a retro-style CRT shader (EXPERIMENTAL FEATURE) (#3468)
experimental.retroTerminalEffect (boolean) in your profile. This one will only take effect on the next new tab you open!experimental. namespace!There’s an all-new connection state manager! When a process exits, you’ll be confronted with the cold hard reality of the situation. (#3623)
closeOnExit still works, and still takes true/false. That’s all fine and well.true/false, it now takes the string values "graceful", "always" and "never". true has become graceful, and graceful means "if it exits without an error." never and always are exactly what they say on the tin. false now maps to never.We’ve shipped support for "default settings!" This lets you specify settings that apply to all profiles. (#3892)
guid.You can now search for ~your lost keys~ some really important output you might have missed! (#3590)
find action.Improvements to pane-splitting and tabbing key bindings:
splitPane key binding that takes an option split (string, "horizontal", "vertical" or "auto") that seeks to replace splitVertical and splitHorizontal (#3722)
"auto" splits in half along the larger dimension (#4025)newTab and split* can now open specific profiles with option overrides, specified by ... (#3825)
profile (string, guid): a profile name or guidindex (int): a profile index in the profile listcommandline (string): a commandline to launch in the new profilestartingDirectory (string path): the path to a directory in which to launch this profiletabTitle (string): a custom title for the newly-opened pane or tabYou can now configure the number of rows that your scroll wheel (or touchpad) will scroll (#3575)
rowsToScroll"system" (trust Windows) or any integerWe've landed the first hint of tab size customization: tabWidthMode (#3876)
"equal" (DEFAULT): all tabs are the same size, and they shrink to a certain tolerance before scrolling"titleLength": the mode you know and love and also hateYou may now opt in to grid-snapping resize with the snapToGridOnResize global setting. (#3181) (#4154)
\x1b[#8](https://github.com/microsoft/terminal/pull/8)) is now supported for when you want a terminal full of Es (#3968)WT_SESSION environment variable (#4157)docker-desktop distributions will no longer appear in the profile list (#4156)
docker-desktop{something} and can't find it:
{ // Ctrl+Shift+U will launch the Ubuntu profile
"command": {
"action": "newTab",
"profile": "Ubuntu"
},
"keys": [ "ctrl+shift+u" ]
}
"profiles": [
{
"commandline": "cmd.exe",
"guid": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}",
"name": "cmd",
"fontFace": "Cascadia Code PL",
"colorScheme": "Vintage"
},
{
"guid": "{574e775e-4f2a-5b96-ac1e-a2962a402336}",
"name": "PowerShell Core",
"source": "Windows.Terminal.PowershellCore",
"fontFace": "Cascadia Code PL",
"colorScheme": "Vintage"
},
{
"guid": "{58ad8b0c-3ef8-5f4d-bc6f-13e4c00f2530}",
"name": "Debian",
"source": "Windows.Terminal.Wsl",
"fontFace": "Cascadia Code PL",
"colorScheme": "Vintage"
}
],
"profiles": {
"defaults": {
"fontFace": "Cascadia Code PL",
"colorScheme": "Vintage"
},
"list": [
{
"commandline": "cmd.exe",
"guid": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}",
"name": "cmd"
},
{
"guid": "{574e775e-4f2a-5b96-ac1e-a2962a402336}",
"name": "PowerShell Core",
"source": "Windows.Terminal.PowershellCore"
},
{
"guid": "{58ad8b0c-3ef8-5f4d-bc6f-13e4c00f2530}",
"name": "Debian",
"source": "Windows.Terminal.Wsl"
}
]
},
First, the flashiest new feature: a retro-style CRT shader (EXPERIMENTAL FEATURE) (#3468)
experimental.retroTerminalEffect (boolean) in your profile. This one will only take effect on the next new tab you open!experimental. namespace!There’s an all-new connection state manager! When a process exits, you’ll be confronted with the cold hard reality of the situation. (#3623)
closeOnExit still works, and still takes true/false. That’s all fine and well.true/false, it now takes the string values "graceful", "always" and "never". true has become graceful, and graceful means "if it exits without an error." never and always are exactly what they say on the tin. false now maps to never.We’ve shipped support for "default settings!" This lets you specify settings that apply to all profiles. (#3892)
guid.You can now search for ~your lost keys~ some really important output you might have missed! (#3590)
find action.Improvements to pane-splitting and tabbing key bindings:
splitPane key binding that takes an option split (string, "horizontal", "vertical" or "auto") that seeks to replace splitVertical and splitHorizontal (#3722)
"auto" splits in half along the larger dimension (#4025)newTab and split* can now open specific profiles with option overrides, specified by ... (#3825)
profile (string, guid): a profile name or guidindex (int): a profile index in the profile listcommandline (string): a commandline to launch in the new profilestartingDirectory (string path): the path to a directory in which to launch this profiletabTitle (string): a custom title for the newly-opened pane or tabYou can now configure the number of rows that your scroll wheel (or touchpad) will scroll (#3575)
rowsToScroll"system" (trust Windows) or any integerWe've landed the first hint of tab size customization: tabWidthMode (#3876)
"equal" (DEFAULT): all tabs are the same size, and they shrink to a certain tolerance before scrolling"titleLength": the mode you know and love and also hateYou may now opt in to grid-snapping resize with the snapToGridOnResize global setting. (#3181) (#4154)
\x1b[#8](https://github.com/microsoft/terminal/pull/8)) is now supported for when you want a terminal full of Es (#3968)WT_SESSION environment variable (#4157)docker-desktop distributions will no longer appear in the profile list (#4156)
docker-desktop{something} and can't find it:
{ // Ctrl+Shift+U will launch the Ubuntu profile
"command": {
"action": "newTab",
"profile": "Ubuntu"
},
"keys": [ "ctrl+shift+u" ]
}
"profiles": [
{
"commandline": "cmd.exe",
"guid": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}",
"name": "cmd",
"fontFace": "Cascadia Code PL",
"colorScheme": "Vintage"
},
{
"guid": "{574e775e-4f2a-5b96-ac1e-a2962a402336}",
"name": "PowerShell Core",
"source": "Windows.Terminal.PowershellCore",
"fontFace": "Cascadia Code PL",
"colorScheme": "Vintage"
},
{
"guid": "{58ad8b0c-3ef8-5f4d-bc6f-13e4c00f2530}",
"name": "Debian",
"source": "Windows.Terminal.Wsl",
"fontFace": "Cascadia Code PL",
"colorScheme": "Vintage"
}
],
"profiles": {
"defaults": {
"fontFace": "Cascadia Code PL",
"colorScheme": "Vintage"
},
"list": [
{
"commandline": "cmd.exe",
"guid": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}",
"name": "cmd"
},
{
"guid": "{574e775e-4f2a-5b96-ac1e-a2962a402336}",
"name": "PowerShell Core",
"source": "Windows.Terminal.PowershellCore"
},
{
"guid": "{58ad8b0c-3ef8-5f4d-bc6f-13e4c00f2530}",
"name": "Debian",
"source": "Windows.Terminal.Wsl"
}
]
},