Customize Windows Terminal

My Customized Windows Terminal Settings.json

This is just a very quick blog post to share my customized Windows Terminal settings.json, and it should give you an idea of how you can customize the Windows Terminal for your needs. The new Windows Terminal for Windows 10 which is open-source and you currently can get it from the Windows Store. The new Windows Terminal lets you run different shells like Windows PowerShell, PowerShell 7, Command Prompt, WSL, and alsoΒ WSL 2. It provides a couple of improvements like; multiple tabs support, GPU accelerated DirectWrite/DirectX-based text rendering engine, and much more. For me, one of the biggest advantages are the advanced customizing and configuration options, which allow you to configure the Windows Terminal settings using a profiles.json file.

Windows Terminal 1.0 was released on May 19, you can find more documentation here on Microsoft Docs.

I already shared a couple of blog posts on how you can customize your Windows Terminal experience:

Customized Windows Terminal Settings profiles json

Customized Windows Terminal Settings settings json

And here is my personal customized Windows Terminal settings profiles.json including the shells, my color themes, and my key bindings.

// This file was initially generated by Windows Terminal 0.11.1121.0
// It should still be usable in newer versions, but newer versions might have additional
// settings, help text, or changes that you will not see unless you clear this file
// and let us generate a new one for you.
 
// To view the default settings, hold "alt" while clicking on the "Settings" button.
// For documentation on these settings, see: https://aka.ms/terminal-documentation
// for my customization blog, check out: https://www.thomasmaurer.ch/2020/04/my-customized-windows-terminal-settings-json/
{
    "$schema": "https://aka.ms/terminal-profiles-schema",
 
    "defaultProfile": "{574e775e-4f2a-5b96-ac1e-a2962a402336}",
 
    // You can add more global application settings here.
    // To learn more about global settings, visit https://aka.ms/terminal-global-settings
 
    // If enabled, selections are automatically copied to your clipboard.
    "copyOnSelect": false,
 
    // If enabled, formatted data is also copied to your clipboard
    "copyFormatting": false,
 
    // A profile specifies a command to execute paired with information about how it should look and feel.
    // Each one of them will appear in the 'New Tab' dropdown,
    //   and can be invoked from the commandline with `wt.exe -p xxx`
    // To learn more about profiles, visit https://aka.ms/terminal-profile-settings
    "profiles":
    {
        "defaults":
        {
            // Put settings here that you want to apply to all profiles.
            "cursorShape": "vintage"
        },
        "list":
        [
            {
                // Make changes here to the powershell.exe profile.
                "guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
                "name": "Windows PowerShell",
                "commandline": "powershell.exe",
                "hidden": false,
                "fontFace": "Consolas"
            },
            {
                // Make changes here to the cmd.exe profile.
                "guid": "{0caa0dad-35be-5f56-a8ff-afceeeaa6101}",
                "name": "Command Prompt",
                "commandline": "cmd.exe",
                "hidden": false,
                "fontFace": "Consolas"
            },
            {
                "guid": "{574e775e-4f2a-5b96-ac1e-a2962a402336}",
                "hidden": false,
                "name": "PowerShell ⚑",
                "source": "Windows.Terminal.PowershellCore",
                "backgroundImage": "C:/Users/thoma/OneDrive/Pictures/Me/Thomas Maurer Logos 2016/WindowsTerminal/Black Cloud Robot.png",
                "backgroundImageOpacity" : 0.3,
                "colorScheme": "VibrantInk"
            },
            {
                "guid": "{c6eaf9f4-32a7-5fdc-b5cf-066e8a4b1e40}",
                "hidden": false,
                "name": "Ubuntu-18.04 🐳",
                "source": "Windows.Terminal.Wsl",
                "colorScheme": "UbuntuLegit",
                "fontFace": "Cascadia Code",
                "acrylicOpacity": 0.8,
                "backgroundImage": "C:/Users/thoma/OneDrive/Pictures/Me/Thomas Maurer Logos 2016/WindowsTerminal/RobotwithBackground.jpg",
                "useAcrylic": true,
                "backgroundImageOpacity" : 0.1
            },
            {
                "guid": "{07b52e3e-de2c-5db4-bd2d-ba144ed6c273}",
                "hidden": false,
                "name": "Ubuntu-20.04 🐳",
                "source": "Windows.Terminal.Wsl",
                "colorScheme": "UbuntuLegit",
                "fontFace": "Cascadia Code",
                "acrylicOpacity": 0.8,
                "backgroundImage": "C:/Users/thoma/OneDrive/Pictures/Me/Thomas Maurer Logos 2016/WindowsTerminal/RobotwithBackground.jpg",
                "useAcrylic": true,
                "backgroundImageOpacity" : 0.1
            },
            {
                "guid": "{b453ae62-4e3d-5e58-b989-0a998ec441b8}",
                "hidden": false,
                "name": "Azure Cloud Shell ☁",
                "source": "Windows.Terminal.Azure",
                "colorScheme": "Dracula",
                "useAcrylic": true
            },
            {
                // Connects to a remote machine using SSH
                "guid": "{3b6e258c-bd69-43af-9365-69b153b0ece6}",
                "name":  "SSH Thomas AzureVM πŸ’»",
                "tabTitle": "SSH Thomas Maurer AzureVM",
                "commandline": "ssh [email protected]",
                "icon": "C:/Users/thoma/Downloads/AzureVMIcon32.png",
                "colorScheme": "UbuntuLegit",
                "fontFace": "Cascadia Code",
                "acrylicOpacity": 0.5,
                "useAcrylic": true
            },
            {
                // Connects to a remote machine using Windows PowerShell
                "guid": "{726893ad-458f-4bf5-9cbf-7108d1f9941f}",
                "name":  "PS Thomas AzureVM πŸ’»",
                "tabTitle": "PS Thomas Maurer AzureVM",
                "commandline": "powershell.exe -noprofile -noexit -Command Enter-PSSession -ComputerName azurevmps.westeurope.cloudapp.azure.com -credential thomas",
                "icon": "C:/Users/thoma/Downloads/AzureVMIcon32.png",
                "colorScheme": "Tango Dark"
            },
            {
                // Connects to a remote machine using PowerShell 7
                "guid": "{d5f95abc-9fef-41e2-b3c5-6400ce8324b5}",
                "name":  "PS7 Thomas AzureVM",
                "tabTitle": "PS7 Thomas Maurer AzureVM πŸ’»",
                "commandline": "pwsh.exe -NoProfile -NoExit -Command Enter-PSSession -ComputerName azurevmps.westeurope.cloudapp.azure.com -credential thomas",
                "icon": "C:/Users/thoma/Downloads/AzureVMIcon32.png",
                "colorScheme": "Tango Dark"
            },
            {
                "guid": "{d6da893b-255b-44f2-92d9-7c7413096de2}",
                "name":  "PowerShell Light",
                "tabTitle": "PowerShell Light πŸ’»",
                "commandline": "pwsh.exe -NoProfile -NoExit",
                "colorScheme": "OneLight"
            }
        ]
    },
 
    // Add custom color schemes to this array.
    // To learn more about color schemes, visit https://aka.ms/terminal-color-schemes
    "schemes": [
        {
            // Color Scheme: VibrantInk
            "background" : "#000000",
            "black" : "#878787",
            "blue" : "#44B4CC",
            "brightBlack" : "#555555",
            "brightBlue" : "#0000FF",
            "brightCyan" : "#00FFFF",
            "brightGreen" : "#00FF00",
            "brightPurple" : "#FF00FF",
            "brightRed" : "#FF0000",
            "brightWhite" : "#E5E5E5",
            "brightYellow" : "#FFFF00",
            "cyan" : "#44B4CC",
            "foreground" : "#FFFFFF",
            "green" : "#CCFF04",
            "name" : "VibrantInk",
            "purple" : "#9933CC",
            "red" : "#FF6600",
            "white" : "#F5F5F5",
            "yellow" : "#FFCC00"
        },
        {
            // Color Scheme: Ubuntu
            "background":  "#2C001E",
            "black":  "#EEEEEC",
            "blue":  "#268BD2",
            "brightBlack":  "#002B36",
            "brightBlue":  "#839496",
            "brightCyan":  "#93A1A1",
            "brightGreen":  "#586E75",
            "brightPurple":  "#6C71C4",
            "brightRed":  "#CB4B16",
            "brightWhite":  "#FDF6E3",
            "brightYellow":  "#657B83",
            "cyan":  "#2AA198",
            "foreground":  "#EEEEEC",
            "green":  "#729FCF",
            "name":  "Ubuntu",
            "purple":  "#D33682",
            "red":  "#16C60C",
            "white":  "#EEE8D5",
            "yellow":  "#B58900"
        },
        {
            // Color Scheme: UbuntuLegit
            "background":  "#2C001E",
            "black":  "#4E9A06",
            "blue":  "#3465A4",
            "brightBlack":  "#555753",
            "brightBlue":  "#729FCF",
            "brightCyan":  "#34E2E2",
            "brightGreen":  "#8AE234",
            "brightPurple":  "#AD7FA8",
            "brightRed":  "#EF2929",
            "brightWhite":  "#EEEEEE",
            "brightYellow":  "#FCE94F",
            "cyan":  "#06989A",
            "foreground":  "#EEEEEE",
            "green":  "#300A24",
            "name":  "UbuntuLegit",
            "purple":  "#75507B",
            "red":  "#CC0000",
            "white":  "#D3D7CF",
            "yellow":  "#C4A000"
        },
        {
            // Color Scheme: Dracula
            "background" : "#282A36",
            "black" : "#21222C",
            "blue" : "#BD93F9",
            "brightBlack" : "#6272A4",
            "brightBlue" : "#D6ACFF",
            "brightCyan" : "#A4FFFF",
            "brightGreen" : "#69FF94",
            "brightPurple" : "#FF92DF",
            "brightRed" : "#FF6E6E",
            "brightWhite" : "#FFFFFF",
            "brightYellow" : "#FFFFA5",
            "cyan" : "#8BE9FD",
            "foreground" : "#F8F8F2",
            "green" : "#50FA7B",
            "name" : "Dracula",
            "purple" : "#FF79C6",
            "red" : "#FF5555",
            "white" : "#F8F8F2",
            "yellow" : "#F1FA8C"
        },
        {
            // Color Scheme: VibrantInk Light by Tom
            "background" : "#ffffff",
            "black" : "#878787",
            "blue" : "#44B4CC",
            "brightBlack" : "#555555",
            "brightBlue" : "#0000FF",
            "brightCyan" : "#00FFFF",
            "brightGreen" : "#FF6600",
            "brightPurple" : "#FF00FF",
            "brightRed" : "#FF0000",
            "brightWhite" : "#E5E5E5",
            "brightYellow" : "#0000FF",
            "cyan" : "#FF6600",
            "foreground" : "#000000",
            "green" : "#CCFF04",
            "name" : "VibrantInkLight",
            "purple" : "#9933CC",
            "red" : "#FF6600",
            "white" : "#F5F5F5",
            "yellow" : "#FFCC00"
        },
          {
            "name": "OneDark",
            "black": "#1e2127",
            "red": "#e06c75",
            "green": "#98c379",
            "yellow": "#d19a66",
            "blue": "#61afef",
            "purple": "#c678dd",
            "cyan": "#56b6c2",
            "white": "#abb2bf",
            "brightBlack": "#5c6370",
            "brightRed": "#e06c75",
            "brightGreen": "#98c379",
            "brightYellow": "#d19a66",
            "brightBlue": "#61afef",
            "brightPurple": "#c678dd",
            "brightCyan": "#56b6c2",
            "brightWhite": "#ffffff",
            "background": "#1e2127",
            "foreground": "#abb2bf",
            "cursorColor": "#aaaaaa"
          },
          {
            "name": "OneLight",
            "black": "#000000",
            "red": "#de3e35",
            "green": "#3f953a",
            "yellow": "#d2b67c",
            "blue": "#2f5af3",
            "purple": "#950095",
            "cyan": "#3f953a",
            "white": "#bbbbbb",
            "brightBlack": "#000000",
            "brightRed": "#de3e35",
            "brightGreen": "#3f953a",
            "brightYellow": "#44B4CC",
            "brightBlue": "#2f5af3",
            "brightPurple": "#a00095",
            "brightCyan": "#3f953a",
            "brightWhite": "#aaaaaa",
            "background": "#f9f9f9",
            "foreground": "#2a2c33",
            "cursorColor": "#aaaaaa"
          }
    ],
 
    // Add custom keybindings to this array.
    // To unbind a key combination from your defaults.json, set the command to "unbound".
    // To learn more about keybindings, visit https://aka.ms/terminal-keybindings
    "keybindings":
    [
        // Copy and paste are bound to Ctrl+Shift+C and Ctrl+Shift+V in your defaults.json.
        // These two lines additionally bind them to Ctrl+C and Ctrl+V.
        // To learn more about selection, visit https://aka.ms/terminal-selection
        { "command": {"action": "copy", "singleLine": false }, "keys": "ctrl+c" },
        { "command": "paste", "keys": "ctrl+v" },
 
        // Press Ctrl+Shift+F to open the search box
        { "command": "find", "keys": "ctrl+f" },
 
        // Press Alt+Shift+D to open a new pane.
        // - "split": "auto" makes this pane open in the direction that provides the most surface area.
        // - "splitMode": "duplicate" makes the new pane use the focused pane's profile.
        // To learn more about panes, visit https://aka.ms/terminal-panes
        { "command": { "action": "splitPane", "split": "auto", "splitMode": "duplicate" }, "keys": "ctrl+shift+t" },
 
        // Open New Tab
        {"command":"newTab", "keys": "ctrl+t"}
    ]
}

You can also find my customized Windows Terminal Settings settings.json here on GitHub Gist. I hope this helps you to customize your Windows Terminal. If you have any questions feel free to leave a comment and check out the documentation on the Windows Subsystem for Linux 2, Azure Cloud Shell, and PowerShell 7. If you are interested in what’s new in PowerShell 7, check out my blog.