おもしろいカラースキームを見つけました。Vim を起動すると部屋の明るさに併せて明暗二種のカラースキームを切り替えてくれます。
plum – Light & Dark colorscheme with ambient light detection (for Mac users) : vim online
http://www.vim.org/scripts/script.php?script_id=4660
https://github.com/gcmt/plum.vim
どんな仕組みかと思ったら、Macbook Air についている前面カメラを使って明るさを測定しているんですね。だから(カメラのついている)Mac 限定の機能です。
インストール
インストールは NeoBundle を使うと便利です。
NeoBundle 'gcmt/plum.vim', { \ 'build': { \ 'mac': 'sh install.sh', \ }, \ }
これによってインストールされる bin/plum_ambient_light
というプログラムが部屋の明るさを数値で返してくれます。
/Users/delphinus/git/dotfiles/.vim/bundle/plum.vim vimshell% bin/plum_ambient_light 2643480
設定
ドキュメントには次のようにあります。
閾値は任意に決めることが出来ます。明るさセンサーは 最大 67,092,408 という値を返しますが、私が試したところ、屋内では 最大 2,000,000 くらいの値を返すようです。デフォルトでは、画面を暗くする閾値として 120,000 という値を設定してあります。
let g:plum_threshold = get(g:, "plum_threshold", 120000)
この g:plum_threshold
を .vimrc
辺りで好きな値に変えると良いでしょう。
他の OS では……
明暗の切り替えは Solarized などと同じく、background
オプションの切り替えでも可能です。
" 明るくする set background=light " 暗くする set background=dark
以前紹介した sunset.vim なんかを使うと、これを日の出・日の入りに併せて自動で切り替えてくれますので便利ですよ。
【Vim】日の出・日の入りとともにテーマを切り替える | blog.delphinus.dev
https://blog.delphinus.dev/2012/10/change-color-with-sunrise-and-sunset.html