是否可以,如果您将HTML片段提供给翻译人员?如果没有,你给他们什么,你如何得到HTML片段?
这样可以放下吗?
Hey <i>Bob</i>, what's your <span class="important">name</span>?
答案 0 :(得分:4)
你给译员任何你同意的意见(即询问翻译他们需要什么,而不是其他程序员)。
抛弃标记并在没有上下文的情况下给它们提供单词片段可能会导致翻译错误。语境对意义很重要。
答案 1 :(得分:1)
详细说明我对昆汀答案的评论:
我们正在使用Ruby on Rails作为我们的UI,但我们发布了一个设备。没有网址,我们可以将翻译人员发送给上下文。我们必须向他们发送一整个ISO,即使这样,如果没有适当的数据,他们也无法真正使用该应用程序。
相反,我们从config/locales
向他们发送原始Yaml文件,其中每个目标语言有一个资源文件:en-US.yml,fr.yml,de.yml等。他们将这些文件导入到任何文件中他们使用,翻译,导出系统,并将翻译的Yaml发送给我们。如果他们需要上下文,我们会向他们发送屏幕截图。
所以Rails接受任何可翻译的字符串,我们将它直接发送给我们的译员。我们甚至扩展了Rails的功能,以接受字符串中的ERb模板。这是一个非常糟糕的主意: - )
我不是说这是最好的解决方案。我们经常收回无效的Yaml,或者他们错过字符串或者没有尽可能准确地翻译完美的上下文。但它的作用一般。
答案 2 :(得分:0)
如果你正在使用一些软件来生成html(即 - php / asp / asp / net / etc),那么不要给翻译器生成html,给它们你用来生成html的资源文件。
然后,您将拥有要支持的每种语言的资源文件。然后,您可以使用浏览器语言设置(可通过标题服务器端访问),请求URL或甚至cookie(在您询问他们喜欢哪种语言后 - 请参阅quietpc.com以获取示例)以确定用户使用哪种语言想看到你的网站。
现在您知道用什么语言呈现您的网站,然后您可以编写服务器端代码来阅读相关的资源文件,并且您已经完成了设置!
所以,而不是......
Hey <i>Bob</i>, what's your <span class="important">name</span>?
......你会有这个......
<%=Resources.Hey%> <i><%=Name%>, <%=Resources.Whatsyour%> <span class="important"><%=Resources.Name%></span>
但是,像这样分裂的东西是非常糟糕的IMO。最好重新编写一些东西,这样它们就不会分裂。我不认为这是一个很好的例子,因为你问Bob他的名字是什么。这是鲍勃!!
我总是尝试布置我的页面,这样我就不会将变量与文本混合在一起。
示例......
Name: Bob
Mood: Happy
姓名和情绪可以翻译。 Bob和Happy来自某个变量,即 - 它们是动态的。
示例标记......
<table>
<tr>
<td><%=Resources.Name%></td>
<td><%=Name%></td>
</tr>
<tr>
<td><%=Resources.Mood%></td>
<td><%=Mood%></td>
</tr>
</table>
这就是我过去接触它的方式,因为我不会说除了(坏)英语以外的任何其他语言,我真的不知道句子的结构方式是否会根据上下文而改变。所以,我总是试图避免使用嵌入变量的句子。