Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
adam.huang
Oh My Zsh
Commits
20ecca2b
Commit
20ecca2b
authored
May 08, 2019
by
Thomas Kriechbaumer
Committed by
Marc Cornellà
May 08, 2019
Browse files
rbenv: improve rbenv loading based on pyenv (#7626)
parent
4cadbcd2
Changes
2
Show whitespace changes
Inline
Side-by-side
plugins/pyenv/pyenv.plugin.zsh
View file @
20ecca2b
...
...
@@ -38,4 +38,4 @@ else
}
fi
unset
FOUND_PYENV
dir
unset
FOUND_PYENV
pyenvdirs
dir
plugins/rbenv/rbenv.plugin.zsh
View file @
20ecca2b
_homebrew-installed
()
{
type
brew &> /dev/null
}
FOUND_RBENV
=
0
rbenvdirs
=(
"
$HOME
/.rbenv"
"/usr/local/rbenv"
"/opt/rbenv"
"/usr/local/opt/rbenv"
)
if
_homebrew-installed
&&
rbenv_homebrew_path
=
$(
brew
--prefix
rbenv 2>/dev/null
)
;
then
rbenvdirs
=(
$rbenv_homebrew_path
"
${
rbenvdirs
[@]
}
"
)
unset
rbenv_homebrew_path
if
[[
$RBENV_ROOT
=
''
]]
;
then
RBENV_ROOT
=
"
$HOME
/.rbenv"
# This plugin loads rbenv into the current shell and provides prompt info via
# the 'rbenv_prompt_info' function.
FOUND_RBENV
=
$+
commands[rbenv]
if
[[
$FOUND_RBENV
-ne
1
]]
;
then
rbenvdirs
=(
"
$HOME
/.rbenv"
"/usr/local/rbenv"
"/opt/rbenv"
"/usr/local/opt/rbenv"
)
for
dir
in
$rbenvdirs
;
do
if
[[
-d
$dir
/bin
]]
;
then
export
PATH
=
"
$dir
/bin:
$PATH
"
FOUND_RBENV
=
1
break
fi
done
fi
for
rbenvdir
in
"
${
rbenvdirs
[@]
}
"
;
do
if
[
-d
$rbenvdir
/bin
-a
$FOUND_RBENV
-eq
0
]
;
then
if
[[
$FOUND_RBENV
-ne
1
]]
;
then
if
((
$+
commands[brew]
))
&&
dir
=
$(
brew
--prefix
rbenv 2>/dev/null
)
;
then
if
[[
-d
$dir
/bin
]]
;
then
export
PATH
=
"
$dir
/bin:
$PATH
"
FOUND_RBENV
=
1
if
[[
$RBENV_ROOT
=
''
]]
;
then
RBENV_ROOT
=
$rbenvdir
fi
export
RBENV_ROOT
export
PATH
=
${
rbenvdir
}
/bin:
$PATH
fi
fi
if
[[
$FOUND_RBENV
-eq
1
]]
;
then
eval
"
$(
rbenv init
--no-rehash
- zsh
)
"
alias
rubies
=
"rbenv versions"
...
...
@@ -33,7 +37,7 @@ for rbenvdir in "${rbenvdirs[@]}" ; do
echo
"
$(
rbenv gemset active 2&>/dev/null |
sed
-e
":a"
-e
'$ s/\n/+/gp;N;b a'
|
head
-n1
)
"
}
function
gems
{
function
gems
()
{
local
rbenv_path
=
$(
rbenv prefix
)
gem list
$@
|
sed
-E
\
-e
"s/
\(
[0-9a-z,
\.
]+( .+)?
\)
/
$fg
[blue]&
$reset_color
/g"
\
...
...
@@ -49,12 +53,13 @@ for rbenvdir in "${rbenvdirs[@]}" ; do
echo
"
$(
current_ruby
)
"
fi
}
fi
done
unset
rbenvdir
if
[
$FOUND_RBENV
-eq
0
]
;
then
alias
rubies
=
'ruby -v'
function
gemsets
()
{
echo
'not supported'
}
else
alias
rubies
=
"ruby -v"
function
gemsets
()
{
echo
"not supported"
}
function
current_ruby
()
{
echo
"not supported"
}
function
current_gemset
()
{
echo
"not supported"
}
function
gems
()
{
echo
"not supported"
}
function
rbenv_prompt_info
()
{
echo
"system:
$(
ruby
-v
|
cut
-f-2
-d
' '
)
"
}
fi
unset
FOUND_RBENV rbenvdirs
dir
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment