该部分内容仅在huiji.wiki和使用HuijiWiki软件的维基平台生效,请注意该部分代码的兼容性。

自动翻译是灰机Wiki提供的批量翻译对照解决方案。集成在源代码编辑器中的一项辅助功能。自动翻译目前已实现一对一配对翻译。

获取译名对照关系

途径一(自动采集)

通过抓取页面的跨语言链接:灰机会自动收集每个页面对应的外文文本,并在用户执行自动翻译时,对其中的英文链接进行替换。

途径二(手动提交译名表)

除此之外,用户还可以在MediaWiki:Huiji-translation-pairs中以json形式提供更多的配对。

注意:请注意对正则表达式进行合理的转码,以使JSON合法化。

2.0版本

JSON格式如下:

{
    "version": 2,
    "plain": {
        "plain text": "文本"
    },
    "regex": {
        "/regular expression/i": "正则"
    },
    "link": {
        "link": "链接",
        "category:my category": "分类:我的分类"
    }
}

在这一版本中,用户可以指定替换的模式,目前支持

  • plain, 纯文本替换,适用于替换模板等不会引起冲突的内容。
  • regex,正则表达式替换,适用于编写复杂的正则表达式规则来替换内容。
  • link,只替换链接内容,如[[link]]或[[link|href]]。

1.0版本

例如:

{"==History==":"==历史==","==References and Notes==":"==引用与注释==","==Behind the Scenes==":"==幕后=="}

在本示例中,键值==History==会在执行时被替换成==历史==,其他略同。

键值还可以为javascript风格的正则表达式,例如

{"/[abc]+/":"一二三"}

译名对照关系的应用

源代码的自动翻译功能

自动翻译.png
通过点击源代码编辑器中“高级”功能下的自动翻译按键,可以对页面中的文本进行自动翻译。
  • 对于Huiji-translation-pairs中的不同模式,自动翻译程序会针对性的进行翻译
    • 基于Huiji-translation-pairs中plain的部分所提供的规则,对当前文本进行全文本替换:风险高,狂野模式
    • 基于Huiji-translation-pairs中regex的部分所提供的规则,对当前文本进行正则表达式替换:风险低,精确模式
    • 基于Huiji-translation-pairs中link的部分所提供的规则,对当前文本内的链接文字进行替换([[]]):风险低,内链模式

通过lua调用译名表

参见Templatemanager:Module:Trans

通过函数解析器调用

有两种方式:

  • {{#Trans:XXX|strict/lloose}}
  • <trans mode="strict/loose">YYY</trans>

两者都有一个mode参数。如果mode=loose,则将调用有道翻译。反之则仅从Huiji-translation-pairs和跨语言链接中读取信息。默认为loose。

扩展阅读

avatar
avatar
Dewangsky
0

太棒了:+1:

7个月