ReSharper 2020.2ヘルプ

ローカライゼーションリファクタリング

ReSharperは、プロジェクトの国際化を大幅に簡素化する一連のリソース関連のリファクタリングを提供します。

リソースに移動

プロジェクトの内部化に取り組むときは、ローカライズ可能な文字列をリソースファイルに格納するのが一般的です。ReSharperはローカライズ対象の文字列を検出して強調表示するため、そのような文字列を簡単に見つけてソースコードからリソースファイルに移動できます。ReSharperは対応するリソースエントリを宣言し、コード内の文字列をリソース使用量に置き換えます。

  1. ローカライズする文字列にキャレットを配置します。

  2. 文字列が「要素はローカライズ可能」インスペクションによって強調表示されている場合、対応するクイックフィックスを使用する ( Alt+Enter )

    ReSharper: A quick-fix to move string literal to resource

  3. それ以外の場合は、F6 を押すか、メインメニューからReSharper | リファクタリング | 移動…を選択します。

  4. 表示されるリソースに移動ダイアログで、ReSharperはリソースエントリの名前を自動的に生成し、リソースファイルを提案します。必要に応じて、名前フィールドで名前を変更し、リソース・ファイルリストで他のリソースファイルを選択できます。

    ReSharper 'Move to Resource' refactoring

  5. 必要に応じて、テキスト領域のリソース文字列値を変更し、コメントテキスト領域にコメントを追加することができます。

  6. オプションで、同じ項目をリストの値を選択することにより、同一のストリングと検索範囲を検索するかどうかを指定できます。

  7. By default, when the new resource is createed the ローカライゼーションマネージャー will open and display the resource.
    To disable this behavior, clear the Show the new resource entry in Localization Manager checkbox.

  8. リファクタリングを適用するには、次へをクリックします。

  9. 同じ項目をオプションを選択し、ReSharperが指定された範囲内で定義された一致する文字列を見つけた場合は、これらの文字列のどれを新しいリソースの用途に置き換えるかを選択できます。

リファクタリングを適用すると、指定された文字列が対応するリソース使用に置き換えられ、新しいリソース宣言が指定された.resxファイルに表示されます。

After the new resource is created you can override its value for other cultures.

リソースの移動

プロジェクトに複数のリソース.resxファイルが含まれている場合、このリファクタリングは既存のリソースをあるリソースファイルから別のリソースファイルに移動できます。現在のプロジェクトに.resxファイルが1つしかない場合、このリファクタリングは利用できません。

  1. コードファイルのリソース使用量にキャレットを設定します。

    ReSharper: Move to Resource refactoring
    または.resxファイルのリソース名で:
    ReSharper: Move to Resource refactoring

  2. F6 を押すか、メインメニューからReSharper | リファクタリング | 移動…を選択します。または、Control+Shift+Aを押して、ポップアップにコマンド名を入力し、そこで選択することもできます。

  3. 表示されるリソースの移動ダイアログで、リソースを移動したいターゲットリソースファイルを指定します。

    ReSharper: 'Move Resource' refactoring

  4. 必要に応じて、リソース名を変更できます。

  5. リファクタリングを適用するには、次へをクリックします。

リソース名の変更

名前変更リファクタリングを使用して既存のリソースの名前を素早く変更することができます。リファクタリングを適用した後、リソースファイル内のすべてのリソース宣言とコードファイル内のすべてのリソース使用箇所は、新しい名前に従って更新されます。

  1. コードファイルのリソース使用量にキャレットを設定します。

    ReSharper: Move to Resource refactoring
    または.resxファイルのリソース名で:
    ReSharper: Move to Resource refactoring

  2. F2 を押すか、メインメニューからReSharper | リファクタリング | Rename…を選択します。または、Control+Shift+Aを押して、ポップアップにコマンド名を入力し、そこで選択することもできます。

  3. 表示されたリソース名の変更ダイアログで、リソースの新しい名前を指定します。

  4. リファクタリングを適用するには、次へをクリックします。

インラインリソース

インラインリソースリファクタリングは、リソースの使用箇所を元の文字列に置き換え、オプションで対応するリソースエントリをリソースファイルから削除します。

  1. コードファイルのリソース使用量にキャレットを設定します。

    ReSharper: Move to Resource refactoring
    または.resxファイルのリソース名で:
    ReSharper: Move to Resource refactoring

  2. Control+Alt+N を押すか、メインメニューからReSharper | リファクタリング | インライン化 | インライン…を選択します。または、Control+Shift+Aを押して、ポップアップにコマンド名を入力し、そこで選択することもできます。

  3. 表示されるインラインリソースダイアログで、リファクタリングオプションを指定します。

    • すべての用途をインライン : 選択すると、プロジェクト内のすべてのリソース使用量が元の文字列に置き換えられます。選択を解除すると、このリファクタリングを呼び出したリソース使用量のみが置き換えられます。このオプションは、コードファイルからリファクタリングを呼び出した場合にのみ機能します。

    • インラインリソース宣言を削除する : 選択すると、すべての関連リソースファイルからリソース宣言を削除します。選択を解除すると、宣言はそのまま残ります。

  4. リファクタリングを適用するには、次へをクリックします。

安全なリソース削除

リソースを削除する場合は、安全な削除リファクタリングを使用して削除操作が安全であることを確認します。リソースの使用状況が見つからない場合、リソースはすぐに削除されます。それ以外の場合、ReSharperはすべてのリソース使用状況を表示し、対応するコードを編集できます。 ThemedIcon Error Screen Gray png アイコンでマークされた使用箇所を削除すると、コンパイルエラーが発生します。

  1. コードファイルのリソース使用量にキャレットを設定します。

    ReSharper: Move to Resource refactoring
    または.resxファイルのリソース名で:
    ReSharper: Move to Resource refactoring

  2. Alt+Delete を押すか、メインメニューからReSharper | リファクタリング | Safe Delete…を選択します。または、Control+Shift+Aを押して、ポップアップにコマンド名を入力し、そこで選択することもできます。

    • このリソースがコードファイルに使用されていない場合、リファクタリングが適用され、リソース宣言がすべての.resxファイルから削除されます。

    • このリソースがコードファイルに使用されている場合、すべての競合を示す安全なリソース削除ダイアログが開きます。

    ReSharper: Safe Delete resource. Conflicts
  3. リソースを安全に削除しようとして競合が発生した場合は、手動で解決し、リフレッシュをクリックします。

  4. すべての競合が解決され、ダイアログから消えたら、次へをクリックしてリファクタリングを適用します。

最終更新日: 2020年7月15日

関連ページ:

ローカライゼーションインスペクションとクイックフィックス

ReSharper provides a number of code inspections that help you localize your application by detecting localizable strings, problems with resources and

コードの課題のクイックフィックス

ReSharperを使用すると、設計時に検出されたほとんどのコード課題を即座に修復できます。強調表示されたコードの課題で を押して、課題を解決したり最適以下のコードを改善したりするための適切な方法を選択するのと同じくらい簡単です。クイックフィックスを適用する:Quick-fixes are vis...

ローカライゼーションマネージャー

ReSharper | Windows | ローカライゼーションマネージャーLocalization Managerは、アプリケーションのローカライズを支援します。ローカライズ可能なリソースを単一のグリッドで表示および編集できるため、ローカライズ可能な文字列を追加/編集/名前変更し、不足しているロー...

プロジェクト固有のプロパティを構成する

ReSharper | 編集 | プロジェクト項目のプロパティを編集するReSharperの設定のメインセット(ReSharper | オプションダイアログで設定)は、グローバルまたはソリューションごとに適用されます。各プロジェクトまたはフォルダーごとに個別に設定できる環境設定もあります。これらの設...

名前変更リファクタリング

ReSharper | リファクタリング | Rename…このリファクタリングにより、ソリューション内の任意のシンボルまたはプロジェクトの名前を変更できます。シンボルへの参照および使用箇所はすべて自動的に更新されます。さまざまなC#エンティティにリファクタリングを使用する:これは、こ...

安全な削除リファクタリング

ReSharper | リファクタリング | Safe Delete…他のシンボルやプロジェクト/アセンブリ参照を削除する場合は、このリファクタリングを使用して、削除後にソリューションがコンパイルされるようにします。削除されたアイテムへの参照がない場合、またはすべての参照が安全に折りた...