Skip to main content

Windows Terminal

PowerLevel10k

Add Git Bash to Windows Terminal

  1. Open Windows Terminal. From the drop down menu (look for the ˅ symbol next to the tabs) select Settings
  2. In the left menu under Profiles select Add new
  3. Click on + New Empty Profile
  4. In the name field enter Git Bash
  5. In the Command line field enter C:\Program Files\Git\bin\bash.exe
  6. Under Starting directory unselect the Use parent process directory checkbox. %USERPROFILE% should populate the field instead
  7. In the Icon field enter C:\Program Files\Git\mingw64\share\git\git-for-windows.ico
  8. Click Save
  9. In the left menu at the top select Startup
  10. Update the Default profile field to Git Bash
  11. In the left menu at the bottom select Open JSON File
  12. Find the Profile.list array and change the ordering to your preference

Add Brogrammer Color Theme

  1. Open Windows Terminal. From the drop down menu (look for the ˅ symbol next to the tabs) select Settings

  2. In the left menu at the bottom select Open JSON File

  3. Find the schemes array and add the following object:

    {
    "name": "Brogrammer",

    "cursorColor": "#B9B9B9",
    "selectionBackground": "#45A2D2",

    "background": "#131313",
    "foreground": "#D6DBE5",

    "black": "#1F1F1F",
    "blue": "#2A84D2",
    "cyan": "#1081D6",
    "green": "#2DC55E",
    "purple": "#4E5AB7",
    "red": "#F81118",
    "white": "#D6DBE5",
    "yellow": "#ECBA0F",
    "brightBlack": "#D6DBE5",
    "brightBlue": "#1081D6",
    "brightCyan": "#0F7DDB",
    "brightGreen": "#1DD361",
    "brightPurple": "#5350B9",
    "brightRed": "#DE352E",
    "brightWhite": "#FFFFFF",
    "brightYellow": "#F3BD09"
    }
  4. Find the Profiles.list array and add the following properties to the profile objects that you want the Brogrammer theme applied to:

    "colorScheme" : "Brogrammer"
    "cursorShape" : "filledBox"

    The profile should look similar to this:

    {
    "colorScheme": "Brogrammer",
    "cursorShape": "filledBox",
    "commandline": "C:\\Program Files\\Git\\bin\\bash.exe",
    "guid": "{575851b6-d773-46a1-9a47-6ef3249e1942}",
    "hidden": false,
    "icon": "C:\\Program Files\\Git\\mingw64\\share\\git\\git-for-windows.ico",
    "name": "Git Bash"
    },

Add GitHub Copilot Chat for Windows Terminal

See GitHub Copilot in Windows Terminal

Install Oh My Zsh

  1. Download the latest MSYS2 zsh package from the MSYS2 package repository https://packages.msys2.org/package/zsh?repo=msys&variant=x86_64. The file will be named something along the lines of zsh-5.8-5-x86_64.pkg.tar.zst

  2. Extract the contents of the archive (which should include etc and usr folders) into your Git Bash installation directory. This is likely to be under C:\Program Files\Git. Merge the contents of the folder if asked (no files should be getting overridden).

  3. In Git Bash run the follow to verify the installation:

    zsh --version
  4. Configure Zsh as the default shell by appending the following to your ~/.bashrc file:

    if [ -t 1 ]; then
    exec zsh
    fi

Case Insensitive Tab Completion

By default, Zsh "Tab Completion" may be case sensitive. To make it case insensitive when typing lower case letters, open your ~/.zshrc file in an editor and append the following lines:

autoload -Uz compinit && compinit
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Za-z}'

Install Powerlevel10k Plugin

Follow the guide at Powerlevel10k README

tip

Read instructions in the above guide all the way through for each step. It is easy to skip the updating of the terminal's profile font, and setting ZSH_THEME="powerlevel10k/powerlevel10k" in ~/.zshrc.

tip

For Windows Terminal, go to settings -> \{ profile \} -> Appearance and change the font face to the font that the powerlevel10k instructions said to download.

When running the Powerlevel10k config use the following styles:

Prompt Style = Rainbow
Character Set = Unicode
Show Current Time = 12-hour format
Prompt Separators = Angled
Prompt Heads = Sharp
Prompt Tail = Flat
Prompt Height = Two lines
Prompt Connection = Dotted
Prompt Frame = No frame
Connection Color = Lightest
Prompt Spacing = Sparse
Icons = Many Icons
Prompt Flow = Concise
Enable Transient Prompt = No
Instant Prompt Mode = Verbose