No nyt kun asia on Bashissakin ratkennut, voi jo todeta, että Zsh:ssa olisi helpompaa.
Zsh:ssa Bashin \w-muuttujaa vastaa %~ (tilde), johon voi kirjoittaa numeerisen etuliitteen osoittamaa, montako hakemistotasoa (lopusta laskien) halutaan näkyviin. Esimerkiksi %3~ jättää näkyviin kolme viimeistä kansiota.
Jollei tämäkään riitä, %<…< ja %>…> antavat mahdollisuuden vapaasti leikata muuttujien tulostamasta jonosta halutun mittaisen pätkän.
Lisäksi tuo cd .. -ongelma olisi ratkaistavissa yksinkertaisesti asettamalla valinta CHASE_LINKS:
setopt chase_links