ReSharper 2021.1 ヘルプ

スマート補完

ReSharper | 編集 | スマートコード補完
Control+Shift+Space
ReSharper_CompleteCodeSmart

このコマンドは、式の予想される型に一致するように、型、メソッド、変数のリストをフィルター処理します。ReSharper が式の予想される型(たとえば、割り当ての右辺、変数初期化子、または return ステートメント)を判別できる限り、どこでも機能します。複数の戻り値の型が可能な場合、ReSharper は、該当する型の最後に使用された記号を検出し、ルックアップリストでそれを自動的に選択します。Type-Matching Completion は、匿名デリゲート、ラムダ式、通常のメソッド、out パラメーターのローカル変数の作成を提案することもできます。それに加えて、オブジェクト初期化子では、Type-Matching Completion は、まだ値が割り当てられていないフィールド / プロパティを提案します。

デフォルトでは、C# および VB.NET のスマート補完アイテムは、自動補完および基本補完の候補リストに含まれています。デフォルトの動作を変更する場合は、ReSharper オプションの環境 | IntelliSense | 補完の振る舞いページで対応するコントロールを使用します。

スマート補完を呼び出す

  1. コードを入力する位置にキャレットを置きます。

  2. Control+Shift+Space を押します。

  3. リストから提案を選択して Enter を押すか、識別子の頭文字または CamelHumps の省略形の入力を開始して、提案のリストを絞り込みます。

また、既存の識別子に対してスマートコンプリートを呼び出すこともできます。この場合、選択した補完候補を適用するには 2 通りの方法があります。 Enter を押して既存の項目を残すか、Tab を押して既存の項目を置き換えます(必要に応じて、ReSharper オプションの環境 | IntelliSense | 補完文字ページでデフォルトのショートカットを変更できます)。

キーボードを使用して補完リストで項目を選択すると、選択は最後の項目の後の最初の項目にジャンプし、逆も同様です。ReSharper オプション(Alt+R, O)の環境 | IntelliSense | 補完外観ページでリストの両端の周囲のループ選択をクリアすると、この動作を無効にできます。

補完候補からアイテムを除外する

たとえば、ソリューションにシステムタイプに類似したもの、たとえば MyFramework.MyCollections.List があるが、実際にはそれを使用していない場合など、一部のタイプまたは名前空間を提案しないようにすることができます。このような記号を提案から除外するには、ReSharper オプション(Alt+R, O)のコードインスペクション | 設定 | 自動インポートページのインポートおよび補完から除外リストに追加します。エントリの形式は、Fully.Qualified.NameFully.Qualified.Name.Prefix*、または *Fully.Qualified.Name.Suffix です。ジェネリクス型は List`1 として指定されています。

スマートな補完の例

次の例を使用して、さまざまなコード項目でスマートタイプマッチング補完がどのように機能するかを理解できます。

return 文の後

ReSharper: Smart completion after return statement

課題の右側に

ReSharper: Smart completion in the right-hand side of assignments

キャスト式

次の前で改ページ:

ReSharper: Smart completion in cast expressions
Type-Matching Completion を起動した後(この場合は単一のオプションがあるため、ReSharper はリストを表示せずに予期された型を挿入します):
ReSharper: Smart completion in cast expressions

オブジェクトイニシャライザ

ReSharper は、特定のオブジェクトに対して以前に設定されていなかったオブジェクト初期化子のプロパティを設定するための型マッチング完了を提供します。

ReSharper: Smart completion in object initializers

ラムダ式

従来の匿名メソッドと名前付きメソッドに加えて、Type-Matching Completion はラムダ式構文を簡単に生成します。

ReSharper: Smart completion in lambda expressions

out パラメーターの代わりにローカル変数を作成する

ReSharper: Smart completion. Creating a local variable in place of an out parameter

キャメルハンプを使う

ReSharper: Smart completion. Using CamelHumps

この機能は、次の言語とテクノロジーでサポートされています。

C# の機能の使用方法については、こちらの説明と例を参照してください。他言語の詳細については、言語による ReSharper の対応するトピックを参照してください。

関連ページ:

ダブル補完 | ReSharper

すべての ReSharper の補完ショートカットは、複数回連続して押すことができます。この場合、ReSharper はさらに補完リストに提案を加えます。新しい提案には緑色の縦線が付いているため、簡単に見つけることができます。必要に応じて、ReSharper オプション(Alt+R, O)のページの新しい項目をハイライトするチェックボックスをオフにして、このヘルパーをオフにすることができます。ダブル基本補完:基本補完を 2 回呼び出すと、ReSharper は補完リストにいくつかの新しい提案を...

自動補完 | ReSharper

ReSharper の自動補完は、クラス、メソッド、変数、キーワード、以前にインポートされた拡張メソッドを含む現在の可視性スコープ内で使用可能なその他のシンボルの名前を提案します。ライブテンプレート、コード生成の提案、単体テストのカテゴリなど、他の多くのコンテキスト固有の提案も補完リストで利用できます。デフォルトでは、自動補完の提案には、スマート補完およびインポートシンボル補完のアイテムも含まれます。デフォルトの動作を変更する場合は、ReSharper オプション(Alt+R, O)のページにあ...

基本補完 | ReSharper

ReSharper の基本補完は、クラス、メソッド、変数、キーワード、以前にインポートされた拡張メソッドを含む現在の可視性スコープ内で使用可能なその他のシンボルの名前を提案します。ライブテンプレート、コード生成の提案、単体テストのカテゴリなど、他の多くのコンテキスト固有の提案も補完リストで利用できます。デフォルトでは、基本補完の提案には、スマート補完およびインポートシンボル補完のアイテムも含まれます。デフォルトの動作を変更する場合は、ReSharper オプション(Alt+R, O)のページにあ...

CamelHumps

キャメルハンプは、各パートが大文字で始まる CamelCase、または複合名の一部がアンダースコアで区切られた複合名の一部を識別する機能です。これらの部分の最初の文字だけを入力することができ、ReSharper は自動的に名前が一致する項目を検索します。検索コマンドのキャメルハンプ:キャメルハンプは常にすべての名前で検索コマンド、つまりどこでも検索 / 型に移動、ファイルに移動、ファイルメンバーに移動、シンボルに移動で動作します。名前部分の最初の文字を入力し、一致する項目のリストを取得することは...

ASP.NET MVC 特有の機能 | ReSharper

ReSharper には、一般的な ASP.NET 機能に加えて、ASP.NET MVC での作業をより簡単にサポートする特殊機能があります。構文のハイライト:ASP.NET MVC メソッド呼び出しとパラメーターの特別な構文のハイライト: コード補完:文字列リテラルでアクションとコントローラーを参照するための専用コード補完: ナビゲーションと検索:さまざまなナビゲーション機能がアクションとコントローラーでも機能します。コード生成:使用箇所から新しいコントローラーとアクションを作成する: 最終...

言語による ReSharper: MS ビルド | ReSharper

MSBuild は、アプリケーションを構築するために広く使用されているプラットフォームです。特定の XML タグを使用して、プロジェクトの構築方法や実行方法を定義できます。ReSharper を使用すると、より速く行うことができます。コード検査:あらかじめ定義された要素またはその属性の名前を誤って入力した場合、ReSharper はそのような不一致についてハイライト表示します。まだ定義されていないプロパティを参照しようとすると、ReSharper はそのようなケースも検出します。MSBuild...