momonga.vim #6 に行ってきた

momonga.vim #6 に行ってきたよ!初ドワンゴ

momonga.vim #6 β

本会開始前に、数人で集まって会場近くのカフェでプレもくもく会などをした。電源が完備されており、とても便利だった。

本会

規模は大きかったけど、島が分かれていることで、かなりいい感じになったのではないかと思う。これなら次回はもっと人数多くても行けそう…!?
ただやはりというか、お話できない人がかなりいた。まあそういう会ではないので仕方ないんだけど。たまに自分の進捗を放棄して他の人の様子を見て回ったりしたくなるけど、自分の進捗が出ないのと、相手の邪魔になるんじゃないかという思いがあり、なかなか実行できない。この辺りバランスむずい…。魔法の言葉「進捗どうですか」はもっと使っていきたい。

成果

私は themis.vim の Version 1.1 を公開すべく、そのための作業、具体的には themis.vim 自身のテストを書くという作業をずっとしていて、テスト書いてはバグっぽいのを見付けて直したりリファクタリングしたくなったりして、全然進まなくてつらい感じだった。
残念ながら会の最中に成果を出すことはできなかったんだけど、ついさっき残りのテストを書くのを諦めて Version 1.1 の RC をブランチで公開したので、興味ある人は見てみてください。特になければ遅くても来週には master にマージ予定。
ここで、Version 1.1 で具体的に何が変わったのかを紹介。

本体にテストが付いた

ただし、↑でも書いたけど、正直テストが全然足りてないです。ないよりかはマシだろ的なアレ。今後ちょっとずつ追加していきたい…!

dot reporter の改善

エラーが出てもエラー内容が一切報告されないという手抜きぶりだったので、ちゃんと報告されるようにしました。しかし実はもうちょっと情報が欲しい…。

command helper の追加

command helper を追加しました。
こんな感じになります。

let s:assert = themis#helper('assert')
call themis#helper('command').with(s:assert)

function! s:suite.test()
  " :Assert に真を期待する式を与える
  Assert 1 + 1 == 2

  " Equals や HasKey は with で与えた s:assert のもの
  " assert を使う利点は、失敗した時に各引数の実際の値がレポートで見れる
  Assert Equals(1 + 1, 2)
  Assert HasKey({'foo': 0}, 'foo')

  " 例外チェック。/pat/ は省略可
  Throws /^error$/ :throw 'error'
  Throws /E119/ type()
endfunction
assert helper

has_key() や type_of() など、いくつか関数を追加しました。

進捗報告会

@ さんが作っていた英文法チェックプラグインはすごい便利そうなので、リリースされたら使っていきたい。私の英語、完全に Engrish なので、エラーでまくりそう…。
@ さんのマリオは完全にやばかった。あとはセル単位ではなくピクセル(文字)単位での移動ができるともっと良いと思います!
@ さんが Vim Colorscheme Gallery を改良していた。ColorScheme、light と dark 以外にも、light と dark 両対応しているものもあったり、赤系青系みたいに特定の色に偏らせたものとか、淡い系とか濃い系とかいろいろあるので、その辺りカテゴライズされていると便利そうな予感はある。そのためには展示する ColorScheme を大量に用意しないと寂しくなりそうだけど。

懇親会

妖怪ハウスにお邪魔しました! 江添さんお手製のピザをご馳走になったり、アイスを食べたり、ボードゲームが置いてあってやりたくなったり、進捗したりしていました。
11時頃にさすがに時間がやばいので撤収。次お邪魔する機会があったらボードゲームしたい。



そんなこんなで今回も非常に楽しかったです。次回は mixi 開催との噂もあり、Vim 熱の高まりを感じます…! 目指せ武道館!?