Setting themes, fonts and icons in Windows Terminal
- 3 minutes read - 577 wordsI’ve been using Windows Terminal more and more over the past couple of months, and have really come to love it. This is a quick post on how to customise it with a theme, fonts and icons.
Disclaimer: I’m completely ripping off Kayla Cinnamon’s video, but thought I’d put it into writing so it’s easier to find and use.
Step 1: Install Windows Terminal
If you haven’t already got Windows Termianl, the recommended way to install it is via the Microsoft Store. This way, it will be automatically kept up to date for you.
Step 2: Add a Background image
No terminal is complete without an awesome background image. To add a background image in Windows Terminal:
- Download an awesome image .e.g. The Northern Lights
- Go to Settings
- Select your PowerShell profile
- Go to Appearance
- Scroll down to Background image
- Browse to and set your image
You’ll also want to set the Background image opacity to around 50% so that text shows up clearly:
Step 3: Install Oh my Posh
To go from the standard PowerShell prompt, to the one that you keep seeing on other devs laptops, you need Oh my Posh.
For PowerShell 6+, the installation is:
Install-Module oh-my-posh -Scope CurrentUser
Then, you’ll want to pick a theme and set it to import when your terminal/PowerShell starts. You can see available themes with:
Get-PoshThemes
To import your theme on startup, open your PowerShell profile with:
notepad $PROFILE
and add the following line:
Set-PoshPrompt -Theme paradox
In this case I’m using the paradox
theme, but you could use any theme available with Get-PoshThemes, or one that you’ve created.
Step 4: Install a Nerd Font
Oh my Posh is great and all, but you might notice that the prompt doesn’t look right; some of the glyph characters are just boxes. To fix this, we need a Nerd Font that includes all of these glyphs.
If you head over to Nerd Fonts downloads, you’ll find lots of different fonts. I like Cascadia Code, so the equivalent Nerd Font is Caskaydia Cove Nerd Font, which you can download here. Once downloaded, unzip and open Caskaydia Cove Nerd Font Complete.ttf
and install it:
You then need to tell Windows Terminal to use the font. Open your PowerShell Appearance Settings again (as above), and type in CaskaydiaCove Nerd Font
into Font face.
In coming releases, fonts will be a dropdown selection rather than free text which will make it easier to select fonts.
You’ll need to restart the terminal for the font to be updated:
You’ll notice the glyphs are now rendered correctly!
Step 5: Install Terminal Icons
Now your prompt is looking great, the final thing to do is to get your folders and files looking great in the terminal. This can be done with Terminal Icons:
Install-Module -Name Terminal-Icons -Repository PSGallery
You’ll also need to add the following to your PowerShell profile to import it on startup:
Import-Module -Name Terminal-Icons
If you then do an ls
command, the icons will show for each file:
Summary
In this post, we followed Kayla’s video to get Windows Terminal looking great, making our dev experience just that much nicer. There’s lots more you can do with it, so check out the docs and follow Kayla on Twitter to see the latest and greatest with what’s happening with Windows Terminal, Cascadia Code and other cool things she’s working on!