Sa Dez 9 20:43:56 CET 2006

Persistent Dirstack für die ZSH

Wer sich schon immer mal einen persistenten Dirstack für die ZSH gewünscht hat, hier gibts die Losung. Einfach folgendes in die zshrc eintragen:

if [[ -f ~/.zdirs ]] && [[ ${#dirstack[*]} -eq 0 ]]; then
    dirstack=( ${(uf)"$(< ~/.zdirs)"} )
    # "cd -" won't work after login by just setting $OLDPWD, so                         
    cd $dirstack[0] && cd - > /dev/null
fi
chpwd() { dirs -pl >! ~/.zdirs }

So, das wars, jetzt hat man einen persistenten Dirstack, d.h. nach dem man eine neue Shell startet, kann man auf den gleichen Dirstack zugreifen wie in den anderen schon gestarteten Shells. Weiterhin kann man nach dem starten der shell einfach cd - (geht in das Verzeichniss das in $OLDPWD definiert war) eingeben und landet in dem letzten Verzeichniss in das man gewechselt hat.

So, jetzt sollte das obige halbwegs passen, scheiss html..


Posted by Ulrich Dangel | Permanent Link | Categories: Shell stuff