✅ はじめに
本投稿では、VSCodeでRubyのコードジャンプを提供してくれる拡張機能の導入方法を解説してます。
対象者
- VSCodeでRubyの開発を行っていて、JSなどと同様にコードジャンプしたい方
- 拡張機能をインストールしたものの、期待通りにコードジャンプが動作しなかった方
✅ 拡張機能
Rubyのコードジャンプを提供してくれる拡張機能として、ダウンロード数の多い以下の2つを導入して、軽く動作確認しました。
- Ruby Solargraph
- Ruby LSP
現時点の感想
現時点でコードジャンプ用途であれば、Ruby Solargraphのほうが使いやすいと感じた。
| 拡張機能 | 現時点の感想 |
|---|---|
| Ruby Solargraph | クラス、メソッドいずれもジャンプできた。コードジャンプ用途ならこちらのほうが使いやすいと感じた。 |
| Ruby LSP | コードジャンプできる箇所が限られており、やや不便と感じた。(インスタンス化したクラスのメソッド呼び出しから、定義元クラスの先頭にしかジャンプできなかった) コードジャンプの動作を確認していたところ、コメントに日本語が含まれている場合に、それまで動作していたコードジャンプが動作しなくなることがあった。 |
✅ Ruby Solargraph
インストール
VSCodeの拡張機能マーケットプレイスからインストールします。
準備
拡張機能をインストールしただけではコードジャンプが動作せず、solargraphをインストールする必要があります。
$ gem install solargraph
起動
VSCodeでRubyのプロジェクトを開くと、cmd + クリックでコードジャンプができるようになってます。
※ solargraphをインストールした直後は、プロジェクトの開き直しが必要でした。
感想
クラス、メソッドいずれもジャンプできた。コードジャンプ用途ならこちらのほうが使いやすいと感じた。
✅ Ruby LSP
インストール
VSCodeの拡張機能マーケットプレイスからインストールします。
Ruby LSP単体でもインストールできますが、Rubyをインストールすると合わせてRuby LSPもインストールされます。
準備
拡張機能をインストールしただけではコードジャンプが動作せず、ruby-lspをインストールする必要があります。
VSCodeで開いてるディレクトリにlockファイルが存在してない場合、lockファイルを作成します。
# Gemfileを作成する
$ bundle init
# Gemfile.lockを作成する
$ bundle install
VSCodeで開いてるディレクトリにlockファイルが存在してる場合は、.ruby-lspディレクトリが作成されるので、その配下でbundle installします。
# .ruby-lspディレクトリに移動
$ cd .ruby-lsp
# インストール
$ bundle install
起動
Ruby LSPの起動状態はVSCode下部で確認できます。
Ruby LSPが起動してない場合は、コマンドパレット(cmd + shift + P)からRuby LSP: Startコマンドを実行します。
Ruby LSPが起動してると、cmd + クリックでコードジャンプができるようになります。
感想
コードジャンプできる箇所が限られており、やや不便と感じた。(インスタンス化したクラスのメソッド呼び出しから、定義元クラスの先頭にしかジャンプできなかった)
コードジャンプの動作を確認していたところ、コメントに日本語が含まれている場合に、それまで動作していたコードジャンプが動作しなくなることがあった。






