36 lines
1.3 KiB
Markdown
36 lines
1.3 KiB
Markdown
+++
|
|
date = "2010-04-25"
|
|
title = "Ruby version and gemset in your Bash prompt? Yes sir!"
|
|
tags = ["Ruby", "BASH", "rvm", "gemset", "profile"]
|
|
slug = "ruby-version-and-gemset-in-your-bash-prompt-yes-sir"
|
|
+++
|
|
RVM is an easy way to switch between different ruby implementations and gemsets. If you don't know about it, [go check it out][1]. If you do know about, you'll know how annoying it is never to know which ruby version and gemset you're currently using. Here is a nice `.profile` hack that shows your current ruby version and optional gemset in your prompt.
|
|
|
|
[1]: http://rvm.beginrescueend.com/
|
|
~
|
|
Firstly, add the following function to your `~/.profile`:
|
|
|
|
function rvm_version {
|
|
local gemset=$(echo $GEM_HOME | awk -F'@' '{print $2}')
|
|
[ "$gemset" != "" ] && gemset="@$gemset"
|
|
local version=$(echo $MY_RUBY_HOME | awk -F'-' '{print $2}')
|
|
[ "$version" != "" ] && version="@$version"
|
|
local full="$version$gemset"
|
|
[ "$full" != "" ] && echo "$full "
|
|
}
|
|
|
|
Next, you can use this function in your prompt. Like this:
|
|
|
|
export PS1="\$(rvm_version) \w \$(parse_git_branch) \$ "
|
|
|
|
The results? For standard ruby 1.8.7
|
|
|
|
@1.8.7 ~ $
|
|
|
|
Or with the `rails3` gemset enabled:
|
|
|
|
@1.8.7@rails3 ~ $
|
|
|
|
So, now you always know which ruby you're using! Happy coding!
|
|
|