📕

RubyMineの設定・キーマップ・便利機能

2025/02/17に公開

なにこれ

2024年までReact + Golangの開発でVS Codeを使っていましたが、
2025年からRubyを使うようになり、VS Codeに辛さを感じてRubyMineに移行しました。

「これからRubyMine使おう!」と思っている方に向けて、RubyMineの機能・設定・プラグイン・ショートカットの概要と一個人の設定例をご紹介します。

前提(この記事のコンテキスト)

(1) 記事を見ている方にとって、記載情報が古い可能性もあるので、環境情報を以下に示します。

バージョン情報
RubyMineのバージョンは2024.3.2.1です。
プラグインのバージョンは以下です。
socrates.tabshifter (0.36)
Key Promoter X (2024.2.2)
vlascik.plugins.tabdir-redux (2.0.5)
com.thvardhan.gradianto (5.5)
com.intellij.plugins.vscodekeymap (243.21565.122)
indent-rainbow.indent-rainbow (2.2.0)
HighlightBracketPair (1.5.3)
uk.co.ben-gibson.remote.repository.mapper (4.5.2)
zielu.gittoolbox (600.0.14+243)
io.kanro.idea.plugin.protobuf (2.0.2)

(2) キーマップの設定がVS Code(macOS)ベースです。

参考にしたサイト

RubyMine 使いこなしRubyMine shortcutなどと検索すると出てくる記事をGoogle検索結果の1ページ分程度読みました。ただし出てくる記事が古めなのでRubyMine plugin awsome 2024のようなググり方もしました。

(1)〜(3)で概要は掴めると思います。

設定

キーマップとプラグイン以外でデフォルトから変更した設定を示します。

  • メモリを増やす
    • ヘルプ > メモリ設定を変更にて 4096 に設定
      ※デフォルトだと少ないので増やしました
  • ベースキーマップを設定する
    • VS Code(macOS)に設定
  • テーマ
    • Gradianto ※プラグインをインストールして設定
      ※完全に好みです。
  • フォントを設定する
    • yuru7/PlemolJPをインストールして設定
      ※デフォルトのフォントは日本語等幅ではないので変更しました
  • 保存時の自動フォーマットを設定する
    • ツール > RuboCop > 「rubocop -aを保存時に実行」にチェックを入れる
      ※コマンド実行の手間省略のためです
  • 余計なインスペクションをオフにする
    • エディター > インスペクション にて Ruby配下は、 genとgen管理 > RuboCop以外のチェックを外す
  • git差分を見やすくする
    • バージョン管理 > 確認 > 変更 > 「プロジェクトツリー内の変更ファイルを含むディレクトリをハイライトする」にチェックを入れる
      ※これも好みだと思います
  • ファイル末尾の改行を忘れないようにする
    • エディタ > 一般 > 保存時 > 「ファイル末尾に改行を挿入する」 にチェック
  • ブランチ名は 接頭辞でグループ化 をオフ
    • 画面上部ナビゲーションバー右上のブランチ名をタップ > 歯車アイコン > 「接頭辞でグループ化」のチェックを外す

プラグイン

導入したプラグイン

  • HighlightBracketPair
    • カーソルがある箇所を囲んでいるカッコをハイライト表示する
  • Key Promoter X
    • ショートカットキーが存在する操作をマウス等から実行した際に操作内容をショートカットキーとともに記録する
  • GitLink
    • エディタのコードをブラウザのGitHubで表示してくれます
  • GitToolBox
    • Git連携の機能を強化する
      ※カーソル行末にGitの履歴を表示したいので入れました
  • Indent Rainbow
    • インデントをレインボーにする
      ※VS Codeでも入れていたので入れました
  • Tabdir Redux
    • 同じファイル名が存在する場合にディレクトリ名を表示してくれる
  • Tab Shifter
    • RubyMineのデフォルトでエディタ分割はできますが、ファイルを隣の分割領域に移動させることができません。このプラグインではそれができます。
  • Protobuf
    • Protobufサポート
  • InlineError
    • 行頭にエラーアイコンを表示し、行末にエラー内容を表示してくれます。

VS CodeのCode Spell Checkerのような機能は標準で搭載されているようです。

一部プラグインを無効化

自分の開発では使わなさそうなプラグインは無効化しました。

導入を見送ったプラグイン

参考記事でお勧めされたプラグインで一部導入しなかったものがあります。

  • Rainbow brackets
    • インストールして、なぜかレインボーにならなかったのでアンインストールしました。
      HighlightBracketPairでなんとかなる気がします。
  • Jump to Line
    • 入れなくても標準で類似機能があります。

キーマップ

RubyMineのVS Code(macOS)のキーマップの初期値に対して以下変更を加えています。

  • 追加:テスト⇔テスト対象の移動切り替え
    • ⌃ + ⇧ + C
    • ※重複する「クリップボードにDDLを生成」は除去
  • 変更:次の分割(パネル)へ移動
    • ⌥ + Tabから⌃ + ⌥ + →に変更
    • ※Tab移動の⌘ + ⌥ + →と統一感を持たせるため
  • 変更:Tab Shifterプラグイン
    • 以下以外のキーマップを削除(使わないので)
    • Shift Left(ファイルを次パネルに移動)に⌥ + ⌃ + ←を割り当て
    • Shift Right(ファイルを前パネルに移動)に⌥ + ⌃ + →を割り当て
  • 追加:移動 > クラスに移動
    • ⌘ + O
    • 重複する「ファイルを開く」を削除
  • 変更:戻る・進む
    • 戻る:^ + -⌃ + J
    • 進む:^ + ⇧ + -⌃ + L
    • ※高頻度で使うので、もう少し簡単な入力にしたかったため変更しました
    • ※重複するキーマップは除去
  • 変更:フォントサイズの縮小・拡大
    • ⌘ + =(拡大)・⌘ + -(縮小)を「ファイルごと」から{すべてのエディター」に割当変更
    • ※自分はファイルごとのフォントサイズ変更をあまりやらないので
  • 追加:履歴からペースト
    • ⌃ + ⇧ + V
    • ※自分が使っているClippyのショートカットと被らないように設定しました。Clippyだとプレビューが1行のみで、コードの塊だったりするとどれがどれだかわかりませんが、RubyMineの本機能は複数行プレビューしてくれるので使いやすいかなと思い、キーマップを設定しています。
  • 変更:スクロール
    • 上へ:⌘ + ↑ ※追加
    • 下へ:⌘ + ↓ ※追加
    • 最上へ:⌘ + ↑ を削除
    • 最下へ:⌘ + ↓ を削除
  • 追加:ハイライトされた使用箇所
    • 次へ:⌘ + ⇧ + ↓
    • 前へ:⌘ + ⇧ + ↑
  • 変更:ターミナル開閉
    • ⌘ + J

便利な操作とキーマップ

RubyMineの操作ごとに、キーマップ・RubyMineの便利機能を示します。

凡例
🟠・・・ベースキーマップであるVS Code(macOS)から追加・変更しているキーマップ
👍👍👍・・・結構便利だと思っている操作

全体の移動 👍👍👍

  • 左部(プロジェクト)の開閉
    • ⌘ + ⇧ + E
  • 下部(ターミナル)の開閉
    • ⌘ + J 🟠
  • エディタに移動
    • Esc

左部(プロジェクト)

  • ファイル新規作成
    • ⌘ + N
  • ファイル削除
    • delete
  • ファイル名変更
    • F2
  • プロジェクトのスクロール位置を、編集中ファイルの場所に移動する
    • ⌘ + K, E

検索

  • 検索タブ群
    • 何でも検索
      • ⇧, ⇧ ※連打
    • ファイル検索
      • ⌘ + P
    • クラス検索
      • ⌘ + O 🟠
    • アクション検索
      • ⌘ + ⇧ + P
    • 上記のタブ間移動
      • 右へ:Tab
      • 左へ:⇧ + Tab
  • 全文検索
    • ⌘ + ⇧ + N
  • 何でも実行
    • ⌃, ⌃ ※連打

パネル(エディタ分割)操作 👍👍👍

  • カーソルを次パネルへ移動
    • ⌥ + Tab
  • ファイルを別パネルへ移動(エディタを分割)
    • 右へ:⌃ + ⌥ + → 🟠
    • 左へ:⌃ + ⌥ + ← 🟠
    • 上へ:⌃ + ⌥ + ↑ 🟠
    • 下へ:⌃ + ⌥ + ↓ 🟠

タブ操作

  • タブを閉じる
    • ⌘ + W
  • その他すべてのタグを閉じる
    • ⌘ + K, U
  • 閉じたタブを再度開く
    • ⌘ + ⇧ + T
  • 最近開いたファイルを開く
    • ⌘ + E
  • タブ移動
    • ⌥ + ⌘ + →
    • ⌥ + ⌘ + ←

処理を追う操作  👍👍👍

  • 宣言または使用箇所へ移動
    • F12
  • 実装箇所へ移動
    • ⌘ + F12
  • 戻る(カーソル履歴)
    • ⌃ + J 🟠
  • 進む(カーソル履歴)
    • ⌃ + L 🟠
  • ナビゲーションバーに移動
    • ⌘ + ⇧ + ;
    • パンくずを柔軟に移動できて便利

ファイル内の操作

  • 次のメソッドへ移動
    • ⌃ + ⇧ + ↑
    • ⌃ + ⇧ + ↓
  • 変数・メソッドの参照元に移動 👍👍👍
    • 次へ(下へ):⌘ + ⇧ + ↓ 🟠
    • 前へ(上へ):⌘ + ⇧ + ↑ 🟠
    • ※選択せずともカーソルがあるだけで実行できるので便利
  • 括弧に移動(始端 ↔ 終端の移動切り替え)
    • ⌘ + ⇧ + \
  • ファイル内検索
    • ⌘ + F
    • 次の出現箇所に移動
      • ⌘ + G 🟠
    • 前の出現箇所に移動
      • ⌘ + ⇧ + G 🟠

行の操作

  • 行入れ替え(選択範囲を移動)
    • ⌥ + ↑
    • ⌥ + ↓
  • 行コピー
    • ⌘ + C ※未選択の状態でカーソルが位置する行がコピーされる
  • 行削除
    • ⌘ + X
  • 空白行の追加
    • ⌘ + Enter
  • 行複製
    • ⌥ + ⇧ + ↓
  • 行末へ移動
    • ⌘ + →
  • 行頭へ移動
    • ⌘ + ←
  • 単語単位で移動
    • ⌥ + →
    • ⌥ + ←

その他エディタ系

  • スクロール
    • 上へ ⌘ + ↑ 🟠
    • 下へ ⌘ + ↓ 🟠
    • 最上へ ⌘ + ⇧ + ↑ 🟠
    • 最下へ ⌘ + ⇧ + ↓ 🟠
  • メソッドの展開/縮小
    • ⌥ + ⌘ + [
    • ⌥ + ⌘ + ]
    • ※タブ移動と被るので、タブ移動の⌥ + ⌘ + []は削除した
  • マルチカーソル生成
    • ⌘ + ⌥ + ↓
    • ⌘ + ⌥ + ↓
  • マルチカーソル生成(選択した単語に一致するもの)
    • ⌘ + D
  • キャメルケース - スネークケース 切り替え 👍👍👍
    • ⌥ + ⇧ + U
  • 変数名、メソッド名の修正
    • F12
  • 履歴からペースト
    • ⌃ + ⇧ + V 🟠
  • フォントサイズの縮小
    • ⌘ + -  🟠
  • フォントサイズの拡大
    • ⌘ + = 🟠
  • ファイルの構造を表示
    • ⌘ + 7
    • ※構造が掴める + ファイル内移動が楽
    • ※単に移動目的ならナビゲーションバーに移動が良い

テスト 👍👍👍

  • テスト⇔テスト対象の移動切り替え
    • ⌃ + ⇧ + C
  • デバッグ実行
    • ⌃ + ⇧ + D
  • カーソル位置まで実行(デバッグポイントを打っていない特定の行までの実行)
    • ⌥ + F9
    • ※デバッグ中に行ホバー時に出てくるボタンをタップでも可
  • デバッグ中の変数の値などの確認
    • ※対話式コンソールが便利

ブランチ切り替え

  • 画面上部ナビゲーションバー右上のブランチ名をタップ > 「最近」の中からブランチを切り替える
    • ※複数タスクを並行している場合に簡単に切り替えられて便利です

その他

  • 設定を開く
    • ⌘ + ,

Discussion