screen 上で vim の 256 色対応のカラースキームを適用

OSX の Terminal.app (上の screen) 上で vim を使って Python のプログラムを書くことにした。 Terminal.app の環境設定で背景が黒の "Pro" というプロファイルを使うことにしたが、やはりシンタックスハイライトが効いてほしい。以下メモしておく。

NeoBundle

vim 上に色々インストールするには、最近では NeoBundle という仕組みがよく使われているようだ。とりあえずインストールしておく。(インストール方法省略)

シンタックスハイライトを有効にする

~/.vimrc:

syntax on

カラースキームをインストール

[vim] 黒背景好きの僕の心を揺さぶるカラースキーム「hybrid」 | ここぽんのーと

で紹介されていたカラースキームをとりあえず全部インストール。

~/.vimrc:

NeoBundle 'nanotech/jellybeans.vim'
NeoBundle 'w0ng/vim-hybrid'
NeoBundle 'vim-scripts/twilight'
NeoBundle 'jonathanfilip/vim-lucius'
NeoBundle 'jpo/vim-railscasts-theme'
NeoBundle 'altercation/vim-colors-solarized'
NeoBundle 'vim-scripts/Wombat'
NeoBundle 'tomasr/molokai'
NeoBundle 'vim-scripts/rdark'

試してみる

vim を起動して

:colorscheme jellybeans

とかやってみるが、どうも色が紹介画像と違う。どうやらターミナルエミュレータ(今回の場合 screen)が 256 色対応であると vim に教えてやる必要があるらしい。

screen の上で 256色の vim を使う - Hack like a rolling stone

にならって、以下の設定を ~/.vimrc に加えた。

" Enable 256 colors FORCELY on screen
if $TERM == 'screen'
    set t_Co=256
endif
colorscheme jellybeans

これで、jellybeans というカラースキームで立ち上がるようになった。ところでシンタックスハイライトとかカラースキームって日本語で何て言うんだろうか。

追記

...次の日にやってみたら 256 色が出なくなっていた。OSX 付属の screen は 256 対応のコンパイルオプション付きでビルドされていないようだ。うまく行ったのは気のせい?? とりあえず screen を

MacOSX - Mac OS X の NFD 問題での対策諸々 - Qiita

を参考にビルドして使うことにした。