it-swarm-ja.com

intellijのフォーマッターをカスタマイズして、条件演算子を新しい行の先頭に配置できますか?

現在、IntelliJ(具体的にはAndroid Studio))は、次のような長い条件を切り詰めています。

if (valueWithALongNameA || valueWithALongNameB && valueWithALongNameC) {
}

// becomes

if (valueWithALongNameA ||
    valueWithALongNameB &&
    valueWithALongNameC) {
}

しかし、私たちのコーディング規約では、次のようにフォーマットしています。

if (valueWithALongNameA || valueWithALongNameB && valueWithALongNameC) {
}

// becomes

if (valueWithALongNameA
    || valueWithALongNameB
    && valueWithALongNameC) {
}

||および&&私たちのスタイルの改行の後にあります。 IntelliJに自動フォーマットでこれを行わせる方法はありますか?

主な問題は、自動フォーマットを使用してコードが標準にフォーマットされていることを確認することですが、これにより、適切にフォーマットされた条件が不必要に変更され、差分が台無しになります。

設定に関連するものが見つかりませんでした:

Most of the formatting preferences in Android Studio

すべての設定を一度に画面に表示しようとしましたが、一部を切り取らなければならなかったため、「再フォーマット時に保持」オプションと「右マージンを超えないようにする」オプションを除外しました。 「改行」、「1行の制御ステートメント」、「1行の複数の式」を除いて、すべてチェックされます。カットオフセクションのタイトルは「ブレースの配置」です。

4
Ben Leggiero

私はあなたが望むものの反対が欲しいのですが、これは設定です(OSX、14.1.3)。確かにそれは明らかではありません。

screenshot

screenshot

4
aliteralmind