abdfn
Posted on December 23, 2020
Hi there, The developers always use the terminal, but it is boring and has no colors or shapes.
Today we will transform our terminals into a wonderful, colorful, supportive terminal that offers suggestions and has a memory, we'll do it by OMZ and design it by PowerLevel10k...
Pre-requisites
and I recommended to use Ubuntu or Debian wsl plugin
Setup zsh
in the command line type
# homebrew
brew install zsh
# apt-get
sudo apt-get install zsh
type zsh
zsh
Install Oh My Zsh
sh -c "$(curl -fsSL https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
PowerLevel10k
- Install Powerlevel10k using the following command
# gh cli
gh repo clone romkatv/powerlevel10k $ZSH_CUSTOM/themes/powerlevel10k
# git
git clone https://github.com/romkatv/powerlevel10k.git $ZSH_CUSTOM/themes/powerlevel10k
Then you need to enable it, change the value of ZSH_THEME to following in ~/.zshrc
file :
ZSH_THEME="powerlevel10k/powerlevel10k"
Configure Powerlevel10k Theme
- Make sure your terminal font is
FiraCode NF
.
font link: url
for windows users: url
Cheat-sheet for Windows
if you've Windows terminal
you can open your settings and in UNIX preferences and add fontFace
prop,
assign it to FiraCode NF
.
{
"guid": "{YOUR_UNIX_GUID}",
"hidden": false,
"name": "Ubuntu",
"source": "Windows.Terminal.Wsl",
"fontFace": "FiraCode NF",
"snapOnInput": true,
"useAcrylic": true
}
Windows Terminal url in Microsoft Store: url
Windows Terminal repo: url
p10k configure
type
p10k configure
you can choose your style...
Plugins (Optional, Good to have!)
Clone plugins
- zsh-syntax-highlighting - It enables highlighting of commands whilst they are typed at a zsh prompt into an interactive terminal. This helps in reviewing commands before running them, particularly in catching syntax errors.
# gh cli
gh repo clone zsh-users/zsh-syntax-highlighting ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
# git
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
- zsh-autosuggestions - It suggests commands as you type based on history and completions.
# gh cli
gh repo clone zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
# git
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
ls tools
colorls: A Ruby script that colorizes the
ls
output with color and iconsexa: is a modern replacement for ls
colorls
sudo gem install colorls
warn 🙃
maybe you'll get some gem
errors, you should fix it
Linux
sudo apt install ruby-full
exa
brew install exa
secrets manager
- secman: Human-friendly and amazing secrets manager.
# via npm
npm install -g secman
# via script
curl -fsSL https://cli.secman.dev | bash
file transfer app
- tran: Securely transfer and send anything between computers with TUI.
curl -sL https://cutt.ly/tran-cli | bash
special thanks
special thanks to
to showing me exa
Activate the plugins
In ~/.zshrc
file replace the line starting with plugins=()
to below line.
plugins=( git zsh-syntax-highlighting zsh-autosuggestions )
colorls
if [ -x "$(command -v colorls)" ]; then
alias ls="colorls"
alias la="colorls -al"
fi
or exa
if [ -x "$(command -v exa)" ]; then
alias ls="exa"
alias la="exa --long --all --group"
fi
Some more official plugins - ohmyzsh plugins
after all these steps type
source ~/.zshrc
Finally it should be like this 👇
Mac
Windows(WSL) or Linux
That's it, see you next time 👋
Posted on December 23, 2020
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.