ghqのv1がリリースされたことに伴い、
ghq lookが使えなくなってしまったので、なんとかしました。
やりかた
- 
ghq get --lookを使う - ↓のShellscriptを 
.bashrcなどに突っ込んで今まで通りghq lookを使う 
ghq() {
  if [[ $1 == "look" ]]; then
    local repo_path
    repo_path=$(command ghq list --full-path --exact $2)
    cd ${repo_path}
  else
    command ghq "$@"
  fi
}
1はタイプ数が多くてめんどいのと、公式でディレクトリの移動はcdを使用することを推奨していたので、2のshellscriptにしました。
蛇足1
ghq lookはこちらにある通り
一時的なコードのチラ見のための機能で、ディレクトリの移動に使うものでは無い とのこと。
(全く知らなかった 
)
ghq look はあくまでも「一時的なソースコードのチラ見」のための機能なのですが、これを作業ディレクトリの移動に使い、それゆえに意図せぬ挙動が起こってハマっているケースが散見されます。これはもちろん利用者側の問題ではなく、アナウンス不足であり、そのように誤解されやすい機能であるから故に、削除したいという意図です。
なんで別のshellプロセスが立ち上がるんだろうなーとは思ってたのですが、
ghq look は子プロセスで別のシェルプロセスを起動して、ディレクトリを移動したように見せかけています。どうしてもそのようにするしかない。
ということだったんですね ![]()
蛇足2
ghq lookは使えなくなってしまいましたが、v1になって、
- 
ghq listの高速化 - 
ghq createコマンドの追加 - 
ghq.<repo_root>.rootで、レポジトリ(user, organization)ごとのクローン先を変更可能 
など、色々Improveがあるということなので、使っている人は更新したほうが良いと思われます ![]()
蛇足3
レポジトリがいっぱいあって移動が大変な方は、こちらにある通り、pecoや、fzfなどと連携させたほうが良いと思われます ![]()