zshでcd -[TAB]とすると、setopt auto_pushdしていた場合は過去にいたディレクトリが ~% cd - 0 -- /home/**/work/dotfiles/.vim (一番昔) 1 -- /home/**/work/dotfiles 2 -- /home/**/work (直近) のように表示されます。しかし、このままタブを押し続けていくと、最も昔にいたディレクトリから順次選択れていくのはやや直感的ではありません。できれば直近にいたディレクトリを優先してリストアップしてほしい。 zstyleのヘルプを見ても'completion:complete:cd:*'でリストを逆順にする方法が分からず、途方に暮れていたところ… Zsh Workshop: The Directory Stack [1]を見ていて cd +[TAB] が目的の動作だったと閃きました。 ~%
駆使している人は多くないだろうけど、大概のシェルには pushd と popd がある。 pushd でディレクトリスタックにカレントディレクトリを入れて移動、 popd でディレクトリスタックの最上位のディレクトリを pop してそのディレクトリに移動してくれる。 しかし、 pushd なんてコマンド覚えにくいし、打ちにくい。もちろんエイリアスをしてもよいが、いちいちディレクトリスタックを表示してくれちゃうのもうざったい。そこで zsh の場合、 setopt AUTO_PUSHD とオプションを設定してやれば、普通にcdするときにもディレクトリスタックにそのディレクトリを入れることができる。あとpopdも打ちにくいので、pdとかエイリアスをあてとくと楽になる。 ディレクトリスタックの最上位を使うのも便利だが、途中のも掘り出したいなんて場合があると思う。そんな時には次のように、
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く