ぐぐればいくらでも方法が出てくるputty+screen+vimで256色表示にする方法。わざわざ記事にするということは、ようするにそのぐぐって出てきた方法では上手くいかなかった、ということでして…orz
とりあえずは各種ファイルのバージョンを。puttyはRelease0.60-jp20070603、日本語ごった煮版ですね。

screenは
[crusader@telemachus ~]$ screen -v

Screen version 4.00.03 (FAU) 23-Oct-06

vimは
[crusader@telemachus ~]$ vim --version

VIM - Vi IMproved 7.0 (2006 May 7, compiled May 9 2007 19:02:35)

適用済パッチ: 1, 3-4, 7-9, 11, 13-17, 19-26, 29-31, 34-44, 47, 50-56, 58-64, 66-73, 75, 77-92, 94-107, 109, 202, 234-235, 237

Modified by

Compiled by

Huge 版 without GUI. 機能の一覧 有効(+)/無効(-)

+arabic +autocmd -balloon_eval -browse ++builtin_terms +byte_offset +cindent

-clientserver -clipboard +cmdline_compl +cmdline_hist +cmdline_info +comments

+cryptv +cscope +cursorshape +dialog_con +diff +digraphs -dnd -ebcdic

+emacs_tags +eval +ex_extra +extra_search +farsi +file_in_path +find_in_path

+folding -footer +fork() +gettext -hangul_input +iconv +insert_expand +jumplist

+keymap +langmap +libcall +linebreak +lispindent +listcmds +localmap +menu

+mksession +modify_fname +mouse -mouseshape +mouse_dec +mouse_gpm

-mouse_jsbterm +mouse_netterm +mouse_xterm +multi_byte +multi_lang -mzscheme

-netbeans_intg -osfiletype +path_extra +perl +postscript +printer +profile

+python +quickfix +reltime +rightleft -ruby +scrollbind +signs +smartindent

-sniff +statusline -sun_workshop +syntax +tag_binary +tag_old_static

-tag_any_white -tcl +terminfo +termresponse +textobjects +title -toolbar

+user_commands +vertsplit +virtualedit +visual +visualextra +viminfo +vreplace

+wildignore +wildmenu +windows +writebackup -X11 -xfontset -xim -xsmp

-xterm_clipboard -xterm_save

システム vimrc: "/etc/vimrc"

ユーザ vimrc: "$HOME/.vimrc"

ユーザ exrc: "$HOME/.exrc"

省略時の $VIM: "/usr/share/vim"

コンパイル: gcc -c -I. -Iproto -DHAVE_CONFIG_H -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m32 -march=i386 -mtune=generic -fasynchronous-unwind-tables -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -D_REENTRANT -D_GNU_SOURCE -Wdeclaration-after-statement -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -I/usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE -I/usr/include/python2.4 -pthread

リンク: gcc -Wl,-E -Wl,-rpath,/usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE -L/usr/local/lib -o vim -ltermcap -lselinux -lacl -lgpm -Wl,-E -Wl,-rpath,/usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE -L/usr/local/lib /usr/lib/perl5/5.8.8/i386-linux-thread-multi/auto/DynaLoader/DynaLoader.a -L/usr/lib/perl5/5.8.8/i386-linux-thread-multi/CORE -lperl -lresolv -lutil -lc -L/usr/lib/python2.4/config -lpython2.4 -lutil -lm -Xlinker -export-dynamic

となっています。

大体の手順としてはあちこちに乗っているとおり

- screenを --enable-colors256オプションつきでコンパイル、インストール
- $HOME/.screenrcに、
defbce "on"

term xterm-256color
の2行を追加
- puttyの設定を変更(「ウィンドウ」→「色」で「xterm 256色モードを使うことを許可する」をチェックし、「太字のテキストは別の色にする」のチェックを外し、「接続」→「データ」で「端末タイプを表す文字列」を「xterm-256color」にする)

という手順になります。ここまでで、screenは256色になったのですが、vimがなぜか8色表示にorz

何か追加情報がないか…と思って色々探していると、ふと目に留まったのが

tips/70 - VimWiki

http://vimwiki.net/?tips%2F70

この記事。xterm+screenの場合は~/.vimrcに
set t_Co=256

こう書け、とあります。
でもxtermじゃねぇしなぁ…と思いつつ半信半疑ながらも.vimrcに書いてみると、なんときちんと256色表示になりました…!

とりあえず、これでようやくvimでガシガシコードを書く環境が整ったわけです。とりあえずWindows鯖で動いているスクリプトを移植しないといけないですねぇ…。