在HTML中要表明内容是什么语言或文字的,这时需要语言文字标记(Language Tags),但是缩写使用什么合适呢?缩写一直在变化,产生更合适的缩写代码。在其他地方也会用到语文代码,特写此文讨论此事。
语言文字标记由IANA制定(http://www.iana.org/protocols/),IANA的几个文档如下:
Language TagsLanguage Subtag RegistryRFC 5646Expert Review (Experts - Michael Everson and Doug Ewell)Language Subtag Registry - Registration TemplatesRFC 5646These are the Registration Templates only.Language Tag Extensions RegistryRFC 5646IESG ApprovalLanguage Tags - OBSOLETERFC 4646No further registrations in this registry.Language Tags Directory - OBSOLETERFC 4646No further registrations in this registry.
IANA制定的Language Tags(语言文字标记)格式如下(http://tools.ietf.org/html/rfc5646):
language //语言文字种类,必须出现1次 ["-" script] ;书写格式,出现0或1次 ["-" region] ;国家地区,出现0或1次 *("-" variant) ;方言,出现0或多次 *("-" extension) ;扩展,出现0或多次 ["-" privateuse] ;私人用途,出现0或1次
下面详细介绍各个部分:
language(语言文字种类)包含2个部分: language = primary language ; 主要语言文字种类,必须出现1次 ["-" extlang] ; 扩展语言文字种类,出现0或1次
primary language(主要语言文字种类)的格式为:
可以为2个字母,按ISO639-1执行(https://secure.wikimedia.org/wikipedia/en/wiki/List_of_ISO_639-1_codes),比如zh、en
可以为3个字母,按ISO639-2、ISO 639-3、ISO 639-5执行(http://www.sil.org/iso639-3/codes.asp?order=639_3&letter=l),比如cmn、yue
其他字母的请看原文(http://tools.ietf.org/html/rfc5646)。
extlang(扩展语言文字种类)的格式为:
必须为3个字母,按ISO 639-3执行(https://secure.wikimedia.org/wikipedia/en/wiki/List_of_ISO_639-3_codes),比如cmn、yue、lzh
优先使用“cmn”、“yue”代替“zh-cmn”、“zh-yue”。
script(书写格式)的格式为:
必须为4个字母,按ISO15924执行(http://zh.wikipedia.org/zh-cn/ISO_15924_%E5%88%97%E8%A1%A8),比如Hans、Hant
region(国家地区)的格式为:
可以为2个字母,按ISO3166-1执行(http://www.iso.org/iso/english_country_names_and_code_elements),比如CN、HK
可以为3个字母,请看原文(http://tools.ietf.org/html/rfc5646)。
方言(variant)的格式为:
必须在IANA登记后,才能使用,详情请看原文(http://tools.ietf.org/html/rfc5646)。
下面是部分subtag(子标记)的翻译:
primary language(主要语言文字种类):
zh Chinese 中国字或中国话
cmn Mandarin Chinese 普通话或國語发音
yue Yue Chinese 粤语
extlang(扩展语言文字种类):
lzh Literary Chinese 文言文,前缀为zh
script(书写格式):
Hans simplified Chinese 规范汉字
Hant traditional Chinese 國字
region(国家地区):
CN CHINA 中国
HK HONG KONG 香港
下面是一些文字例子:
圆珠笔 zh-Hans-CN
原子筆 zh-Hant-TW
它是一个刮胡刀 zh-Hans-CN
佢系一个须刨嚟嘅 yue-Hans
佢係一個鬚刨嚟嘅 yue-Hant
驴不胜怒,蹄之 zh-lzh-Hans
驢不勝怒,蹄之 zh-lzh-Hant
驴发怒踢他了 zh-Hans-CN
你跑的真快 zh-Hans-CN
你丫跑的真快 zh-Hans-CN-北京方言(英文缩写未知)
下面是部分tag(标记)的翻译:
zh-Hans simplified Chinese 规范汉字
zh-Hans-CN PRC Mainland Chinese in simplified script 以规范汉字书写的中国大陆用词
zh-Hans-HK Hong Kong Chinese in simplified script 以简体中文书写的香港地区用词
zh-Hant traditional Chinese 國字
zh-Hant-HK Hong Kong Chinese in traditional script 以繁體中文書寫的香港地區用詞
zh-Hant-TW Taiwan Chinese in traditional script 以國字書寫的台灣地區用詞
yue Yue Chinese 粤语
cmn Mandarin Chinese 普通话或國語发音
yue-Hans 以规范汉字书写的粤语用词
yue-Hant 以國字書寫的粵語用詞
cmn-Hans-CN 以规范汉字书写的中国大陆普通话用词
cmn-Hant-HK 以繁體中文書寫的香港地区普通話用詞
cmn-Hant-TW 以國字書寫的台湾地区國語用詞
这个问题已基本解决。
zh-Hans-CN、zh-Hant-HK之类的用于文字,比较合适。
cmn和yue用于电影的音轨,比较合适。
cmn-Hans-CN、cmn-Hant-HK之类的用于什么地方?还没考虑清楚。
http://www.iana.org/assignments/language-subtag-registry
http://www.cnblogs.com/sink_cup/archive/2010/04/07/chinese_language_putonghua_guifanhanzi_not_Simplified_Chinese.html
http://www.cnblogs.com/sink_cup/archive/2010/01/22/html401_lang_iso639_iso3166_iana_language_subtag.html
http://zh-classical.wikipedia.org/wiki/%E6%96%87%E8%A8%80
参考图片:
转载于:https://www.cnblogs.com/sink_cup/archive/2010/07/01/language_subtag_registry.html
相关资源:DirectX修复工具V4.0增强版