If you spend a lot of time in a terminal, and that terminal is on a Mac OSX machine, and in that terminal, you're mainly using vim and tmux, then, boy, do I have some cool stuff to show you.

CAUTION Most of this stuff is prerelease, or custom. Do not do any of this if you're uncomfortable being on the bleeding edge.

Let's get your terminal all nice and modern

You're probably already using iTerm2 instead of the factory installed Terminal.app. But, there's a new beta out for v3 of iTerm2. Go here, and download it from the Test Releases section. It has an unbelievable amount of new features (scroll down to the "New in Version 3") section. The main reason we're going for this is that it has 24bit color support.

Now for tmux

tmux 2.0 has been out for a while now, but it doesn't support true color. If you're already running tmux, chances are, it's the 256 color version. Christian Hopps maintains a list of homebrew formulae for patching certain terminal apps to support 24bit color. We're going to use his patched tmux.

# Assuming you're using homebrew
tmux list-session           # List all running tmux sessions
tmux kill-session <session> # Kill all your listed sessions
brew uninstall tmux
brew install https://raw.githubusercontent.com/choppsv1/homebrew-term24/master/tmux.rb

Neovim

vim is getting a little long in the tooth, and as much as I love it, and appreciate its power, I don't think it's going to catch up to modern editors like sublime in terms of sheer speed. Its plugin architecture is also quite limiting, namely the fact that it blocks the UI on long running tasks.

Neovim is a reimplementation of vim that aims to fix all these things, including, you guessed it, adding 24bit color to your editing experience. Let's install that sucker!

# Assuming you're using homebrew, and your shell is zsh
brew tap neovim/homebrew-neovim
brew install --HEAD neovim
echo "alias v='NVIM_TUI_ENABLE_TRUE_COLOR=1 nvim'"   >> ~/.zshrc
echo "alias vim='NVIM_TUI_ENABLE_TRUE_COLOR=1 nvim'" >> ~/.zshrc
ln -nfs ~/.vimrc ~/.nvimrc

vim configuration

Get an attractive colour scheme

There are plenty of vim colour schemes that support only 256 colours, but we're now capable of using full true colour just like MacVim/GVim. My current favourite is Gruvbox due to it being vibrant, yet still usable at night.

Add a vim plugin that adds icons to filetype

I find it easier to scan for images, rather than lines of text, as such, adding icons to everything helps me quite a bit. I use the vim devicons plugin to achieve this. Install it via your normal vim plugin manager means.

Now change your font to support the icons

Now that you've got your plugin going, you need to install a patched font that supports all the added glyphs. Grab one from the Nerd Fonts repo. I personally use the patched Inconsolata mainly because its shape best suits my particular eye stigmatism that favours rounded shapes instead of tall shapes.

One thing to do, is make sure iTerm is configured to use your chosen font for both ASCII and non-ASCII glyphs. Like so:

Iterm Config

Conclusion

That's it, after this your shell should look something like the below

terminal

Bonus round

You can show your tmux statusline some love with tmuxline.vim or go for something really out there with maglev. There's a complimentary zsh prompt called bullet train that's also quite nice.