现在工作主要负责小程序端,很少负责backend。最近的一个任务是配置多语言。因为一开始都是写死的中文,现在需要把那些变成英文。
狂搜了一波,其实网上的方法都不怎好。(可能就是一开始看的时候觉得好。)但是维护起来麻烦。
我这里的做法是,
1、去google-doc里面新建一个xls文档,自己分好层级,然后让别人去填。然后下载成csv文件,他是挺有规律的,然后写一个py脚本出来parse他们,就可以每次都生成对应的代码了 。
2、然后就是变量的写发了。在xxx下车,要写成 "在{name}下车",这样的好处是对付英语语义问题,因为英语是变成pick up on xxx的,相反。也就是不能写死成"在"{var_name}"下车"
要写成 "在{name}下车".format(var_name)
3、关于那个csv文件,首先用csv包按照你的规律导入去一个字典那里,然后json.dumps()就行了,中文的话会变成UTF8,可以设置ensure_ascii=False就可以了。然后考虑一下转义字符问题。
dumps_result = json.dumps(d, default = lambda obj: obj.__dict__, sort_keys=True, ensure_ascii=False, indent=2) dumps_result = dumps_result.replace(""", "'") dumps_result = dumps_result.replace("\\", "\") return dumps_result
4、i18n很麻烦,还要对付别人设计的文案过长,现在还不知道怎么对付。