RubyMine 2020.1の新機能

改善されたナビゲーション、よりスマートなコーディング支援、より簡単になったテスト作成、新しい LightEdit モード、さらにはデバッガ、Docker、バージョン管理、JS、データベースツールなどの新機能をたくさん追加しました。

ナビゲーション

Rails エンティティ間のナビゲーション

Rails エンティティ間のナビゲーション

Rails エンティティと DB スキーマ間を移動できるようになりました。 その操作をするには、Ctrl+Alt+Home を押してください。 ナビゲーションを一層シームレスに行えるよう、ナビゲーションのポップアップの外観を統一し、よりコンパクトにまとめました。

メソッド間の改善されたナビゲーション

Navigate | Go to Super Method (Ctrl+U) を使えば、移動先のスーパーメソッドを選択できるようになりました。

You can also search for usages (Alt+F7) of a super method.

構造ビューのナビゲーション

構造ビューのナビゲーション

Structure view(構造ビュー) (Ctrl+7) では、フィルターを使って変数を除外し、メソッドだけを表示することができます。

Ruby 2.7

最新の Ruby 構文のサポート

最新の Ruby 構文のサポート

いつもと変わらず、Ruby の最新バージョンをサポートしています。 これには、例えば、番号指定パラメータの新しい '_' 構文が含まれます。 IDE は新しい構文を特定し、ナビゲート、使用箇所の検索、オブジェクトの名前変更を支援します。

実行とデバッグ

ガターから Rake タスクを実行

ガターから Rake タスクを実行

バージョン v2020.1 からは、gutter メニューから直接タスクの実行やデバッグをしたり、タスクのプロファイルを作成できるようになりました。 これまで通り、RubyMine では、実行されたタスクに対応する実行 / デバッグ構成が自動的に作成されます。

ターミナルコマンドのスマートな実行

ターミナルコマンドのスマートな実行

RubyMine のターミナルは様々なコマンドを解析できるようになりました。 入力コマンドはマッチされるとハイライトされます。それから Ctrl-Enter を押すと、コマンドで取得されたパラメータを持つ特定の UI を開くことがきます。

この機能を試すには、Experimental Features(実験的機能) ダイアログで terminal.shell.command.handling フラグを有効化します。

詳細情報

変数のフィールドを固定

変数のフィールドを固定

デバッガの Variables(変数)ビューでは、変数のフィールドをビューのトップに固定し、それぞれの値を変数の表示内で確認できるようになりました。

テスト

特定のパスでテストを作成

特定のパスでテストを作成

RubyMine では、あらゆるクラスを対象に新しいテストを作成し、テスト対象へのパスを基にディレクトリの構造を複製できるようになりました。

詳細情報

コーディング支援

ML(機械学習)を使ったコード補完

ML(機械学習)を使ったコード補完

RubyMine は、機械学習を使うことで、コード補完において関連性の高い提案をより高くランク付けできるようになりました。 ML を使ったコード補完は開発中の機能ですので、今後改良していく予定です。

Docker

Docker Compose の改善点

Docker Compose の改善点

With RubyMine 2020.1, you can run, debug, and test your application in a particular environment by using Docker Compose as a remote interpreter. which rubygem envrbconfig といったコマンドを Docker 内でどのように実行するのかを指定できます。

詳細情報

コードエディタ

LightEdit モード

LightEdit モード

新しい LightEdit モードでは、RubyMine を一般的なテキストエディタとして使用できます。 プロジェクトを読み込まずにファイルを開けるので、通常よりも素早く起動し、機能します。

Zenモード

Zenモード

Zen モードを使えば、コーディング作業に集中できます。IDE ウィンドウが拡大され、コードエディタ以外の要素はすべて非表示になります。 素早く試すには、Ctrl+` を押してから View mode | Enter Zen Mode を選択します。

IDEの構成

SSH 構成用の統合 UI

SSH 構成用の統合 UI

Preferences/Settings | Tools | SSH Configurations に SSH 構成を管理するための統合設定タブが新しく導入されました。 SSH 構成の追加、編集、保管、削除に使用します。

詳細情報

実行構成をより柔軟に共有

実行構成をより柔軟に共有

RubyMine 2020.1 では、実行構成を任意のプロジェクトディレクトリに保管できるため、その管理がさらに充実しています。 これを行うには、新しく設けられた Store as project file のチェックボックスを選択し、選択した実行構成を持つファイルを保管するディレクトリへのパスを指定します。

詳細情報

ターミナル

ターミナルセッションを上下 / 左右に分割する

ターミナルセッションを上下 / 左右に分割する

ターミナルセッションを上下または左右に分割し、並べて実行できるようになりました。 分割ターミナルセッションを作成したり、ナビゲートしたり、閉じたりするには、ターミナルからコンテキストメニューを呼び出します。

バージョン管理システム

新 “Interactively Rebase from Here” ダイアログ

新 “Interactively Rebase from Here” ダイアログ

Interactively Rebase from Here を正にインタラクティブなダイアログに一新しました。 過去のコミットを編集し、組み合わせ、削除できるので、コミット履歴がより線形かつ包括的になります。

詳細情報

コミットダイアログ / コミットツールウィンドウ

コミットダイアログ / コミットツールウィンドウ

RubyMine 2020.1 では、コミットダイアログの代わりにコミットツールウィンドウが導入されています。 Preferences / Settings | Version Control | Commit | Use non-modal commit interface でこれらを切り替えることができます。

新しいツールウィンドウは左側にあるため、エディタに diff を表示する十分なスペースが確保されています。

詳細情報

改善された Branches(ブランチ操作) ポップアップ

改善された Branches(ブランチ操作) ポップアップ

Branches ポップアップには以下の改善点が含まれています。

  • 既存のリモートブランチとローカルブランチの検索に使用できる明示的な検索フィールドを追加しました。
  • Refresh ボタンを使って既存のリモートブランチを更新できるようになりました。
  • 受信 (青) と送信 (緑) のコミットインジケーターがステータスバーに追加されました。

データベースツール

エディタに表示されるクエリの結果

エディタに表示されるクエリの結果

クエリの結果をエディタ内で確認できるようになりました。 この機能は、ツールバーの新しいボタンを使うか、Settings/Preferences | Database | General | Show output results in the editor からオン・オフできます。 データの表示方法 (テーブル、ツリー、テキスト) を選択できます。

クエリ結果は Excel にエクスポートすることもできます。

実行構成のデータベーススクリプト

実行構成のデータベーススクリプト

実行構成を作成してデータベーススクリプトを実行できるようになりました。

JavaScript/TypeScript

新しい smart インテンションおよび分析

新しいスマートなインテンションとインスペクション

新しいスマートインテンションとインスペクション (Alt+Enter) を使って、よりスピーディにコーディングしましょう! 例えば、JavaScript と TypeScript の最新バージョンに導入された構文である、オプションの chaining および / または nullish coalescing (null合体演算子) に既存のコードを素早く変換することができます。

さらに役に立つクイックドキュメンテーション

さらに役に立つクイックドキュメンテーション

JavaScript と TypeScript では、Documentation ポップアップにシンボルの型と可視性に関する詳細やそのシンボルが定義されている場所など、役に立つ情報がさらに表示されるようになりました。

Vue.js: Vuex と Composition API のサポート

Vue.js: Vuex と Composition API のサポート

Vuex ライブラリを対象に用意されているサポートや Vue 3 の Composition API を使用すれば、Vue.js の素晴らしいアプリケーションをよりスムーズに構築できます。

Prettier を保存時に実行

Prettier を保存時に実行

新機能の Run on save for files オプションを使用すると、RubyMine は IDE 設定で指定されたファイルやプロジェクトで編集されたファイルが保存されると同時に、それらすべてのファイルに対して Prettier のフォーマットを適用します。File Watchers やサードパーティのプラグインは不要になりました。

その他の変更

  • 今後は JetBrains Runtime 11 (JBR11) に移行し、JetBrains Runtime 8 (JBR8) のビルドの配布は停止いたします。 これには、IDE と JetBrains Toolbox App の両方における 2020.1 の更新内容すべてが含まれます。
  • ライトテーマはすべてのオペレーティングシステムで統合され、IntelliJ Light という名前に変わりました。
  • RubyMine と IntelliJ ベースのその他の IDE では、デフォルトのフォントとして JetBrains Mono が使用されるようになりました。
  • IDE 設定を自動インポートする方法を追加しました。
  • Git をインストールされていない場合は、RubyMine にその旨が表示され、あなたの代わりに Git をダウンロードしてインストールする提案も表示されます。
  • クイックドキュメンテーションのポップアップは、デフォルトでカーソルを合わせると表示されるようになっています。 このオプションは Settings/Preferences | Editor | General から無効にできます。
  • 新しいコードインスペクションは、private / protected メソッドの無効な呼び出しについて警告を表示するようになりました。