Internationalising sentences with two plural words

2020-02-01 04:24发布

Using gettext how should a sentence with multiple numeric variables be made translatable? ngettext only takes one number as the plural parameter.

The permutations that should be allowed in the below sentence are "adult and child", "adults and child", "adult and children" and "adults and children".

"from #AVAILABILITYFROM to #AVAILABILITYTO for #NUMADULTS adult and #NUMCHILDREN child"

1条回答
戒情不戒烟
2楼-- · 2020-02-01 04:41

Grammar can be very complex in some other languages than English and you should be aware that is practical impossible to generate correct complex sentences using your approach.

Remember that multiple variables and genre (male/female) also adds lots of complexity.

The solution is to generate only simple sentences where you have only one variable. This is the case that is supported by ngettext.

Understand that ngettext is something great and that is something that most commercial i18n frameworks from bug software companies don't even support. Even so it has his limitations, so shortly the solution for your question is do split your complex sentence in several simple ones that can be translated using only one variable.

查看更多
登录 后发表回答