mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2026-01-02 02:19:06 +01:00
Base rbenv plugin on the rbenv in the path.
Rather than do our own searching, this gives the user full control of the PATH variable and of the search order for rbenv. It's also probably faster, since we let zsh do the searching for us.
This commit is contained in:
parent
1120f97305
commit
34bebc1ec5
1 changed files with 27 additions and 34 deletions
|
|
@ -1,43 +1,36 @@
|
||||||
FOUND_RBENV=0
|
if [[ $+commands[rbenv] -eq 1 ]] ; then
|
||||||
for rbenvdir in "$HOME/.rbenv" "/usr/local/rbenv" "/opt/rbenv" ; do
|
|
||||||
if [ -d $rbenvdir/bin -a $FOUND_RBENV -eq 0 ] ; then
|
|
||||||
FOUND_RBENV=1
|
|
||||||
export RBENV_ROOT=$rbenvdir
|
|
||||||
export PATH=${rbenvdir}/bin:$PATH
|
|
||||||
eval "$(rbenv init -)"
|
|
||||||
|
|
||||||
alias rubies="rbenv versions"
|
eval "$(rbenv init -)"
|
||||||
alias gemsets="rbenv gemset list"
|
|
||||||
|
|
||||||
function current_ruby() {
|
alias rubies="rbenv versions"
|
||||||
echo "$(rbenv version-name)"
|
alias gemsets="rbenv gemset list"
|
||||||
}
|
|
||||||
|
|
||||||
function current_gemset() {
|
function current_ruby() {
|
||||||
echo "$(rbenv gemset active 2&>/dev/null | sed -e ":a" -e '$ s/\n/+/gp;N;b a' | head -n1)"
|
echo "$(rbenv version-name)"
|
||||||
}
|
}
|
||||||
|
|
||||||
function gems {
|
function current_gemset() {
|
||||||
local rbenv_path=$(rbenv prefix)
|
echo "$(rbenv gemset active 2&>/dev/null | sed -e ":a" -e '$ s/\n/+/gp;N;b a' | head -n1)"
|
||||||
gem list $@ | sed \
|
}
|
||||||
-Ee "s/\([0-9\.]+( .+)?\)/$fg[blue]&$reset_color/g" \
|
|
||||||
-Ee "s|$(echo $rbenv_path)|$fg[magenta]\$rbenv_path$reset_color|g" \
|
|
||||||
-Ee "s/$current_ruby@global/$fg[yellow]&$reset_color/g" \
|
|
||||||
-Ee "s/$current_ruby$current_gemset$/$fg[green]&$reset_color/g"
|
|
||||||
}
|
|
||||||
|
|
||||||
function rbenv_prompt_info() {
|
function gems {
|
||||||
if [[ -n $(current_gemset) ]] ; then
|
local rbenv_path=$(rbenv prefix)
|
||||||
echo "$(current_ruby)@$(current_gemset)"
|
gem list $@ | sed \
|
||||||
else
|
-Ee "s/\([0-9\.]+( .+)?\)/$fg[blue]&$reset_color/g" \
|
||||||
echo "$(current_ruby)"
|
-Ee "s|$(echo $rbenv_path)|$fg[magenta]\$rbenv_path$reset_color|g" \
|
||||||
fi
|
-Ee "s/$current_ruby@global/$fg[yellow]&$reset_color/g" \
|
||||||
}
|
-Ee "s/$current_ruby$current_gemset$/$fg[green]&$reset_color/g"
|
||||||
fi
|
}
|
||||||
done
|
|
||||||
unset rbenvdir
|
|
||||||
|
|
||||||
if [ $FOUND_RBENV -eq 0 ] ; then
|
function rbenv_prompt_info() {
|
||||||
|
if [[ -n $(current_gemset) ]] ; then
|
||||||
|
echo "$(current_ruby)@$(current_gemset)"
|
||||||
|
else
|
||||||
|
echo "$(current_ruby)"
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
else
|
||||||
alias rubies='ruby -v'
|
alias rubies='ruby -v'
|
||||||
function gemsets() { echo 'not supported' }
|
function gemsets() { echo 'not supported' }
|
||||||
function rbenv_prompt_info() { echo "system: $(ruby -v | cut -f-2 -d ' ')" }
|
function rbenv_prompt_info() { echo "system: $(ruby -v | cut -f-2 -d ' ')" }
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue