2011/10/25


おかげさまでVimテクニックバイブル、順調に売れているとの事です。


読んで頂いた方達の声をTwitter等で聞くと

  • 思っていたよりも濃い
  • 知らなかった機能が盛りだくさん
  • Vimスクリプト面白い
  • Vimテクニックバイブルで彼女が出来ました
  • Vimテクニックバイブルで身長が5cm伸びました
など、数多くの反応を頂きました。
そしてこの度、増刷2刷りとなりました。著者のメンバも喜んでいる事と思います。
「Vimテクニックバイブル?作業効率をカイゼンする150の技」を執筆 — 名無しのvim使い
http://nanasi.jp/articles/howto/note/vimtech-149tips-book.html
「Vimテクニックバイブル」を執筆しました | GREE Engineers' Blog
http://labs.gree.jp/blog/2011/08/3868/
Vim の本が出るらしいです - 永遠に未完成
http://d.hatena.ne.jp/thinca/20110917/1316271599
Vim-users.jp - Vimテクニックバイブル紹介(Shougo版)
http://vim-users.jp/2011/08/vim-technic-bible-shougo/
Big Sky :: Vimテクニックバイブル ~作業効率をカイゼンする150の技
http://mattn.kaoriya.net/software/vim/20110810203558.htm
ぜひvimrcを弄りながらニタニタして下さい。
Posted at by



2011/10/11


どんなソフトにもバグあって、ユーザからの報告によって直って行くんだけど
  • バグ報告したいけど英語が苦手
  • 解析出来ない
  • 再現が難しい
といった問題がバグ報告への足枷になっている事実は否めません。
そこでgithub上にvim-users-jpというorganizationを作成しました。
vim-jp/issues - GitHub

有識者で既知のバグを管理しオフィシャルへのマージを検討します

https://github.com/vim-jp/issues/issues

issuesを開放していますので

ぜひ日本語でバグ報告

して下さい。
githubのアカウントは必要になりますが、少しはバグ報告への障壁が減るかと思います。
誰かが解析してvim-devにバグ報告してくれるかもしれませんし、patch付きで報告されて瞬時に直るかもしれません。

既に幾らかissuesに登録されています。これを見てvim-devに報告して貰っても良いですし、issuesに補足情報を追加してもらっても構いません。
場合によってはgitリポジトリも開放します。
有識者数名をorganizationに追加させて頂きましたが、迷惑であれば外しますし、もし権限が必要な方がいらっしゃれば連絡下さい。
Posted at by



2011/10/01


先日、vim-jpがオープンした訳だけど、これの真の意味はバラバラだったユーザや開発者を1ヶ所に集めるのが目的。まぁVim-users.jpもあって良いし、各々でやったらいいと思うけど僕が求めていたのは開発側。
vim-jpを作って良かったと思った。
githubのIssueトラッカーを使ってvim_devにパッチを放流するまでのワークフローが出来上がりつつある。

  1. 不具合報告
  2. 皆で再現確認
  3. 修正方法の提案そして議論
  4. 修正担当者をアサイン
  5. パッチを仮で書いて貼り付ける
  6. レビューしてもらって提出
突然、有識者がパッチ書いてvim_dev投げるとツメも甘かったりしますし、第一に新しい開発メンバが増えない。仕事でも同じだな。不具合が出たら修正者にすぐ直させるものいいんだけど、どう直すのかを予めレクチャーさせると不具合の認識が共有出来る。
後からそういう修正じゃなかったんだけど...って事がなくなる。

とてもいい感じです。

さて、vim-jpが出来てまだ半月しか経ってない。でもvim_devでは日本人が猛威をふるっている。MLの皆が「日本人、突然どうした」と思ってるかもしれない。
では、このIssueトラッカーを使い出してからの成果をご紹介しよう。

入力文字列を変更してもcompletefuncが呼ばれない


補完中に入力文字を変えた場合、補完候補が変わるの可能性があるで補完関数が呼ばれるはずだが呼ばれない。
KoRoNさんがパッチ書いて投稿。素早い。さすがです。7.3.311で取り込まれる。

autoload関数を読み込むとコマンド行が1行ずれる


知る人ぞ知る、いやらしいバグ。コマンドラインからautoloadなスクリプトを呼ぶとコマンドメッセージが1行ずれる。eskk.vim等がそれの影響でひどい動きになっていた。
僕がパッチ書いて投稿。7.3.305で取り込まれる。

'verbosefile' で出力する際、:highlight などの色付きの出力だと出力が壊れる


verbosefileオプションでファイルを指定すると詳細な情報が出力されるのですが、その際、画面のメッセージ位置とファイル上の書き出し位置を共有しているのが原因で奇妙な見え方になっていた。
僕がパッチ書いて投稿。7.3.308で取り込まれる。

:callに複雑な式を渡すと「E15: Invalid expression」を出すことがある


vimscriptは文と文を"|"で繋げられるのだけど
echohl Warnings | echomsg "hello" | echohl NONE 文法的に解析する際、論理和の"|"と勘違いしてしまうので、vimscriptはif 0で通らない行についても仮でで関数を呼び出す。また関数の戻り値がDictの場合
call foo.bar().baz() みたいな事も出来る。vimscriptの仕様は変態的で、文字列の結合も辞書のメンバ参照も"."なのです。そのせいで無効行内の関数呼び出しは空のDictを返す作りになっています。ただ配列のインデックス指定時の考慮が抜けていた。
call foo.bar["baz"]() これがエラーになる。
僕がパッチ書いて投稿。ちょっと違うパッチになっちゃったけど7.3.329で取り込まれる。

ユーザ補完関数を使用していると、入力した文字列がregister-.に入らない


題名の通り。
KoRoNさんがパッチ書いて投稿。7.3.319で取り込まれる。

ドラッグ&ドロップで開いたファイルのバッファを削除すると落ちる


vim-jpメンバじゃない人から不具合報告をもらった。どんどん報告して下さい!
実際には既に閉じられたバッファのNULLポインタをデリファレンスしてた。
僕がパッチかいて投稿、7.3.316で取り込まれる。

'foldopen' が all でないと :help で折り畳みが開かれない


helpファイルにfoldingがある場合に:help fooがfoldを展開しない不具合。
僕がパッチかいて投稿、7.3.327で取り込まれる。

引数の変数名が重複していると内部エラーが出る


題名の通り。
tyruさんがパッチかいて投稿、7.3.325で取り込まれる。パッチをちょっと書き直されたけど、伝わればok

WindowsのMinGW環境にて、xxdのmakeに失敗する


mingw付属のgccがバージョン4.6になり、-mno-cygwinオプションがobsoluteになったのが原因。
ネオコンやVimShellでおなじみのShougoさんがvim_dev初投稿。みごとマージされ、はれてShougoさんはCONTRIBUTE AUTHORになりました。7.3.326で取り込まれる。

パッチは提供したけど、まだ反応もらってない物もあります。個人的にはNakadairaさんの指摘やパッチ提供が的確過ぎて素晴らしいです。

これ、半月の間に日本人が解決した不具合です。すばらしいですね。

これが僕がやりたかった事だ。どんどんvimが良くなれば、僕もKoRoNさんもNakadairaさんもtyruさんもthincaさんもShougoさんも、そして全ユーザも幸せになれるんです。

vim-jpでは不具合報告をお待ちしております。

あなたもCONTRIBUTE AUTHORになろう。
Posted at by