I published my vim colorscheme on the vim site today. It is called Shōbōgenzō (正法眼蔵) after the famous collection of Zen Buddhist fascicles (a discrete section of a book).
One thing I am trying to verify is whether or not PuTTY allows its cursor colour to be overridden. It doesn’t seem so, having highlighting rules for Cursor in vim does nothing, yet using gvim on Windows it does show the correct colours.
I have a 256 colour xterm set up on my DragonFly box.
Works perfectly. Especially for vim.
Now, I use FreeBSD 5.x as a gateway box to ssh into and have irssi and likewise programs screened.
Now, I was surprised to learn that I had only 16 colours. Outside of screen I had a full 256 colour palette (make sure to fix your PuTTY configuration by the way), but inside I was stripped of my colour scheme.
So I set off to find what was causing this. Interestingly enough one of the first emails encountered was from Jeremy Chadwick who had the exact same problem.
Turns out that screen needs to be compiled with 256 colour support (a knob should be in your ports Makefile now).
Since FreeBSD’s and DragonFly’s termcap is bereft of any 256 colour definitions for xterm apparently, you need to add the following to $HOME/.screenrc:
termcap xterm* 'Co#256:AB=E[48;5;%dm:AF=E[38;5;%dm' terminfo xterm* 'Co#256:AB=E[48;5;%p1%dm:AF=E[38;5;%p1%dm'
This overrides your termcap settings with the appropriate definitions.
If you now start screen from a shell that has TERM exported as xterm or xterm-color (xterm* wildcard actually) it will fork off to a screen with 256 colour support.
You might need this in $HOME/.vimrc:
if &term =~ "xterm" || &term =~ "screen" set t_Co=256 if has("terminfo") let &t_Sf=nr2char(27).'[3%p1%dm' let &t_Sb=nr2char(27).'[4%p1%dm' else let &t_Sf=nr2char(27).'[3%dm' let &t_Sb=nr2char(27).'[4%dm' endif endif