where is a text ?

えーと何だったかな。たしか vim 標準設定の font だと 0 ( DIGIT ZERO ) と O ( LATIN CAPITAL LETTER O ) の区別がつかねぇ -> じゃあ font 変えるか -> andLinux で使ってる VL Gothic はたしか区別してたよな -> :set guifont=* -> うーん日本語きたねぇなぁ -> そういや前 ( 年単位 ) 某 z さんが有志が作ってる windows 用の font renderer の設定が大変だ云々言ってた気が -> たしか gdi なんたらとかいう名前だったはず。というような流れで google の精を飛ばしたら gdi++ がそれっぽいということがわかったので早速いれてみた。

で、 Freetype 版と Helium 版を試してみた結果、何も設定しなくても Helium 版がきれいに日本語を出してくれたので Helium 版を使うことに。てか Freetype 版は設定をしないと non-alpabetical な文字には作用しないのかな ? で、 gdi++ 系の software の特徴として高精度な font renderer ってのと環境に合わせた tuning が可能ってのの 2 つがあるみたいなんだけどうちはとりあえずほとんど素の設定のままでそれなりに表示できているので tuning は後回しと言うことで。てか設定とかしなくても普通にキレイだ。

最終的に gditray も使ってすべての window に適用させてみたんだけど予想したほど performance が落ちることがなくてかなり感動した。というか memory 使用量が 数十 MB 増えた程度で描画 speed の遅延なんかは実感できない level 。全部に適用できない場合でもとりあえず vim だけ適用できりゃいいやと思ってたんだけどそれだと起動が short-cut からのみに限定されてしまってイヤだったのでこれはうれしい誤算だった。

で、どれくらい変わるかというとけっこう価値観かわるくらいというあいまいな答えしか返せないんだけどとりあえず Microsoft 社はもっと頑張るべきというのがひとつ。てか Windows 標準の antialiasing も cleartype もいろいろ制限がつくわりに動作が重くなるので使いたくはないし、もっというと標準でついてくる font 以外がジャギジャギになってしまうような renderer しかないというのは vendor, user ともに損をしているというか。てか gdi++ をいれてからマジでどこがテキストなのかわからなくなるときが一瞬あるというかキレイな文字 = 画像という飼い慣らされっぷりを発揮しているので vim 使っててあれここで visual mode に入れるんだっけと躊躇する始末で。他にも Firefox でテキストだと思って範囲選択しようとして click -> fish on! とかの心配が拭えない ( 大げさ。

でまぁ使うことはいいんだけどちょっとこの software の事情が特殊というか。一番の問題は Helium 版の source が参照できないということなんだけど ( つまり改ざんされているかどうか check する方法が限られる ) そこはまぁ注意しつつということで。あとは license 的に問題ありそげな話題もちらほら見かけるので今後のことを考えるとあまり依存してしまうのはマズい気もする。本家や freetype 版は開発終了しているようなので ( 多分 ) stable なんだろうと思うんだけど Helium 版は手に入るものが test version と書かれているのでうーむという感じ。あとは本家の ( ? ) 後継である InkStone ( http://inkstone.sourceforge.net/ ) に 64 bit 対応とか tuning とかもろもろ期待したいんだけどなんか project が動いてない模様 ( status もわからない状況 ) なのでどうするんだろうという感じで。

以下うちの環境での before-after 。

  • before
  • after