小さな組み込みシステム用に最小限のgettext実装が存在しますか?私はいくつかの異なる言語に私のアプリケーションを翻訳する必要があります。このアプリケーションはFreeRTOSと最小限のlibcを持つ50MHz ARM7 CPU上で動作しますが、ファイルシステムはありません。私はGNU gettextツールを見てきましたが、私のプラットフォームでlibintlを移植する作業は少し難解です。何か案は?組み込みシステムのgettext?
答えて
ローカライゼーションは、組み込みシステムでは大きな苦痛になる可能性があります。最初に検討することがいくつかあります:翻訳された言語で代替の文字セットが必要ですか?テキストをグラフィックディスプレイやシリアルコンソールのようなものに表示していますか?
翻訳された言語のセットが比較的少なく、一連のテキスト文字列が明確に定義されている場合は、本格的な翻訳ライブラリを避けることができます。私は、言語固有の文字列テーブルのセットを使用する組み込み製品を継承しました。各テキスト要素はテーブル内に位置していたため、翻訳された特定のテキストが、言語別、要素別に2次元テーブルで検索されました。 (これらのテーブルはこのアプリケーションではROMに格納されていました)
このルートに進む場合は、考慮すべき他の多くの問題があります。いくつかの言語は、英語よりも簡潔に内容を表現することができます。ドイツ語は良い例です - 単純なフレーズは文章のような長さを取ることができます。結果として、1つのテキスト要素が言語ごとに長さが大きく異なる場合に備える必要があります。継承されたアプリケーションでは、これは、テキスト要素が複数の「行」を持つことができるように、テーブルを3Dに拡張することによって行われました。もちろん、テキストのレイアウト(略語、文の長さ、改ページなど)もこの部分から拡張されています。
ROMのスペースが限られている場合、句の翻訳スニペットを検討し、必要に応じてそれらを一緒に貼り付けることができます。所望のローカライズされたフレーズが不器用にスニペットに変換される可能性があるため、このいわゆる文字列連結アプローチは難しいことがあります。言い換えれば、翻訳されたテキストのスニペットを自由に貼り付けることができれば、 "エンリグリッシュ"の準備が必要です。 Babelfishらは助けることができるが、防衛はネイティブスピーカーによる最終製品の国内レビューで良い。 (注:ネイティブスピーカーは「平均」方言を表す必要があります)
LCDを駆動している場合は、EasyGui - www.easygui.comを見る価値があります翻訳を管理する。
PC上の表示レイアウトを見て、その場で言語を変更して、割り当てられたスペースにテキストが収まるかどうかを確認できます。
翻訳アドオンは翻訳者に送信できるので、さまざまな言語や画面での動作を確認することができます。
- 1. 組み込みシステムのグラフィカルインタフェース
- 2. 組み込みシステムのmalloc
- 3. 組み込みシステムのポッドキャスト
- 4. は組み込みの認証システム
- 5. システム組み込み関数のエラー
- 6. 組み込みシステムでのコード実行
- 7. 組み込みシステムでのエントロピー生成
- 8. 組み込みシステム用のコンストラクタ
- 9. ベアボード上のC++組み込みシステム
- 10. 組込みシステム設計:パーティショニングリソース
- 11. 組み込みシステムにおけるマルチスレッド
- 12. 組み込みシステム向けデータベース
- 13. MVC組み込みシステムのGUIの例はありますか?
- 14. オペレーティングシステムのない組み込みシステムでのmalloc
- 15. 組み込み依存注入システム外でのUserManagerの作成
- 16. 組み込みARMベースのLinuxシステム用のクロスコンパイル
- 17. 組み込みシステムでのELFファイルの使用?
- 18. 組み込みシステム用のメモリバグ検出器?
- 19. 組み込みPython Webサーバーのシステム要件
- 20. 組み込みシステム:どのプラットフォームまたはボードですか?
- 21. 組み込みシステムの設計/実装パターン
- 22. 組み込みシステムの暗号擬似乱数ジェネレータ?
- 23. 組み込み用のC/C++組み込み関数VMOVD
- 24. 組み込み関数/組み込み関数のテスト
- 25. Visual C++で128ビットの組み込み組み込み
- 26. 組み込みシステムでopencvを使用する方法
- 27. 組み込みシステムでレジスタをインクリメントできません
- 28. (組み込みシステムに関する)オペレーティングシステムとは何ですか?
- 29. 組み込みシステムでLexトークナイザを使用する
- 30. 組み込みシステム用リアルタイムオペレーティングシステム - >良いスタートブック