zshuper/functions/rationalise-dot.zsh

15 lines
329 B
Bash

# Alias '...' to do '../..'
# Example: type 'cd ...' to get 'cd ../..'
rationalise-dot() {
local MATCH
if [[ $LBUFFER =~ '(^|/| | |'$'\n''|\||;|&)\.\.$' ]]; then
LBUFFER+=/
zle self-insert
zle self-insert
else
zle self-insert
fi
}
zle -N rationalise-dot
bindkey . rationalise-dot