Business Week Day での議論の続きです:
リンク先の投稿でも述べたとおり、ロケール(Locale)と UI 言語は厳密には同じではありません。
ここでは、KDE(Linux および Qt)を例に挙げます:
ご覧の通り、最初のスクリーンショットでは UI 言語を選択できます。これは、2 番目のスクリーンショットに表示されるものを除き、UI や画面上に表示されるすべてのものの言語を定義します。
2 番目のスクリーンショットでは、ユーザーのロケールを定義し、数値、時刻、通貨、単位、並び替えを上書きできます。
これは、多くのユーザーが好む言語でシステムを使用しつつも、ロケールの設定が異なる国に住んでいる場合に重要です。
私の地域であるアラブ地域からの例を挙げます:
- すべての国でアラビア語が主要言語です。
- マシュリク の国々は 東アラビア数字(٠١٢٣٤٥٦٧٨٩)を使用することを好む一方、マグリブ の国々は アラビア数字(0123456789)を使用することを好みます。
- エジプト、スーダン、湾岸諸国では、ラテン文字の月名をアラビア語に翻字した形式を使用することを好みます:https://en.wikipedia.org/wiki/Arabic_names_of_Gregorian_months#Egypt,_Sudan,_Arab_Countries_in_the_Arabic_Gulf。一方、レバントとメソポタミアではアッシリア式の月名を使用することを好みます:https://en.wikipedia.org/wiki/Arabic_names_of_Gregorian_months#Levant_and_Mesopotamia。また、マグリブ諸国ではフランス語の月名の翻字を使用することを好みます:https://en.wikipedia.org/wiki/Arabic_names_of_Gregorian_months#Algeria_and_Tunisia。
したがって、日付はこれらの違いの影響を受けます:
- すべての国で右から左へ書かれます。
- マシュリク諸国:١٢ يناير ٢٠٢٠ = 2020 年 1 月 12 日(右から左へ読む)
- マグリブ諸国:12 جانفي 2020 = 2020 年 1 月 12 日(右から左へ読む)
- 簡単に言えば、東アラビア数字か西アラビア数字(アラビア数字)かにかかわらず、右から左へ書かれるため、フォーマットだけでなく数字の選択さえも判断が難しくなります。
3 桁区切り記号 も異なります:
(東アラビア数字には別の区切り記号もあります:١٠٬٠٠٠٫٠٠:
Discourse への影響:
- 日付と時刻のフォーマット、数値、週の始まり。
影響を受けないもの:
- 相対的な日付。
理想的な解決策:
- Unicode フォーマットを抽出して組み込み、ユーザーが任意のロケールを選択できるようにする。これは Moment.JS と競合する可能性があるため、検討が必要です。
- 翻訳者がソフトウェア内のどこにどのフォーマットを表示するかを選択できるよう、すべての手段と方法を提供する。


