CLion ノヴァ
CLion Nova は CLion の改善版で、CLion レガシーエンジンの代わりに ReSharper C++ /Rider C++ 言語エンジンを使用します。このバージョンは、IDE の応答性、精度、パフォーマンスに重点を置いています。
CLion ノヴァに切り替える
に移動します。
ReSharper C++ 言語エンジンを使用する (CLion ノヴァ) チェックボックスを設定します。
適用をクリックして設定を保存し、IDE を再起動します。
パフォーマンス上の利点
パフォーマンスの面で、CLion Nova の最も注目すべき利点は次のとおりです。
特に増分コード更新の場合、ハイライト速度が速くなります。
より応答性の高い UI。
使用箇所の検索のほうが速い。
リファクタリング中のフリーズやハングが大幅に減少しました。
テストのインデックス作成が高速化。
CLion Nova と CLion Classic の主な違い
CLion Nova は依然として 2 つの C++ 言語エンジンを使用しています。1 つは Clangd ベースで、もう 1 つは ReSharper C++ /Rider で使用されます。ただし、CLion Classic とは異なり、CLion Nova はコード補完やハイライトなどのコア IDE 機能に Clangd を使用しません。
入力時の IDE の反応方法の一部が異なります。
コードインサイト機能に関連する一部の UI 要素と設定の外観と位置が変更されました。例:
CLion Nova では、一部のコード関連の設定のデフォルト値が異なります。
異なる言語構成間 (たとえば、デバッグプロファイルとリリースプロファイル間) を切り替えると、コードインサイトエンジンが追いつくまでにさらに時間がかかる場合があります。ファイルごとに解決コンテキストを切り替えるオプションもありません。
CLion Nova の新機能
CLion Classic のほとんどの機能は CLion Nova でもまったく同じように動作しますが、CLion Classic の機能セットには含まれていない CLion Nova の新機能もいくつかあります。
新規リファクタリング (フィールドの導入、名前空間エイリアスの導入、列挙を使用した導入、スコープ付き列挙への変換など)。
新しいインスペクション、クイックフィックス、インテンションのような冗長修飾子、明示的な型宣言による
auto
の置き換え、および#include
ディレクティブの並べ替え。新しいコードのヒントのようなプリプロセッサーディレクティブヒントと Push-to-Hint モード。
現在の制限
リモートはシンクライアント (ゲートウェイ) (CPP-36010(英語)) と連携して動作し、Code With Me (CPP-36095(英語)) を介した共同開発はまだ利用できません。
CUDA (RSCPP-613(英語)、CPP-26144(英語)) および一部のベンダー固有のコンパイラー拡張はまだサポートされていません。
一部のインテンションおよび簡略化可能なステートメントなどのクイックフィックスは現在サポートされていません (CPP-35879(英語))。
呼び出し階層 (CPP -22675(英語)) や、移動 (CPP-35867(英語)) やインラインパラメーター (CPP -35868(英語)) などのあまり一般的ではないリファクタリングも欠落しています。
関連ページ:
![](https://resources.jetbrains.com/help/img/idea/2024.1/cl_cmake_settings_keymap.png)
CMake プロファイル
CMake プロジェクトのビルドに必要な設定は CMake プロファイルに組み込まれています。これには、ツールチェーンとビルド型に加え、ジェネレーターや環境変数などの CMake オプションが含まれます。たとえば、異なるコンパイラーを使用したり、異なる設定でターゲットをビルドしたりするために、プロジェクトに複数のプロファイルを構成できます。プロファイル設定にアクセスする次のいずれかを実行して、CMake プロファイル設定を開きます。に移動します。を押してアクションの検索ダイアログを開き、CMake...
![](https://pleiades.io/icons/clion.png)
コンテキストを解決する
構文のハイライト、および使用箇所の検索、リファクタリング、コード生成、コード分析などの他のコードインサイト機能は、コードの解析と解決のルールを決定するプリプロセッサー定義のセットに依存する場合があります。これらのルールは、解決コンテキストとも呼ばれます。現在開いているファイルの解決コンテキストを切り替える (CMake プロジェクト)CMake プロジェクトの場合、解決コンテキストは対応する CMake プロファイルによって定義されます。スイッチャーで目的の構成またはプロファイルを選択します。解決...
![](https://resources.jetbrains.com/help/img/idea/2024.1/cl_nova_introduceusingenum_intention.png)
CLion ノヴァリファクタリング
CLion Nova は、次の追加のリファクタリングを提供します。フィールドの導入 ,、ネームスペースエイリアスを導入する ,、列挙を使用して導入する ,、およびスコープ付き列挙に変換します。フィールドの導入:このリファクタリングでは、選択した式に基づいて新しいフィールドを作成し、その式またはコンストラクターからそれを初期化し、式の出現箇所を新しく導入されたフィールドへの参照に置き換えます。このリファクタリングを呼び出すには、を押します。以下の例では、このリファクタリングを使用して、同じ文字列の...
![](https://resources.jetbrains.com/help/img/idea/2024.1/cl_nova_inlayhints.png)
CLion Nova インレイのヒント (C++ 用)
CLion Nova は追加のインレイのヒントを提供し、プッシュツーヒントモードを導入します。パラメーター名ヒント:パラメーター名のヒントは、メソッド呼び出しで対応する引数の横にパラメーター名を表示するエディターの装飾です。これらは、関数呼び出しと集計の初期化でパラメーターの長い(場合によってはネストされた)リストを見つけるのに役立ちます。以下の例では、パラメーター名のヒントは、高さと幅の引数が混在しているという事実を見つけるのに役立ちます。パラメーター名のヒントは、初期化するメンバーの名前を...
![](https://resources.jetbrains.com/help/img/idea/2024.1/cl_nova_livetemplates.png)
C++ 用の CLion Nova ライブテンプレート
このページでは、C++ コードのライブテンプレートを構成および作成できます。ライブテンプレートを使用して、ループ、条件、宣言、print ステートメントなどの一般的な構造をコードに挿入します。リストからテンプレートを選択します。左下のペインには、展開されたスタブコードが表示されます。テンプレートを編集する必要がある場合は、このペインを使用します。以下の表は、ダイアログの右下領域のコントロールを説明しています。ショートカットライブテンプレートを挿入するには、この省略形を使用します。エディターに入力...
![](https://resources.jetbrains.com/help/img/idea/2024.1/cl_nova_codestyle.png)
CLion Nova コードスタイル設定 (C++ 用)
このページでは、C++ のコードスタイルのさまざまな側面を構成できます。コードスタイルの設定は、以下で説明するタブにグループ化されています。一般:C++ フォーマットエンジンこれらのラジオボタンを使用して、CLion Nova が C++ コードをフォーマットおよび再フォーマットするときにどのフォーマットエンジンを使用するかを選択します。ReSharper フォーマッター — ReSharper C++ フォーマットのデフォルトセットを使用する場合、または以前に書式スタイルを構成してレイヤーベー...