herdr で cdd
screen, tmux 時代から、cdd というコマンドを作り愛用してきた。cdd とは、例えば window:3 で ~/foo/bar のディレクトリで作業している時に cdd 3 とすると cd ~/foo/bar される、というだけのものなのだが、しょっちゅう使っているぐらい重宝してきた。cdd というコマンド名も打ちやすくて好き。というわけで、cdd も herdr で動くように実装した。
herdr は以下の三つの状態を検討する必要がある。
- 現在の workspace の tab, pane の dir
- 別の workspace の tab, pane の dir
- agent が作業している dir
これらを考慮し、zsh 決め打ちで、以下のような仕様で作った。bash その他用もエーアイに伝えれば同様な実装はすぐ作れると思う。
cddのみを実行すると、 すべての作業ディレクトリ一覧を fzf でフィルターし移動が可能cdd 3などで、現在の workspace の tab id 3 に移動cdd a3で、agent list の3番目の agent の cwd に移動cdd w3:p2などで、workspace id 3 の pane id 2 に移動。w3:p2などは herdr オフィシャルでの表記と一緒。cdd w3:t2など(w3, tab 2)も。- 適当に tab を打つと補完リストが出てきて選択も可能
- なお
jqとfzfに依存しているので、これらのコマンドが必要
