$shibayu36->blog;

クラスター株式会社のソフトウェアエンジニアです。エンジニアリングや読書などについて書いています。

rubocopでの自動フォーマットを高速化する

VSCodeでrubocopを使って自動フォーマットをしているのだが、フォーマットが本当に遅くてめちゃ困っていたのが完全に解決して感動したので記事だけ共有。

dev.to

formatに3秒くらいかかっててマジつらい...って感じだったのが1秒未満とかになったので本当に最高。

Before f:id:shiba_yu36:20211024220032g:plain

After f:id:shiba_yu36:20211024220150g:plain

今いるレポジトリのPR一覧をpecoで絞り込んでcheckoutする便利コマンド作った

OSS活動とか仕事をしてる時に、PRをチェックアウトするのだるいなと思っていた。そこで「今いるレポジトリのPR一覧をmodified順に出力し、pecoで選択したものをcheckout」出来たら便利だろうということで作った。

できたもの

f:id:shiba_yu36:20211018194017g:plain

やり方

まずhubとpecoをインストールしておく。

zshを使っているならこんな感じで定義し、

function peco-git-recent-pull-requests () {
    local selected_pr_number=$(hub pr list --limit 40 --sort updated --format "%pC%>(8)%i%Creset  %t (by @%au)%n" | peco | sed -r 's/^ +#([0-9]+).*$/\1/')
    if [ -n "$selected_pr_number" ]; then
        BUFFER="hub pr checkout ${selected_pr_number}"
        zle accept-line
    fi
    zle clear-screen
}
zle -N peco-git-recent-pull-requests

自分で好きなキーバインドをつける。僕は Ctrl-x B に割り当てた。

bindkey '^xB' peco-git-recent-pull-requests

これでレポジトリのディレクトリにいるときにCtrl-x Bを押すと、動画のようにPRの一覧が出て絞り込んで選択してEnterを押すとcheckoutできる。便利。

https://github.com/shibayu36/config-file/pull/1

Auth0を試した

自分でサービス作るときにもう認証を自前実装するのは嫌だよなあと思っていてAuth0が気になっていたので試してみた。

Auth0のコンソールでアプリケーションの新規作成をした後、とりあえず使えるようにするだけのコードは https://github.com/shibayu36/typescript-playground/pull/17 。正直これだけでひとまず認証が実装できてしまうのは便利すぎてビビる。さらにSNSでの認証などを追加したいならコンソールでぽちぽちするだけで行けそう。詳しい使い方はまだ全然分かってないが、ひとまず今後認証は自前でやるのではなくて任せていきたいなと思った。

参考