設計時にコードの問題を分析する
JetBrains Rider は、エディターでコードファイルを開くとすぐに、コードファイルが閉じられるまで分析を開始します。検出されたすべてのコードの問題は、重大度に応じてエディターでハイライトされます。問題のマップは、エディターウィンドウの右側のエラーストライプにも表示されます。ここでは、ファイルのステータスを即座に確認し、マークをクリックして特定のコードの問題に移動できます。
デザインタイムインスペクションの機能
デザイン時のインスペクション機能は、Rider エディターの基本機能への主要な追加機能です。JetBrains Rider によって実行される設計時コードインスペクションを説明するために、エディターに表示される次のコードの抜粋を検討してください。
![JetBrains Rider: 設計時コードインスペクション JetBrains Rider: Design-time code inspection](https://resources.jetbrains.com/help/img/rider/2024.1/code_analysis_sample.png)
この例では、JetBrains Rider コードインスペクションの次の機能を確認できます。
ソリューション全体の分析が有効になっている場合、エラーを含むすべてのファイルがハイライトされたタブで表示されます。
中優先度のコードの問題(この場合、命名スタイルと一致しないシンボル名に関する警告)は、中向きの下線でハイライトされます。
優先度の低いコードの問題(この場合、未使用のパブリックメンバーに関する提案)はグレー表示されます。
ステータスインジケータは、現在のファイルにコードの問題があるかどうかをすばやく確認できます。
コード分析のヒントを使用すると、関数の戻り値の欠落、switch ステートメントの中断の欠落、破棄されたリソースに気づきやすくなります。
インポートされていないタイプに対して表示される修正ポップアップ。Alt+Enter を押すか、このポップアップをクリックするだけで、JetBrains Rider がファイル内のすべてのタイプに不足しているディレクティブを追加します。詳細については、欠落している名前空間をインポートするを参照してください。
エラーストライプには、警告に対応するマーカーが表示されます。
エラーストライプには、エラーに対応するマーカーが表示されます。
JetBrains Rider に何か提案がある場合に、キャレット位置の左側に表示されるアクションインジケーター。
優先度の高いコードの問題(この場合、未解決のシンボルと誤ったリターンタイプに関連するエラー)は、赤いテキストと赤い下線でハイライトされます。
エラーストライプには、提案に対応するマーカーが表示されます。
Alt+Enter を押すか、アクションインジケーターをクリックして開くことができるアクションリストには、キャレットでの問題のクイックフィックスのリストが含まれています。
「鉛筆」ウィジェットは、コードのハイライトと視覚的なヘルパーを構成できます。
ソリューション全体の分析が有効になっている場合、JetBrains Rider を使用すると、さらに多くのコードの問題を確認できます。この例では、未使用のパブリックメンバーを検出し、ソリューション内の他のファイルのエラーを通知します。ソリューション全体の分析アイコンをクリックして、検出された問題を調べます。
キャレットの問題の簡単な説明がステータスバーに表示されます。
問題ウィンドウ Alt+6 は、現在のファイル内のすべてのコードの問題をリストします。ソリューション全体の分析が有効になっている場合、ソリューションファイル内のすべてのエラー / 警告もすべてのソリューションファイルタブに表示されます。
ソリューション全体の分析が有効になっている場合、JetBrains Rider がエラーを検出したファイルとそのすべての親アイテムは、ソリューションエクスプローラーで赤い下線でハイライトされます。
問題の説明を表示
コードの問題ごとに、JetBrains Rider は、いくつかの方法で表示できる簡単な説明を提供します。
キャレットがハイライトされたコードにあるときに、ステータスバーの左下隅を確認します。
キャレットがハイライトされたコードにあるときに Ctrl+F1 を押すと、ツールヒントに問題の説明が表示されます。あるいは、ハイライトされたコードの上にマウスを置きます。
エラーストライプ上のコード発行マーカーの上にマウスを置きます。
マーカーに対応するコードが表示されているエディター領域の外側にあり、JetBrains Rider 設定 Ctrl+Alt+S のスクロールバーのホバーにコードレンズを表示するが有効になっている場合、マーカーの上にマウスを置くと、対応するコードの問題を含むこのコードフラグメントがポップアップに表示されます。
ページで
問題ビューを使用して、現在のファイル内のすべてのコードの問題を調査する
設計時コードインスペクションが有効になっている場合は、問題ツールウィンドウ Alt+6 でコードの問題を調べることができます。現在のファイルタブには、現在のファイルで見つかったすべての問題が一覧表示されます。総号数はタブタイトルの横に表示されます。エディターでファイルを切り替えると、リストが更新されます。
![JetBrains Rider: 問題ツールウィンドウ: 現在のファイルタブ JetBrains Rider: Problems tool window. Current File tab](https://resources.jetbrains.com/help/img/rider/2024.1/problems_window_current_file_tab.png)
ウィンドウ内で問題を選択して F4 を押すか、問題をダブルクリックしてエディター内の対応する行に移動します。
または、エディターのプレビューを開く をクリックして、問題ウィンドウのソースコンテキストで選択した問題を表示することもできます。このプレビューは通常のエディターであり、コードを変更して利用可能なクイックフィックスを適用できることに注意してください。
特定の重大度レベルの問題を除外し、それらの並べ替えを構成するには、表示オプション をクリックします。グループ化または並べ替えのオプションが選択されていない場合、問題はファイルに表示される順序で一覧表示されます。
コードの問題を移動する
設計時コードインスペクションが有効になっている場合は、現在のファイルで検出されたすべての問題(ヒントの重要度レベルを持つものを除く)間を簡単に移動できます。
現在のファイルのコードの問題を移動するには、次の 2 つのモードがあります。
すべての重大度レベル(ヒントを除く)の問題で停止します。
ファイル内の最高の重大度レベルの問題でのみ停止します。例: エラーがある場合、アクションはそれらの間を移動しますが、ファイル内のすべてのエラーが修正されるとすぐに、アクションは警告の間を移動します。
Ctrl+Alt+S 設定のエディター | コード編集ページの '次のエラー' アクションで通過オプションを使用して目的の動作を指定するか、ステータスインジケーターの上にマウスを移動して をクリックし、目的の動作を選択できます。
![JetBrains Rider: コードの問題間を移動するための動作の構成 JetBrains Rider: configuring behavior for navigating between code issues](https://resources.jetbrains.com/help/img/rider/2024.1/status_indicator_next_error_behavior.png)
現在のファイルのコードの問題を移動する
次のコードの問題に進むには F2、前のコードの問題に進むには Shift+F2 を押します。
メインメニューから
または を選択します。エディターウィンドウの右側にあるエラーストライプを使用します。マーカーをクリックすると、対応する問題にキャレットが表示されます。エラーストライプの上部にあるステータスインジケータをクリックすると、キャレットがファイル内の次の問題に移動します。
ステータスインジケータの横にある
および
アイコンを使用します。
ファイルまたはソリューションのエラーを移動する
Alt+F2 を押して次のエラーに進み、Alt+Shift+F2 を押して前のエラーに進みます。
ソリューション全体の分析が有効で、エラーがいくつかある場合は、エラーの数がステータスバーの右端に表示されます。この番号をクリックすると、ソリューションの次のエラーに移動できます。
デザイン時のインスペクションはいつ無効になりますか?
デフォルトでは、設計時コードインスペクションはサポートされているすべての言語で有効になっていますが、現在のファイルで分析を使用できない場合がいくつかあります。エディターの右上隅にある インジケーターによって、コードインスペクションが無効になっているファイルを認識できます。
- 設計時インスペクションはグローバルに無効になっています
JetBrains Rider 設定 Ctrl+Alt+S のコード分析を有効にするを選択すると、再度有効にできます。
ページで- コードインスペクションは現在のファイルで無効になっています
現在のファイルはコード分析から除外されます。明示的に、含まれているフォルダーによって、または JetBrains Rider 設定 Ctrl+Alt+S のスキップする要素セクションのファイルマスクによってリストされます。
ページのCtrl+Alt+Shift+8 を押すと、現在のファイルのコード分析を切り替えることができます。これにより、スキップする要素リストに追加またはスキップする要素リストから削除されます。
- ファイルが大きすぎるため、デザイン時コードインスペクションが無効になっています
パフォーマンスとメモリ消費を最適化するために、JetBrains Rider は、
300
キロバイトを超えるファイルで設計時のインスペクションを自動的に無効にします。このような各ファイルで Ctrl+Alt+Shift+8 を押すと、コード分析が有効になります。ファイルサイズが
2500
キロバイトを超える場合、コーディング支援を含むすべての JetBrains Rider 機能はそのファイルで無効になり、Ctrl+Alt+Shift+8 を押しても効果はありません。この制限は、idea.max.intellisense.filesize
IDE プロパティを使用してグローバルに拡張できます。- ファイルはソリューションに含まれていないため、分析されません
JetBrains Rider には、各ファイルで使用されているシンボルと参照を分析するためのソリューションモデルが必要です。現在のソリューションに含まれていないファイル(.xml などの一部の自己完結型ファイルを除く)を分析することはできません。
これは、逆コンパイルされたファイルや、コンパイルされたコードを移動するときに開くシンボルサーバーからのファイルでよく発生します。意味のある編集を行う方法がないため、通常、このようなファイルを分析することは望ましくありません。
一方、システムファイルマネージャーまたは
を介してファイルをドラッグアンドドロップして編集するためにファイルを開いた場合は、ファイルが属するソリューションを開くか、現在のソリューションにファイルを含める必要があります。(ターゲットプロジェクトを右クリックして、 を選択します)。- ファイルの分析中に内部エラーが発生しました
まれに、JetBrains Rider がファイルを分析できない内部エラーが発生する場合があります。このような場合は、分析インデックスをクリーンアップして IDE を再起動します。メインメニューから
を選択します。- コードインスペクションは部分的に無効になっています
ファイルが明示的に、その包含フォルダーによって、または生成されたコードを含むものとしてファイルマスクによってリストされている場合、設計時コードインスペクションは、そのファイルの構文およびコンパイラーエラーのみを報告します。
インスペクションオプションメニュー
推奨される修正の他に、各構成可能コードインスペクションおよびカスタムインスペクションについて、JetBrains Rider はアクションリストにインスペクション [ インスペクション名 ] サブメニューを表示し、以下の項目を含みます。
最も物議を醸す問題については、対応するインスペクションの詳細な説明が記載されたヘルプページを開くなぜ JetBrains Rider はこれを提案していますか? アイテムがあります。
![インスペクション [ インスペクション名 ] サブメニュー Inspection [name of inspection] sub-menu](https://resources.jetbrains.com/help/img/rider/2024.1/code_inspection_menu.png)
類似問題を見つける
ハイライトされた問題をクイックフィックスで修正するだけでなく、ソリューション全体またはより小さな範囲で、すべての類似の問題(同じコードインスペクションで検出されたすべての問題)を検索して調査することができます。
類似問題を見つける
エディター内のハイライトされた問題にキャレットを置きます。
Alt+Enter を押すか、キャレットの左側にあるアクションインジケーターをクリックして、アクションリストを開きます。
現在のファイルで同様の問題を見つけるには、インスペクション [ インスペクション名 ] | [ ファイル名 ] ファイルで同様の問題を見つけるを選択します。
現在のプロジェクトまたはソリューションで類似の問題を見つけるには、サブメニューを展開して目的のスコープを選択します。
必要に応じて、ソリューション内の任意のプロジェクトまたはソリューションフォルダーで同様の問題を検索できます。これを行うには、サブメニューでカスタムスコープで同様の問題を見つけるを選択します。
開いたダイアログで、目的のプロジェクトまたはソリューションフォルダーの名前を入力し、OK をクリックします。
見つかった問題はすべて、インスペクション結果ウィンドウに表示されます。
関連ページ:
![](https://resources.jetbrains.com/help/img/rider/2024.1/Code_Analysis__Code_Highlighting__Warnings__2.png)
コードインスペクション
JetBrains Rider は、サポートされているすべての言語で 2500 を超えるコードインスペクションを提供します。これらのインスペクションは、開いているすべてのファイルの設計時にコードの問題を検出してハイライトするために適用されます。また、特定の範囲内のすべてのコードの問題を検出するために適用されます。インスペクション JetBrains Rider が提供するコードの種類を調べるには、異なる言語の JetBrains Rider コードインスペクションの全リストをご覧ください。コードイ...
![](https://resources.jetbrains.com/help/img/rider/2024.1/problem_description_error_stripe.png)
エラーストライプとステータスインジケータ
エラーストライプとステータスインジケータは、現在のファイルの設計時コードインスペクションの結果を視覚化し、コードの問題間を移動できます。また、エラーストライプには、ブックマークやハイライトされた使用箇所など、他の機能の特別なマークが表示されます。エラーストライプ:エラーストライプは、エディターのスクロールバーに統合されたサイドバーです。次の項目を個別のマーカーとして表示できます。JetBrains Rider の設計時インスペクションが発見したコードの問題。TODO アイテム、ファイル内のシン...
![](https://resources.jetbrains.com/help/img/rider/2024.1/editor_basics.png)
エディターの基本
ビジュアル要素の概要:エディターには、コードの読み取り、書き込み、移動に役立つ多くの視覚要素があります。それらのいくつかを見てみましょう。行数はデフォルトで表示されますが、グローバルに、または現在のドキュメントに対して非表示にすることができます。アクションインジケータは、現在のキャレット位置に対して 1 つ以上のアクションが使用可能であることを示しています。使用可能なアクションを表示するには、を押すか、インジケーターをクリックします。コードビジョンは、タイプおよびタイプメンバーにさまざまな役...
![](https://resources.jetbrains.com/help/img/rider/2024.1/swea_not_built.png)
ソリューション全体の分析
JetBrains Rider のソリューション全体の分析により、2 つの関連しているが異なる機能が実現します。ソリューション全体のエラー / 警告モニター:JetBrains Rider 自身のインスペクションによって検出されたコンパイラーのエラー / 警告とエラー / 警告の両方で、ソリューション内のすべてのエラー / 警告を常に追跡できます。この機能は設計時コードインスペクションと連携して 2 つの利点をもたらします。ソリューションにエラー / 警告が含まれていないことを確認するために、す...
![](https://resources.jetbrains.com/help/img/rider/2024.1/edit_naming_rule_dialog.png)
ネーミングスタイル
JetBrains Rider は、コード内のシンボルの希望する命名スタイルを定義、制御、適用できます。一連のルールがあり、各ルールは一連の制約を持つ特定の識別子を対象とします (たとえば、ルールは静的プライベート読み取り専用フィールドを対象にすることができます)。各ルールには、複合語、アンダースコア、サフィックス、プレフィックスなどの大文字化を定義する 1 つ以上の関連スタイルを含めることができます。これらのルールは、JetBrains Rider がコード補完およびコード生成機能を使用して新...
![](https://resources.jetbrains.com/help/img/rider/2024.1/type_conversion_hints.png)
インレイヒント
インレイヒントは、コードの読みやすさを向上させる構成可能なエディターの装飾です。プッシュツーヒントモード:インレイヒントは役立つ場合がありますが、一方で、エディタースペースを取り、場合によっては冗長に見えることがあります。プッシュツーヒントモード(デフォルトで有効になっている)を使用できます。ヒントを非表示にして、Ctrl キーを押したままにすることで必要な場合にのみヒントを表示できます。インレイヒントを常に表示または非表示にする場合は、JetBrains Rider 設定のページにあるデフォ...