Neovim + tmux Config
The process of fine-tuning your system for development can be a bit daunting but once it's configured it's a joy to use.
Neovim is a refactored version of vim and tmux is a terminal multiplexer. It allows multiple terminal sessions to be accessed simultaneously in a single window. I combine these two for all of my development. Here's what my current setup looks like on Arch Linux with i3 window manager:
Here are my config files for Neovim + tmux. It should also be noted that I use tmuxinator to save my tmux layout.