|
@@ -0,0 +1,42 @@
|
|
|
+# Enables rbfu with --auto option, if available.
|
|
|
+#
|
|
|
+# Also provides a command to list all installed/available
|
|
|
+# rubies. To ensure compatibility with themes, creates the
|
|
|
+# rvm_prompt_info function to return the $RBFU_RUBY_VERSION
|
|
|
+# version.
|
|
|
+
|
|
|
+command -v rbfu &>/dev/null
|
|
|
+
|
|
|
+if [[ $? -eq 0 ]]; then
|
|
|
+ eval "$(rbfu --init --auto)"
|
|
|
+
|
|
|
+ # Internal: Print ruby version details, if it's currently
|
|
|
+ # active etc.
|
|
|
+ function _rbfu_rubies_print() {
|
|
|
+ local rb rb_out
|
|
|
+ rb=$(basename $1)
|
|
|
+ rb_out="$rb"
|
|
|
+ [[ -h $1 ]] && rb_out="$rb_out${fg[green]}@${reset_color}"
|
|
|
+ [[ "x$rb" == "x$2" ]] && rb_out="${fg[red]}$rb_out ${fg[red]}*${reset_color}"
|
|
|
+ echo $rb_out
|
|
|
+ }
|
|
|
+
|
|
|
+ # Public: Provide a list with all available rubies, this basically depends
|
|
|
+ # on `ls -1` and .rfbu/rubies. Highlights the currently active ruby version
|
|
|
+ # and aliases.
|
|
|
+ function rbfu-rubies() {
|
|
|
+ local rbfu_dir active_rb
|
|
|
+ rbfu_dir=$RBFU_RUBIES
|
|
|
+ active_rb=$RBFU_RUBY_VERSION
|
|
|
+ [[ -z "$rbfu_dir" ]] && rbfu_dir="${HOME}/.rbfu/rubies"
|
|
|
+ [[ -z "$active_rb" ]] && active_rb="system"
|
|
|
+ _rbfu_rubies_print "${rbfu_dir}/system" $active_rb
|
|
|
+ for rb in $(ls -1 $rbfu_dir); do
|
|
|
+ _rbfu_rubies_print "${rbfu_dir}/${rb}" $active_rb
|
|
|
+ done
|
|
|
+ }
|
|
|
+
|
|
|
+ # Public: Create rvm_prompt_info command for themes compatibility, unless
|
|
|
+ # it has already been defined.
|
|
|
+ [ ! -x rvm_prompt_info ] && function rvm_prompt_info() { echo "${RBFU_RUBY_VERSION:=system}" }
|
|
|
+fi
|