Customising iTerm. In amongst the series of applications that are installed is iTerm, a fantastic terminal replacement. Along with that, I install zsh and oh-my-zsh, all of which you should checkout if you don't currently use them. Unfortunately there's a few quirks with iTerm that slowdown my obsessive need to only use the keyboard. Homebrew installation; iTerm2 installation; ZSH and Oh My ZSH installations; Setting up the dependencies to create a beautiful terminal.

  • Install iTerm2 from https://www.iterm2.com/
  • Install oh-my-zsh from https://ohmyz.sh/ or https://github.com/robbyrussell/oh-my-zsh
  • Set iTerm2 theme tab theme to Dark - Preferences Appearance Tabs Theme > Dark
  • Install Fira Code fonts from https://github.com/tonsky/FiraCode (Clone and navigate to dstr > ttf, install all font files by double clicking)
  • Install Powerline fonts from https://github.com/powerline/fonts
  • Set fonts for iTerm2 - Preferences Profiles Text
    • Change Font to 14pt Fira code regular and Check Use Ligatures checkbox
    • Change Non ASCII Font to 14pt Fira mono and Check Use Ligatures checkbox
  • Install iTerm2 snazzy theme from https://github.com/sindresorhus/iterm2-snazzy
    • Navigate to Preferences Profiles Color Presets > Snazzy
  • Install Pure prompt for iTerm2 from https://github.com/sindresorhus/pure#oh-my-zsh
  • Install awesome z tool for autojumping between recent folders(Check usage here - https://github.com/rupa/z/)
    • Use brew brew install z (This should take care of everything for you)
    • Or to setup manually, Download 'z' from https://github.com/rupa/z/blob/master/z.sh and move to ~/ and add following snippet to ~/.zshrc
  • Install zsh-syntax-highlighting oh-my-zsh plugin
  • Install zsh-autosuggestions oh-my-zsh plugin
  • Install pygments package, a pre-requisite for colorize plugin(cat with syntax highlight support, alias ccat)
  • Install trash command as safter alternative for rm command
  • Finally update plugins list for oh-my-zsh in ~/.zshrc

Useful links:

As a software engineer, we spend significant amount of time in terminal. Terminal in Mac OSX is better than windows but not as good as iTerm2. If you combine iTerm with Zsh and Oh-My-Zsh then what you get is awesomeness.

Install iTerm2

Download a stable build from https://www.iterm2.com/downloads.html and install it.

Install Brew

Homebrew is a free and open-source software package management system that simplifies the installation of software on Apple’s macOS operating system.

Now, open iTerm and install brew using following command:

Install and Configure Fira Code Font

Fira Code is an extension of the Fira Mono font containing a set of ligatures for common programming multi-character combinations. This is just a font rendering feature: underlying code remains ASCII-compatible. This helps to read and understand code faster.

Without Fira Code

With Fira Code and Ligature

Garmin chipset software installer package. To install Fira Code, run following command:

ProTip: Fira Code font is supported in multiple editors and terminals. Checkout complete list on Fira Code site

Setup Font in iTerm

Step 1. Open Preferences in iTerm by pressing and , keys

Step 2. Go to Profile tab and create a new profile

Step 3. Go to Text tab. Change font and ASCII font to Fira Code and enable use of ligature

Install Zsh

Once you have brew installed, you can install zsh using following command:

Install and Configure Oh-My-Zsh

Oh-My-Zsh is an open source, community-driven framework for managing your ZSH configuration. It comes bundled with a ton of helpful functions, helpers, plugins, themes and much more.

Install Oh-My-Zsh using following command:

Set Theme

There are whole lot of themes to choose from here. My personal customized theme is based on bira theme.Change ZSH_THEME=robbyrussell to ZSH_THEME=YOUR_FAV_THEME_NAME into ~/.zshrc file. After change reload shell by:

Enable plugins

There’s an abundance of plugin in Oh-my-zsh. You can find list of plugins here.Most of the plugins provide autocompletion for command options on press of ⇥ tab key (demo). You can turn on plugins by updating plugins section in ~/.zshrc file like following:

Install zsh syntax highlighting and auto suggestions plugins if you are interested in these functionality.

Add following lines to end of the ~/.zshrc file. You can pick and choose from last 3 lines, based on the plugin you have installed.

ProTip: To reload any change made in ~/.zshrc file, use source ~/.zshrc command.

Working with Alias

Repair outlook mac. Alias is not exclusive functionality of zsh but Oh-my-zsh provides lots of alias by default. Lots of plugins also come with alias for example git plugin.

If you want to create your on aliases, create a separate file and load that file using ~/.zshrc by adding following line in the file:

To list all the avaliable alias use command alias in the terminal.

HotKeys

If your hotkeys for moving backward (⌥ option + ) and forward (⌥ option + ) word by word do not work in iTerm then change keys preset in your profile to Natural Text Editing.