Sitemap

My terminal and development setup

3 min readAug 19, 2022
Press enter or click to view image in full size

Terminal interaction and development activities become a lot easy with additions of awesome utilities. Below are a few of the cli and *nix tools I use (they are managed with dotfiles).

ZSH Customisations

  1. Oh My Zsh is community-driven framework for managing your Zsh configuration
  2. Theme: powerlevel10k
  3. Plugins
Press enter or click to view image in full size
powerlevel10k is a zsh theme

Installation steps for zsh, plugins, powerlevel10k

  1. Install a recommended font like MesloLGS or Source Code Pro, on your terminal for better display
    If using iTerm terminal, set the font as below. Click here for other terminals and IDEs.
Press enter or click to view image in full size
Setting font in iTerm terminal preferences

2. Clone the repositories into $ZSH_CUSTOM/plugins (by default ~/.oh-my-zsh/custom/plugins)

brew install zsh # Install on a MacOS
# for other platforms, refer https://github.com/ohmyzsh/ohmyzsh/wiki/Installing-ZSH

# Install Oh my zsh framework
sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"


# Install zsh plugins
git clone --depth=1 https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
git clone --depth=1 https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting


# Install powerlevel10k
# https://github.com/romkatv/powerlevel10k#installation
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k

3. Add the plugin to the list of plugins for Oh My Zsh to load (modify ~/.zshrc)

# Add this before the below source call in ~/.zshrc
# source $ZSH/oh-my-zsh.sh

plugins+=(zsh-autosuggestions zsh-syntax-highlighting)
ZSH_THEME="powerlevel10k/powerlevel10k" # enable powerlevel10k

4. Restart the shell or reload (source ~/.zshrc) to see the below configuration wizard

Press enter or click to view image in full size

Explore more awesome-zsh-plugins

Tmux

Tmux, the terminal multiplexer makes it easy to work with mulitple panes and windows. It can be extended with plugins using tpm — tmux plugin manager

List of few tmux plugins
-
extrakto
- tmux-better-mouse-mode
- tmux-butler
- tmux-fuzzback
- tmux-fuzzywuzzy
- tmux-fzf-maccy
- tmux-fzf-url
- tmux-logging
- tmux-open
- tmux-picker
- tmux-resurrect
- tmux-sensible
- tmux-sidebar
- tmux-yank

Read full tmux story here

Fzf: Interactive fuzzy selector

Press enter or click to view image in full size

Install fzf

git clone --depth 1 https://github.com/junegunn/fzf.git ~/.fzf
~/.fzf/install

Press Ctrl-r or Alt-c to see the magic.

A lot of fzf examples and advanced customisations are available online.

Ranger

ranger is an ncurses based terminal file manager.

Press enter or click to view image in full size
3 pane view for navigating in ranger with file content preview

Ranger plugins/Add-ons

View my ranger config. Look at this awesome list collection.

Tig

tig is another ncurses based tool for git activities.

Press enter or click to view image in full size

Aliases

View more bash aliases here. Read the story here

The dotfiles configuration in github is currently private as it is a bit messy now😉. I will add more to my public dotfile repo soon 🙂.

Thanks for reading.

--

--

Cibin Mathew
Cibin Mathew

Written by Cibin Mathew

I like to talk about Python / AWS / command line

No responses yet