For developers or anyone who uses Windows Terminal to interact with the shell, be it PowerShell or WSL, this tutorial is going to help you customize the Terminal, which will soon be the default command line experience in Windows 11. With the help of a popular prompt theme engine called Oh My Posh, you can make your shell look beautiful with icons, glyphs, colors, and more. I must thank Scott Hanselman, who demonstrated all the nitty-gritties of how to customize the Windows Terminal in Windows 10/ 11 and make it look interesting. So without any further delay, let’s get started and learn how to customize the Windows Terminal in Windows 10/ 11.
We have detailed instructions to customize Windows Terminal, ranging from how to add the acrylic effect to applying the Caskaydia font to your command line experience. We have added steps for both PowerShell and Ubuntu (WSL). You can expand the table below and move to any section you want.
- Apply Acrylic Effect to Windows Terminal in Windows 10/ 11Add Caskaydia Cove Font to Windows TerminalCustomize PowerShell in Windows Terminal With Oh My PoshCustomize WSL/Ubuntu in Windows Terminal With Oh My Posh
Apply Acrylic Effect to Windows Terminal in Windows 10/ 11
First, open Microsoft Store and update Windows Terminal to the latest version.
Next, open Windows Terminal and move to Settings.
Here, move to “Windows PowerShell” under “Profiles” from the left sidebar and switch to the “Appearance” tab.
Scroll down and enable the “Acrylic” toggle. Right below, you can adjust the Acrylic opacity too. I have kept it at 70%, but you can set the value to your own liking. Finally, click on “Save” to confirm the changes. You have successfully taken your first step to customize the Windows Terminal.
Repeat the process for CMD, WSL, and other shells you use on your Windows computer. It will add an Acrylic effect to the Windows Terminal.
Add Caskaydia Cove Font to Windows Terminal
After adding the Acrylic effect, you need to install fonts compatible with Oh My Posh. I have installed Caskaydia Cove Nerd Font, which works well with this third-party customization tool. You can click here to download the font.
After downloading the font, unzip it using apps like 7Zip or WinZip, and install all fonts. You can select all the fonts -> right-click on them -> Show more options -> Install for all users.
Now, open Windows Terminal and move to the Settings. Here, switch to the “Windows PowerShell” section from the left pane and move to the “Appearance” tab just like we did above.
Here, choose the newly-downloaded font you want to use with the Oh My Posh prompt. I have selected “Caskaydia Cove Nerd Font“. Now, click on “Save”.
Repeat this process for all the shells you are using on Windows 10/ 11, including WSL/Ubuntu.
Now that you have added the Acrylic effect and applied a compatible font, it’s time to install the Oh My Posh prompt. To do so, open Windows Terminal with administrator privileges. To do that, search for Terminal after pressing the Windows key and click the “Open as administrator” option in the right pane.
Move to the PowerShell window and run the below command to install the Oh My Posh prompt. Post that, press “A” and hit Enter to allow the installation.
Next up, execute the below command to import the Oh My Posh profile. If you get any prompt, press “A”, followed by “Enter” to proceed with the installation.
Import-Module oh-my-posh
After that, you need to install Terminal Icons. Shout out to Brandon Olin, who developed Terminal Icons for PowerShell. Just run the below command and allow for the installation to complete. Make sure you are running Windows Terminal with admin privileges before you run this command.
Now to check if everything is running fine, execute the command below. This will bring up the new prompt.
So far, everything is running fine, but you need to make Oh My Posh your default custom prompt. To do that, run the below command. It will give you a path, which you need to note down or copy-paste in Notepad.
Next, navigate to that path, and you will find a “Microsoft.PowerShell_profile.ps1” file. Open it with Notepad, add the below lines, and save the file. Now, you can close the Notepad file.
Set-PoshPrompt -Theme jandedobbeleer Import-Module -Name Terminal-Icons
Note: If the Microsoft.PowerShell_profile.ps1 file does not exist in that location, follow the next step.
Rename it to Microsoft.PowerShell_profile.ps1. Make sure there is no .txt extension at the end. The file name should end with .ps1.
Now, open the file with Notepad and add the below two lines and save it. You can close the Notepad now.
Move back to the PowerShell window and run the below command to reload the profile.
. $PROFILE
- Finally, close Windows Terminal and re-open it. You will now find that Oh My Posh is set as the default prompt in PowerShell. With the Acrylic effect, new fonts, icons, glyphs, and the Oh My Posh prompt, PowerShell in Windows Terminal looks beautiful.
Customize WSL/Ubuntu in Windows Terminal With Oh My Posh
Once you have added the Acrylic effect and installed the fonts, it’s time to customize WSL with Oh My Posh. Here is how to go about it.
Next up, move to WSL (Ubuntu or any other distro that you have installed).
Now, before we install Oh My Posh, we recommend updating WSL to the latest packages and dependencies. You may have to enter WSL’s password to confirm the installation.
sudo apt update && sudo apt upgrade -y
After that, run the below commands one by one to install Oh My Posh in WSL to enable yourself to customize Windows Terminal. You will have to press “y” to allow the installation.
Next up, run the below commands one by one to download the themes.
Having done that, execute the below command to check if the custom prompt is installed properly. This should bring up the new Oh My Posh prompt.
Now, to set Oh My Posh as your default prompt in WSL, run the below command. It will allow you to edit the Bash config file in Nano editor.
In the Nano editor, scroll down using the keyboard arrow keys and look for this line “make less more friendly for non-text input files, see lesspipe(1)”. Right below it, you need to replace the command beginning with “eval…”.
Now, you need to type the below command in the Nano editor since it does not support copy and paste. It will look like this:
After that, press “Ctrl + O” and hit Enter to save the changes. Next, press “Ctrl + X” to exit the Nano editor.
Finally, run the below command to reload the Bash profile. From now on, the WSL will load in the Oh My Posh prompt. Enjoy!
In case there are some glitches in rendering the glyphs and text, make sure you have set the right Caskaydia Cove Nerd font for Ubuntu/ other distros in the Settings page of Windows Terminal. This is one of the first things you need to customize in the Windows Terminal.
If you are still facing the issue, you need to reload the Bash profile every time you enter the WSL shell. Run the below command and everything will be fixed. You can also restart your PC to check if the issue has been fixed.
. ~/.bashrc