Gvim on Windows: フォント設定
Windows 上で gvim を動かすことに関してはすでにネット上にいろいろ情報があるが、フォントの設定に関して少しここにメモしておく。
取り敢えずここでは GUI ではない vim については無視する。コマンドプロンプトの中でわざわざ無理に vim を使うことなどなかろう。(gvim と vim を両立させようとするといろいろうまく動かない点もあるし)
Windows 版の gvim は utf-8 とその他の多バイトエンコーディングとの変換が下手らしく、文字化けへの対処にいろいろ手をかけさせられる。まず、この国際化時代に日本語しか扱えないというのは話にならないので、encoding オプションを utf-8 に設定するわけだが、普通の日本語環境でこれをやるとエラーメッセージなどが文字化けする。これを直す方法はいまだに分かっていない (※)。とりあえず _vimrc に language C と書いてメッセージを英語にすることで逃げている。(こうすればメッセージが英語になる点以外は目立った不都合はない)これを直すにはライブラリを入れ替える必要がある。
で、Windows の gvim でフォントを設定するには guifont オプションと guifontwide オプションを使う。前者がいわゆる半角文字のフォント、後者が全角文字のフォント。どちらもカンマで区切って複数のフォントを指定できる (最初に利用可能なフォントが選ばれる)。例えば _gvimrc に以下のように書く:
set guifont=Consolas:h10,Lucida_Console:h10:w5 guifontwide=MS_Gothic:h10
h10
はフォントの高さを 10 ポイントにする指定。同様にw5
は幅を 5 ポイントにする。
半角と全角でフォントを使い分ける必要がない場合は guifont だけ設定すればよい。
もう一つ忘れてはならないのは ambiwidth オプション。これは一部の文字を半角として扱うか全角として扱うかを指定する。例えばα
や○
などの文字は一般的な日本語環境では全角文字とみなされているが、そもそも半角と全角の区別のない欧米環境ではこのような文字も全て半角とみなされる。このように環境によって半角だったり全角だったりする文字の扱い方を指定するのが ambiwidth オプションで、デフォルトではこのオプションの値は single になっている (すなわち半角文字として扱う) が、従来の日本語環境に合わせたいのならこのオプションは double に設定するとよい。ambiwidth が single になっていると guifont で指定したフォントを使って半角文字として表示されるが、ambiwidth を double にすると guifontwide で指定したフォントで全角文字として表示される。
※ 言語リソースファイルのエンコーディングが CP932 になっているので、これを UTF-8 に変換すれば何とかなりそうな気がする、というかそうしている例がある。
| 固定リンク

コメント
CUI 版の vim で set encoding=utf-8 したい場合は、set termencoding=cp932 するといいみたい。
投稿: | 2010年3月30日 (火) 12時24分