【问题标题】:Django internationalization (i18n) lint checker? Tell me what hasn't been _()'ed or {% trans %}'edDjango 国际化(i18n)皮棉检查器?告诉我什么没有被 _()'ed 或 {% trans %}'ed
【发布时间】:2011-03-01 13:51:43
【问题描述】:

我必须国际化 (i18n) 一个 django 项目。它结合了许多内部 django 应用程序。它已经部分 i18n'ed,即一些字符串是 _(),但有些是裸露的。一些模板使用{% blocktrans %}{% trans %},但有时英文文本直接在那里。我需要大量的手工工作才能改变这一切。哦,好吧。

有没有办法查看python代码中的哪些字符串以及html模板中的哪些文本没有通过_()/{% trans %}传递? “i18n lint”检查器?一个命令将打印出尚未 _()'ed 或不在 {% trans %} 中的字符串的行和文件名,我可以接受它抛出误报(和误报),我只是想要一些方法来确保我没有错过任何东西。

【问题讨论】:

    标签: python django internationalization lint


    【解决方案1】:
    【解决方案2】:

    您可以通过所有 Python 文件grep 获取字符串列表,并查看哪些字符串缺少_()。像这样但可能更复杂一点:

    grep "[\"\'][A-Za-z]" */*py  -R 
    

    不幸的是,我不知道如何查看模板文件,因为我看不出有任何方法可以区分 {% blocktrans %}{% trans %} 环境中的字符串和没有的字符串。

    【讨论】:

      猜你喜欢
      • 2019-08-05
      • 1970-01-01
      • 2011-02-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-16
      相关资源
      最近更新 更多