export MARKPATH=$HOME/.marks function jump { cd -P $MARKPATH/$1 2>/dev/null || echo "No such mark: $1" } function mark { mkdir -p $MARKPATH; ln -s $(pwd) $MARKPATH/$1 } function unmark { rm -if "$MARKPATH/$1" } function marks { ls -l $MARKPATH | sed 's/ / /g' | cut -d' ' -f9- | sed 's/ -/ -/g' && echo } function _marks { reply=($(ls $MARKPATH)) } compctl -K _marks jump compctl -K _marks unmark
% mark <any_string>
% jump <any_string>
% marks
https://github.com/joelthelion/autojump
https://github.com/mattgreen/dotfiles/blob/master/zsh/jump.z...
https://github.com/rupa/z