让网站翻译保持最新

由于网页不是不变的,因此最好跟踪某个翻译所引用的原始版本,并使用此信息来检查自上次翻译以来哪些页面已被更改。此信息应以下方这种形式嵌入文档的顶部(虽然它位于任何其他"use"头的下方):

#use wml::debian::translation-check translation="git_commit_hash"

其中 git_commit_hash 是 git 提交的哈希值,它代表翻译文件所对应的原始(英语)文件的提交。您可以使用 git show 工具来获取特定提交的详细信息:git show <git_commit_hash>。如果您在 webwml 目录使用 copypage.pl 脚本,那么 translation-check 行会被自动添加到您翻译的页面的第一个版本中,并指向当时存在的原始文件的版本。

即使原始语言(英语)文件已被更改,某些翻译在相当长的时间内可能也不会得到更新。由于进行了内容协商,被翻译的页面的读者可能不知道这一点并因此错过在原文件的新版本中引入的重要信息。 translation-check 模板包含用于检查您的翻译是否过时的代码,并输出相应的适当消息警告用户。

以下是您可以在 translation-check 行使用的更多参数:

original="language"
language 代表您翻译的原文件语言的名称,如果该语言不是英语。该名称必须与 VCS 中的顶级子目录相对应,也需要与 languages.wml 模板中的名称相符。
mindelta="number"
这定义了该翻译文件被认为是老化所需要的最小 git 修订版本数。默认值为1。对于不太重要的页面,请将其设置为2,这意味着在将其翻译视为老化之前需要进行两次更改。
maxdelta="number"
这定义了该翻译文件被认为是过时所需要的最小 git 修订版本数。默认值为5。对于非常重要的页面,请将其设置为较小的数字。值为1代表每次更改都会导致其翻译被标记为过时。

跟踪翻译文件的年龄还可以使我们获得翻译统计信息,一份过时翻译的总体报告(以及指向文件之间差异对比的实用链接),还有根本没有翻译的页面的列表。目的是帮助翻译人员并吸引新人前来提供帮助。

为避免向我们的用户提供严重过时的信息,自原始页面更改后六个月内未更新的翻译文件将被自动清除。请查看过时翻译清单以查找可能被清除的页面。

另外, check_trans.pl 脚本可在 webwml/目录中使用,用以向您显示一份需要更新的页面的报告:

check_trans.pl language

其中 language 您的翻译的目录名称,例如,“swedish”。

缺少翻译的页面将显示为“Missing filename”,与原始文件相比不为最新的页面将显示为 “NeedToUpdate filename to version XXXXXXX”。

如果您想要查看确切的更改,可以通过在上面的指令中添加 -d 命令行参数来获得相关的差异对比。

如果您想要忽略有关缺少翻译的警告(例如,对于旧新闻),则可以在您想要隐藏警告的目录中创建一个名为 .transignore 的文件,在该文件中列出所有您不打算翻译的文件,一行一个。

您也可以使用一个与 check_trans.pl 相似的脚本来跟踪邮件列表描述的翻译。请阅读 check_desc_trans.pl 脚本中的注释以获取相关帮助。