dotfiles/.bash_it/plugins/available/z_autoenv.plugin.bash

46 lines
704 B
Bash
Raw Normal View History

2022-02-27 20:00:49 +01:00
cite about-plugin
about-plugin 'source into environment when cding to directories'
if [[ -n "${ZSH_VERSION}" ]]
then __array_offset=0
else __array_offset=1
fi
autoenv_init()
{
typeset target home _file
typeset -a _files
target=$1
home="$(dirname "$HOME")"
_files=( $(
while [[ "$PWD" != "/" && "$PWD" != "$home" ]]
do
_file="$PWD/.env"
if [[ -e "${_file}" ]]
then echo "${_file}"
fi
builtin cd ..
done
) )
_file=${#_files[@]}
while (( _file > 0 ))
do
source "${_files[_file-__array_offset]}"
: $(( _file -= 1 ))
done
}
cd()
{
if builtin cd "$@"
then
autoenv_init
return 0
else
echo "else?"
return $?
fi
}