zoukankan      html  css  js  c++  java
  • xcode国际化工具genstrings体验总结

    genstrings是苹果推出的一个用于自动从代码的nslocalizedstring等提取生成国际化字符串的工具;

    xcode的国际化文件方案一直以来都不太智能,我记得很久以前.strings文件库上的修改好像是必然会引发冲突的(别人在你修改过程中提交);

    在代码中写完国际化的字符串还要单独打开.strings文件进行编辑,比较麻烦。


    鉴于此,很多开发者在这个方面也做了不少的努力:

    比如xcode里面对genstrings的扩展或者是改写,支持merge功能等(在github里面搜索genstrings会出现一票的仓库)。

    其中值得一提的是DTLocalizableStringScanner,它不是基于genstrings而是全部自己开发的开源代码,希望自己定制开发功能的朋友可以考虑基于它进行改造。


    还有商业化的产品:

    https://www.delitestudio.com/why-not-use-genstrings/

    愿意付费的朋友可以尝试,应该可以值回5美元的票价。


    还有别的思路,根据资源文件自动补全字符串(类似ksimageNamed):

    https://github.com/questbeat/Lin

    这个插件实际测试在xcode8下已经无法安装了(笔者使用的是反和谐的xcode,是可以安装其他插件的)。


    目前现有的方案都不太令人满意,要想让这套工作变得舒服,还是要打造一套完整、好用的工具链,目前可用的工具我个人认为离这个目标还是有点远。

    这块应该算上是苹果开发中的痛点了,所以其中对于开发者而言也同时蕴含了机会,如果有好的工具或是产品出现,个人感觉应该会比较受欢迎。


    另外,个人认为国际化文件也分模块会比较好,这样也有利于模块化。

    理想中的流程:

    新模块:

    NSString -> LocalizedXXX ->自动生成.strings,进入其中进行编辑


    pending:

    NSString -> LocalizedXXX ->自动生成/merge.strings,进入其中进行编辑




  • 相关阅读:
    宅急送
    网站迁移主要工作完成
    服务器迁移后性能提升很明显
    Vista修改默认字体
    服务器迁移预告
    Silverlight 2 和 Deep Zoom
    Mix 08到来之前的Monolight Update
    ASP.NET MVC Preview生命周期分析
    Windows Server 2008 与 .NET Framework 的版本之间有什么关系
    Silverlight 2 DispatcherTimer和通过XAML创建UI元素
  • 原文地址:https://www.cnblogs.com/fengju/p/6173580.html
Copyright © 2011-2022 走看看