Skip to main content

Get Started With Oh My ZSH

· 2 min read
Ilham Surya
SRE Engineer - Fullstack Enthusiast - Go, Python, React, Typescript

As a tech enthusiast who loves optimizing my daily workflow, I'm constantly on the hunt for tools that can make my tasks more efficient and enjoyable. That's why I'm excited to share my experience with Oh My Zsh, a powerful framework for managing your Zsh configuration.

Oh My Zsh has been a game-changer in streamlining my command-line operations, boosting productivity, and making my terminal experience much more enjoyable. Join me as I explore how to get started with Oh My Zsh and transform your terminal into a productivity powerhouse.

Alt text

Preparation to use OhMyZSH (Mac Installation)

Kitty

Alt text

Install kitty using this command

curl -L https://sw.kovidgoyal.net/kitty/installer.sh | sh /dev/stdin

The binaries will be installed in the standard location for your OS, /Applications/kitty.app on macOS and ~/.local/kitty.app on Linux. The installer only touches files in that directory. To update kitty, simply re-run the command.

OhMyZsh

Alt text

Check current installation of ohmyzsh

zsh --version

Installation on macOs can use brew

brew install zsh

Kitty Setup

Downloading kitty theme

THEME=https://raw.githubusercontent.com/dexpota/kitty-themes/master/themes/Brogrammer.conf
wget "$THEME" -P ~/.config/kitty/kitty-themes/themes

Create symlink to downloaded theme

cd ~/.config/kitty
ln -s ./kitty-themes/themes/Brogrammer.conf ~/.config/kitty/theme.conf

Creating a kitty.conf file and adding the downloaded theme:

echo "include ./theme.conf" > kitty.conf

OhMyZsh Setup

Make ohmyzsh default

chsh -s /usr/local/bin/zsh

Installing ohmyzsh

sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"

First install this plugin to your local env

# Clone the git plugin (already included in Oh My Zsh by default)
# git plugin does not need to be installed separately

# Clone zsh-syntax-highlighting
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting

# Clone zsh-autosuggestions
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions

# Clone zsh-autocomplete
git clone https://github.com/marlonrichert/zsh-autocomplete ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autocomplete

# Clone wakatime
git clone https://github.com/wbingli/zsh-wakatime.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/wakatime

# Clone zsh-navigation-tools
git clone https://github.com/psprint/zsh-navigation-tools ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-navigation-tools

# Clone colorize
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/colorize

# Clone command-not-found
git clone https://github.com/Tarrasch/zsh-command-not-found ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/command-not-found

# Clone fast-syntax-highlighting
git clone https://github.com/zdharma-continuum/fast-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/fast-syntax-highlighting

After the installation, please install ohmyzsh plugin

plugins=(
git
zsh-syntax-highlighting
zsh-autosuggestions
zsh-autocomplete
wakatime
zsh-navigation-tools
colorize
command-not-found
fast-syntax-highlighting
)

Refresh the plugin by using this command

.source ~/.zshrc