fish-shell/share/functions/cd.fish
2007-01-16 11:29:18 +10:00

37 lines
619 B
Fish

#
# The following functions add support for a directory history
#
function cd --description "Change directory"
# Skip history in subshells
if status --is-command-substitution
builtin cd $argv
return $status
end
# Avoid set completions
set -l previous $PWD
if test $argv[1] = - ^/dev/null
if test $__fish_cd_direction = next ^/dev/null
nextd
else
prevd
end
return $status
end
builtin cd $argv[1]
set -l cd_status $status
if test $cd_status = 0 -a $PWD != $previous
set -g dirprev $dirprev $previous
set -e dirnext
set -g __fish_cd_direction prev
end
return $cd_status
end