setopt auto_pushdとしておくと、cd するたびにディレクトリスタックにディレクトリが積まれるので、"cd" と打って誤爆しても cd - で前のディレクトリに戻れるのでたまに使ってました。
けれど細かにcdする場合はディレクトリスタックに大量のディレクトリが積まれて分かりにくいのと、pushd/popd がほとんと使いものにならない状態だったり。
auto_pushd はあまり必要ないけれど、cd を誤爆った時のみリカバリできないかなー、とか思っていたので、試しに簡単なfunction書いてみたら割といけそうな感じに。
コードは以下。コードというか .zshrc に書く設定というか。
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
function cd() { | |
if [ $# -eq 0 ]; then | |
builtin pushd $HOME | |
else | |
builtin cd $@ | |
fi | |
} |
これで上手くいくんじゃないかなー、とか思う。
実際 auto_pushd と比較した使い心地はこれから分かるであろうので謎。
cd のエラーはちゃんと吐くけれど微妙にメッセージが違ってたり。ちょっと違和感。
一応bashでも動いてる様子。というか使っているのがほとんど無いので基本どこでも動く?
0 件のコメント:
コメントを投稿