【翻訳】プロ並みに生産性を上げる！RubyMineのナビゲーション用ショートカット集


## はじめに

この記事はRubyMineの公式ブログに掲載されていた以下の記事を翻訳したものです。

[Navigate in RubyMine like a pro \| RubyMine Blog](https://blog.jetbrains.com/ruby/2017/06/navigate-in-rubymine-like-a-pro/)

僕の翻訳では原文の意味を壊さない程度に意訳していますが、まったく意味が違っていたり、おかしな内容があったりした場合はコメント欄や編集リクエストで教えてください。

### Mac用のショートカット記号について

Macで使われるショートカット記号は次のようになっています。

- command ⌘
- shift ⇧
- option ⌥
- control ⌃

参考： [Mac のキーボードショートカット \- Apple サポート](https://support.apple.com/ja-jp/HT201236)

ただし、キートップのプリントと一致する⌘はともかく、それ以外の記号はなかなか覚えられない人も多いと思うので（少なくとも僕はそう）、都度訳注として記号の意味を入れていきます。

それでは以下が翻訳です。

# プロ並みに生産性を上げる！RubyMineのナビゲーション用ショートカット集

先日ご紹介した「[絶対見逃せない！RubyMineのショートカット10選](http://qiita.com/jnchito/items/6eda2cd54038ffa829ef)」は大変好評だったようです。そこで我々はこのシリーズをもう少し続けることにしました。こうしたテクニックをお伝えすることで、みなさんの日々の業務をもっと生産的にするお手伝いをしたいと思います。

この記事ではRubyMineのナビゲーション機能を紹介していきます。ナビゲーション機能をうまく活用すれば、開発している最中にマウスやタッチパッドの存在を（ほとんど）忘れることができるはずです。

## ツールウインドウを行き来する

ツールウインドウの行き来はきっと頻繁に行っていると思います。数あるショートカットの中で、特に重要なものは以下のとおりです。

- Projectツールウインドウ — **⌘1 / Alt+1**
- Run/Debug/Test/Consoleツールウインドウ — **⌘4 / Alt+4**
- Structureツールウインドウ — **⌘7 / Alt+7**
- Version control（バージョン管理ツール） — **⌘9 / Alt+9**
- ターミナル — **⌥F12 / Alt+F12**
- エディタ — **Esc**

（訳注：⌥はOptionキー）

![tool_windows_navigation.gif](https://qiita-image-store.s3.amazonaws.com/0/7465/987725f3-e1e1-a872-3cdc-0964a67da17d.gif "tool_windows_navigation.gif")

ところで、[IDEコンポーネント間を行き来する](https://www.jetbrains.com/help/ruby/navigating-between-ide-components.html)際は **⌥F1 / Alt+F1** を使うこともできます（訳注：⌥はOptionキー）。これはこんなときに便利です。たとえば、あなたがあるファイルを編集していたとします。そのファイルがProjectツールウインドウ内のどこにあるのか素早く確認したいときや、そのファイルが保存されているフォルダを開きたい場合に、このショートカットが役に立ちます。

**⇧⌘F12 / Ctrl+Shift+F12** を使うと、全ツールウインドウが隠されて、エディタだけにフォーカスされます（訳注：⇧はShiftキー）。

最後に、 **⌃\` / Ctrl+Back Quote** を使うとSwitchポップアップが開きます（訳注：^はControlキー）。そこから _View Mode | Enter Distraction Free Mode_ を選択すると、邪魔な画面要素が取り除かれ、ひたすらコードだけに集中することができます。

![editor_mode.gif](https://qiita-image-store.s3.amazonaws.com/0/7465/ad548663-b2c5-597c-89dc-5a960a982f50.gif "editor_mode.gif")

## アクション、クラス、シンボル、ファイルを行き来する

前回の記事では何でもサーチ機能（ _Search Everywhere_ ）を紹介しました。特定の要素へ移動したいときは、それ専用のショートカットが用意されています。そのショートカットを以下で紹介します。

- アクションを実行する — **⇧⌘A / Ctrl+Shift+A**

（訳注：⇧はShiftキー）

このショートカットを使うと、あらゆるアクションを実行できます。たとえば、エディタのタブを分割し、`bundle install`が実行できたりします。

![find_action.gif](https://qiita-image-store.s3.amazonaws.com/0/7465/8ba62f01-f50f-1c81-35e8-b8231a33034f.gif "find_action.gif")

- ファイルを開く — **⇧⌘O / Ctrl+Shift+N**

（訳注：⇧はShiftキー）

このショートカットを使うとプロジェクト内のファイルやディレクトリに移動できます。

![go_to_file.gif](https://qiita-image-store.s3.amazonaws.com/0/7465/0a2e0a74-0667-3ae3-77fa-138c1e79f924.gif "go_to_file.gif")

- クラスを開く — **⌘O / Ctrl+N**
- シンボルに移動する — **⌥⌘O / Ctrl+Shift+Alt+N**

（訳注：⌥はOptionキー）

前者のショートカットを使うと、プロジェクト内のクラスやモジュールに移動できます。後者のショートカットはメソッドの定義元に素早く移動したいときに便利です。

![go_to_class_symbol.gif](https://qiita-image-store.s3.amazonaws.com/0/7465/54484d74-e2dc-6360-215d-2ec9c0eda0be.gif "go_to_class_symbol.gif")

ファイルを開いているときであれば、 **⌘F12 / Ctrl+F12** を使うとファイルの構成（訳注：メソッド等の一覧）を確認でき、目的の要素にジャンプすることが可能です。

## ナビゲーションバー

この機能については前置きは不要かもしれません。 **⌘↑ / Alt+Home** を押すと、ナビゲーションバーにジャンプし、目的のファイルやディレクトリを選択できます。目的の場所への移動は矢印キーでもできますし、文字を入力することでフィルタリングすることもできます。

![navigation_bar.gif](https://qiita-image-store.s3.amazonaws.com/0/7465/21d64f50-b6ac-b211-cfa1-0e557a7741e6.gif "navigation_bar.gif")

注意：デフォルトではナビゲーションバーはフローティングモードになっています。ツールバーにナビゲーションバーを表示させたいときは、 _View | Navigation Bar_ を選択してツールバーへの表示を有効にしてください。

## 最近開いたファイルを開く / 最近編集したファイルを開く

**⌘E / ⇧⌘E** または **Ctrl+E / Ctrl+Shift+E** を押すと（訳注：⇧はShiftキー）、最近開いたファイル/最近編集したファイルのポップアップが表示されるので、目的のファイルを選択してください。文字を入力してファイルをフィルタリングすることもできます。

![open_recent_file.gif](https://qiita-image-store.s3.amazonaws.com/0/7465/cbd1c90e-4de2-e3e8-7310-4dc0083e0d49.gif "open_recent_file.gif")

## Railsの要素を行き来する

Railsの特定の要素（たとえばコントローラ）を編集している際は、 **⌃⌘↑ / Ctrl+Alt+Home** を押すことで関連するテストやビュー、モデル、ヘルパーに移動することができます。

（訳注：^はControlキー）

![navigate_rails_entity.gif](https://qiita-image-store.s3.amazonaws.com/0/7465/fe4d99ab-ff4b-2a4b-e2f5-09d24e0f64a9.gif "navigate_rails_entity.gif")

関連するテストに移動したり、戻ったりする際は専用のショートカットとして **⇧⌘T / Ctrl+Shift+T** が用意されています。

（訳注：⇧はShiftキー）

![go_to_test.gif](https://qiita-image-store.s3.amazonaws.com/0/7465/25b414b4-4e81-16aa-e61b-8ce1392d5d12.gif "go_to_test.gif")

## 一つ前/次のメソッドやタグに移動する

**⌃↑ / ⌃↓** または **Alt+Up / Alt+Down** を押すと、ファイル内のメソッドやタグを行き来できます。

（訳注：^はControlキー）

![navigate_between_methods.gif](https://qiita-image-store.s3.amazonaws.com/0/7465/ae2d6c7d-2b5a-5f92-e7f7-61564b77493d.gif "navigate_between_methods.gif")

注意：Mac環境では **⌃↑ / ⌃↓** がミッションコントロールとアプリケーションウインドウ機能に割り当てられています。なので、システム環境設定でこの割り当てを解除するか、もしくはRubyMineの _Preferences | Keymap_ からnext/previous methodショートカットの割り当てを変更してください。

## いろんなスコープの始点と終点に移動する

**⌃M / Shift+Ctrl+M** を押すと、コードブロックの始点/終点や、互いに対応する開き括弧/閉じ括弧を行き来することができます（訳注：^はControlキー）。この機能は様々なアクションを実行しようとする巨大なコード（たとえば長ったらしいコントローラのコードなど）を編集する際にとても便利です。

![toggle_brace.gif](https://qiita-image-store.s3.amazonaws.com/0/7465/a6558ae8-4d06-3e91-a8e4-cc3f33a274ce.gif "toggle_brace.gif")

## パンくず表示

最新のEAP（Early Access Programs）ビルドでは、Rubyの構成要素をパンくず表示できるようになりました。この機能は6月にリリース予定のバージョン2017.2で提供されます。この機能の詳細は[こちらのブログ記事](https://blog.jetbrains.com/ruby/2017/05/rubymine-2017-2-eap-2-breadcrumbs-for-ruby/)で確認できます。また、実際に動かしたい場合は[最新のEAPビルド](https://www.jetbrains.com/ruby/nextversion/)で試すことができます。

## ブックマークに移動する

驚いたことに、RubyMineユーザーの中にはRubyMineのショートカット機能のことを知らない人がいるようです。 **F3 / F11** を押すと、現在の行にブックマークを設定できます。ユニークなブックマークを付けたいときは、 **⌥F3 / Ctrl+F11** で数字付き、または名前付きのブックマークを設定できます（訳注：⌥はOptionキー）。そして、 **⌘F3 / Shift+F11** を押せば、プロジェクト内のブックマークに移動することができます。

![add_bookmark.gif](https://qiita-image-store.s3.amazonaws.com/0/7465/45437b04-82e6-b2f7-3ab3-c2b1adacaabc.gif "add_bookmark.gif")

最後に、ショートカットはいつでも自由に追加したり、割り当てを変更したりできることを知っておきましょう。ショートカットの設定は _Preferences / Settings | Keymap_ で行えます。

ここには載っていないお気に入りのナビゲーションテクニックはありますか？ぜひコメントで教えてください！

それでは！

（翻訳はここまで）

## あわせて読みたい

前回のショートカット記事はこちらです。
RubyMineの基本的なショートカットを集めています。

[【翻訳】絶対見逃せない！RubyMineのショートカット10選 \- Qiita](http://qiita.com/jnchito/items/6eda2cd54038ffa829ef)[![](http://b.st-hatena.com/entry/image/http://qiita.com/jnchito/items/6eda2cd54038ffa829ef)](http://b.hatena.ne.jp/entry/http://qiita.com/jnchito/items/6eda2cd54038ffa829ef)