Mislav Marohnić
d0779fc8fb
Expand literal tilde in PATH
...
The literal tilde in a PATH entry (e.g. `~/.rbenv/shims`) doesn't seem
to be supported by system `which` utility, but *does* seem to be
supported by `command -v` (used in `rbenv-which`) and `type -p`.
Therefore, we must strip away `~/.rbenv/shims` from PATH when looking up
executables for system Ruby, lest we risk infinite loop. We do so by
substituting any occurence of `~` in PATH with the value of `HOME`.
2016-09-09 10:29:12 +02:00
Kohei Suzuki
3c7a13d81f
Remove leading :
2015-12-12 15:28:34 +09:00
Mislav Marohnić
3405c4d03c
Fix error message when command is not found for "system" version
...
If `foo` didn't exist and `RBENV_VERSION=system rbenv which foo` was
called, the error message used to be misleading:
rbenv: version `system' is not installed
Instead, have the error message simply say that the command was not found.
Fixes #770
2015-11-13 23:10:09 -05:00
Daniel Hahler
e3982fae38
Display version origin with non-installed versions
...
This is useful as an indicator where it is coming from.
2015-07-17 17:10:33 +02:00
Mislav Marohnić
e851250da6
Speed up obtaining exec/which/whence
completions
...
Delegate to `rbenv-shims` instead of `rbenv shims` and therefore skip
going through the main `rbenv` executable again that would set up a lot
of the environment that was already set.
2014-10-15 01:24:45 +02:00
Mislav Marohnić
3ee395f9b5
Clean up PATH sanitization in rbenv-which
2014-10-13 12:27:19 +02:00
Daniel Hahler
e4cbf04592
Improve performance of rbenv-which when RBENV_VERSION=system
...
This implements removing of the shims path element via bash
substitution, instead of jumping around in all the `$PATH` elements.
2014-10-13 12:26:43 +02:00
Mislav Marohnić
6bb7f07d2d
Avoid rbenv-exec
calling out to rbenv-version-name
twice
...
Running any shim (and thus `rbenv-exec`) would always execute
`rbenv-version-name` twice: once in `rbenv-exec` and another time in
`rbenv-which`, even though RBENV_VERSION variable would have already
been populated at this point.
Now RBENV_VERSION is respected within `rbenv-which`.
2014-10-13 12:26:43 +02:00
Ian Yang
6ca591ab75
restore original IFS for hooks
2013-04-16 14:01:43 +02:00
Mislav Marohnić
baf7656d2f
fix iterating through paths that have spaces in them
...
Fixes #344 , #196
2013-04-01 01:04:19 +02:00
Sam Stephenson
e56885f4c9
"binary" -> "executable"
2013-01-03 10:06:12 -06:00
Mislav Marohnić
3436bddaea
new-style documentation for most commands
2012-12-29 23:34:53 +01:00
Sam Stephenson
e2e474c59d
Add rbenv help --usage
2012-12-29 12:12:47 -06:00
Sam Stephenson
4c19dc22d7
Improve syntax for inline documentation and allow for multi-line usage
2012-12-29 12:06:20 -06:00
Mislav Marohnić
b8715bfee6
foundation for a help system where each command holds its own docs
...
Docs are comprised from "Usage", "Summary" and "Help" sections, where
"Help" can span multiple commented lines. If it is missing, "Summary" is
shown in its place.
References #204 , references #206
2012-12-13 05:48:28 +01:00
Roy Liu
99551dd1ec
fix rbenv-which with system ruby
...
Don't have `command -v` abort the whole script prematurely.
2012-12-13 01:00:24 +01:00
Sam Stephenson
5d0a6630b9
Account for path entries with spaces in remove_from_path
2011-12-30 13:40:22 -06:00
Sam Stephenson
f9fb3c934e
rbenv-plugin-scripts -> rbenv-hooks; RBENV_PLUGIN_PATH -> RBENV_HOOK_PATH
2011-09-23 10:43:06 -05:00
Sam Stephenson
699cd8c203
Quote script path and remove unnecessary semicolon
2011-09-21 13:05:08 -05:00
Joshua Peek
96b98ed039
Use plugin-scripts
2011-09-21 12:38:58 -05:00
Sam Stephenson
465a1472ba
Completion for which
2011-09-13 13:02:55 -05:00
Sam Stephenson
3644840d4b
Show usage for rbenv which
without an argument
2011-09-13 13:01:31 -05:00
Sam Stephenson
0632325a43
Set RBENV_DEBUG=1 to see what's going on under the hood
2011-09-12 10:11:59 -05:00
Sam Stephenson
7ac964353f
RBENV_HOME -> RBENV_ROOT
2011-09-11 11:58:57 -05:00
Sam Stephenson
c6ce8fafd8
Merge remote-tracking branch 'alexrinass/systemwide'
2011-09-11 11:28:54 -05:00
Eric Lindvall
b81b64453b
Deal with an empty result from expand_path
2011-09-09 15:00:59 -07:00
Alexander Rinass
5130f0464a
Support install locations other than $HOME/.rbenv.
...
Define RBENV_HOME env variable in libexec/rbenv and let all script delegates use this variable to determine rbenv's install location.
2011-08-25 09:28:01 +02:00
Sam Stephenson
3efdf6a243
Guard against nonexistent entries in $PATH
2011-08-14 14:16:26 -05:00
Andreas Johansson
6938692ca2
Fix argument that cannot be sent to bash via env
...
/usr/bin/env seems to have problems with arguments to bash on some
platforms. To bypass this, use set -e instead.
2011-08-12 11:33:45 +02:00
Ryan Baumann
bd0e1a73f9
Split rbenv-version into rbenv-version-name and rbenv-version-origin, update versions, prefix, and which appropriately
2011-08-09 16:41:35 -04:00
Sam Stephenson
7ce04a6e03
Merge branch 'system'
2011-08-03 22:29:57 -05:00
Jamis Buck
5d8c40444d
iterate over all matching plugins, not just the first
2011-08-03 20:55:03 -06:00
Jamis Buck
b6ebc2f08b
look for plugins to extend rehash and which
2011-08-03 11:17:28 -06:00
Sam Stephenson
e0e2d93639
Add support for RBENV_VERSION=system
2011-08-03 08:39:56 -05:00
Sam Stephenson
a62bd23ba2
Show which versions of Ruby have a command installed when rbenv-which fails
2011-08-02 23:53:23 -05:00
Joshua Peek
d65141c7b5
Merge branch 'master' into libexec
...
Conflicts:
bin/rbenv
libexec/rbenv-shim
2011-08-02 19:41:03 -05:00
Joshua Peek
43624943ee
Move subcommands into libexec/
2011-08-02 18:01:46 -05:00