1
0
Fork 0
mirror of git://git.code.sf.net/p/zsh/code synced 2025-01-06 06:51:33 +01:00
zsh/Functions/Example/pushd
Peter Stephenson 2983ed3fb3 22594: Attempt to fix some off-by-one errors for completion lists
that exactly fit the display width
2006-08-09 22:08:38 +00:00

17 lines
418 B
Text

# pushd function to emulate the old zsh behaviour. With this function
# pushd +/-n just lifts the selected element to the top of the stack
# instead of just cycling the stack.
local puid
[[ -o pushdignoredups ]] && puid=1
emulate -R zsh
setopt localoptions
if [[ ARGC -eq 1 && "$1" == [+-]<-> ]] then
setopt pushdignoredups
builtin pushd ~$1
else
[[ -n $puid ]] && setopt pushdignoredups
builtin pushd "$@"
fi