HEX
Server: Apache
System: Linux pdx1-shared-a1-38 6.6.104-grsec-jammy+ #3 SMP Tue Sep 16 00:28:11 UTC 2025 x86_64
User: mmickelson (3396398)
PHP: 8.1.31
Disabled: NONE
Upload Files
File: //usr/share/doc/zsh/examples/Functions/pushd
# 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