JetBrains Rider 2020.2 ヘルプ

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

設計時コードインスペクションを構成する

デフォルトでは、JetBrains Rider はサポートされている言語に対応するすべてのファイルで設計時コードインスペクションを有効にします。必要に応じて、無効にすることができます。設計時コードインスペクションが有効かどうかにかかわらず、コードインスペクションを特定の範囲でいつでも実行できます。

  1. Ctrl+Alt+S を押すか、メニューからファイル | 設定(Windows および Linux)または JetBrains Rider | 環境設定(macOS)を選択し、左側のエディター | インスペクション設定を選択します。

  2. 設計時コードインスペクションを切り替えるには、コード分析を有効にするチェックボックスを使用します。

  3. 必要に応じて、このページでデザイン時のインスペクション機能を有効または無効にすることができます。

    色識別子 このオプションでは、ReSharper 構文強調表示スキームを有効または無効にできます。
    選択されている場合、言語 ID は、Visual Studio オプションで定義されている色(ツール | オプション | 環境 | フォントおよび色)で強調表示されます。
    ReSharper によって提供される構文識別子のリストは、アイテムを表示するリストで利用できます。各名前は ReSharper プレフィックスで始まります。
    強調表示カラーの使用箇所 コード内の色定義の強調表示を有効にします。詳細は、カラーアシスタンスを参照してください。
    文字列リテラルの特殊文字を強調表示する 非逐語文字列内の正しいおよび不正なエスケープシーケンスの強調表示を有効にします。例:
    Highlighting of escape sequence in strings
    詳しくは、正規表現のアシスタンスを参照してください。
    コンテキスト終了を強調表示する このオプションはデフォルトで有効になっており、制御フローが現在のコンテキストを終了できるすべての場所を強調表示するように JetBrains Rider に指示します。例:メソッドの場合、キャレットをこれらの識別子の 1 つに設定すると、メソッドの戻り型、すべての return , throw キーワードなどが強調表示されます。
    JetBrains Rider highlights context exits
    ループの場合、さらに、loop キーワードとこのループ内のすべての break ステートメントを強調表示します。
    メソッドがエディターに完全に表示されない場合は、メソッド名で関数出口にナビゲートするコマンドを呼び出して、別の種類の強調表示をトリガーできます。これは、キャレットがメソッド名を離れても消えません。
  4. 必要に応じて、ソリューション全体の分析を有効にするためにソリューション全体の分析を可能にするチェックボックスを選択できます。

  5. 設定ダイアログで保存をクリックして変更を適用し、JetBrains Rider に保存場所を選択させるか、次へ保存リストを使用して特定の設定レイヤーに変更を保存します。詳細については、レイヤーベースの設定を参照してください。

コードインスペクションからファイルとフォルダーを除外する

JetBrains Rider を使用すると、コードインスペクションから除外するファイル、ファイルマスク、およびフォルダーのリストを構成できます。除外されたアイテムは、特定のスコープ設計時コードインスペクションコードインスペクションの両方で無視されますが、コードインスペクションから除外されたシンボルに移動したりリファクタリングしたりできるように、JetBrains Rider によって引き続きインデックスが作成されます。

コードインスペクションから特定のファイルとフォルダーを除外する

  1. Ctrl+Alt+S を押すか、メニューからファイル | 設定(Windows および Linux)または JetBrains Rider | 環境設定(macOS)を選択し、左側のエディター | インスペクション設定を選択します。

  2. スキップする要素セクションの左側の部分では、コードインスペクションによって無視されるファイルまたはフォルダーを指定できます。

  3. このセクションの右側では、ソリューション内の一致するすべてのファイルをコードインスペクションから除外するマスク(*.vb など)を指定できます。

  4. 設定ダイアログで保存をクリックして変更を適用し、JetBrains Rider に保存場所を選択させるか、次へ保存リストを使用して特定の設定レイヤーに変更を保存します。詳細については、レイヤーベースの設定を参照してください。

コードインスペクションから現在のファイルをすぐに除外することもできます。そのため、JetBrains Rider は、オプションを開かずに除外ファイルのリストにこのファイルを追加します。

コードインスペクションから / に現在のファイルを除外 / 含める

  • Ctrl+Alt+Shift+8 を押します。

コードインスペクションから除外されたファイルを開くと、ステータスインジケータの対応するアイコンCode analysis pausedでそれを認識できます。

生成されたコードのコードインスペクションを部分的に無効にする

生成されたコードを含むファイル、フォルダー、ファイルマスク、およびリージョンのリストを構成することもできます。これらの項目の場合、JetBrains Rider は、コンパイラエラーと警告のコードをチェックするコードインスペクションのみを実行します。生成されたコードに通常使用される一部のファイルマスクと領域(*.designer.cs など)はデフォルトでこのリストに含まれていますが、必要に応じてデフォルト設定を変更できます。

生成されたコードでファイルとリージョンを指定する

  1. JetBrains Rider 設定 Ctrl+Alt+Sエディター | インスペクション設定 | 生成されたコードページで、追加ボタンを使用して、生成されたコードを含むファイルまたはフォルダーを指定します。

  2. ページの左下部分で、追加ボタンを使用して、生成されたコードファイルのマスク(* .Designer.cs など)を指定します。

  3. ページの右下の部分で、追加ボタンを使用して、生成されたコードを含む領域の名前を指定します。

  4. 設定ダイアログで保存をクリックして変更を適用し、JetBrains Rider に保存場所を選択させるか、次へ保存リストを使用して特定の設定レイヤーに変更を保存します。詳細については、レイヤーベースの設定を参照してください。

生成コードを含むアイテムのリストは、生成コードのコードスタイルとクリーンアップを無効にするためにも使用できます。

コードインスペクションの重大度レベルを変更する

各 JetBrains Rider のコードインスペクションには独自のデフォルトの重大度レベルがあり、検出されたコードの課題の潜在的な影響に従って設定されます。ほとんどのインスペクションには、変更可能な重大度レベルがあります。

コンパイラのエラーと警告を検出するインスペクションには、対応する重大度レベルがあり、変更できないことに注意してください。ただし、一部のコンパイラ警告では、#pragma ディレクティブを使用して抑制することができます。特定の警告時にアクションリスト#pragma で抑制するアクションを探します。

エディターからインスペクションの重大度レベルを変更することができます。このインスペクションで検出されたコードの課題が強調表示されます。

エディターからインスペクションの重大度を変更する

  1. キャレットに JetBrains Rider のインスペクションで強調表示されたコードの課題を設定します。

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

  3. アクションリストでインスペクション [ インスペクション名 ] | インスペクションの重大度を設定するを選択し、新しい重大度を選択します。

    Changing inspection severity level

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

  5. 変更された重大度レベルを共有設定レイヤーに保存する必要がある場合は、インスペクションの重大度を設定するメニュー項目をクリックするか、選択されているときに Enter を押します。表示されるダイアログで、目的の重大度レベルを選択し、次へ保存をクリックしてから、目的の設定レイヤーを選択します。

    Inspection Options dialog

変更された重大度レベルを共有設定レイヤーに保存する、または複数のインスペクションの重大度レベルを変更する別の方法は、以下で説明する JetBrains Rider 設定ダイアログ Ctrl+Alt+S を使用することです。

設定からコードインスペクションの重大度レベルを変更する

  1. JetBrains Rider 設定 Ctrl+Alt+Sエディター | インスペクション重大度ページで、すべての構成可能コードインスペクションおよびその重大度レベルを表示できます。インスペクションは言語ごとに、次にカテゴリごとにグループ化されます。

  2. 重大度を変更するインスペクションを検索して選択します。

  3. 選択したエントリの右側にあるリストをクリックして、目的の重大度レベルを選択します。

    Changing inspection severity in the JetBrains Rider Options dialog

  4. インスペクションのデフォルトの重大度レベルを変更すると、その横にデフォルトにリセット ThemedIcon Undo Screen Gray png ボタンが表示され、重大度をデフォルト値にリセットできます。
    同じボタンが、そのようなインスペクションが属するカテゴリの横にも表示されます。カテゴリの横にあるこのボタンをクリックすると、カテゴリ内のすべてのインスペクションがデフォルトの重大度レベルにリセットされます。

  5. 設定ダイアログで保存をクリックして変更を適用し、JetBrains Rider に保存場所を選択させるか、次へ保存リストを使用して特定の設定レイヤーに変更を保存します。詳細については、レイヤーベースの設定を参照してください。

特定のコードインスペクションを無効 / 有効にする

一部のコードインスペクションがささいな、または興味がないと思われる場合は、このインスペクションを無効にして、コードインスペクション実行したときに関連する課題が特定のスコープで検出されないようにすることができます。無効にしたコードインスペクションはいつでも有効にできます。一部のインスペクションはデフォルトで無効になっており、必要に応じて有効にできます。

次のいずれかの方法でコードインスペクションを無効にすることができます。

  • エディター内でこのインスペクションによって強調表示されているコードの課題がある場合は、強調表示されているコードにキャレットを設定し、Alt+Enter を押してからインスペクション [ インスペクション名 ] | インスペクションの重大度を設定する | 見せないを選択します。

  • JetBrains Rider 設定 Ctrl+Alt+Sエディター | インスペクション重大度ページで、検索ボックスを使用して無効または有効にするインスペクションを見つけ、その隣のチェックボックスを使用します。

インスペクションの無効 / 有効状態は、重大度レベルの変更とまったく同じ方法で共有設定レイヤーに保存されます。

EditorConfig を使用して、コードインスペクションを構成する

EditorConfig使用してプロジェクトのコードスタイルを維持する場合は、.editorconfig ファイルからコードインスペクションを構成することもできます。

EditorConfig からコードインスペクションを構成するには、JetBrains Rider 設定 Ctrl+Alt+Sエディター | インスペクション設定ページで editorconfig、プロジェクト設定、ルールセットから設定を読み取りますチェックボックスを選択する必要があります。

EditorConfig 規則が提案するように、JetBrains Rider は、.editorconfig という名前のファイルで定義されたインスペクション設定を、現在のファイルのディレクトリとそのすべての親ディレクトリで、ルートファイルパスに到達するか root=true で EditorConfig ファイルを見つけるまで適用します。.editorconfig ファイルで指定されたファイルマスク( *Test.cs など)も考慮されます。

.editorconfig ファイルのインスペクション設定は、対応する行を追加することにより、他のプロパティと同様に構成されます。

[inspection_editorconfig_property]=[error | warning | suggestion | hint | none]

例:次の行を使用して、可能性のある 'System.NullReferenceException' インスペクションの重大度レベルエラーに変更できます。

resharper_possible_null_reference_exception_highlighting=error

各インスペクションの EditorConfig プロパティは、コードインスペクション索引セクションと EditorConfig プロパティのインデックスページのページにあります。- ブラウザ検索を使用して目的のインスペクションのプロパティを探すだけです。

特定のスコープ内のコードインスペクションを抑制する

特定のコードの課題を無視する 1 つの方法は、対応するコードインスペクション無効にすることです。この場合、このインスペクションによって検出されたすべてのコードの課題はどこでも無視されます。
特定の場所で特定のインスペクションを抑制しながら、他の場所でこのインスペクションに関する他の同様の課題を検出し続ける必要がある場合があります。
例:JetBrains Rider は一部のコードを「デッド」と見なし、それが真実であることがわかります。インスペクションは役に立ち、無効にしたくありません。ただし、後でこのコードを使用して、エディター強調表示したり、インスペクションの結果に表示したりしたくない場合があります。これを行うには、JetBrains Rider を使用して、コメントまたは属性でインスペクションを抑制することができます。コメントは、コードの任意の部分に対してより便利です。属性は、メソッドまたはタイプ全体でインスペクションを抑制するのに適しています。

特定のスコープ内のコードインスペクションを抑制する

  1. キャレットに JetBrains Rider のインスペクションで強調表示されたコードの課題を設定します。

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

  3. アクションリストで、次のいずれかを選択します。

    • インスペクション [ インスペクション名 ] | コメントで一度無効にする - このオプションは、単一のコメント ReSharper disable once [inspection id] を挿入します。これは、対応する課題の最初の発生に対してインスペクションのみを抑制します。

    • インスペクション [ インスペクション名 ] | コメントで一度無効にする | コメント付きのファイルで無効にする - このオプションは単一のコメント ReSharper disable [inspection id] をファイルの先頭に挿入します。このコメントは、ファイル内の対応するすべての課題についてインスペクションを抑制します。

    • インスペクション [ インスペクション名 ] | コメントで一度無効にする | 無効にしてコメントで復元する — このオプションは、課題の前後に ReSharper disable [inspection id]ReSharper restore [inspection id] のペアのコメントを挿入します。これらのコメントは、それらの間のすべての対応する課題についてインスペクションを抑制します。
      次に、これらのコメントをファイル内の他の場所に移動して、このタイプのいくつかの課題を抑制できます。例:これは、いくつかの未使用の名前空間インポートを保持したい場合、「冗長名前空間」インスペクションを抑制できます。

    • インスペクション [ インスペクション名 ] | コメントで一度無効にする | メソッドを無効にする - このオプションは、メソッドに [SuppressMessage( "ReSharper", "[inspection id]")] 属性を追加します。この属性は、メソッド内のインスペクションを抑制します。

    • インスペクション [ インスペクション名 ] | コメントで一度無効にする | クラスを無効にする - このオプションはクラスに [SuppressMessage(" ReSharper ", "[inspection id]")] 属性を追加します。この属性はクラス全体でインスペクションを抑制します。

    • インスペクション [ インスペクション名 ] | コメントで一度無効にする | ファイル内のすべてのインスペクションを無効にする — このオプションは、ファイルの先頭に単一のコメント ReSharper disable All を挿入します。このコメントは、すべてのインスペクションファイルを抑制します。
      必要に応じて、特定の行の後にコードインスペクションを有効にする ReSharper restore All を挿入できます。

タイプまたはメソッド内のすべてのインスペクションを非表示にするには、次の属性を追加します。[SuppressMessage(" ReSharper", "All")]

最終更新日 :

関連ページ:

注釈を使用してコードインスペクションを調整する

コード検査などのJetBrains Riderの多くの機能は、課題を検出し、改善を提案し、他の方法でお手伝いするために、言語構成の動作を知ることに大きく依存しています。しかし、この種の分析ではすべてを検出することはできません。例:メソッドがを返さないように設計されており、そのクライアントがそれに応じ...

設計時にコードの課題を検出する

JetBrains Rider は、エディターでコードファイルを開くとすぐに、コードファイルが閉じられるまで分析を開始します。検出されたすべてのコードの課題は、重大度に応じてエディターで強調表示されます。課題のマップは、エディターウィンドウの右側のエラーストライプにも表示されます。ここでは、ファイル...

特定の範囲でコードの課題を見つける

設計時コードインスペクションは、エディターでコーディングしたり、特定のファイルを見直したりするときに役立ちます。しかし、JetBrains Riderでは、ソリューション全体または狭い範囲でスタティックコード分析を実行し、結果をフレンドリーな視点で調べることもできます。開始コードインスペクション:ソ...

カラーアシスタンス

JetBrains Riderには、コード内のカラー定義を扱うための一連の機能が用意されています。どのように色が定義されていても、色の値には対応する色で下線が引かれます。色は補完リストでも視覚化されています。強調表示されている色の定義が表示されている場合は、専用のビジュアルエディターを使用して色の定...

正規表現のアシスタンス

JetBrains Rider は、.NET の正規表現で作業するための豊富なツールセットを提供します。既存の式をすばやく分析し、エラーを見つけて修正できます。新しい式を入力する際、JetBrains Rider は自動補完と検証に役立ちます。文字列リテラルの正規表現 :デフォルトでは、JetBra...

関数出口にナビゲートする

ナビゲート | 次にナビゲート | 機能終了|機能終了このコマンドを使用すると、関数の終了ポイントに簡単に移動できます。関数の名前、プロパティの getter または setter、コンストラクターの名前、およびステートメントで次にナビゲートを呼び出すと、このコマンドを見つけることができます...