飘在云端

啊!那蓝真天,白真云!

· 备查 · · 612次浏览

最新 RFC 5646 标准 网页头部语言声明写法

准备翻译汉化某个项目为简体中文,在给翻译文件起名时犯了迷糊,想直接敲zh-CN,感觉不妥,各种谷歌必应,在知乎看到了一片讨论,才恍然大悟。
参考这名作者回答,目前排名第一的高票答案不敢苟同,具体参考楼下回复已经有人指出问题了。
最后我总结归纳,如下写法是没问题的:

最新标准,未来方向,逐步兼容,基本重要可选项全部齐全(language+script+region),不过很少有人煞有介事的补齐3个程度的描述:

zh-Hans-CN   (中文系,简体中文,中国大陆地区使用的简体字形)
zh-Hant-TW   (中文系,台湾繁体,中国台湾使用的繁体字形)
zh-Hant-HK   (中文系,香港繁体,中国香港使用的繁体字形)
zh-Hans-SG   (中文系,简体中文,新加坡地区使用的简体字形)

未补齐可选项版,大多数(常见的游戏汉化/翻译/电影/字幕)大量使用了这个,这个可以理解,目前来说简体中文的差异性很小很小,新加坡简体与大陆的简体一致,区别是新加坡用的简体字体(比如楷体 宋体 这样的字体书写差距)有点区别,极其细微差距,把新加坡简体等同于大陆简体是没问题的,逐步兼容,过渡中,推荐使用这个代替 zh-CN:

zh-Hans  中文系,简体中文
zh-Hant 中文系,繁体中文

符合最新标准,也是事实标准,万能兼容,可选项没有完全补足,使用描述地理位置来变相描述书写格式:

zh-CN 中文系,在大陆地区使用的,即 变相的描述 大陆的简体中文
zh-TW 中文系,在台湾地区使用的,即 变相的描述 台湾的繁体中文
zh-HK 中文系,在香港地区使用的,即 变相的描述 香港的繁体中文
zh-SG 中文系,在新加坡地区使用的,即 变相的描述 大陆的简体中文(因为 新加坡简体 = 大陆简体,仅仅是使用的字体差异)

可以看到,可选项不是必须的,zh-Hans 和 zh-CN 都是描述了一部分可选项,都是可以的。zh-Hans 则是描述 中文系里面的细分版本,书写格式:简体中文字体(Hans),zh-CN 则是描述 中文系,并且在中国大陆地理环境区域使用的字体,zh-CN 这里是没直接明说是简体,但这里算是有个巧合,CN 这里本身含义描述的是使用地区,他是指中国大陆,但因为在中国大陆内,普及和日常使用的99.99%都是简体中文,所以这里的 CN 与实际环境含义产生了联系,最后就那么理解,中文系里面,并且在是在中国大陆这个地理区域普遍使用的字体,而中国大陆普遍使用,众所周知的,不就是等于明说的简体中文了,所以 zh-CN 也就等于简体中文的另一种描述了。
这时候再来看 zh-CN,在中国大陆地区使用的中文系语言,所以 zh-CN 的实际意思就是 中文-简体中文 的表述,与 zh-Hans-CN 实际含义趋于一致。


RF C5646(也就是 IETF 的 BCP 47,2009 年 9 月) 取代了之前的 RFC 4646,3066 和 1766。
RFC 5646 识别语言的标记Language Tags定义为:

langtag  = language(语言)
            ["-" script](脚本/方言)
            ["-" region](国家/地区)
            *("-" variant)(变体)
            *("-" extension)(扩展)
            ["-" privateuse](私有)

无论的,zh-CN 万能兼容,就是简体中文,但既然就是想表述清楚,那么更推荐直接写清楚zh-Hans,简明扼要,简体中文,无需什么圈圈绕绕,毕竟外国人对于我们的文化了解不一定那么清晰。

总结,使用 zh-Hans 来 代替 zh-CN 。


网页头部的声明应该是用 lang="zh" 还是 lang="zh-cn"? - 张国舜的回答 - 知乎
https://www.zhihu.com/question/20797118/answer/55038311

网页头部的声明应该是用 lang="zh" 还是 lang="zh-cn"? - 李萧的回答 - 知乎
https://www.zhihu.com/question/20797118/answer/16817129