现在工作主要负责小程序端,很少负责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很麻烦,还要对付别人设计的文案过长,现在还不知道怎么对付。

最新文章

  1. SQL Server删除distribution数据库
  2. C++使用binder实例
  3. ArcGIS Server开发教程系列(2)配置ARCMAP和ARCCatalog发布服务
  4. php array_intersect() 和 array_diff() 函数
  5. Kali linux 2016无法打开virtualbox问题解决
  6. IOS GCD
  7. How To Read a Paper.md
  8. hdu 5288 OO’s Sequence(计数)
  9. 一个很经典的this面试题
  10. hdu1556 Color the ball
  11. c#中的数据类型简介
  12. 基于Sql Server 2008的分布式数据库的实践(四)
  13. CSS3--阴影,渐变,背景图片
  14. Memcached十问十答
  15. JS中的循环嵌套 BOM函数
  16. Unity3D核心技术详解
  17. ES的Query、Filter、Metric、Bucketing使用详解
  18. 使用VUE框架搭建项目基本步骤
  19. mysql 主从模式总结(一)
  20. static, const

热门文章

  1. struts2 、mybatis 、easyui 分页
  2. Mac OS X 下android环境搭建
  3. LibreOJ 6004 圆桌聚餐 (最大流)
  4. Launch VINS example (Euroc dataset) in RTAB-MAP
  5. php代码审计8审计文件上传漏洞
  6. Windowns DOS For 循环实例
  7. Django rest framework框架——APIview源码分析
  8. 【guava】对象处理
  9. 本文分享一下ehcache的使用心得,本文主要讲以广播的形式同步缓存。
  10. JS原型链中的prototype与_proto_的个人理解与详细总结