Windows Terminal Themes
Tags: windowsterminal, ohmyposh, powershell, windows11
Published: 2022-06-16 12:21:07

A quick guide showing how to change your Windows Terminal from looking like this.

![Windows Terminal Before](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/a8ke7acrzjwvp41vkx1g.png)

To this.

![Windows Terminal Theme](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k1gmvb3yi702g4rbs2lv.png)

## Install Fonts

Download the **Cascadia Code (aka Caskaydia Cove Nerd Font)** from [Nerd Fonts](https://github.com/ryanoasis/nerd-fonts/releases/tag/v2.1.0).

Direct Link: [Caskaydia Cove Nerd Font](https://github.com/ryanoasis/nerd-fonts/releases/download/v2.1.0/CascadiaCode.zip)

Unzip the file and double click on the `Caskaydia Cove Nerd Font Complete` file and choose `Install`.

![Install Caskaydia Cove Nerd Font](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1d15c71ju23e3exjeqf9.png)

## Install PowerShell Core (Optional)

If you want to use the new cross platform and open source version of PowerShell head over to [GitHub](https://github.com/PowerShell/PowerShell) and follow the install instructions applicable to you.  

In this example we'll download the **Windows (x64) MSI** ([Direct Link](https://github.com/PowerShell/PowerShell/releases/download/v7.2.4/PowerShell-7.2.4-win-x64.msi)) and then run the MSI to install.

Once finished, re-open windows terminal and you should see a new **PowerShell** option.

![Windows Terminal Powershell Core](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gxt7bldhws74czfhmzws.png)

You can also change your Windows Terminal start-up options to set PowerShell Core as your default profile.

![Windows Terminal Default Profile](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/tturzqhxzrubkh3k48h9.png)

**The following steps will need to be performed in both PowerShell versions if you want to match your themes across both**

## Set default Font

Within Windows Terminal **Settings > PowerShell > Appearance** change the `Font face` to `CaskaydiaCove Nerd Font`.

![Windows Terminal Font face](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/t80mp9pl460lzzi97eg0.png)

## Install Oh My Posh

[Oh My Posh](https://ohmyposh.dev/) is the package that allows us to theme our terminal window.  The installation process has changed several times since I started using it a couple of years ago but it's now pretty simple.

Make sure you have the latest version of **App Installer** from the **Windows Store** as this will provide you with `winget`, this should be installed by default on Windows 11 but may require an update.

[App Installer](https://www.microsoft.com/p/app-installer/9nblggh4nns1#activetab=pivot:overviewtab)

In PowerShell run the following command.
```
winget install JanDeDobbeleer.OhMyPosh
```
![winget Oh My Posh](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3mrt17lvtmnh9871qtsc.png)

Create a new PowerShell profile if one doesn't exist with the following command.

```
if (!(Test-Path -Path $PROFILE )) { New-Item -Type File -Path $PROFILE -Force }
```

---
If you're using the original PoweShell run the following command as administrator to allow script execution.
```
Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope LocalMachine
```
This is not required for PowerShell Core.

---

To install new terminal icons (these change the folder/file icons in terminal) run the following command.
```
Install-Module -Name Terminal-Icons -Repository PSGallery
```
Edit your profile by using the following command.
```
notepad $PROFILE
```
Add the following lines, where `{username}` is replaced with your Windows username.
```
oh-my-posh init pwsh --config C:\Users\{username}\AppData\Local\Programs\oh-my-posh\themes\paradox.omp.json | Invoke-Expression
Import-Module -Name Terminal-Icons
```
Save and then restart Windows Terminal and you should see your new theme.

![Windows Terminal Theme](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/k1gmvb3yi702g4rbs2lv.png)

## Other Themes

You can see the other themes available to you at [Oh My Posh Themes](https://ohmyposh.dev/docs/themes), or by running the following command.
```
Get-PoshThemes
```
You can then change `paradox.omp.json` in your profile file to a different theme, i.e. `jandedobbeleer.omp.json`.

![jandedobbeleer theme](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/2l763l1aoivm56q83210.png)

Pete

[![Buy Me A Coffee](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/whmy70aj858tvqekv5n7.png)](https://www.buymeacoffee.com/panachesoftware)