CLion 2023.3 には技術プレビューの段階を経た JetBrains AI Assistant が搭載されており、コンテキストとプロジェクトの認識レベルがさらに向上した日常的な C++ 開発ワークフローに大いに役立つアクションが実装されています。 新しいリリースにはプロジェクトモデルのサポートの拡張、より詳細なコード解析と基になるアセンブリの表示に対応したツール、および組み込み開発者に便利なデバイスツリーファイルのサポートも備わっています。
JetBrains IDE の生産性を向上させる多数の新機能と改善が盛り込まれた JetBrains AI Assistant が一般公開されました。
CLion 2023.3 では、AI Assistant がより正確にドキュメントを生成し、ランタイムエラーを説明できるようになりました。 最新アップデートにはコンテキストを認識する AI チャットとプロジェクトを認識する AI アクションも含まれており、広範なコンテキストでより包括的な結果を提供できるようになっています。
CLion の AI Assistant は JetBrains AI サブスクリプションをご利用の場合にアドオン機能として使用できます。
長らく未解決となっていたパフォーマンスと品質に関する問題を解決し、すべての C++ ツールのユーザーエクスペリエンスを統一するため、CLion Nova のリリース準備を進めている最中です。 これは、ReSharper C++ と JetBrains Rider の C++ 言語エンジンを搭載した無料プレビューバージョンの CLion です。 以下の内容を確実に実現します。
広範なプロジェクトモデルが C および C++ プロジェクトに使用されています。 CLion は初期状態で CMake、コンパイルデータベース、Makefile、および Autotools プロジェクトに対応しています。 バージョン 2023.3 では待望の Meson サポートが備わっており、Bazel for CLion プラグインの多くの問題が解決されています。
変更内容の詳細
CLion にはコーディング中に常に実行され、コードの品質の改善を支援するデータフローアナライザーが組み込まれています。 バージョン 2023.3 では全体的な解析の正確性とパフォーマンスを改善し、メモリリーク解析を追加しました。
新しい解析の詳細
CLion はコードの実際の動作を把握し、コードベースに潜むバグを探すのに大いに役立ちます。 新しい Run to Cursor(カーソル位置まで実行)インレイオプションを使用するとデバッガーでコード内を素早く移動できます。また、ファイルの Assembly(アセンブリ)ビューはバグを発見したり、コードの実行時パフォーマンスを最適化したりしようとする際に役立ちます。
新機能の詳細
Google の CLion 用 Bazel プラグインに重要な品質改善が加えられました。
strip_include_prefix
引数を考慮して正しいパスを使用するようになりました。 local_repository
または new_local_repository
を使って WORKSPACE.bazel に追加されたプロジェクトが CLion で正しく同期され、インデックス作成されるようになりました。 Meson のサポートが CLion に導入されました! CLion で Meson プロジェクトを開き、ビルド、実行、デバッグを実行できます。 すべてのプラットフォームに対応しており、WSL や Docker などのローカルおよびリモートのツールチェーンで動作します。
meson.build ファイルを編集しやすくするため、CLion は以下の機能を提供しています。
executable(...)
コマンドと library(...)
コマンドがある場合に実行可能ファイルとライブラリを表示します。 CMake プリセットの条件である equals
と notEquals
が新たにサポートされ、CLion がこれらの条件に一致しないプリセットを表示しなくなりました。
CLion 2023.3 では、基になるアセンブリコードを調べる際にデバッグセッションが不要になっています! 新しい Show Assembly(アセンブリの表示)アクションは現在選択されている解決構成のコンパイラー設定を使用し、現在表示されている C/C++ ファイルのコードをアセンブリにコンパイルし、どのソースコードがどのアセンブリを生成したかを示すプレビューをエディターで開きます。
CLion のすべての Assembly(アセンブリ)ビュー(デバッグセッションの有無は不問)が強化され、x86 アセンブリ(Intel)構文に切り替える機能が追加されました。 構文を切り替えるには、Assembly(アセンブリ)ビューウィンドウで Options(オプション)に移動し、ビューを更新して変更を適用します。
CLion 2023.3 の新しい UI には、デバッグ中に特定のコード行まで素早く移動するための Run to Cursor(カーソル位置まで実行)インレイオプションが新たに導入されています。 プログラムが一時停止したら、プログラムの実行を終了させたいコード行にマウスポインターを合わせて Run to Cursor(カーソル位置まで実行)ポップアップをクリックし、ポップアップでクリックした行に到達するまでコードを実行させることができます。
ハードウェアを微調整できるようにするため、CLion はデバイスツリーファイルをサポートしています。 拡張子が .dts と .dtsi のファイルは IDE でデバイスツリーファイルとして処理され、デバイスツリーではこれらのファイルに対応したコーディング支援オプションが提供されています。 詳細はオンラインドキュメントをご覧ください。
既存のデバイスツリーファイルを読み取りやすくするため、CLion は以下の機能を提供しています。
デバイスツリーファイルへの書き込みをより効果的に行えるよう、CLion は以下をサポートしています。
/<コマンド>/
、およびラベルのコード補完/bits/
オプションで定義された配列サイズのチェックCLion 2023.3 の新しい「Function summaries」手法によって任意のネストした呼び出しチェーンの異なる関数コンテキストを区別できるようになったため、より正確なデータフロー解析を実行できるようになりました。
DFA の既存のインスペクションでフィールドも考慮されるようになりました。また、すべてのフィールドが初期化されてないことを警告する新しいインスペクションも用意されています。
新たにメモリリーク解析が実装されました。 これにより、メモリが割り当てられていても、解放されないままアクセス不可能になっているケースを簡単に検出できるようになっています。
CLion はプロジェクトの QML タイプの検出と解析を行い、そのタイプに基づくコーディング支援を提供します。 しかし、ライブラリの QML タイプやユーザーのプラグインのタイプは往々にして別々の場所にあります。 この問題を解決するため、Settings(設定)/Preferences(環境設定)| Languages & Frameworks(言語とフレームワーク)| QML に新しい Extra QML imports(追加の QML インポート)設定を導入し、IDE が指定の場所で QML インポートを検索してユーザーコードからタイプを解析できるようにしました。
CLion の New Project(新規プロジェクト)ウィザードで新しいプロジェクトを作成する際、main.cpp ファイルまたは main.c ファイルが自動的に生成されます。 ただし、これらのファイルにカスタムテンプレートを使用したい場合もあるかと思います。 CLion 2023.3 では、Settings(設定)/Preferences(環境設定)| Editor(エディター)| File and Code Templates(ファイルとコードのテンプレート)| Other(その他)でそのようなテンプレートを編集できるようになりました。
IDE Features Trainer は IDE の基本機能を説明する一連の対話式チュートリアルです。 「ようこそ」画面から、または Help(ヘルプ)| Learn IDE Features(IDE 機能の学習)から起動できます。 詳細はオンラインドキュメントをご覧ください。
トレーニングは CLion と主なユーザー操作(ビューとパネルの操作、エディターでファイルを開く、プログラムの起動、シンボルの自動補完、クイックフィックスの適用、シンボルの検索)に慣れることを目的としたオンボーディングツアーから始まります。
IDE の表示をよりコンパクトにしたい場合、デフォルトの表示モードでメインツールバーを非表示にする新しいオプションを使用できます。 View(表示)| Appearance(外観)に移動し、Toolbar(ツールバー)オプションをオフにすると非表示になります。
エディター内でさまざまなファイルタイプを同時に扱う際の操作性を改善するため、エディターのタブをデフォルトで色分けし、Project(プロジェクト)ツールウィンドウにその外観を反映させるようにしました。
ツールウィンドウとダイアログ内を素早く移動できるようにする Speed Search(スピード検索)機能がショートカットで利用できるようになりました。 ツリーまたはリストにフォーカスがある場合、Ctrl+F を押してツールウィンドウの Options(オプション)メニューから簡単に検索を呼び出せます。または単にクエリを入力し始めても同じ動作を得られます。
CLion のカスタムツールウィンドウレイアウトをデフォルトのレイアウトに素早く戻したい場合、Window(ウィンドウ)| Layouts(レイアウト)| Default(デフォルト) を使用してワークスペースの外観をデフォルトの状態に戻せるようになりました。
テストのインデックス作成段階にかかる時間を減らすため、CLion に指定ディレクトリ内でテストを探すように手動で指示できるようになりました。 これを行うには、Tests(テスト)スコープを作成します。すると、テストのインデックスを作成する際にこのスコープで絞り込まれたファイルのみのインデックスが作成されます。
Tests(テスト)スコープを使って Project(プロジェクト)ビューを絞り込むと、プロジェクトのテストファイルに素早くアクセスできます。 詳細はこちらをご覧ください。
CLion 2023.3 では Dev Container のサポートを大幅に拡張しました。 Dev Container Features を使用して追加の開発ツール、ランタイム、ライブラリを簡単に追加できるようになり、基本コンポーネントのセットアップが単純化されました。 自動ポートフォワーディングも実装されたため、Dev Container でアプリケーションがリッスンし始めるポートがシームレスに転送されるようになりました。 詳細はこちらをご覧ください。
CLion 2023.3 では変更のレビュー方法を一新しています。 ファイルを 1 つずつ調査するのではなく、変更セットに含まれるすべての変更済みファイルを 1 つのスクロール可能なフレームで確認できるようになっています。 この新しい差分ビューアーは GitLab、GitHub、JetBrains Space のレビューに対応しています。
CLion 2023.2 リリースで導入された GitLab 統合を拡張し、GitLab スニペットのサポートを追加しました。 IDE 内で公開または非公開のスニペットを直接作成できるようになっています。