From eae5e5e092b934f4583c41f1d93e7b7e3ff9e0aa Mon Sep 17 00:00:00 2001 From: Joshua Peek Date: Thu, 22 Sep 2011 19:15:00 -0500 Subject: [PATCH] realpath plugin scripts --- libexec/rbenv-plugin-scripts | 21 ++++++++++++++++++++- 1 file changed, 20 insertions(+), 1 deletion(-) diff --git a/libexec/rbenv-plugin-scripts b/libexec/rbenv-plugin-scripts index af9648ed..34d10809 100755 --- a/libexec/rbenv-plugin-scripts +++ b/libexec/rbenv-plugin-scripts @@ -16,10 +16,29 @@ if [ -z "$RBENV_COMMAND" ]; then exit 1 fi +resolve_link() { + $(type -p greadlink readlink | head -1) $1 +} + +realpath() { + local cwd="$(pwd)" + local base="$(basename $1)" + local path="$1" + + while [ -n "$path" ]; do + cd "${path%/*}" + local name="${path##*/}" + path="$(resolve_link "$name" || true)" + done + + echo "$(pwd)/$base" + cd "$cwd" +} + shopt -s nullglob for path in ${RBENV_PLUGIN_PATH//:/$'\n'}; do for script in $path/"$RBENV_COMMAND"/*.bash; do - echo $script + echo $(realpath $script) done done shopt -u nullglob