プロファイル

この ReSharper オプションページでは、 カスタム クリーンアップ プロファイルの管理および構成、さらに サイレント コードのクリーンアップ用のクリーンアップ プロファイルの割り当てができます。 2 つのデフォルトプロファイル(フルクリーンアップ、 再フォーマットして構文スタイルを適用および コードの整形 )もここに表示されます。 変更することはできませんが、複製して新しいカスタムプロファイルを作成できます。
ツールバーコントロール
選択したクリーンアッププロファイルを構成するには、以下のコントロールを使用します。
| このボタンをクリックすると、選択したプロファイルを サイレント クリーンアップに使用できます。 サイレントクリーンアップに使用されるプロファイルには、 |
| このボタンをクリックして、選択したプロファイルのコピーを作成します。 デフォルト設定の場合は、カスタム クリーンアップ プロファイルを作成するために デフォルト クリーンアップ プロファイルのいずれかを複製する必要があります。 新しいプロファイルが作成されるとすぐに、編集モードで開き、そこで クリーンアップタスクのリストを構成できます。 |
| このボタンをクリックして、選択したカスタムプロファイルの編集モードを有効にします。 デフォルトのプロファイル(フルクリーンアップ、 再フォーマットして構文スタイルを適用、 コードの整形 )は編集できません。 |
| このボタンをクリックして、選択したカスタムプロファイルの名前を変更します。 デフォルトのプロファイル(フルクリーンアップ、 再フォーマットして構文スタイルを適用、 コードの整形 )は名前を変更できないことに注意してください。 |
| このボタンをクリックして、選択したカスタムプロファイルを削除します。 デフォルトのプロファイル(フルクリーンアップ、 再フォーマットして構文スタイルを適用、 コードの整形 )は削除できません。 |
| このボタンをクリックして編集モードを終了し、選択したプロファイルのプレビューに戻ります。 保存 をクリックしない限り、変更は適用されないことに注意してください。 |
選択したプロファイルのコードクリーンアップタスク
これらのタスクは、選択したカスタムクリーンアッププロファイルの編集モード(
構成 )を切り替えると構成可能になります。 最初は、カスタムプロファイルはなく、デフォルトプロファイルのタスクは編集できません。
複製 をクリックして、デフォルトプロファイルの 1 つの編集可能なコピーを作成し、そのタスクを編集できます。
コードの整形
C# | |
コードの整形 | ReSharper オプション の ページで構成できる環境設定に従ってコードを再フォーマットします。 詳細については、 フォーマットルールを適用する を参照してください。 |
埋め込み XML ドキュメントコメントを整形する | ReSharper オプション の ページで構成可能なオプションに従い、XML ドキュメント コメントを再フォーマットします。 ReSharper では次のようなプレーン コメントは整形されません: // A plain single-line comment
または /* A plain multi-line comment */
|
C++ | |
コードの整形 | ReSharper オプション の ページで構成できる環境設定に従ってコードを再フォーマットします。 詳細については、 フォーマットルールを適用する を参照してください。 |
Visual Basic | |
コードの整形 | ReSharper オプション の ページで構成できる環境設定に従ってコードを再フォーマットします。 詳細については、 フォーマットルールを適用する を参照してください。 |
埋め込み XML ドキュメントコメントを整形する | ReSharper オプション の ページで構成可能なオプションに従い、XML ドキュメント コメントを再フォーマットします。 ReSharper では次のようなプレーン コメントは整形されません: // A plain single-line comment
または /* A plain multi-line comment */
|
XML | |
コードの整形 | ReSharper オプション の ページで構成できる環境設定に従ってコードを再フォーマットします。 詳細については、 フォーマットルールを適用する を参照してください。 |
HTML | |
コードの整形 | ReSharper オプション の ページで構成できる環境設定に従ってコードを再フォーマットします。 詳細については、 フォーマットルールを適用する を参照してください。 |
CSS | |
コードの整形 | ReSharper オプション の ページで構成できる環境設定に従ってコードを再フォーマットします。 詳細については、 フォーマットルールを適用する を参照してください。 |
Javascript/Typescript | |
コードの整形 | ReSharper オプション の ページで構成できる環境設定に従ってコードを再フォーマットします。 詳細については、 フォーマットルールを適用する を参照してください。 |
埋め込み XML ドキュメントコメントを整形する | ReSharper オプション の ページで構成可能なオプションに従い、XML ドキュメント コメントを再フォーマットします。 ReSharper では次のようなプレーン コメントは整形されません: // A plain single-line comment
または /* A plain multi-line comment */
|
構文スタイル
C# | |
'var' スタイルを適用する | クリーンアップ中に 'var' 用のルールを適用します。 ReSharper オプション の ページで構成可能なルールです Alt+R、O 。 |
型には明示的または暗黙的な修飾子定義を使用する | 型修飾子のルールを適用します - |
型メンバーには明示的または暗黙的な修飾子定義を使用する | 型メンバー修飾子のルールを適用します ( |
修飾子の並べ替え | 型 / メンバー修飾子の優先順序を適用します。 このルールは、ReSharper オプション の ページで構成できます Alt+R、O 。 詳細については、 コードの構文スタイル: 修飾子 を参照してください。 |
引数スタイルを適用する(名前付き vs. 位置) | 特定の型のパラメーターの名前付き / 位置引数の設定を適用します。 この環境設定は、ReSharper オプション の ページで構成できます Alt+R、O 。 詳細については、 コードの構文スタイル: 名前付き / 位置引数 を参照してください。 |
冗長な丸括弧を削除 | ReSharper オプション の ページで指定された場合、冗長なオプションの丸括弧を削除します Alt+R、O 。 詳細については、 コードの構文スタイル: オプションの括弧 を参照してください。 |
オペレーションの優先順位を明示的に指定するために丸括弧を追加する | ReSharper オプション の ページで指定された場合、演算の優先順位を明確にするためにオプションの丸括弧を追加します Alt+R、O 。 詳細については、 コードの構文スタイル: オプションの括弧 を参照してください。 |
シングルステートメントの周囲に波括弧を追加 / 削除する | ReSharper オプション の ページで指定されている場合、単一のネストされたステートメントの前後にオプションの中括弧を追加または削除します Alt+R、O 。 詳細については、 コードの構文スタイル: 1 つのネストされた文に対する波括弧 を参照してください。 |
属性の括弧を追加 / 削除する | ReSharper オプション の ページで指定されている場合、複数の属性に関するルールを適用します Alt+R、O 。 詳細については、 コードの構文スタイル: 複数の属性 を参照してください。 |
コード本体スタイルを適用する(式本体 vs. ブロック本体) | ReSharper オプション の ページで指定されている場合、型メンバー本体(式本体またはブロック本体)の環境設定を適用します Alt+R、O 。 詳細については、 コード構文スタイル: タイプメンバーのボディ を参照してください。 |
末尾のコンマを配置する | ReSharper オプション の ページで指定されている場合、複数の要素と同様の構造(オブジェクト・配列・コレクション イニシャライザー、列挙型、switch 式等)の宣言における末尾コンマの環境設定を適用します Alt+R、O 。 詳細については、 コードの構文スタイル: 末尾のコンマ を参照してください。 |
オブジェクト作成スタイルを適用します(「new()」と「新しい T()」) | ReSharper オプション の ページで指定されている場合、C# 9.0 以降でターゲット型 |
デフォルト値スタイルを適用します('default' vs'default(T) ') | ReSharper オプション の ページで指定されている場合、デフォルト値式でオプションの型指定を使用するための環境設定を適用します Alt+R、O 。 詳細については、 コードの構文スタイル: デフォルト値の式('default' と 'default(T)') を参照してください。 |
名前空間を配置する(ファイルスコープとブロックスコープ) | ReSharper オプション の ページで指定されている単一の名前空間ファイルにおいて、 ファイルスコープの名前空間宣言を使用する環境設定を適用します Alt+R、O 。 詳細については、「コード構文スタイル: ファイルスコープの名前空間 」を参照してください。 |
null チェックパターンスタイルをアレンジする | ReSharper オプション の ページで指定されている場合、 型テスト 'is' 演算子 ( |
修飾子を配置する | 型メンバーを修飾するためのルールを適用します。 ReSharper オプション の ページで構成可能なルールです Alt+R、O 。 詳細については、 コードの構文スタイル: オプションのメンバー限定子 を参照してください。 |
組み込み型参照を修正する | 組み込み型名 (C# キーワードまたは CLR 型名) の規則を適用します。 このルールは、ReSharper オプション の ページで構成できます Alt+R、O 。 詳細については、 コードの構文スタイル: 組み込み型参照 を参照してください。 |
C/C++ | |
単一ステートメントの中括弧を追加 / 削除する |
|
'auto' スタイルを適用する | ReSharper オプション の ページで指定されている場合、変数型で |
関数宣言スタイルを適用する(通常の戻り値の型 vs. 後続の戻り値の型) | ReSharper オプション の Alt+R、O ページで指定されている場合、関数宣言における末尾または通常の戻り値の型の推奨スタイルを適用します 。 |
ネストされた名前空間スタイルを適用する | C++17 の入れ子名前空間構文を強制するルールを適用します。これにより複数階層の名前空間宣言が簡潔になります。 このルールは、ReSharper オプション の ページで構成できます Alt+R、O 。 |
型エイリアススタイルを適用する(typedef と type エイリアス) | ReSharper オプション の Alt+R、O ページで指定されている場合、型シノニムの推奨定義方法を適用します 。 |
cv 修飾子を配置する | cv 修飾子の優先順序を適用します。 |
include ディレクティブのスラッシュ(スラッシュ vs. バックスラッシュ)を整える | ReSharper オプション の ページで指定されている場合、 |
オーバーライド関数の指定子('virtual' および / または 'override')を並べる | オーバーライド関数やデストラクターで必要な指定子など、オーバーライド関数の推奨スタイルを適用します。 ReSharper オプション の ページで構成可能なルールです Alt+R、O 。 |
インクルードディレクティブの並べ替え |
|
メンバーイニシャライザーをソートする。 | ReSharper オプション の Alt+R、O ページで指定されているコンストラクター イニシャライザー リスト順に従って、メンバー イニシャライザーの順序を適用します 。 |
XAML | |
空のタグを折りたたむ | タグ本文が空の場合、終了タグを削除します。 |
HTML | |
属性値の引用符を正規化する | 一重引用符 |
Javascript/Typescript | |
文字列リテラルの引用符を正規化する | 一重引用符 |
ステートメント終了を適用する | JavaScript、TypeScript、JSON のステートメントの最後にオプションのセミコロン |
TypeScript 固有 | |
"public" の有無をコードスタイルと同期させる | このオプションを使用すると、ReSharper オプション の ページで構成可能な設定に従い、明示的な「public」修飾子を追加または削除できます Alt+R、O 。 |
必要に応じて明示的な「any」型アノテーションを追加する | このオプションを使用すると、ReSharper オプション の ページで構成可能な設定に従い、明示的な「any」アノテーションを型に追加できます Alt+R、O 。 |
型アノテーションの有無をコードスタイルと同期する | このオプションを使用すると、ReSharper オプション の ページで構成可能な設定に従い、明示的または暗黙的な型指定を強制できます Alt+R、O 。 |
必要に応じて 'require' の相対パススタイルを修正する |
|
型アサーションの代わりに 'as' を使用する | 置き換え var bar = <string> foo;
with var bar = foo as string;
これは JSX 構文とのあいまいさを回避する推奨方法です。 |
インポートの最適化
C# | |
'using' ディレクティブを最適化する。 |
詳細については、 コードの構文スタイル: 名前空間のインポート を参照してください。 |
領域で 'using' ディレクティブを活用する。 | このチェックボックスが選択されている場合、すべてのネームスペースインポートディレクティブをラップするための新しい領域がクリーンアップ中に作成されます。 |
領域名 | 名前空間インポートディレクティブをラップする領域の名前を指定することを許可します。 |
修飾された参照を短縮 | ReSharper オプション の ページで設定された環境設定に従い、名前空間をインポートすることで、可能な場合は完全修飾名を短い名前に置き換えます Alt+R、O |
Visual Basic | |
'import' ディレクティブを最適化する |
詳細については、 コードの構文スタイル: 名前空間のインポート を参照してください。 |
領域で 'using' ディレクティブを活用する。 | このチェックボックスが選択されている場合、すべてのネームスペースインポートディレクティブをラップするための新しい領域がクリーンアップ中に作成されます。 |
領域名 | 名前空間インポートディレクティブをラップする領域の名前を指定することを許可します。 |
修飾された参照を短縮 | ReSharper オプション の ページで設定された環境設定に従い、名前空間をインポートすることで、可能な場合は完全修飾名を短い名前に置き換えます Alt+R、O |
XAML | |
冗長な名前空間エイリアスを削除する | クリーンアップのスコープ内のすべての冗長な名前空間エイリアスを削除します。 冗長エイリアスも コードインスペクションで検出され、クイックフィックスで削除できます。 |
TypeScript 固有 | |
「import」ステートメントを最適化する | このオプションを使用すると、ReSharper オプション の ページで構成可能な設定に従い、冗長な「import」ステートメントまたは完全修飾名を削除できます Alt+R、O 。 |
参照コメントを最適化する | 冗長参照コメントを削除するには、このオプションを使用します。 |
ASP.NET | |
@Register ディレクティブを最適化する | 未使用の |
コードの再配置
C# | |
ファイルレイアウトを適用する | ReSharper オプション の ページで設定可能なルールに従って、ファイル内の型メンバーを並べ替えます Alt+R、O 。 詳細については、 ファイルとタイプのレイアウトパターンでメンバーを再配置する を参照してください。 |
CSS | |
プロパティをアルファベット順に並べる | CSS プロパティをアルファベット順に並べ替えます。 |
冗長性を取り除き、最適化を適用する
C# | |
コードの冗長性を削除する | ReSharper オプション の ページでは、ほとんどの言語の コードの冗長性 カテゴリで ReSharper は関連コード インスペクションがある事例を数十件リストアップします Alt+R、O 。 これらの中には特別な注意が必要なケースもあり、バッチモードで処理することはできませんが、クリーンアッププロファイルで コードの冗長性を削除する を選択すると、そのほとんどは自動的に修正されます。 |
可能であれば自動プロパティを使用する。 | 単純なプロパティと対応するバッキングフィールドを自動プロパティに置き換えます。 詳細については、 自動プロパティを使用する を参照してください。 |
可能であれば、フィールドを読み取り専用にする | 宣言またはコンストラクターで割り当てられ、読み取り専用のフィールドに |
可能であれば自動プロパティを取得専用にする。 | コンストラクター / イニシャライザーから初期化され、書き込みの使用がない自動プロパティの冗長な ReSharper は、プロジェクトファイル *.csproj で指定された C# バージョンを自動的に検出して使用します。 バージョンを変更するには、エディターでプロジェクトファイルを開き、 ソリューション内のすべてのプロジェクトの C# バージョンを設定するには、ソリューションディレクトリ内の Directory.Build.props ファイルで指定し、 こちらに記載の手順に従います。 .csproj ファイルで定義された言語バージョンは、 Directory.Build.props ファイルで指定されたバージョンを上書きすることに注意してください。 |
C/C++ | |
必須の 'typename' および 'template' キーワードを追加する | 欠落していた |
宣言と代入を結合する | ローカル変数が読み取られる前にすべてのパスで再割り当てされる場合の宣言と割り当てを結合します。 |
ローカル変数を const にする | 不変にできるローカルスコープ内のオブジェクトに |
可能であれば、メンバー関数を 'const' にする | 含まれているオブジェクトの状態を変更しないメンバー関数に |
可能であれば、メンバー関数を静的にする | メンバー関数を |
冗長なキャストを削除する | 冗長なキャスト式を削除します。 |
冗長な 'else' キーワードを削除する | コンテキスト内で冗長な |
冗長な詳細な型指定子を削除する | 新しいクラスの宣言に使用されない場合、またはよりローカルな非型宣言によって隠された以前に宣言された構造体を参照するために使用されていない場合、冗長な詳細型指定子を削除します。 |
冗長なラムダパラメーターリストを削除する | パラメーターのないラムダ内の冗長な |
冗長なメンバーイニシャライザーを削除する | 対応するデフォルトのメンバー初期化子を複製するコンストラクター内のメンバー初期化子を削除します。 |
冗長な丸括弧を削除 | コンテキスト内で冗長な括弧を削除します。 |
冗長な修飾子を削除する | コンテキスト内で冗長な修飾子を削除します。 |
冗長な指定子を削除する | コンテキスト内で冗長な指定子を削除します。 |
冗長なステートメントを削除する | コンテキスト内で冗長なステートメントを削除します。 |
冗長なテンプレート引数を削除する | C++17 クラステンプレート引数推論ルールに従って言語によって推論できる冗長なテンプレート引数を削除します。 |
冗長な 'typename' および 'template' キーワードを削除する | コンテキスト内で冗長な |
到達不能コードを削除する | 決して実行されない不要なコードを削除します。 |
未使用の #include ディレクティブを削除する | 使用されていない |
未使用のラムダキャプチャーを削除する | ローカル変数がラムダによってキャプチャーされたがラムダ本体内で使用されていない場合、未使用のキャプチャーを削除します。 |
C 形式および関数形式のキャストを静的キャストに置き換える | C スタイルのキャスト、 |
ブール値コンテキスト内の定数をブールリテラルに置き換える | ブール値コンテキストで整数定数を |
定数条件を持つ if ステートメントを 'if constexpr' に置き換える | 条件がコンパイル時の定数式の場合、 |
後置演算子を前置バリアントに置き換える | 後置演算子をその接頭辞のバリアントに置き換えます。 |
スマートポインターコンストラクターを make 関数に置き換える | スマートポインターコンストラクターを標準 ( |
可能であれば、throw 式を rethrow に置き換える |
|
型トレイトを対応するテンプレートエイリアスまたは変数テンプレートに置き換える | C++14 エイリアステンプレートを使用して C++11 タイプのトレイト式を短縮します。 |
ポインターコンテキスト内のゼロ値式を nullptr に置き換える | ポインターコンテキストでゼロ定数を |
'tie(..)' を構造化バインディング宣言に置き換える | 構造化バインディング宣言を持つタプルまたはペアをアンパックするための |
可能な場合は、連想コンテナーに「contains」を使用する |
|
remove-erase イディオムの代わりに、「std::erase」/「std::eraseif」を使用する | 古い消去削除イディオムを、STL コンテナーから要素を消去するための C++20 |
Visual Basic | |
コードの冗長性を削除する | ReSharper オプション の ページでは、ほとんどの言語の コードの冗長性 カテゴリで ReSharper は関連コード インスペクションがある事例を数十件リストアップします Alt+R、O 。 これらの中には特別な注意が必要なケースもあり、バッチモードで処理することはできませんが、クリーンアッププロファイルで コードの冗長性を削除する を選択すると、そのほとんどは自動的に修正されます。 |
XAML | |
冗長な "Freeze" 属性を削除する | コンテキストで冗長な |
冗長な修飾子属性を削除します | コンテキストで冗長な |
冗長な名前属性を削除します | コンテキストで冗長な |
冗長なリソースを削除 | 使用されていないリソース参照を削除します |
冗長な空のコレクションプロパティ setter を削除します | |
冗長な添付プロパティ setter を削除 |
|
冗長なスタイルプロパティ setter を削除します |
|
禁止されている名前属性を削除する | コンテキストで許可されていない |
冗長な定義を削除する | コンテキスト内で冗長である場合、定義を削除します。 |
冗長な UpdateSourceTrigger 属性を削除する | コンテキストで冗長な |
冗長な Mode 属性を削除する | コンテキストで冗長な |
冗長なスパン属性を削除します | コンテキストで冗長な |
Javascript/Typescript | |
可能であれば 'var' を 'let' / 'const' に修正する |
|
let/const を可能な限り最も内側のスコープに移動する | 関数や複合ステートメントなどの外で定義された変数について、外部スコープに他の使用箇所がなければ、その使用箇所の近くに移動します。 |
文字列の連結をテンプレート文字列に変換する | JavaScript コードでターゲット JavaScript 言語レベルが ECMAScript 6(ReSharper オプション の ページで選択できます Alt+R、O )または TypeScript 1.4 以降の場合、このオプションでは文字列連結を テンプレート文字列に変換します。 たとえば、次のようになります。
var str1 = "Hello,";
var str2 = "Test: " + str1 + " World1";
次のように変換されます
const str1 = "Hello, ";
const str2 = `Test: ${str1} World1`;
|
TypeScript 固有 | |
冗長な修飾子を削除する | 冗長タイプ名修飾子を削除するには、このオプションを使用します。 |
ファイルヘッダーを更新する (コピーライト)
C# | |
ファイルヘッダーを更新する | ReSharper オプション の ページまたは |
C/C++ | |
ファイルヘッダーを更新する | ReSharper オプション の ページまたは |
外部クリーンアップツールを実行する
C/C++ | |
Clang-tidy 修正を適用する | このノードでは、 Clang-Tidy チェックに従って適用されるすべての修正または特定の修正を選択できます。 選択した修正は、ReSharper オプション の ページで対応するインスペクションがオフになっていても適用されます Alt+R、O 。 一度に多くのチェックを有効化しすぎるとご注意ください。コードのクリーンアップは該当ファイルごとに 1 回だけ Clang-Tidy を実行します。そのため複数の修正が同じコードブロックに触れる場合、変更が競合する可能性があります。 |