Skip to content

Instantly share code, notes, and snippets.

@icm7216
Last active August 14, 2019 23:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save icm7216/66681d1b08994e563d5de33083943697 to your computer and use it in GitHub Desktop.
Save icm7216/66681d1b08994e563d5de33083943697 to your computer and use it in GitHub Desktop.

RubyInstallerのridk useコマンドメモ (for Windows)

RubyInstaller 2.6.0-1 からridk useコマンドが実装されました。まだ試験的な段階のようですが Windows 環境で複数バージョンの Ruby を簡単に切り替えて使用できるようになります。

ridk use help

ridk useコマンドは幾つかのサブコマンドを持っています、この HELP コマンドもその中のひとつです。

>ridk use help
Usage:
    ridk use [<option>]

Option:
                  Start interactive version selection
    list          Search and list installed ruby versions
    update        Save or update the found ruby versions to rubies.yml
    <number>      Change the active ruby version by index
    /<regex>/     Change the active ruby version by regex
    help          Display this help and exit

ridk use list

切り替え可能なインストール済みの Ruby のリストを表示するコマンドです。

通常この情報はレジストリから取得されますが、既に設定ファイルを作成済みであればrubies.ymlから情報を取得します。

>ridk use list
1 - C:/Ruby24-x64       ruby 2.4.5p335 (2018-10-18 revision 65137) [x64-mingw32]
2 - C:/Ruby25-x64       ruby 2.5.3p105 (2018-10-18 revision 65156) [x64-mingw32]
3 - C:/Ruby26-x64       ruby 2.6.1p33 (2019-01-30 revision 66950) [x64-mingw32]

ridk use update

Rubyリストの設定ファイルrubies.ymlを作成、または更新するコマンドです。

このコマンドは RubyInstaller のインストール情報を元に切り替え対象の Ruby のリストを Windows のレジストリから取得し、Ruby PATH の設定ファイルとしてrubies.ymlに保存します。 初期状態ではこのファイルは存在せず、ridk use updateコマンドの実行によって作成されます。

>ridk use update
Update C:/Ruby26-x64/ridk_use/rubies.yml

rubies.ymlを確認。

>type C:\Ruby26-x64\ridk_use\rubies.yml
---
- C:/Ruby24-x64
- C:/Ruby25-x64
- C:/Ruby26-x64

rubies.ymlを編集することで Ruby リストの表示項目を制限することも可能のようです。

例えば- C:/Ruby24-x64の行を削除すれば、Ruby リストの表示から除外されます。ridk useコマンドを実行すると選択リストから削除されたことがわかります。

>ridk use list
1 - C:/Ruby25-x64       ruby 2.5.3p105 (2018-10-18 revision 65156) [x64-mingw32]
2 - C:/Ruby26-x64       ruby 2.6.1p33 (2019-01-30 revision 66950) [x64-mingw32]

このような使い方は、選択項目をシンプルにしたい場合などに使用できるかもしれません。

あまり良い方法ではありませんが、インストーラを使用せずに(PCの引っ越しなどで)ディレクトリを丸ごとコピーした Rubyの場合などは、対象の Ruby パスをrubies.ymlに追記すれば選択リストに加えることもできます。

ridk use <number>

指定した Ruby バージョンに切り替えます。

ridk useコマンドは切り替え対象の Ruby のリストをレジストリから取得しますが、rubies.ymlがあればこのファイルを優先します。

<number>は省略可能です。その場合は表示されたリストから選択します。

>ridk use
1 - C:/Ruby24-x64       ruby 2.4.5p335 (2018-10-18 revision 65137) [x64-mingw32]
2 - C:/Ruby25-x64       ruby 2.5.3p105 (2018-10-18 revision 65156) [x64-mingw32]
3 - C:/Ruby26-x64       ruby 2.6.1p33 (2019-01-30 revision 66950) [x64-mingw32]
Select ruby version to enable: 2
Disable C:/Ruby26-x64
Enable C:/Ruby25-x64

リストの選択番号を、直接指定して切り替えることも可能です。

>ridk use 3
Disable C:/Ruby25-x64
Disable C:/Ruby26-x64

ridk use /regex/

指定した正規表現文字列がインストールパス名にマッチする Ruby に切り替えます。

>ridk use /24-/
Disable C:/Ruby26-x64
Enable C:/Ruby24-x64

例えば、x64 Ruby-2.4 の場合のインストールパスはC:/Ruby24-x64なので、次のように指定できます。

ridk use /24-/

x86 Ruby-2.4 の場合のインストールパスはC:/Ruby24なので、次のように指定できます。

ridk use /24$/

まとめ

RubyInstaller 2.6.0-1 から実装されたridk useコマンドによって、Windows 環境の複数の Ruby バージョンを簡単に切り替え使用できるようになりました。 今のところは環境変数 PATH を書き換えるだけのシンプルな機能ですが、今後の進化に期待できそうです。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment