GitHubのIssueを検索してさくっとブラウザで表示する

はじめに

こんにちは、まだまだ正月ボケを引きずっている佐々木です。個人的に新年になってから普段使っているツールや定形作業の見直しブームが来ています。

今回はGitHubでの様々なタスクをCLIで実行できるhubを使って普段やっている定形作業を効率化してみました。

やりたいこと

以下のような定形作業を効率化したいです。

  1. 特定のリポジトリ内の特定のラベルがついているIssueを検索する
  2. 検索したIssueをブラウザで表示する

今回は上記のようなタスクを考えましたが、hubで扱えるものなら対象はIssueでもPRでも可能ですし、検索条件も工夫できると思います。

作戦

次のような作戦でやってみました。

  1. hubでIssueのタイトルとURLを取得する
  2. pecoでインクリメンタルサーチしつつ目的のIssueを選択する
  3. openにURLを渡してブラウザで表示する

fishでの例

上記の作戦をfishの関数として実装すると下記のようになります。

これを~/.config/fish/config.fish などに追記します。

function list-issues
  pushd <repository-path>
  open (hub issue -l議事録 -L5 -f '%t,%U%n' | peco | cut -d ',' -f 2)
  popd
end

まとめ

hubとpecoの組み合わせでIssueの検索をCLIから行うショートカットコマンドを作成しました。

効率化してできた時間でコードを書こう・・・。