ibtool は xcode で読み取れない .strings ファイルを生成します
質問
ibtool を使用してペン先をローカライズしています。次のコマンドを実行します。
ibtool --generate-strings-file MainMenu.strings en.lproj/MainMenu.nib
次に、生成された .strings ファイルを xcode プロジェクトに追加して、後で参照および編集できるようにします。
その際、xcode で .strings ファイルを選択すると、大量の逆向きの疑問符と文字列が表示されます。ただし、ファイルを追加しないことを選択し、xcode を使用して手動で開くと、ファイルは完全に読み込まれます。
ibtool がファイルを読み取り不可能な xcode 形式でエンコードしていると推測することしかできません。
xcode で .strings ファイルを開き、内容をクリップボードにコピーして、ファイルを閉じ、.strings ファイルを xcode に追加し、その不要な内容をクリップボード内の内容で置き換えて、ファイルを保存すると、問題ありません。また、そうすることで .strings ファイルのサイズが半分に減ることに気付きました。
ご指導いただければ幸いです。
ありがとう!
解決
はい、どういうわけか XCode は、仕様で要求されている UTF-16 である生成ファイルのエンコーディングを自動検出できません。ただし、生成されたファイルを XCode に追加するときに、文字エンコーディングを選択するオプションがあります (デフォルトは UTF-8)。[項目を宛先グループ フォルダーにコピーする] チェックボックスのすぐ下に、このためのドロップダウンがあるはずです。UTF-16 を選択するだけで問題ありません。XCode がファイルを開く際に使用するエンコーディングを後でいつでも選択することもできます。これを行うには、文字列ファイルを右クリックし、「情報を取得」を選択するだけで、エンコーディングのドロップダウン リストが表示されます。