look for plugins to extend rehash and which

This commit is contained in:
Jamis Buck 2011-08-03 11:17:28 -06:00
parent a9837f3a06
commit b6ebc2f08b
2 changed files with 29 additions and 7 deletions

View file

@ -1,14 +1,28 @@
#!/usr/bin/env bash -e #!/usr/bin/env bash -e
make_shims() {
local glob="$@"
for file in $glob; do
local shim="${file##*/}"
cat > "$shim" <<SH
#!/bin/sh
exec rbenv exec $shim "\$@"
SH
chmod +x "$shim"
done
}
mkdir -p "${HOME}/.rbenv/shims" mkdir -p "${HOME}/.rbenv/shims"
cd "${HOME}/.rbenv/shims" cd "${HOME}/.rbenv/shims"
rm -f * rm -f *
for file in ../versions/*/bin/*; do make_shims ../versions/*/bin/*
shim="${file##*/}"
cat > "$shim" <<SH shopt -s nullglob
#!/bin/sh RBENV_REHASH_PLUGINS=(/etc/rbenv.d/rehash/*.bash ${HOME}/.rbenv/rbenv.d/rehash/*.bash)
exec rbenv exec $shim "\$@" shopt -u nullglob
SH
chmod +x "$shim" for script in $RBENV_REHASH_PLUGINS; do
source $script
done done

View file

@ -4,6 +4,14 @@ RBENV_VERSION="$(rbenv-version)"
RBENV_COMMAND="$1" RBENV_COMMAND="$1"
RBENV_COMMAND_PATH="${HOME}/.rbenv/versions/${RBENV_VERSION}/bin/${RBENV_COMMAND}" RBENV_COMMAND_PATH="${HOME}/.rbenv/versions/${RBENV_VERSION}/bin/${RBENV_COMMAND}"
shopt -s nullglob
RBENV_WHICH_PLUGINS=(/etc/rbenv.d/which/*.bash ${HOME}/.rbenv/rbenv.d/which/*.bash)
shopt -u nullglob
for script in $RBENV_WHICH_PLUGINS; do
source $script
done
if [ -x "$RBENV_COMMAND_PATH" ]; then if [ -x "$RBENV_COMMAND_PATH" ]; then
echo "$RBENV_COMMAND_PATH" echo "$RBENV_COMMAND_PATH"
else else