オレサマ オマエ マルパクリ
まず最初に。オマエ呼ばわりしてすんませんっしたぁ > id:thinca 。あとマルパクリじゃなくて一部パクリです。なんかいろいろすんません。
というわけで昨日公開した zoomfont.vim に http://d.hatena.ne.jp/thinca/20091130/1259514024 で出ている idea というか thinca たんが実装済みだけど公開してない plugin の機能を一部実装。ふわふわした code なのはまぁそういうもんだと思ってください。というかパッと見比べてみて明らかにおれのが劣ってるところを足しただけとも言う。
- 最新 - http://github.com/januswel/dotfiles/blob/master/vimfiles/plugin/zoomfont.vim
- この時点 - http://github.com/januswel/dotfiles/tree/a9368e28ba2e824159503dc3a1751c9aba192b8f/vimfiles/plugin/zoomfont.vim
変更点は以下。
- 思いっきり整数しか想定してなかったんだけど小数指定に対応。
- font size に関する user の設定を最初に save して reset 時にそれを使うようにした。
- ある程度以上に font size を大きくすると vim が 'lines' と 'columns' の値を勝手に変更してしまう ( と件の entry で教えてもらった ) ので上記と同様 user の設定を save しておいて reset 時に復元するようにした。
少しだけ .gvimrc で設定した値を取ってくるのどうすんだと悩んだ ( .vim/plugin でも .vim/after/plugin でも .gvimrc の読み込みはそれ以降なので plugin として source された時点では user の設定値はわからない。読み込まれ順は ":scriptnames" で確認可能。 ) んだけど VimEnter event に引っかければいいということに気付いておれすげぇと思ったりした。
でまぁうちのは Windows の font 設定用の common dialog のようにある程度自動的かつ離散的に size が動くんだけど thinca さんとこのは好みの幅で細かく指定できる機能を持ってるみたいなのでそこが違い。どっちを選ぶかはまぁ好みやね、って言えるように明らかに機能の足りない部分を補強した次第ですはい。という先方が該当 plugin を公開すること前提な書き殴りっぷり。
thinca さんが公開してくれたよ !! > http://d.hatena.ne.jp/thinca/20091226/fontzoom 。というわけで早速好きな方をいれてみよう。で、 source 見せてもらった感じではうちに比べてかなり短いし軽い処理をしている印象なのでそのうちうちも shape-up する予定。てか vim に map() ( と filter() ) 関数があるということを気付かせてもらえただけでけしかけた甲斐があった。けしかけたのかよ !