fixed pyenv shell. we cannot carry out bash array via envvars.

This commit is contained in:
Yamashita Yuu 2012-08-31 20:12:26 +09:00
parent dff57ae35d
commit da659739d2
2 changed files with 8 additions and 13 deletions

View file

@ -9,30 +9,24 @@ if [ "$1" = "--complete" ]; then
exec pyenv-versions --bare
fi
versions=()
for version in "$@"; do
versions=("${versions[@]}" "$version")
done
version="$1"
if [ -z "$versions" ]; then
if [ -z "$version" ]; then
if [ -z "$PYENV_VERSION" ]; then
echo "pyenv: no shell-specific version configured" >&2
exit 1
else
echo "echo \"\${PYENV_VERSION[@]}\""
echo "echo \"\$PYENV_VERSION\""
exit
fi
fi
if [ "$versions" = "--unset" ]; then
if [ "$version" = "--unset" ]; then
echo "unset PYENV_VERSION"
exit 1
fi
# Make sure the specified version is installed.
pyenv-prefix $versions >/dev/null
pyenv-prefix $version >/dev/null
{
IFS=:
echo "export PYENV_VERSION=(\"${versions[@]}\")"
}
echo "export PYENV_VERSION=\"${version}\""

View file

@ -40,7 +40,8 @@ remove_from_path() {
echo "${result%:}"
}
IFS=: PYENV_VERSION=($(pyenv-version-name))
IFS=: versions=($(pyenv-version-name))
PYENV_VERSION=("${versions[@]}")
PYENV_COMMAND="$1"
if [ -z "$PYENV_COMMAND" ]; then