My Terminal and Shell Setup for macOS, where I live all day. Most can easily be replicated in Linux and Windows.

NOTE: This is a Work In Progress. Signup for my Docker and DevOps Newsletter to get updates when I build this into more of a tutorial, and add a free video walkthrough of setup.


  • Terminal: iTerm2 on macOS, cmder for Windows
  • Color Theme: GruvBox iTerm2 & Vim Color Theme (with light and dark mode for both)
  • Shell: Zsh 5.2 (/bin/zsh that comes with macOS 10.12). Didn't see the need to use brew install zsh just to go to 5.3
  • Zsh "Configuration Manager": Oh-My-Zsh
  • Shell Editor: Vim 8.x (macvim) or neovim (install via homebrew)
  • VIM Distribution: SpaceVim makes good feature-rich defaults (works with both vim/nvim)
  • GUI Editor: Visual Studio Code (For me, it replaced Atom last year and I never looked back)

Bonus Tweaks/Tools

  • Sauce Code Pro Font from Nerd Fonts which gives me VIM + Powerline + icons. That's all you need, but if you're curious: It's based off another mod to support this font with Powerline in VIM, which itself is based off the original Adobe Source Code Pro open source font. Whew, what a rabbit hole 😵
  • True Color enabled in iTerm2, Zsh, and Vim
  • Italics enabled in iTerm/Vim
  • Custom Zsh prompt with 🐳 and "presentation mode" option
  • INSANE Wild Cherry theme. Love this, but is it a daily theme? Not sure.
  • Tmux for shell session management/persistence (most of this stuff works in Tmux)
  • Mosh for better SSH that auto-reconnects and uses UDP for slow/laggy/lossy
  • SilverSearcher (ag from cli) for better Shell Code/Text Search
  • Pygmentize (pcat from cli) for color cat output of code (syntax highlighting). A better option might be bat for most things... "a cat clone with wings"
  • Terminal Markdown Viewer (mdv from cli) for color markdown printing in shell (because pcat doesn't do markdown well).