このページでは

ソースコードの整形

コードの整形とは、ソースコードファイルにインデントやスタイルを適用することを指します。実験的な「Beautifier」プラグインを使用すると、以下の外部ツールでソースコードをフォーマットできます:

「Beautifier」プラグインは、ソースコードを代入文、ifブロック、ループなどの構成要素に解析し、「Beautifier」の設定に従ってフォーマットします。あらかじめ定義されたスタイルを使用することも、独自のスタイルを定義することもできます。

ファイルを保存する際に自動的にフォーマットするには:

  1. ソースコードのフォーマットに使用するツールをダウンロードしてインストールします:

    注: プラットフォームによっては、ソースからツールをビルドする必要がある場合があります

  2. Beautifierプラグインを有効にしてください。

    注: Qt Creator 10.0.0以降 、ClangFormat プラグインはデフォルトで有効になっています。Beautifier を有効にする場合は、Preferences >C++ >Formatting mode に移動し、「Disable 」を選択して ClangFormat を無効にしてください。これらを併用すると予期しない結果が生じる可能性があります。

  3. Preferences >Beautifier >General に移動し、使用するツールを選択してください。

    「Beautifier」の設定画面の「一般」タブ

  4. Automatic formatting on file save 」を選択すると、「Tool 」フィールドで選択したツールを使用して、ファイルを保存する際に自動的にコードが整形式化されます。

    ファイルの保存時にこの設定を一時的に無効にするには、[File ] に移動し、[Save Without Formatting] を選択します。

  5. Artistic Style 」、「ClangFormat 」、または「Uncrustify 」に移動し、ツールの実行ファイルへのパスを設定し、使用するスタイルを定義する設定ファイルを選択します。

    「Beautifier」の設定にある「Uncrustify」タブ

    Beautifier Uncrustify の設定

現在開いているファイルの書式設定

Tools >Beautifier >Artistic StyleClangFormat 、またはUncrustify に移動し、現在のファイルのテキストをフォーマットするためのアクションを選択します。

これらの操作にはキーボードショートカットを設定できます。

Format Current File に移動して、現在開いているファイルの書式設定を行います。

ClangFormat を使用してカーソル位置のテキストをフォーマットする

テキストが選択されていない状態で、Tools >Beautifier >ClangFormat >Format at Cursor を選択すると、カーソルの位置にある構文エンティティの書式設定が行われます。

Format Line(s) を選択すると、選択された行の書式設定が行われます。

Disable Formatting for Selected Text に移動して、選択した行を// clang-format off および// clang-format on で囲みます。

Uncrustify を使用して選択したテキストをフォーマットする

テキストが選択されていない状態で、Tools >Beautifier >Uncrustify >Format Selected Text に移動すると、デフォルトでファイル全体がフォーマットされます。

この動作を無効にするには、Preferences >Beautifier >Uncrustify で「Format entire file if no text was selected 」のチェックを外してください。

プラグインの有効化と無効化」および「Beautifierも参照してください

Copyright © The Qt Company Ltd. and other contributors. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.