Nice colors on vim and ubuntu

Wow what a confusing set of ideas. With these modern graphical operating systems, making character or terminal applications look nice takes you back literally 40 years. 

Here’s the scoop for pretty terminal colors for developers. 

  1. The default colors in vim are pretty bad. http://ethanschoonover.com/solarized has devoted way too much time to creating a beautiful palette for character apps. You use pathogen to install and then it uses the 16 colors that the terminal emulator gives you. You need some `~/.vimrc` configuration commands specifically `syntax enable; colorscheme solarized`. You also need the pathogen package called solarize which installs colors in ~/.vim/colors.
  2. The default terminal on Ubuntu called gnome-terminal supports eight whole colors! You set the colors with ANSI escape sequences (since terminal applications are not all points addressible). They emulate terminals that literally haven’t been made in decades like the DEC VT-100. You can see how many colors with ‘tput colors’ command. 
  3. You can set these default colors by using various mapping schemes since Ubuntu Unity for instance support 24-bit color. They call it 32-bit because they include the alpha layer (eg how much opacity). Another obscure command gwinitin tells you that. 
  4. For ssh sessions you are not using gnome but some other client side, you need to turn off show bold fonts. You do not want bold to be bold, older systems didn’t have bold fonts, so changed the color instead. You need to defeat that in gnome-terminal, terminal.app, etc. For terminal.app, go to File/Preferences and turn this off for everything. This is also a good place to make solarized the default when you open a new window. As an aside this happens because the original ANSI had 16 colors. 8 normal and 8 “bold”. Solarized uses all 16 and you don’t need bold anymore.
  5. For Mac, you need to download two terminal color schemes with the .terminal name. These set the colors properly. Current versions of the Mac’s native terminal.app set correctly to 256 colors using `TERM=xterm-256colors` and then you need to set VIM up properly.