国際化

.NET開発者にとって、国際化はもっとも面倒な作業の1つです。国際化には、文字列をリソースファイルに抽出して、多様なカルチャにまたがってリソース項目一式を維持するという、煩わしい作業が求められるからです。

ReSharperは、リファクタリング、ナビゲーション、コードインスペクション、resxファイルやリソース使用箇所のクイックフィックス、さらに、C#やVB.NETのコード、ASP.NETやXAMLのマークアップを備えており、国際化に要する時間を大幅にご節約いただけます。

ReSharperはリソースファイルに移動可能な文字列を検出します

ローカライズ可能な文字列のハイライト表示

ReSharperはローカライズ可能な文字列を検出してそれらをハイライト表示し、リソースファイルに移動できるようにします。

プロジェクトの設定に応じて、ReSharperはハードコードされたすべての文字列リテラルをハイライト表示したり、Localizable(true)で明示的にマークされた文字列リテラルのみをハイライト表示したりいたします。

ローカライズ可能な文字列をリソースファイルに移動

文字列をリソースファイルに移動

ReSharperはローカライズ可能な文字列を検出すると、その文字列を早急にリソースファイルに移動できるように支援します。 同一の文字列を検索し、それらをまとめてリファクタリングして新しいリソース項目を使用させることもできます。

プロジェクトの設定に応じて、リソースファイルに移動できる文字列が波下線でハイライト表示されるかどうかが決まります。 文字列がハイライト表示されていない場合は、Ctrl+Shift+Rを押してMove to Resourceリファクタリングを選択してください。 上のスクリーンショットのように文字列が波下線でハイライト表示されている場合は、Alt+Enterを押してクイックフィックスのリストからリファクタリングを直接呼び出せます。

C#やVB.NETのコードで使用される文字列のほか、ReSharperは、各種ウェブアプリケーションのマークアップファイルの文字列や任意のHTML文字列を処理することもできます。

リソースエントリに使用可能なリファクタリング

リファクタリング

文字列のリソースファイルへの移動に加えて、ReSharperはその他にも以下のような多数の国際化リファクタリングを提供しています。

  • Move Resourceリファクタリングは既存のリソースエントリをリソースファイル間で移動します。
  • Rename Resourceはリソースエントリ内のname属性値の変更に役立ちます。
  • Inline Resourceはリソースファイルからリソースエントリを削除し、その使用箇所をすべて元の文字列に置換します。
  • Safe Delete Resourceはコードを壊すことなくリソースエントリをその使用箇所と共に削除しようとします。 ReSharperは使用箇所を安全に自動削除できないと判断した場合、リファクタリングを適用する前に手動編集することを提案します。

ReSharperが提供するその他のリファクタリングについては、リファクタリングをご覧ください。

ReSharperは、リソースファイルで検出したすべてのコードの問題を表示いたします

リソースファイルのコードインスペクション

ReSharperは多数のコードインスペクションを提供します。これらはリソースエントリの一般的な問題を明らかにするのに役立ちます。

具体的には、ReSharperは特定のリソース値が特定のカルチャでオーバーライドされていない場合や、カルチャに依存しないリソースファイルで使用されているのと同じ名前でオーバーライドされている場合に警告します。 ReSharperは単一リソースファイル内の重複リソース名を認識し、リソース値内で不足している、または冗長な書式文字列のプレースホルダーを検出することもできます。

ReSharperはこれらの問題を検出した場合にテキストエディタでハイライト表示をします。 また、ReSharperのFind Code Issues機能を使ってリソースファイル内のすべての問題に目を通すことができます(それらの場所に移動することもできます)。

最後に、ReSharperはリソースファイル内のこれらの問題をすぐに解決できるクイックフィックスを提供しています。

ReSharperはC#とVB.NETのコードのみならず、ASP.NETのマークアップでもリソースエントリの使用箇所を検索いたします

リソースの使用箇所を検索

ReSharperのFind Usages機能はリソースに完全に対応しています。 リソースエントリの出現箇所をコードとリソースファイルの両方から検索できます。

カルチャ固有のリソースファイル間を移動

カルチャとリソース間のナビゲーション

ReSharperのGo to Derived Symbols機能とGo to Base機能を使うとカルチャに依存しないリソースファイルのリソースエントリからカルチャ固有のリソースファイルの対応するエントリに相互に移動することができます。

ReSharperはリソースファイルの構造を表示します

リソースファイルの構造

ReSharperはリソースファイルの構造を表示できる特別版のFile Structureツールウィンドウを提供しています。 このウィンドウではリソースファイル内のエントリをリスト表示し、現在のカルチャのリソースID、リソーステキストを可視化します(存在する場合)。 また、このツールウィンドウは、リソースエントリを他のカルチャでオーバーライドするかどうか、それらにプレースホルダーの書式設定が含まれるかどうかを指定します。

ショートカットに関する注意

このページに記載されたキーボードショートカットはすべて、ReSharperデフォルトの「Visual Studio」キーマップのものです。 ReSharperの2種類のキーマップの詳細は、ReSharperのドキュメントをご覧ください。