ReSharper 2021.1 ヘルプ

コードの構文スタイル: 1 つのネストされた文に対する波括弧

C# 仕様では、if-elseforeach など、一部の親ステートメントにある単一のネストされたステートメントを囲む中括弧を安全に省略できます。ただし、コードスタイルのガイドラインはこの点で異なる場合があります。ここで中括弧を要件と見なす人もいれば、冗長であると考える人もいます。どのスタイルを好む場合でも、重要なことは、コードベース全体で中括弧を一貫して使用することです。ReSharper を使用すると、各タイプのコードブロックの後に中括弧を使用するための設定を定義し、このスタイルを適用できます。

ReSharper は、中括弧のレイアウト(空白、タブ、改行)のための複数のフォーマット規則も提供します。これらの規則を確認および構成するには、ReSharper オプション(ReSharper | オプション)を開き、検索ボックスに braces と入力して、コード編集 | C# | スタイルのフォーマットのページで一致する項目を確認してください。

ReSharper を使用すると、既存のコードにブレーススタイルを適用したり、コード補完とコード生成機能を使用して新しいコードを生成したり、コードテンプレートを適用したり、リファクタリングを実行したりするときに設定を考慮できます。

ブレースにスタイル設定を適用する

デフォルトでは、ReSharper は単一のネストされたステートメントに対して中括弧を使用しても何もしません。関連するすべてのコードインスペクションが無効になっているためです。ReSharper が単一のネストしたステートメントのスタイル設定を制御し、設定の違反について通知する場合は、まず設定を構成する必要があります。

ReSharper はあなたの好みに合わないコードをハイライトして、対応するクイックフィックスを提案するか範囲を修正します。例: using にブレースを使うことを選ぶことができます:

ReSharper helps add braces around single nested statement

バルクモードで単一ステートメントを中括弧に設定するためのもう 1 つのオプションは、コードのクリーンアップです。組み込みプロファイルフルクリーンアップまたは再フォーマットして構文スタイルを適用のいずれかを使用してコードクリーンアップ実行するか、以下で説明するように、特定のタスクのみを対象としたカスタムプロファイルを作成して実行できます。

カスタムコードクリーンアッププロファイルでブレースの設定を適用する

  1. メインメニューから ReSharper | オプションを選択するか、Alt+R O を押します。

  2. クリーンアッププロファイル設定ページに移動します: コード編集 | コードのクリーンアップ | プロファイル

  3. 新しいカスタムクリーンアッププロファイルを作成するセクションの説明に従って、新しいプロファイルを作成します。新しいプロファイルの選択したプロファイル設定セクションで、シングルステートメント用の波括弧の追加 / 削除... チェックボックスをオンにします。必要に応じて、このプロファイルで他のコードクリーンアップタスクを有効にすることができます。

  4. オプションダイアログで保存をクリックして変更を適用し、ReSharper に保存場所を選択させるか、次へ保存リストを使用して変更を特定の設定レイヤーに保存します。詳細については、ReSharper 設定の管理と共有を参照してください。

  5. 設定を適用する範囲を選択します。

    • ファイルの任意の場所にキャレットを設定して、ファイルの設定を強制します。

    • ソリューションエクスプローラー内の 1 つまたは複数の項目を選択して、これらのノードおよびその子項目にあるファイルに設定を適用します。

  6. 以下のいずれか 1 つを実行します:

    • Control+Alt+F を押すか、メインメニューから ReSharper | 編集 | コードのクリーンアップ... を選択してください。

    • テキストエディターの任意の場所を右クリックするか、選択項目を右クリックし、コンテキストメニューでコードのクリーンアップを選択します。

  7. 開いているコードのクリーンアップダイアログで、新しく作成したプロファイルを選択します。

  8. 実行をクリックします。ReSharper は、選択した範囲であなたの設定を強制します。

コードのクリーンアップダイアログを開いてプロファイルを選択せずに中括弧の設定を適用する場合は、作成したプロファイルをサイレントクリーンアップにバインドし、Control+Shift+Alt+F を押して実行できます。環境設定の適用と他のコードスタイルタスクを組み合わせたカスタムクリーンアッププロファイルを作成することもできます。

単一ステートメントで中括弧の設定を構成する

波括弧スタイル設定は、レイヤーベースの設定の仕組みを使って保存されます。とりわけ、このメカニズムにより、さまざまなソリューションのさまざまな設定を維持したり、これらの設定を VCS に保持したり、チームメンバーと自動的に共有することができます。

ブレースの設定を構成する

  1. ReSharper オプション(Alt+R, O)のコード編集 | C# | 構文スタイルページに移動します。

  2. 波括弧カテゴリの設定を、コーディングのプラクティス / 標準に従って変更します。

  3. 右側の列の通知するセレクターを使用して、設定とは異なるコードインスペクション検出コードの重大度レベルを設定できます。

  4. オプションダイアログで保存をクリックして変更を適用し、ReSharper に保存場所を選択させるか、次へ保存リストを使用して変更を特定の設定レイヤーに保存します。詳細については、ReSharper 設定の管理と共有を参照してください。

エディターで波括弧の設定を変更することもできます。波括弧では、該当する問題がハイライトされます。

中括弧の設定をエディターから変更

  1. ReSharper のインスペクションによってハイライトされたコードの問題にキャレットを設定します。

  2. Alt+Enter を押すか、キャレットの左側にあるアクションインジケーターをクリックして、アクションリストを開きます。

  3. アクションリストでインスペクション " 中括弧を使用するか使用しない..." | コードスタイルを設定するを選択し、希望の設定を選択します。

    Changing code style preference for braces

  4. 変更は、スマートセーブロジックを使用して保存されます。

  5. 変更されたスタイル設定を共有設定レイヤーに保存する必要がある場合は、コードスタイルを設定するメニュー項目をクリックするか、選択されているときに Enter を押します。ReSharper は、ReSharper オプション(Alt+R, O)のコード編集 | C# | 構文スタイルページを開きます。ここで、必要に応じて設定を変更し、次へ保存をクリックして、目的の設定レイヤーを選択します。

関連ページ:

コードフォーマットルールの管理と適用 | ReSharper

コードスタイルの重要な点は、コードのフォーマット方法、つまり、空白と空白行を使用してコードブロックを配置および分離する方法、インデントにタブを使用するかどうか、および使用する方法。ReSharper コードフォーマットルールの広範なセットには、デフォルトの Visual Studio フォーマットオプションと多数のベストプラクティスを考慮したデフォルト構成があります。フォーマットルールのすべての詳細を構成し、コードにルールを適用できます。これらのルールは、ReSharper がコード補完およびコ...

コード補完 (IntelliSense) | ReSharper

ReSharper は、高度な機能を備えた Visual Studio のネイティブコード補完(IntelliSense)を補完し、拡張します。例: あなたの入力に基づいて提案のリストを絞り込み、選択した型と拡張メソッドを自動的にインポートし、メソッド名を補完するときに括弧を追加し、型に応じて変数とフィールド名を提案するなど。ReSharper のコード補完の機能に慣れ親しむために、いくつかの実装の基本があります: デフォルトでは、ReSharper はネイティブ Visual Studio の...

設計時にコードの問題を検出する | ReSharper

ReSharper は、エディターでコードファイルを開くとすぐに分析を開始し、最後まで編集を続けます。検出されたすべてのコードの問題は、重大度に従ってエディターでハイライトされます。問題のマップは、エディターウィンドウの右側のマーカーバーにも表示されます。ここでは、ファイルのステータスを即座に確認し、マークをクリックして特定のコードの問題に移動できます。デザインタイムインスペクションの機能:ReSharper によって実行されるデザインタイムコードインスペクションを説明するために、エディターに...

スコープの修正 | ReSharper

ほとんどのクイックフィックスは、キャレットで現在の問題を修正できますが、中には (たとえば、未使用のディレクティブを削除する、フィールドを読み取り専用にする、冗長なキャストの除去など)、現在のファイル、現在のプロジェクト、またはソリューション全体など、より大きな範囲で問題を自動的に見つけて修正できるものもあります。範囲内の修正を適用する:このような修正は、アクションリストの横に表示される小さな矢印で識別できます。範囲内の修正を適用する ReSharper のインスペクションによってハイライトされ...

コードインスペクション設定の構成 | ReSharper

設計時コードインスペクションを構成する:デフォルトでは、ReSharper は、サポートされている言語に対応するすべてのファイルで設計時コードインスペクションを有効にします。必要に応じて、無効にすることができます。設計時コードインスペクションが有効かどうかに関係なく、コードインスペクションは常に特定のスコープで実行できます。メインメニューからを選択するか、Alt+R O を押してから、左側のを選択します。設計時コードインスペクションを切り替えるには、コード分析を有効にするチェックボックスを使用し...

ReSharper 設定の管理と共有 | ReSharper

ReSharper は、階層化された設定のメカニズムを使用して環境設定を保存するため、次の利点があります。さまざまなソリューションで異なる設定を行うことができます。環境設定のさまざまなサブセットを別の場所に保存し、特定のソリューションで作業するときに環境設定を組み合わせることができます。例: 記号のアイコンとチーム設定のコード形式を個人設定で保存し、これらの設定を自動的に組み合わせることができます。設定の特定のサブセットを VCS に保持することにより、チーム内の設定を同期できます。ReShar...