yet another redmine source for unite 本家がないので yet も糞もないけど、もっといいのが出てくることを期待して 使い方 Unite redmine チケット一覧の表示(かつ、一覧をキャッシュ) キャッシュがあればそれを表示 必要なもの webapi-vim https://github.com/mattn/webapi-vim.git open-browser.vim https://github.com/tyru/open-browser.vimunite-yarm
unite のプラグイン。チケットの取得・表示 に続いて更新機能も追加(description に限る)。
- :Unite redmine でチケット(issue)をサーバから取ってきて一覧表示
- unite のインタフェースでチケットを選択して内容表示
- ごにょごにょ編集
- :w or :wq でチケットを更新
既に誰かが更新していた場合
更新には API アクセスキーが必要。ただし、更新できるのは redmine の head または stable branch に限る(と readme に書いてある)。
更新する前にチケットを取り直して update_on フィールドの値がキャッシュしているものと同じかを比較。異なる場合は更新中止。ただし、排他はできないので微妙なタイミングで上書きしてしまう可能性は有る(updated_on も送信すれば良いのかもしれないけど未検証)。
更新が可能な場合は、更新前の description をローカルにバックアップ。
サーバへ put リクエストを送信してチケットを更新する。更新するのは description のみ。14行目以降全部を description とする微妙な判定。
更新が成功したら、再度サーバからチケットを取り直してキャッシュを更新。
バックアップ機能を付けたので、実運用されているチケットを扱っても大丈夫(だと思う)。
後は filetype=redmine で syntax を追加したり、url を Enter するとブラウザで表示したりとか。
pure vim ここまでいけたのは unite と webapi-vim のおかげ。特に webapi-vim は http や xml を簡単に扱えるので、web サービスとの連携はたいがいできちゃうんじゃないかと妄想してしまう。
追加したいもの。
カスタムフィールド表示(追加済)- カスタムフィールドによる絞り込み
- プロジェクト単位の絞り込み
- ステータスによる絞り込み
- コマンドの
化 - チケット表示からの最新化(チケットの取り直し)
- サーバ切り替え
- API KEY 切り替え
redmine の API 待ち
- wiki の CRUD
- チケット検索
- wiki 検索