このページでは

Qt Quick のコードスタイルを指定する

組み込みのコードフォーマッタ(非推奨)や、qmlformat などの外部ツールを使用して、QML コーディング規約に従って QML ファイルを自動的にフォーマットすることができます。

QMLコードスタイルをグローバルに指定するには:

  1. Preferences 」> Qt Quick > [Code Style]( ) を選択します。
  2. Custom settings 」で、変更する設定を選択し、「Copy 」を選択します。

    Qt Quick の環境設定にある「コードスタイル」タブ

  3. 設定に名前を付け、「OK 」を選択します。
  4. Formatter Selection 」で、使用するフォーマッタを選択します。

特定のプロジェクトについてグローバル設定を上書きするには、[Projects ] > [Code Style] を選択します。

組み込みのフォーマッタを使用する

組み込みのフォーマッタは、qmlformat ツールまたはカスタムフォーマッタの使用が推奨されるため、非推奨となっています。

組み込みフォーマッタのグローバル設定を行うには:

  1. Formatter Selection 」で、「Built-in formatter 」を選択します。
  2. Tabキーの押下をどのように解釈するか、継続行をどのように揃えるかを指定し、コード行の最大行長を設定します。

qmlformatの使用

qmlformatツールのグローバル設定を行うには:

  1. Formatter Selection で、QMLFormat を選択します。

    Qt Quick の「設定」にある「コードスタイル」タブ内の qmlformatter の設定

  2. Global qmlformat Configuration で、コードスタイルを設定します。ここで行った変更は、汎用設定場所(QStandardPaths::GenericConfigLocation )にある `.qmlformat.ini ` ファイルの設定を上書きします。
  3. プロジェクトにグローバルなqmlformat 設定ファイルのコピーを追加するには、Deploy INI File to Current Project を選択します。

qmlformatツールは、フォーマット対象のファイルと同じディレクトリ内で.qmlformat.ini ファイルを検索します。見つからない場合は、ルートディレクトリまで親ディレクトリを順に検索します。.qmlformat.ini ファイルが見つからない場合は、グローバル設定が使用されます。詳細については、qmlformat の設定を参照してください。

注: プロジェクトディレクトリまたはその親ディレクトリのいずれかにカスタム.qmlformat.ini ファイルが存在する場合 、そのファイルがグローバル設定よりも優先されます。

カスタムツールの使用

qmlformat と互換性のあるカスタムツールを使用するには:

  1. Formatter Selection で、[Custom formatter] を選択します。

    Qt Quick の環境設定にある「コードスタイル」タブ内のカスタムフォーマッタ設定

  2. Command で、ツールのパスを入力します。
  3. Arguments で、ツールを実行するためのオプションを入力します。
  4. 右側の.qmlformat.ini ファイルで、設定されたコードスタイルを確認します。

QML/JS ファイルの自動フォーマット」、「設定の検索」、「テキストまたはコードのインデント」、「コードスタイルの指定も参照してください

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.