From df61a76ab0b04703601eb50edc3b06b8f02f2c07 Mon Sep 17 00:00:00 2001 From: Joshua Peek Date: Wed, 3 Aug 2011 23:16:28 -0500 Subject: [PATCH 1/3] Add init command --- libexec/rbenv-init | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100755 libexec/rbenv-init diff --git a/libexec/rbenv-init b/libexec/rbenv-init new file mode 100755 index 00000000..e75595b3 --- /dev/null +++ b/libexec/rbenv-init @@ -0,0 +1,31 @@ +#!/usr/bin/env bash -e + +shell=$1 + +if [ -z "$shell" ]; then + shell=$(basename $SHELL) +fi + +abs_dirname() { + local cwd="$(pwd)" + local path="$1" + + while [ -n "$path" ]; do + cd "${path%/*}" + local name="${path##*/}" + path="$(readlink "$name" || true)" + done + + pwd + cd "$cwd" +} +root="$(abs_dirname "$0")/.." + +if [ -d "$HOME/.rbenv/shims" ]; then + rbenv-rehash + echo 'PATH="$HOME/.rbenv/shims:$PATH"' +fi + +if [ "$shell" = "bash" ]; then + echo "source $root/completions/rbenv.bash" +fi From 70e1f613371dbf178ac68b02e7fe5dab9b6d19e9 Mon Sep 17 00:00:00 2001 From: Joshua Peek Date: Wed, 3 Aug 2011 23:20:19 -0500 Subject: [PATCH 2/3] Quote path --- libexec/rbenv-init | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libexec/rbenv-init b/libexec/rbenv-init index e75595b3..0e0a36ec 100755 --- a/libexec/rbenv-init +++ b/libexec/rbenv-init @@ -27,5 +27,5 @@ if [ -d "$HOME/.rbenv/shims" ]; then fi if [ "$shell" = "bash" ]; then - echo "source $root/completions/rbenv.bash" + echo "source \"$root/completions/rbenv.bash\"" fi From 271bfea97d5ef3e56e7de0ae6b440bd5ef89d42e Mon Sep 17 00:00:00 2001 From: Joshua Peek Date: Wed, 3 Aug 2011 23:26:37 -0500 Subject: [PATCH 3/3] Don't rehash on init for now --- libexec/rbenv-init | 1 - 1 file changed, 1 deletion(-) diff --git a/libexec/rbenv-init b/libexec/rbenv-init index 0e0a36ec..06a2500e 100755 --- a/libexec/rbenv-init +++ b/libexec/rbenv-init @@ -22,7 +22,6 @@ abs_dirname() { root="$(abs_dirname "$0")/.." if [ -d "$HOME/.rbenv/shims" ]; then - rbenv-rehash echo 'PATH="$HOME/.rbenv/shims:$PATH"' fi