40 lines
1.3 KiB
Markdown
40 lines
1.3 KiB
Markdown
---
|
|
title: "Ruby version and gemset in your Bash prompt? Yes sir!"
|
|
kind: article
|
|
slug: ruby-version-and-gemset-in-your-bash-prompt-yes-sir
|
|
created_at: 2010-04-25
|
|
tags:
|
|
- Ruby
|
|
- BASH
|
|
- rvm
|
|
- gemset
|
|
- profile
|
|
---
|
|
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! |