[Fix #259] Add ruby-info function
This commit is contained in:
parent
eceef765b7
commit
e5a9bdc4b4
@ -56,6 +56,24 @@ Aliases
|
|||||||
- `rbbp` packages gem files into *vendor/cache*.
|
- `rbbp` packages gem files into *vendor/cache*.
|
||||||
- `rbbu` updates gems to their latest version.
|
- `rbbu` updates gems to their latest version.
|
||||||
|
|
||||||
|
Functions
|
||||||
|
---------
|
||||||
|
|
||||||
|
- `ruby-info` exposes information about the Ruby environment via the
|
||||||
|
`$ruby_info` associative array.
|
||||||
|
|
||||||
|
Theming
|
||||||
|
-------
|
||||||
|
|
||||||
|
To display the name of the current Ruby version in a prompt, define the
|
||||||
|
following style in the `prompt_theme_setup` function.
|
||||||
|
|
||||||
|
# %v - ruby version.
|
||||||
|
zstyle ':prezto:module:ruby' version 'version:%v'
|
||||||
|
|
||||||
|
Then add `$ruby_info[version]` to `$PROMPT` or `$RPROMPT` and call
|
||||||
|
`ruby-info` in the `prompt_theme_preexec` hook function.
|
||||||
|
|
||||||
Authors
|
Authors
|
||||||
-------
|
-------
|
||||||
|
|
||||||
|
28
modules/ruby/functions/ruby-info
Normal file
28
modules/ruby/functions/ruby-info
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
#
|
||||||
|
# Displays Ruby information.
|
||||||
|
#
|
||||||
|
# Authors:
|
||||||
|
# Sorin Ionescu <sorin.ionescu@gmail.com>
|
||||||
|
#
|
||||||
|
|
||||||
|
local version
|
||||||
|
local version_format
|
||||||
|
local version_formatted
|
||||||
|
|
||||||
|
# Clean up previous $ruby_info.
|
||||||
|
unset ruby_info
|
||||||
|
typeset -gA ruby_info
|
||||||
|
|
||||||
|
if (( $+commands[rvm-prompt] )); then
|
||||||
|
version="$(rvm-prompt)"
|
||||||
|
elif (( $+commands[rbenv] )); then
|
||||||
|
version="$(rbenv version-name)"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Format version.
|
||||||
|
if [[ -n "$version" ]]; then
|
||||||
|
zstyle -s ':prezto:module:ruby' version 'version_format'
|
||||||
|
zformat -f version_formatted "$version_format" "v:$version"
|
||||||
|
ruby_info[version]="$version_formatted"
|
||||||
|
fi
|
||||||
|
|
Reference in New Issue
Block a user