在ActivityPub本地化字符串中处理复数形式

这与主题有点离题,因为这个话题是关于允许这些文本有不同的单数和复数形式的。

但也许你可以在英文界面中将 1 替换为 “one”
然而,这在德语中并不那么容易实现。问题在于,在德语中,“one”这个词会根据格、性别和语法角色而变化。

例如:

  • The topic will remain open for one month. → Das Thema ist noch einen Monat geöffnet。(主题将开放一个月。)
  • The topic will be closed in one month. → Das Thema wird in einem Monat geschlossen。(主题将在一个月后关闭。)
  • One month has passed. → Ein Monat ist vergangen。(一个月过去了。)

因此,虽然在德语中将数字写成单词也很常见,但正确处理这个问题在语法上很复杂
你不能简单地将数字“1”替换为单词“eins”,因为该形式从不用在名词之前,并且正确的单词形式取决于语法格。

换句话说,使用单词而不是数字会给翻译人员带来更多的工作。
你不能简单地使用像 %{duration} 这样的占位符,它会在所有上下文中扩展为“one month”、“one week”或“one day”。
你需要为每一种可能的语法组合提供一个单独的版本,而不是三个持续时间和三句话——这可能会使文本量成倍增加。

1 个赞