TIL: zoxide is ridiculously good.
It is basically a smarter cd for your shell.
Repo: https://github.com/ajeetdsouza/zoxide
Short version: it learns where you go, then lets you jump to those places with short queries instead of typing full paths.
How it learns paths
zoxide add /home/hising/src/github/hising/hising.com
zoxide query hising
You usually do not need zoxide add manually. It learns from your navigation over time.
After it has seen a path a few times, you can jump with a short match:
z hising
That is the part that feels great in daily use.
Make cd smarter (and keep z)
In zsh, I use zoxide to power cd directly:
eval "$(zoxide init zsh --cmd cd)"
Then add:
alias z='cd'
Now I get both:
- smarter
cd zmuscle memory for quick jumps
Very small change, big quality-of-life improvement.