Php Symfony2翻译-生成的YML文件中的双下划线&;其他问题
我用它来生成我的翻译文件Php Symfony2翻译-生成的YML文件中的双下划线&;其他问题,php,symfony,translation,Php,Symfony,Translation,我用它来生成我的翻译文件 php bin/console translation:update --force --output-format=yml it JakeNameOfBundle 这就产生了一个类似这样的问题 Register: __Register Blog: __Blog 'Why?': '__Why?' 'Your message has been sent, thank you.': '__Your message has been sent, thank you.' 'N
php bin/console translation:update --force --output-format=yml it JakeNameOfBundle
这就产生了一个类似这样的问题
Register: __Register
Blog: __Blog
'Why?': '__Why?'
'Your message has been sent, thank you.': '__Your message has been sent, thank you.'
'Next on the Development List': '__Next on the Development List'
'Supported Game Systems': '__Supported Game Systems'
'Toggle navigation': '__Toggle navigation'
'Game Systems': '__Game Systems'
Home: __Home
Login: __Login
My: __My
几个问题
至于引号,据我所见,它似乎是硬编码到Symfony的yaml转储程序(Symfony\Component\yaml\Inline)中的,该转储程序自行确定字符串是否需要引号,以及是否需要双引号;我不认为它可以通过配置来更改。在我的例子中,问题出现在使用控制台命令更新翻译后。由于某种原因,一些字符串生成错误,并放置在
app/Resources/translations
(我通常将它们放在其他地方)。只需删除这些文件即可解决问题。谢谢。你知道\uuu
是什么意思吗?我能应付的引用,对译者来说很烦人。我想它是用来判断一个字符串是否已经被翻译过;在您的示例中,翻译人员阅读文件并看到没有下划线的“游戏系统”时,可能不知道这是自动生成的新字符串,仍然需要翻译,并且没有一个已经翻译的密钥自愿定义为“游戏系统”,这似乎有点老套。我知道这是一篇旧帖子,但我认为下划线表明翻译中有错误。不存在的单词通常会恢复为默认语言环境,并且不会以下划线作为前缀