私たちは、文字列のローカライズに当社のiOSコードにしてきた方法を包括見始めるしたいと思います。我々はまだ翻訳に行く準備ができていないが、私はpseudo localizationでテストを開始したいと思います。 Localizable.stringsファイルでこのプロセスを自動化するのは簡単なはずですが、それを行うツールを見つけることはできません。率直に言えば、すべての文字列を「ENGLISH NOT」に変更したスクリプトには満足しています。そんなことがあれば。iOS擬似ローカリゼーションに適したツールはありますか?
答えて
の文字列セクションで説明しています。
まずあなたがprop2poコンバータを使用してPOに.stringsファイルを変換する必要があります。
$ prop2po Localizable.strings en.po
これはのLocalizable.stringsファイルの文字列とPOファイルを作成します。ソースストリングとして(この場合、私はソースとして英語を使用しています)。
POファイルを取得したら、desired rewrite formatにpodebugを使用して書き換えます。
$ podebug --rewrite=unicode en.po en_rewritten.po
最後にバック.stringsフォーマット(テンプレートとして元のLocalizable.stringsファイルを渡す必要があることに注意)に変換します。結果のファイルが検索されます
$ po2prop en_rewritten.po rewritten.strings -t Localizable.strings
"Account: %@" = "Ȧƈƈǿŭƞŧ: %@";
"Add command" = "Ȧḓḓ ƈǿḿḿȧƞḓ";
"Add connection." = "Ȧḓḓ ƈǿƞƞḗƈŧīǿƞ."
はい!これはまさに私が探していたものです。もし誰かがこれを見て、 "su/python/installup.py"を使って "su。 – Mike
近いので、私は仕事に最初の2つのステップを持ってではなく、第三: '%po2prop -tのLocalizable.strings en_rewritten.po rewritten.strings' ' 処理1つのファイル...' 'po2prop:警告:エラー処理:入力en_rewritten.po、出力rewritten.strings、テンプレートLocalizable.strings: 'ascii'コーデックは位置10-11の文字をエンコードできません:序数は範囲外です(128) [######### ###################] 100% ' –
あなたのPOファイルにASCII以外の文字場所のコメント?もしそうなら、[bug 2101](http://bugs.locamotion.org/show_bug.cgi?id=2101)が関連しているかもしれません。 – julen
あなたは、アップルが提供するgenstrings
ツールを使用することができます。これは、すべてあなたがTranslate Toolkitでこれを達成することができますResource Programming Guide
'genstrings'は私がすでにやっているLocalizable.stringsファイルを生成しますが、どちらのキーでも値やデフォルト値として使用できます。私はgenstringsの出力を取得し、擬似ローカリゼーションの値を変更するものを探しています。 – Mike
私たちはTethrasで私たちのサービスの一部として擬似的なローカリゼーションを提供しています(www.tethras.com)。疑似局所化は無料です。私たちはあなたの弦の中のすべての文字をアクセントにして、テキストの長さを30%伸ばします。これは、ハードコーディングされた文字列だけでなく、翻訳中にテキストが拡大されてレイアウトがどのようになるかを確認するのに役立ちます。
例:
テキスト
我々提供擬似局在一部としてôƒ私たちのサービスにTèthrás (www.tèthrás.çôm)。ワンツースリーƒôúrƒïvè六擬似ローカライズされ ƒrèè。一つ二つ三つ我々アクセントすべてôƒザ文字に¥我々のストリング と延びザ長ôƒザテキスト¥30%B。ワンツースリーƒôúrƒïvè六 この意志ヘルプ¥OUテストしないONL¥ƒôrハードコードされた文字列であろうが、また してみましょう¥OUを参照してください何が起こるTô¥たちのLá¥アウトに起因するテキスト拡張中 翻訳。
ローカライズ可能です。文字列
"Bring All to Front" = "Brïñg Áll tô ƒrôñt ôñè twô";
"Hide" = "Hïdè 12";
"Quit" = "Qúït 12";
"Hide Others" = "Hïdè Óthèrs ôñè ";
翻訳の前にあなたのアプリのローカライズ可能性をテストしたいと思っています。これにより、実際の翻訳プロセスで多くの時間と労力を節約できます。
ですが、翻訳ツールキットでは解決策が提供されていますが、私はbashスクリプトを使用して簡単な方法を検討しました。 [changesDictionary.txt]ファイル(この記事の最後にフォーマットを参照)を作成し、パラメータとして言語ファイルで次のスクリプトを実行します。
# This script translate iOS strings file into pseudo languge for texting usage.
# the script create a sed change and replace file based on [changesDictionary.txt].
# the loop run across the input string file (ie. myFyle.strings)
# and replace the secong strings with the dictionary values.
# since the strings file is in BOM format (http://en.wikipedia.org/wiki/Byte_order_mark)
# the input is converted from UTF16 to UTF8.
sed -e 's/^"\(.*\)" = "\(.*\)"$/s\/\1\/\2\/g/' changesDictionary.txt > changesDictionary.sed
FILENAME=$1
while read -r; do
if [[ $REPLY = '/*'* ]] ; then
echo "$REPLY"
else
if [[ $REPLY = '' ]] ; then
echo "$REPLY"
else
if [[ $REPLY = '"'* ]] ; then
changes2=$(echo "$REPLY" | cut -d= -f2 | sed -f changesDictionary.sed)
changes1=$(echo "$REPLY" | cut -d= -f1)
echo "$changes1=$changes2"
echo "$REPLY"
fi
fi
fi
done < <(iconv -f UTF-16 -t UTF-8 $FILENAME) | iconv -f UTF-8 -t UTF-16 >$FILENAME.new
で[changeDictionary.txt]ファイルのスクリプトを見て
この例を使用するか、自分で作成することができます。最後の3文字をファイルに書き留めてください。これは、行とパラメーターの終わりを通常の状態に戻すためです。私はスクリプトを簡略化するためにこのアプローチを選択しました(私はパフォーマンスが最適化されていないと思います)。
私はまだここに記載されていない2つのソリューションに出くわした:
ソースコードに基づいてpseudolocalized .stringsファイルを生成マックのAppストアで呼び出さ無料アプリ(ドラッグ&ドロップ)。それは質問に提供されたOPと同様の文字列を生成します。
https://itunes.apple.com/us/app/pseudolocalizer/id503026674?mt=12
オンライン翻訳サービスせせらぎオンは、既存の.stringsファイル(他のオプション)に基づいて自由pseudolocalized .stringsファイルを提供しています。彼らはあなたのGUIをテストするためにオリジナルの英語よりも長い文字列を生成する余分なオプションを持っています。
Babble-onの無料サービスの利点は、翻訳されていない文字列を簡単に見つけることができるASIAN(漢字)と、フランス語とドイツ語のような言語を模倣するために30%長いEUROPEAN 。これはあなたのGUIをテストするのに最適です。 – Localizer
もう一つの素早く無料のツールはhttp://www.pseudolocalize.comです - 擬似ローカライズされたバージョンを返すためのワンクリック – JerSchneid
@JerSchneidはLocalizable.stringsファイルでは動作しません –
- 1. メイクファイルの作成に適したツールはありますか?
- 2. intellitraceに似たツールがありますか
- 3. 表示:擬似要素には何もありませんか?
- 4. Androidの擬似ローカリゼーションが機能しない
- 5. 未知の擬似要素または擬似クラス:: selection [選択]
- 6. 擬似要素は要素の一番上にあります。
- 7. JavaScriptで書かれたFabricに似た配置ツールがありますか?
- 8. hg/Mercurialのrepoやgit-repoに似たツールはありますか?
- 9. 繰り返し擬似クラスセレクタ
- 10. iOSにRXAndroidと似たライブラリがありますか
- 11. CSSの非擬似クラススタイルにフォールバックする方法はありますか?
- 12. 擬似クラス:Firefoxではアクティブではありません。
- 13. 擬似クラスにはどのくらいの重みがありますか?
- 14. ユニットテストでHTTPResponseを擬似しました
- 15. .NETで翻訳/ローカリゼーションを行うためのツールに関する推奨事項はありますか?
- 16. mp4擬似ストリーミング実装サーバーとiOS側
- 17. Androidには、iOSに似たAspect Fillの概念がありますか?
- 18. PHPでBBCodeに似た擬似コードを解析するには?
- 19. iOSアプリランタイムでオブジェクトグラフを生成するツールはありますか?
- 20. CSSはフォーカスのある擬似要素を追加します
- 21. アリのプロファイラに似ていて無料のツールはありますか?
- 22. SQL Server用のクエリ最適化ツールはありますか?
- 23. 擬似要素の適切な積み重ねを設定しました
- 24. input.submitにある擬似要素
- 25. VSCmdShellに似たツールですか?
- 26. 擬似要素は
- 27. ::擬似要素は
- 28. Math.random()は一様に擬似乱数を生成しますか?
- 29. スキップリストに類似した分散キャッシュソリューションはありますか?
- 30. Fortifyに類似したオープンソースソフトウェアはありますか?
+1、さらに他のものは[ショッピング](http://blog.stackoverflow.com/2010/11/qa-is-hard-lets-go-としてフラグこれかもしれませんがショッピング/)質問。 – newenglander