这边谢谢楼主们!具体参考如下
https://blog.csdn.net/longji/article/details/81623820?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-4.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromMachineLearnPai2%7Edefault-4.control
https://blog.csdn.net/longji/article/details/81907586
https://blog.csdn.net/weixin_37972910/article/details/104984859?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7Edefault-6.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7Edefault-6.control
单纯修改中文字符串:
如果只是单纯的修改中文字符串的话,可以找到对应的地方的xtb,里面是翻译文件.......修改就行了 比如把关于Chromium 改成 关于Feikua
可以这么找,在对应的html找到对应的i18n字符串,找到对应的标识符IDS,然后在
srcchromeappchromium_strings.grd srcchromeappgenerated_resources.grd
这两边就可以找到对应的IDS了,就知道原始的英文字符串是什么了...然后去要修改的语言的xtb,比如中文chromium_strings_zh-CN.xtb,generated_resources_zh-CN.xtb去修改对应的字符串,但是英文字符串不要动,因为是根据英文字符串计算出来的translation 所有翻译文件都有一份。
这边
srccomponentsstringscomponents_chromium_strings_en-GB.xtb
srccomponentsstringscomponents_chromium_strings_zh-CN.xtb
srcchromeapp esourceschromium_strings_en-GB.xtb
srcchromeapp esourceschromium_strings_zh-CN.xtb
修改chromium为自己浏览器的名称,就可以直接简单粗暴....这边细节的东西最后再说
新增字符串:
chromium_string.grd文件涉及到chromium项目的本地化和setup的本地化,其中包含安装卸载软件介绍等字符串的本地化。
generated_resources.grd主要涉及chromium项目的本地化,几乎包含所有chrome.exe中所要使用到的字符串的本地化。
所以,生成Id是在generated_resources.grd中完成。
各种语言的翻译文件在
C:feikuachromiumsrcchromeapp esources
C:feikuachromiumsrcchromeapp
比如:
xtb里面的translation id 是通过字符串计算出来的
具体计算在C:feikuachromiumsrc oolsgrit>
C:feikuachromiumsrc oolsgrit>python Python 2.7.18 (v2.7.18:8d21aa21f2, Apr 20 2020, 13:25:05) [MSC v.1500 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> from grit.extern import tclib >>> tclib.GenerateMessageId("About Feikua"); '7907918642462179362' >>>
然后可以在对应的grd文件中找到相关的定义IDS
比如:
C:feikuachromiumsrcchromeappgenerated_resources.grd
我们额
重新编译后,就可以在C++文件中引用了
ninja -C outDefault chrome
我的主要改动是:
翻译文件:
C:feikuachromiumsrcchromeapp esourcesgenerated_resources_zh-CN.xtb
C:feikuachromiumsrcchromeapp esourcesgenerated_resources_en-GB.xtb
定义的文件是
C:feikuachromiumsrcchromeappgenerated_resources.grd
编译一下下下下:
C:feikuachromiumsrc>ninja -C outDefault chrome
然后太感动了这边这边!!!
C:feikuachromiumsrcoutDefaultgenchromegritgenerated_resources.h
终于出现了#define IDS_FEIKUA_BROWSER 8833
终于有定义了 这玩意又是半天....... 之前也这么干过,但是一直有问题,后来关了VS...........再来一次
C:feikuachromiumsrc>ninja -C outDefault chrome
我也不知道为啥 但是就有了!
然后就可以开始我们愉快的跟字符串的斗争了!
去C++引用
矫情一下,突然想到郝工语重心长的跟我说,你如果怕犯错,很难成长的,确实是,我也发现自己的问题了,按部就班。
加油~