在srcuildDebuglocales目录下存放着各国语言所需要的资源文件xx.pak,我这边共有53中语言支持。
命令行进入srcuildDebug目录,敲:chrome.exe --lang=zh-CN就能用中文简体,zh-CN可以根据需要换成各种语言版本。
Chrome的整个solution中,每种语言都会有个相应的工程文件,如srcchrome_framelocaleszh-CN.vcxproj
整个工程只有一个.rc文件,貌似还是grit用对应的.xtb文件生成的(srcchromeapp esourcesgenerated_resources_zh-CN.xtb等):
srcuildDebugobjglobal_intermediatechrome_framechrome_frame_dialogs_zh-CN.rc
在代码中Chrome对于语言版本的选择,是函数GetApplicationLocale(), app_locale值得设定,/* ui/base/l10n/l10n_util.cc?*/
那么Chrome是悬着语言的策略是怎么样的呢?
1.查看--lang参数
2.当前配置文件是否制定locale
Refer the following 3 files?
srcchromeapp esourceslocale_settings.grd
srcchromeappgenerated_resources.grd
srcchromeapp esourceslocale_settings.grd
3.获取OS的locale信息
4.default值"en-US"