Solarized RXVT with VIM

It is pretty common for a linux user to spend most of his/her time in a terminal.  We enjoy the low overhead, responsiveness, and customizeability of cli programs.  It is critical that we find a color scheme that is not only pleasant to look at but is functional and easy to read.  I’ve been using various color schemes throughout the year and although I knew about solarized by Ethan Schoonover I’ve never personally tried it out - until yesterday!

Installing Solarized - RXVT

The best RXVT available in Archlinux is  rxvt-unicode-patched.  As of this post it is out of date and you will have to manually enter in the sha1sum of 33297e5303e45d27e07f40060d3655ae019eefdc for 9.21.

If you aren’t too sure, we can manually skip integreity check:

wget https://aur.archlinux.org/packages/rx/rxvt-unicode-patched/rxvt-unicode-patched.tar.gz
tar -xvf rxvt-unicode-patched.tar.gz
cd rxvt-unicode-patched
makepkg -s --skipinteg
pacman -U rxvt-unicode-patched-9.21-1-x86_64.pkg.tar.xz

You will need to download the solarized color scheme either at Ethan’s github or from here.  Save it in your ~/.colours folder or wherever you store your color schemes.

Your .Xresources should include:

#include "/home/frank604/.colours/solarized" <-- Obviously modify it to where you saved the color scheme


Installing Solarized - VIM

Ethan explains the installation succintly and there is no need for me to reword it so here is a quote from his Solarized Installation Instructions.

Option 1: Manual installation

    Move solarized.vim to your .vim/colors directory. After downloading the vim script or package:

    $ cd vim-colors-solarized/colors
    $ mv solarized.vim ~/.vim/colors/

Option 2: Pathogen installation (recommended)

    Download and install Tim Pope's Pathogen.

    Next, move or clone the vim-colors-solarized directory so that it is a subdirectory of the .vim/bundle directory.

    a. Clone:

        $ cd ~/.vim/bundle
        $ git clone git://github.com/altercation/vim-colors-solarized.git

    b. Move:

    In the parent directory of vim-colors-solarized:

        $ mv vim-colors-solarized ~/.vim/bundle/

Modify .vimrc

After either Option 1 or Option 2 above, put the following two lines in your .vimrc:

syntax enable
set background=dark
colorscheme solarized

or, for the light background mode of Solarized:

syntax enable
set background=light
colorscheme solarized

I like to have a different background in GUI and terminal modes, so I can use the following if-then. However, I find vim's background autodetection to be pretty good and, at least with MacVim, I can leave this background value assignment out entirely and get the same results.

if has('gui_running')
    set background=light
    set background=dark

See the Solarized homepage for screenshots which will help you select either the light or dark background.

Fixing Background Issue In VIM

I hope you’ve read this far because with rxvt + vim + solarized there is a glaring issue that needs to be resolved.  If you choose the dark color settings for solarized, the background will be white in vim.  This issue doesn’t happen in termite and only rxvt so far.  Here is how to fix it:

Add this line to ~/.Xresources

URxvt.intensityStyles: false

Add these lines to ~/.vimrc

  7 set nocompatible
 set t_Co=16
 call pathogen#infect()
 syntax on
 set background=dark " dark|light "
 colorscheme solarized
 filetype plugin on
 filetype indent on

Now you are good to go! Enjoy!