notebook

都内でWEB系エンジニアやってます。

WSLでGitHub CliのWebオプションを使えるようにする

GitHubのCliではいくつかのコマンド(listやview)に--webオプションが付いていてコマンドラインからブラウザを開いて確認できる

PRの詳細を読みたい場合やCIの結果を詳しく見に行きたいときなどどうしてもブラウザで確認したいときが出てくる

Macのホストで実行するなら特に問題ない話だが、WSL上でも--webが使いたい

 -w, --web   Open an issue in the browser

ただ、WSLでやろうとする場合、何も準備せずに実行すると特に何も起こらない

$ gh pr view 156 --web
Opening https://github.com/swfz/dotfiles/pull/156 in your browser.

ちなみにさまざまなコマンドを実行する前に認証を通す必要があるがその際にもブラウザを必要とする

認証だけであればGitHubでTOKENを発行して環境変数GITHUB_TOKENにセットするとブラウザからの認証をせずともコマンドが使えるようになる

こちらはTOKENに与えられた権限によって実行できるコマンドに制限が発生するので十分な権限を与えてあげないと使えないコマンドが出てくる

結論

最初色々調べた結果をつらつら書いていたのだが遠回りした結果wsluを入れてwslviewBROWSER環境変数に入れるでFAっぽい

$ sudo apt install ubuntu-wsl
  • .zshrcなど
export BROWSER=wslview
alias open=wslview

wslviewとコマンド直接打つようにしても良かったがエイリアスを貼ってopenで開けるようにした

これでGitHub Cliからのブラウザ起動はもちろん

画像、URLやエクスプローラを開けるようになった

快適

蛇足

xdg-open調べたりwsl-open調べたりGitHubCliのソース読んだり…

とだいぶ遠回りをしてしまった

よく考えたらこの手のことを考えている先人はいるはずなので先に調べておけばよかった

あての付け方を間違えたので次回以降気を付けたい