Transforming your ugly Windows terminal to a Unicorn
Tags: windows10, terminal, programming, vscode
Published: 2019-08-06 11:04:55

---
title: Transforming your ugly Windows terminal to a Unicorn
published: true
tags: windows-10,terminal,programming,vscode
canonical_url: 
---

![](https://cdn-images-1.medium.com/max/853/1*9WodytFtET3BcDLM3VN28A.gif)<figcaption>This is what we are aiming for</figcaption>

You are on Windows and you often hear other platforms users bragging along with their super ‘rainbow spitting’ command prompt. Worry not, you too can get an awesome looking terminal.

The steps to follow are listed below:

#### **1. Install WSL**

[https://docs.microsoft.com/en-us/windows/wsl/install-win10](https://docs.microsoft.com/en-us/windows/wsl/install-win10) (clear and easy steps to install WSL).

#### **2. Installing Your Terminal**

The result above is achieved with [Fluent Terminal by Felixse](https://github.com/felixse/FluentTerminal). This terminal is just great on Windows because it smoothly replaces Powershell or CMD keeping all the features and enabling you to easily switch between both at anytime. It also comes with great performance and a beautiful settings interface.

![](https://cdn-images-1.medium.com/max/1024/0*YyPlr7EriMKf7iAS.jpg)<figcaption>Did I say it respects<a href="https://www.microsoft.com/design/fluent/"> Windows Fluent Design</a> ? 😍</figcaption>

This software is still in early development stages, but it’s stable enough (for me) to work with it as a default terminal. The easiest steps to install Fluent Terminal is :

> 1. Install [Chocolatey](https://chocolatey.org/)

> 2. From an elevated/admin shell, execute choco install fluent-terminal

Another beautiful result could be obtained with [Hyper Terminal](https://hyper.is/) (regardless of your OS — because Hyper is cross platform) following [this tutorial](https://medium.com/@ssharizal/hyper-js-oh-my-zsh-as-ubuntu-on-windows-wsl-terminal-8bf577cdbd97) from [Syed Sharizal](https://medium.com/u/ca206c3e0a4d), from which this tutorial was inspired 💪🏾.

#### 3. Setting up Fluent Terminal

![](https://cdn-images-1.medium.com/max/802/1*jnK7gA02cVdPkpM4VsPIwQ.png)<figcaption>Choosing your terminal’s profile</figcaption>

In order to get a terminal with UNIX functionalities we have to switch to WSL, simply because, this cannot be achieved with the Windows Command nor the Powershell.

#### 4. Install ZSH

- Run sudo apt-get install zsh
- Open your bash\_profile vim ~/.bashrc — Get your vim knowledge straight with [this cheatsheet](https://vim.rtorr.com).
- Set your ZSH as default (follow the #comments to find your way through the files).

```
bash -c zsh
# ~/.bashrc: executed by bash(1) for non-login shells.
# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc)
# for examples

# If not running interactively, don't do anything
case $- in
 \*i\*) ;;
 \*) return;;
esac
```

#### 5. Install Oh My ZSH

Oh My Zsh is a delightful, open source, community-driven framework for managing your Zsh configuration. It comes bundled with thousands of helpful functions, helpers, plugins, themes, and a few things that make you shout…

To install Oh My ZSH run this command.

```
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
```

#### 6. Configuring Oh My ZSH

By now you already have the horse 🐴. It’s time to make it a unicorn 🦄.

Through the following steps, feel free to configure everything to your desire and feels;

- **Theming your OMZ — Install PowerLevel9K**

```
git clone https://github.com/bhilburn/powerlevel9k.git ~/.oh-my-zsh/custom/themes/powerlevel9k
```

Select this theme in your ~/.zshrc by adding this line

```
ZSH\_THEME="powerlevel9k/powerlevel9k"
```

- **Installing Powerline fonts**

These fonts help you get the arrows and git icons you can see on the left part of the prompt.

I use [nerd fonts](http://nerdfonts.com/) rather than [powerline fonts](https://github.com/powerline/fonts) because I think the latter’s repository is less maintained.

**Nerd Fonts** is a project that patches developer targeted fonts with a high number of glyphs (icons). Specifically to add a high number of extra glyphs from popular ‘iconic fonts’ such as [Font Awesome](https://github.com/FortAwesome/Font-Awesome), [Devicons](http://vorillaz.github.io/devicons/), [Octicons](https://github.com/github/octicons), and others.

1. Open [http://nerdfonts.com/](http://nerdfonts.com/)
2. Go to downloads, then choose your font and download it
3. Install it as you’d install any font on windows
4. Add the font to Fluent Terminal — **_ Settings → Terminal → Font family_**
5. Add the NerdFont compatibility using vim .zshrc then add the following line just under the previous ZSH\_THEME

```
POWERLEVEL9K\_MODE='nerdfont-complete'
```

- **Further customizations**

Once you have powerlevel9k, everything is pretty much on your side. You can configure it to your liking.

These are resources to help you customize

🦄 — [My own .zshrc config](https://gist.github.com/blurdylan/eb32b3ddd1b9e8a7eaad134e348d2b42)

🦄 — [Powerlevel9k customization docs](https://github.com/bhilburn/powerlevel9k#prompt-customization)

🦄 — [Nerds showing off their config — along with config files](https://github.com/bhilburn/powerlevel9k/wiki/Show-Off-Your-Config)

#### More…

If ever some information sound off or “new” to you. Remember, this tutorial was inspired from many others some are below

- [Use Zsh in WSL on Windows 10](https://medium.com/@vinhp/use-zsh-in-wsl-on-windows-10-5d439a749c4c)
- [Power up your Terminal using Oh-my-Zsh + iTerm2](https://medium.com/swlh/power-up-your-terminal-using-oh-my-zsh-iterm2-c5a03f73a9fb)
- [How to setup a nice looking terminal with WSL in Windows 10 Creators Update](https://medium.com/@Andreas_cmj/how-to-setup-a-nice-looking-terminal-with-wsl-in-windows-10-creators-update-2b468ed7c326)