Currently you can't make a conditional custom segment. This changes the
prompt_custom function responsible for printing custom segments so that
it won't print the segment in case the content is empty.
With this it becomes possible to make conditional custom prompts simply
by making it not print anything when it's not supposed to be shown.
The segment relies on a lookaround to determine the currently
active conda environment.
If available ack is preferred, otherwise grep will be used.
Recent versions of grep offer `-P` to support perl-regex.
Older ones (e.g. those shipped on OSX) will fail.
This commit changes nvm prompt setup to return immediately if no node
version is installed/available.
Currently, prompt complains for lack of global node version.
Specifically, if you install nvm (from brew or manually) and do not have
global node installed (or set), then the prompt should not set or show
anything. This commit ensures this by immediately returning if
`nvm current` returns "none".
Prior to this, the rbenv prompt only showed something if the
$RBENV_VERSION environment variable was set. This was not a complete
solution because rbenv can be configured locally, per directory, with
dotfiles. When using dotfiles, the $RBENV_VERSION variables is not set.
This fixes the issue by taking the output of the `rbenv version-name`
command which shows the real rbenv version being used based on any of
the 4 ways to change rbenv as shown here:
https://github.com/rbenv/rbenv#choosing-the-ruby-version
If the current version of Ruby being used is the same as the global
Ruby, nothing is shown.
This commit also adds documentation to the README that describes the
prompt.
Fixes issue #215