本帖最后由 +倒霉の忍者+ 于 2012-11-26 20:36 编辑

好吧,重视大众利益,从我做起
(该教程为本人(+倒霉の忍者+)原创)
*转载请注明作者与出处!


服务器 插件/MOD 的汉化方法

一、准备工作
  在开始翻译前,你需要做如下准备:
  • 一款具有多种功能的文本编辑软件,推荐EmEditor(转码需要,建议舍弃记事本)
  • 所要翻译的插件或MOD文件包,建议将其放在一个单独文件夹下,方便翻译完成后处理,同时别忘了备份
  • 一个打开的搜索引擎页面(人非生而知之者,孰能无惑?此时你就需要去搜一下)

二、找到需翻译的文件
  一般来说,插件需要汉化的文件一共有两种,一种是插件设置时的注释,另一种是游戏内提示的消息文本,格式也有不同  这些文件大致上有三种文本类型,一种是yml后缀的,一种是properties后缀,还有一种是lang后缀。

  • yml后缀的文本一般以UTF-8为编码格式,汉化的文字无需转码,仅需保存为UTF-8格式即可
  • properties后缀的文本一般以ANSI为编码格式,汉化的文字需要转换为通用字符格式才行
  • lang后缀文本,据MC语言来看,貌似是无需转码

  以上这些文本即使格式正确保存,但如果程序不支持该文本加载后的编码,也是无法显示的。
  至于在class中的消息文本,有一个工具名为hhclass可以使用,工具使用方法很简单,可以在搜索引擎中找到,这里就不说了
文件名例子:
  设置文件:config.yml,info.yml,settings.yml
  消息文件:string.yml,message.properties,en_US.lang

三、翻译
  翻译,无非就是将英文同义转换成中文,只不过差别在于其含义表达是否精炼传神。而翻译时有些注意事项需要了解一下。
 在yml文件中需要注意的事情:
  • # 是注释标识符,所有行中排在#同一行右边的文字将不会被程序所加载,所以这部分可以随意汉化,反过来说,不是#开头的都不要随便汉化
  • xxxx: xxxx 是设置变量的格式,冒号是英文冒号,且冒号与后面字符中间必须有一个空格,若冒号同一行后面没有文本则无需空格,
  特别要注意的是,冒号前面的字符不能更改,而后面字符若改为同类字符没什么,例如数字大小的更改,abc改成def等,
  但若例如从纯英文字母改为含有非英文字母的字符(包括空格)或纯数字等变化,则需要在该句子(单词)首尾分别加上一个英文单引号'
  用以表示格式,表示单引号需用连续2个单引号''转义。此外,若涉及到转义符号\的内容,则需要加上英文双引号"而不是单引号。
  • 保存时一般要按UTF-8格式保存,若作者说明其它格式,则按作者所说的格式保存
  • 三类文件中YML独有的缩进排版法则 所有同一级的设置最左端要竖排对齐!否则会导致错误!一般来说,保持原本排版状况即可
 在properties文件中需要注意的事情:
  • # 同上
  • xxxx=xxxx 是在该类文件中设置变量的格式,没有yml中空格、引号的考虑,其余同上,该填什么就填什么
  • 唯一需要注意的是此类文件所有非数字英文字符,都需要转为通用字符名称
  这个在EmEditor非常方便,只需全部选中,然后按鼠标右键,然后依次按键盘上的S、O、C即可,名称可以自己看,转回来的按钮在“O”的上方
 在lang文件中需要注意的事情:
  • # 同上
  • xxxx=xxxx 同上
  • 貌似无需转码

  建议将文本翻译完后,再润色,使玩家更易理解,这才是汉化的目的不是么?
  翻译完成后,将翻译完的文件覆盖模组或插件中原文件即完成汉化。

四、发布
 在论坛发布需要注意以下几点:
1.需要注明模组或插件的原帖及原作者,以及汉化模组或插件的原帖(如本站首发可不写)及汉化者(如为发帖者可不写)
2.同时更新者者优先度按如下考虑:原作者>汉化者>使用者>路人,也就是说,本版同时出现多个重复帖子时,优先度高者的帖子予以保留
 补充:若原作者发帖,而玩家也想给汉化者评分的话,可以让汉化者在该帖回复,然后由原作者在1楼内引用链接,玩家可以在此给汉化者评分
3.请将帖名按模组&插件发布版块的版头要求填写


至此,教程结束,谢谢浏览