It’s been some time since I noticed the fancy looking terminals being used by presenters during tutorial clips. I was curious and eventually started to investigate how to set it up myself. I’ve collected the steps to do so, to use as a reference.
I won’t go into deep details. So if you’re following this, you better know what you’re actually doing with below commands!

References

First things first, I figured it out using other blogs and the websites of the modules. I don’t remember all of them, but let’s show them some love:

Install CascadiaCode NerdFont

To get started with anything, we need to install a Nerd Font which supports ligatures, and which is supported by oh-my-posh. I didn’t want to deviate too far from the standards. So I picked up the “CascadiaCode” version.

  • Go to the Nerd Fonts website download page: https://www.nerdfonts.com/font-downloads
  • Search for “CascadiaCode” and download the latest one available. (Currently this was Caskaydia Cove Nerd Font)
  • Install the font as you would any other font on your device

Enable Ligatures in Editors

Do be sure to enable these, because they will start to override some default behaviors and views of characters. I like the sight of it, but it could be confusing for others.

Visual Studio

  • Open “Options”
  • Open the “Fonts and Colors” tab
  • Select “Cascadia Code” as your font for the text editor (Ligatures are supported out of the box)

Visual Studio Code

  • Open “Settings” and/or open “settings.json”
    • Ligatures can only be enabled in the json file
  • Add CaskaydiaCove Nerd Font, Cascadia Code in front of the other options for the tag editor.fontFamily
  • Add the value true for the tag editor.fontLigatures

Enable Oh My Posh & Terminal Icons in Powershell

The next steps are best done in the “Terminal” Windows App. The changes will flow through to all other places where it is used, like Visual Studio Code.

  • Configure Cascadia Code to be the default font for your Powershell Terminal. You can do this through the general configuration screens.
  • Set the execution policy for the current user to unrestricted in Powershell, if needed for the following commands. I’ll let you look up how to do this, so you also know how this affects your whole Powershell!
  • Install the Posh GIT Module:
Install-Module posh-git -Scope CurrentUser
  • Install the Oh My Posh Module:
Install-Module oh-my-posh -Scope CurrentUser

If it doesn’t want to install, add the -Force flag to the command.

  • Install the Terminal Icons Module:
Install-Module -Name Terminal-Icons -Repository PSGallery
  • Open your Powershell Profile with a code editor:
code $PROFILE
  • Alter the Profile script to include these steps at start-up to start the modules and set a theme. Look up what theme you like on https://ohmyposh.dev/docs/themes:
Import-Module oh-my-posh
Import-Module -Name Terminal-Icons
Set-PoshPrompt -Theme pixelrobots
  • Save, close, restart your terminal & enjoy!

Postscript

And after writing this quickstart, I find a recent docs article from Microsft describing how to do all this too. That’s what you get when you keep a large backlog of things you want to write about!
Enjoy and use this too if you get stuck: https://docs.microsoft.com/en-us/windows/terminal/tutorials/custom-prompt-setup