`RBENV_ROOT` can be used to relocate where rbenv ends up storing the shims
and versions of Ruby it installs. Because of this split `RBENV_ROOT`
cannot be used to reliably construct a path to the rbenv binary itself.
Instead we now rely on `$RBENV_BIN_ROOT` pointing to the `bin/` directory
containing the rbenv binary/script.
If `$RBENV_BIN_ROOT` is not set we search `$PATH` first and then the
user's home directory making sure to prepend the necessary directories to
our `$PATH` depending on where we find rbenv.
Lastly we prepend to our `$PATH` the location rbenv's `shims/` so that we
can find the shims rbenv generates for us.
+ Add fish eval fix See #fish-shell/pull/1892
+ New and improved output system with colors, etc.
+ Support for multiple non-nested describe blocks.
+ Remove spec.log and favor `msg` plugin and standard echo.
+ `spec.eval` no longer evaluates multiple functions, acting now as a simplified
router between the view `spec.view` and the controller `spec.run`.
+ Add new `spec.view` to act as a hub for all test output.
+ Add report with passed/failed tests to `spec.view`
+ Now test descriptions are used directly from the function name. Description
fields are now optional.
+ Add documentation and examples.
+ Add new functions to interact with the framework:
+ spec.eval - eval a function by name and echo its description field
+ spec.functions - prints functions currently in scope that match the key glob
+ spec.log - log a message / test result
+ spec.run - run suite of tests
+ Rename list.erase to erase.
+ Print messages with style and color easily. Supported styles below:
_text_ Bold
__text__ Underline
___text___ Bold and Underline
`$variable` Apply @<styles> to $variables
/directory/ Directories
[url] Links
\n Line Break
\t Tab Space
+ Recognizes 256 different color names and special @random @light @dark @error and @success labels.
+ Included also is `msg.ask` to print a message with `msg` and wait for y/n input. Returns true on y\*.
adding local variable flag and setting the variable if java home isn't
taken care of in the first if check.
For some reason there were different tab widths for this bottom
section, unifying to what the top was at -- 2 spaces.