前置き
Vim の設定においてステータスラインのカスタマイズは最もハマるものの一つだが、Powerline を使うとカコイイステータスラインが簡単に使えていい感じ。プラグインを導入する(+ いくつかの設定)だけで次のようなステータスラインがすぐ使える。
このプラグインが特徴的なのは、そのために専用のグリフまで用意しているところ。スクリーンショットで情報の境目に使われている > < のような記号がそれである。
これは既存のフォントに FontForge を使ってパッチを当てることで作成されるのだが、FontForge が簡単にインストールできる Linux、Mac OS X ではいざ知らず、Windows 環境ではなかなか大変。今回は cygwin を使うことで Windows 環境でフォントにパッチを当ててみた *1 。
Powerline の導入
今時の Vim は各種のプラグイン管理システムのおかげでインストール・アップデートが簡単になりました。今回はプラグイン管理システムのなかでもメジャーな Vundle を使ってインストール。
Vim-users.jp - Hack #215: Vundle で plugin をモダンに管理する
http://vim-users.jp/2011/04/hack215/
.vimrc に Bundle 'Lokaltog/vim-powerline' と書き加えた後に、:BundleInstall! を実行するだけ。簡単なもんだ。
この状態で起動すると次のような見た目。これでも十分きれい *2 なのだが、どうせなら一番最初にあげたスクリーンショットのようにフォントをカスタマイズしてみよう。
FontForge の導入 @ cygwin
cygwin の設定自体は他を見てもらうことにして、FontForge を cygwin で導入するには 2 通りの方法がある。
- がんばってソースからコンパイル
- Cygwin Ports からパッケージをインストールする。
(1.) は億劫なので (2.) を使って楽しよう。手順は次のリンクを参考にした。
Cygwin Portsで本家に未だ無い、新しいパッケージをインストールする - c4se記:さっちゃんですよ☆
http://d.hatena.ne.jp/Kureduki_Maari/20111112/1321030766
やり方は簡単なので割愛。インストール時には python-fontforge パッケージにもチェック入れるの忘れないでね。
フォントにパッチを当てる
次に、目当てのフォントにパッチを当てる。ここからの作業は cygwin 上で行う。
Powerline プラグイン本体に含まれているパッチスクリプトと、フォントファイルをどこかのディレクトリにコピーしよう。
プログラミング用フォントとして人気の Ricty にパッチを当ててみよう。次のコマンドをたたくだけだ。
これで Ricty-Regular-Powerline.ttf 及び、Ricty-Bold-Powerline.ttf というファイルができるので、それをフォントフォルダにコピーすれば完了。
後は、.gvimrc に次の記述を足して完成。
これで gvim を再起動すれば次のように変わっているはずだ。
ちなみに、実際には今までにあげたスクリーンショットは Ricty ではなく Envy Code R を使ってる。Ricty だとうちの環境では少し表示が欠けるんだよね。何でだろ? Ricty だとこんな感じ。「IP アドレス」の“P”が欠けてる。
いくつか試した感じ、パッチは当たるものの表示がおかしい場合があった。Inconsolata は成功、Consolas は失敗。パッチに問題があるんだろうけど、これ以上はわかんない。
パッチでエラーが出たら……
もし次のようなエラーが出たのなら Python のモジュールがインストールされていない。
このときは、easy_install を使ってモジュールをインストールしよう。
easy_installをインストールする - さり海馬
http://d.hatena.ne.jp/thalion/20090416/p1
これでスクリプトは問題なく動くようになるはずだ。
今後は……
ちなみにターミナルで使うとこんな感じ。
スクリーンショットは Mac OS X + iTerm2 + screen + vim でのものだが、Windows + Putty でも問題なく表示された。
Powerline で表示される情報は必要十分であるのだが、個人的に重要なカーソル下の文字の文字コードが表示されていない。この辺がカスタマイズできるのか調べてみることにする。
→作ってみました。
【Vim】Powerline に文字コード表示機能をつける - blog.remora.cx
http://blog.remora.cx/2012/01/show-charcode-on-powerline.html
*1
: FontForge を Windows で使うというだけならば、unofficial fontforge-mingw に書かれている方法が簡単だ。でも、今回のパッチは Python スクリプトで書かれてるので、これと簡単に連携できる方法が見つからなかった。
*2
: フォントレンダリングには gdipp を使ってる
Comments:0
Trackbacks:0
- TrackBack URL for this entry
- http://blog.remora.cx/mt/mt-tb.fcgi/751
- Listed below are links to weblogs that reference
- 【Vim】Powerline でリッチなステータスラインを使う from blog.remora.cx

