[发明专利]一种代码处理方法及相关设备在审
申请号: | 202110431775.4 | 申请日: | 2021-04-21 |
公开(公告)号: | CN113076167A | 公开(公告)日: | 2021-07-06 |
发明(设计)人: | 钟天扬 | 申请(专利权)人: | 杭州涂鸦信息技术有限公司 |
主分类号: | G06F9/451 | 分类号: | G06F9/451;G06F8/73 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 王兆林 |
地址: | 310013 浙江省杭*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 代码 处理 方法 相关 设备 | ||
本申请实施例公开了一种代码处理方法,用于前端项目的国际化处理过程。本申请方法实施例包括:获取源代码的抽象语法树表达;确定抽象语法树中的包括特定语种文案的目标节点,获取目标节点的位置信息及目标节点所包括的特定语种文案值;基于预设规则生成特定语种文案值对应的索引值;基于目标节点的位置信息使用索引值替换源代码中所包括的特定语种文案值;将索引值及特定语种文案值写入翻译资源文件。从以上技术方案可以看出,本申请实施例具有以下优点:本方案通过对源代码进行抽象语法树处理,通过索引值替换获得了不包括特定语种文案的源代码,进而使得前端工作者避免了繁琐的检索及索引值设置工作,提高了代码国际化处理过程的效率。
技术领域
本申请实施例涉及数据处理领域,尤其涉及一种代码处理方法及相关设备
背景技术
随着科技的进步,同一软件及网页可以被不同国家和地区的用户所使用,各个国家和地区的用户所使用的语言种类一般不同,因此在前端展示时需要使用不同的语言支持方案,而软件或网页的前端开发者在开发过程中往往是使用特定语种编写文案内容,需要进行后续支持处理,以便满足不同国家和地区的用户的需求。
目前对于多语言的支持工作需要在开发阶段配置国际化支持环境,比较有代表性的如I18n(英文单词Internationalization的首末字符I和n,18为中间的字符数)L10n(英文单词Localization的首末字符L和n,10为中间的字符数),等方式。例如,网页上需要显示“你好”,如网页需要支持中文,英文,德文,法文,则开发阶段需要针对包括“你好”文案的源代码生成四个国际化资源文件,每个资源文件都需要包含一个共同的文案索引值和不同的翻译文案。如设置索引值为tuya,在中文资源文件中,则索引“tuya”对应的文案为“你好”而在英文资源文件中索引“tuya”对应的文案为“hello”。当网页渲染或者软件运行时,根据用户选择的语言环境,找到对应语言的国际化资源文件,根据源代码中文案索引值,取出对应的翻译文案用于展示。这是目前页面多语言实现的原理。
在源代码开发阶段,为了提高效率,一般会直接在源代码中写入中文文案,当源代码开发基本完成后,再统一人工检索所有界面中文文案,设置文案索引值,并翻译成不同语言文案至不同语言的国际化资源文件中。当网站/软件规模很大时,不同内容的文案会达到上万甚至几十万条。这个人工生成国际化资源文件的过程常常会花费很多时间,且容易出错。
发明内容
本申请实施例第一方面提供了一种代码处理方法,包括:
获取源代码的抽象语法树表达;
确定所述抽象语法树中的包括特定语种文案的目标节点,获取所述目标节点的位置信息及所述目标节点所包括的特定语种文案值;
基于预设规则生成所述特定语种文案值对应的索引值;
基于所述目标节点的位置信息使用所述索引值替换所述源代码中所包括的特定语种文案值;
将所述索引值及所述特定语种文案值写入翻译资源文件。
基于本申请实施例第一方面提供的代码处理方法,可选的,所述确定所述抽象语法树中的包括特定语种文案的目标节点,之后所述方法还包括:
基于所述目标节点获取所述特定语种文案值对应的语法信息;
确定与所述语法信息对应的目标函数,所述目标函数用于使所述索引值在所述源代码中正常运行;
所述基于所述目标节点的位置信息使用所述索引值替换所述源代码中所包括的特定语种文案值,包括:基于所述目标节点的位置信息使用所述目标函数和所述索引值替换所述源代码中所包括的特定语种文案值。
基于本申请实施例第一方面提供的代码处理方法,可选的,所述基于所述目标节点获取所述特定语种文案值对应的语法信息,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州涂鸦信息技术有限公司,未经杭州涂鸦信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110431775.4/2.html,转载请声明来源钻瓜专利网。