スマートエディタ

コード補完

CLionでは、コード補完を利用して、より早くコードを書くことができます。 キーワード、変数、関数、またはクラスの名前を 入力し始めると、一致する候補のリストが表示されます。 さらに時間を節約するには、名前の大文字だけを入力するか(CamelHumps マッチング)、名前の一部を入力してください(Middle マッチング)。

IDEは、プロジェクトで使用されている外部ライブラリのシンボルやフレームワークのシンボルの補完候補も表示できます。

C / C++ 向けの後置コード補完を使用すると、入力した式の前後にコードを追加できます。 よく使用される言語構造で式を囲む機能や、式を free 関数の第 1 引数として渡す機能があります。

基本的なコード補完は入力しながら機能します。 また、(Ctrl+Shift+Space を押すと)CLion はコードの文脈に応じてスマートに候補を絞り込み、スマートな補完を行います。

コードスタイル

CLionは、コードをきれいにフォーマティングし、設定されたコーディングスタイルのガイドラインに 準拠します。 入力すると同時に作動します。またReformat Codeアクションで明示的に適用します(Ctrl+Alt+Lを押下)。

コードスタイルはEditor | Code Styleの設定で設定できます。 一般的な設定と 言語固有のオプション(例えばC/C++、CMake、HTML、または XML) を設定できます。

コードスタイルは、スペース、整列規則、タブとインデント、コード生成、 空白行などに対応しています。 コードに影響を与えるコードスタイル設定の場合、CLionは即座にプレビューを表示し、最新の変更で影響を受けた行をハイライトします。

高度な設定

既存のフォーマットの一部を特定のファイルに取り込んで保持することもできます。 ファイルを開くと、CLionは、そのインデントがアクティブなコードスタイル設定と異なるかどうかを教えてくれます。

自分のスタイル設定を強制するか、  再フォーマットを含め既存のインデントを保持するかを選択できます。 この機能は、 Editor | Code Style..の設定でオン/オフにできます

CLionでは、選択されたコードのみに適用される設定を変更できます。 コードを選択し、Adjust code style settingsというクイックフィックス(Alt+Enter)を使用してください。

ハイライトと構成

コンテキストの解決

コードの強調表示がCMakeターゲットからのフラグと変数に依存している場合、CLionは適切にコードを強調表示することができます。ビルド/実行構成を選択するだけでIDEが自動的に解決コンテキストを切り替えます。

手動切り替えのが好きな場合は、エディタの右下にあります。

C/C++用のパンくずリスト

ブレッドクラム

パンくずリスト(コード内ナビゲーションに役立つエディタの下部にある小さなマーカー)を使用してコード内の現在位置を簡単に把握できます。 CLionはそこに、名前空間、クラス、構造体、関数、そしてラムダを表示します。

定義済みコードスタイル

CLionでは、 コードスタイル設定に適用する定義済みコードスタイルを 選択できます GoogleLLVMLLDBGNUMicrosoftQt、およびStroustrup のコードスタイルも利用できます。さらに、AllmanWhitesmiths、またはK&Rの波括弧のガイドラインがあります。 お気に入りを選択するには、Set from... | Predefined Style を使用します。

コードフォーマットの設定、C/C++ 命名スタイル、およびヘッダーガードに適用されます。

命名規則

命名設定

CLionは指定された命名規則を尊重するようになりました。 選択された設定は次の場合に使用されます:

  • コードの自動補完
  • コードの生成
  • コードのリファクタリング
  • クイックフィックスを適用

手動で、設定 | エディタ | コードスタイル | C/C++ | 命名規則でスタイルを設定するか、事前定義されたスキームから命名を選択できます。

パラメーターヒント

パラメーターヒント

パラメータ名ヒントにより、関数呼び出しを調べている間に関数シグネチャを参照することを回避できます。 これはコードの可読性を向上させるのにも役立ちます。

関数呼び出し、ラムダ、コンストラクタ、初期化リスト、マクロ式に対し、CLionは渡された引数のパラメータ名を表示します。 これは、引数がリテラルまたは1つ以上のオペランドを持つ式の場合に機能します。

型ヒント

型ヒント

CLion には推論される型の型ヒントが追加され、コードの可読性が向上しています。 新しいヒントは auto 変数、構造化バインディング内、およびラムダ戻り値の型に対して機能します。

特定の型ヒントは、Settings(設定)| Editor(エディター)| Inlay Hints(インレイヒント)| C/C++ かヒントのコンテキストメニューで無効または有効にできます。

ClangFormat

コンテキストの解決

CLionには、代替コードフォーマッタとしてClangFormatが含まれています。 CLionで、現在またはすべてのプロジェクトに対して有効にすると、CLionはClangFormatを使用してコードをフォーマットします。

CLionは、.clang-format設定ファイルを検出し、ClangFormatに切り替えることを推奨します。

コーディング支援

プロジェクト内で.clang-format設定ファイルをカスタマイズする場合、それらの設定ファイルを更新する際にコーディング支援機能を利用できます。

詳細情報

コードの選択とコメント

CLionでコードブロックを素早く選択するには、ブロック内にカーソルを置き、必要に応じて何度もCtrl+Wを押し、シンボルから式、行、論理的なコードブロックなどを拡張できます。 選択範囲をより小さな論理部分に縮小するには、必要に応じてCtrl+Shift+Wを押し続けてください。

ブロックを選択したあと、ブロックコメント(Ctrl+Shift+/)、または行コメント(Ctrl+/)を適用できます。 一行にコメントをつけたい場合は、選択する必要もありません。 単に行にキャレットをおき、Ctrl+/を押します。

パラメータ情報

関数がどんなパラメータを受け入れられるか分からない場合、CLionは役に立ちます。 Parameter Info を出して(Ctrl+P)、利用可能なすべての関数のシグネチャと パラメータを確認できます。 パラメータの編集を開始すると、CLionは非対応のシグネチャを灰色で強調表示します。

コードの展開/削除

入れ子になったステートメントが多数ある複雑なコード内の囲んでいる部分を正確かつ安全に削除するには、Unwrap/Remove…アクション(Ctrl+Shift+Delete)を使用します。 キャレットの位置によって選択肢を提案し、ifelseforwhiledo..while、およびforの制御文を展開できます。

複数のキャレットと選択範囲

複数のことを同時にしたいとき、CLionであればそれが 可能です。 複数のキャレットを使ってファイル内の複数箇所を同時に編集できます。

マウスで編集する場所をいくつか選択するか(Alt+Shiftを押してマウスクリックでキャレットを配置)、Alt+Jを使用して次の出現箇所をいくつか追加します。 (またはAlt+Shift+J で削除)

そうすると、すべての選択箇所を同時に編集し、それらすべてに対してコード補完とライブテンプレートなどを使用できるようになります。 終了したら、Escを 押して、シングルキャレットのモードに戻ります。

コードの並べ替え

行とコードブロックを丸ごと上/下に移動し、コードを並び替えることができます。 選択をせず1行だけ移動するときは、 Alt+Shift+Up/Downを押します。 選択された コードブロックを移動するには、Ctrl+Shift+Up/Downを使用します。

自動インポート

CLionは、まだインポートされていないシンボルを使い始めると、検索して該当のインクルードを追加することを提案するか、コードを補完するときに自動的に追加します。

クイック定義

現在のコンテキストから離れずに、関数の実装、または宣言を確認することが できます。 Quick Definitionポップアップを表示するには、キャレットをシンボルの上に置き、Ctrl+Shift+Iを押してください。

クイックドキュメンテーション

選択されたクラスや関数、変数、パラメータ、またはマクロのドキュメンテーションを表示する、Quick Documentationポップアップ(Ctrl+Qで利用可能)もあります。

Quick Documentationでは、autoとして宣言された変数用にマクロ代替推論型、および参照されている型へのリンクやDoxygen式のドキュメントプレビューを表示することができます。