LoginSignup
11
11

More than 5 years have passed since last update.

Vimでpull requestの差分を見るためのunite-pull-request作った(まだ途中)

Posted at

ぼくのはじめてのゆないとそーす。

githubの特定リポジトリのpull requestを一覧してファイルのdiffを開くuniteソース
unite-pull-request

GitHubのpull requestっていうのは、ゴイスーにベンリですよね。
コードレビューライフが変わったり、こんなぼくでもおーぷんそーすにぱっちを送っていいんだ!って気持ちになる。

でも、diffは若干見辛いと思うこともある。
WebページUIの限界みたいなのがあると思うけども。
やっぱり手元のVimで見れた方が見易い。vimdiff結構好きだし。

というわけで、作ってみたのがunite-pull-request

既に誰か作ってるのでは?感が凄いあったのだが、unite-pull-requestとunite-pullrequestは検索しても何も出なかったので、多分無いと思う。

とりあえずある程度使える所まで持っていくのを第一にしていたので、まだ今の所見る専用。
rawデータの取得にめちゃめちゃハマってしまって、何故かプライベートリポジトリのデータが取れなくて泣きそうになった。
なんだよ406 Not Acceptableって。情報が何もねえよ…。Acceptヘッダ弄っても効かねえし…。
色々試行錯誤した結果、x-oauth-basic認証とraw.github.comのURLなら何故か取得できることを発見したので、そちら側に取得方法を揃えたが、そもそもこれは取得方法として正しいのだろうか。

現在の機能

  • 特定のリポジトリのpull requestを一覧する
  • pull requestを選択すると、そのpull requestに含まれる変更されたファイルの一覧が出る
  • ファイルの一覧は、バイナリっぽい拡張子をフィルターできる
  • ファイルの追加、変更、削除に合わせて色を変える
  • 変更ファイルを選択すると、baseとheadのファイルを取得してdiffを表示する
  • pull requestを選択した状態で、actionメニューからbrowseを選択すると、ブラウザでpull requestが開ける

近々やりたいこと

カーソル当ててる行にレビューコメントを付けるのは、やればなんとかなりそうな気はする。

問題はその他のレビューコメントの取得と表示。これはちょっと良いUIが思い付かない。
まあ、そこはブラウザで見るのでも良いか…。

後、github APIを叩くvimプラグイン二つ目なんだけど、認証の扱いがベタ書きでダサいので何とかしたい。

スクリーンショットスクリーンショット 2013-11-09 5.50.35.png

スクリーンショット 2013-11-09 5.51.03.png
スクリーンショット 2013-11-09 5.51.22.png

11
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
11