問題:genstringsを使用して、プロジェクトからLocalizable.stringsファイルを作成します。数週間後、いくつかのことが変更され、genstringsを再度実行しました。新しいファイルの75%はすでに古いファイルにあります。新しいファイルを古いファイルとマージして、古いファイルに25%の新しいKey-Valueペアがすべて含まれるようにするにはどうすればよいですか?
6 に答える
ローカライズ可能な文字列のマージもお勧めします。私は自分のプロジェクトでそれを使用しています、そしてそれは本当に使いやすくて強力なソフトウェアです。
LocalizationSuiteを見つけました。無料で信じられないほど強力なツール。私は自分のプロジェクトでそれを試しましたが、うまくいきました。ただし、ドキュメントが不足しています。
スクリプトを使用して、プロジェクトのビルド時に既存の翻訳が自動的にマージされたgenstringを実行します。更新された文字列は、gitまたは使用する別のソース管理によって検出されます。このスクリプトは、ストーリーボードとxibのローカリゼーションもサポートしています。
スクリプトを自動的に実行するには、スクリプトをプロジェクトのルートディレクトリに配置し、次の行を含むスクリプトの実行フェーズをプロジェクト設定のターゲットビルドフェーズに追加します。
./mergegenstrings.py PathToSourceDir
私のスクリプトは、この投稿のスクリプトに基づいています。Swiftをサポートし、引数を追加するように変更しました。
BBEditのようなサードパーティのアプリケーションはどうですか?結局のところ、Localizable.stringsファイルはテキストファイルです。BBEditには相違点の検索機能があり、古いものから新しいもの、またはその逆にマージできます。
XCodeをインストールすると、FileMerge.appと呼ばれるファイルをマージするためにインストールされた標準アプリケーションもあります。これは/Developer/Applications/FileMerge.appにあります。
よくわかりませんが、ReSharperがお手伝いするかもしれません。それを見てください。