たぶん一番簡単な方法だと思います。
alias ghqcd='cd $(ghq list --full-path | fzf)'
これを.bashrcなどに登録しておくだけです。
※ これは問題点があります。詳しくはこちら → 問題点
失敗例1
はじめは
$ ghq list --full-path | fzf | cd
としたけど、cdが動いてくれませんでした。
失敗例2
次にxargsを使ったけど
$ ghq list --full-path | fzf | xargs cd
$ xargs: cd: No such file or directory
と動きませんでした。
参考情報
-
unix - using xargs to cd to a directory - Super User
xargsはcdのようなビルトインコマンドは使えない、らしい。
問題点
ghqcdをキャンセルすると"cd"が実行されるので、ホームディレクトリに戻ってしまう。
どうしたものでしょう。。。
解決策
寄せていただいたコメントのおかげで解決しました。ありがとうございました。