Ruby
Vim
homebrew
バージョンアップ
macOSSierra

MacのターミナルでRubyをバージョンアップする方法

Rubyのバージョンを変更しようとした際に引っかかったので記録します。

SPEC

macOS Sierra 10.12.6

macOSには最初からRubyがインストールされているので
現在のRubyのバージョンを確認

$ ruby -v
ruby 2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64-darwin16]

rbenvのインストール

今回はバージョンアップにHomebrewのrbenvを使用するため
はじめにrbenvをインストールして最新にアップグレードします。

$ brew update
$ brew install rbenv ruby-build
$ brew upgrade rbenv

rbenvのバージョンを確認

$ rbenv -v
rbenv 1.1.1

インストールできるRubyのバージョンを確認

$ rbenv install --list

バージョンを指定してRubyをインストール

$ rbenv install 2.3.1
$ rbenv global 2.3.1
$ gem install railties && rbenv rehash

インストールできているか確認

$ rbenv versions
  system
* 2.3.1 (set by /Users/ユーザー/.rbenv/version)

rbenvに2.3.1が入っているので、
再度Rubyのバージョンを確認

$ ruby -v
ruby 2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64-darwin16]

変わらず。

バージョンが変わらない場合

上記でバージョンが変わっていなければ
rubyの場所を確認してください

$ which ruby
/usr/bin/ruby

rbenvでRubyをバージョンアップする場合、
/Users/ユーザー/.rbenv/shims/ruby
を参照している必要があるので変更していきます。

$ rbenv init
# Load rbenv automatically by appending
# the following to ~/.bash_profile:

eval "$(rbenv init -)"

eval "$(rbenv init -)"をコピーして~/.bash_profileに追記します

$ vi ~/.bash_profile

・
・
・
Swap file "~/.bash_profile.swp" already exists!
[O]pen Read-Only, (E)dit anyway, (R)ecover, (D)elete it, (Q)uit, (A)bort: 

編集するので eキーをタイプ
vim画面に入ります。

vimについて

vim画面では「コマンドモード」と「挿入モード」があり、
最初はコマンドモードになっています。

編集するには挿入モードにする必要があるので
iキーかaキーを押すと、最下行に

-- INSERT --

と表示されます。これで挿入モードになっています。

先ほどコピーしたeval "$(rbenv init -)"を追記したら、
escキーを押してコマンドモードに戻ります。
:wqと入力してenterすると編集内容を保存して終了します。(カーソルが画面のどこにあっても大丈夫です。)

ちなみに、
保存せずに強制終了する場合は:q!と入力します。
もしless画面に入ってしまった場合はqで終了してください。

再度確認

元の画面に戻ったらまず変更を反映します。

$ source ~/.bash_profile

再度Rubyのバージョンを確認

$ ruby -v
ruby 2.3.1p112 (2016-04-26 revision 54768) [x86_64-darwin16]

指定バージョンに変更されました。