警告不正确的gettext用法。

flake8-i18n的Python项目详细描述


flake8 i18n插件

在python中经常使用gettext会导致 以下错误:

(f“{context_variable}”)

不仅getText在这里不起作用,因为fstring插值 在函数调用之前发生,但使用getText工具收集 翻译键产生:

File “/usr/lib/python3.6/site-packages/babel/messages/extract.py”,

line 480, in extract_python value = eval(code, {‘__builtins__’: {}}, {})

File “<string>”, line 2, in <module> NameError: name ‘context_variable’ is not defined

类似的情况是
(值为%s)
“{}”。格式(值))

不会触发收集错误, 但是仍然会导致gettext函数调用中的键名不正确。

Flake8扩展为上述情况提供了基本检查。

安装

使用pip安装:

$ pip install flake8-i18n

配置

在.flake8文件中添加以下内容

i18nfuncs =
gettext ngettext myfunny_gettext _
否则,默认函数名列表为
获取文本 恩盖特文本 _

在gettext中使用字符串插值现在将导致以下结果之一:

I001 fstring is resolved before function call

I002 format is resolved before function call

I003 printf is resolved before function call

要求

  • Python3.6,3.7
  • 薄片8

许可证

GNU通用公共许可证v2(GPLV2)

更改日志

0.1.0(2019-03-02)

  • 基本实现

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何在jprogressbar上添加文本?   java生成30到32位之间的随机数   我想从我自己的服务器而不是java worldwind中的nasa服务器获取数据   jsp中带有外部java文件的html计数器   java如何找到运行Servlet的主机和端口   我怎么能看到数学。java中的cos方法计算平方根?   java这个docker run命令做什么?   java如何在将表单提交到servlet后将原始JSP保存在URL中?   如何在Java中访问Arraylist中的字典数据?   java JPA如果我有一个实体被用作复合键,那么级联是否也构成复合键的一部分?   连接Java:文件读取/添加到文件程序时未按预期工作(逻辑错误)   java从Android向PLC发送布尔值   java Get build。gradle文件作为一个。类文件   Youtube API V3 Java无需调用浏览器即可上传视频   java如何在Unittest中测试StackOverflower错误   实现方法中的java异常处理   java这个::instanceMethod在java8中用作方法参数有什么用途   java偶尔会获得javax。邮政使用javamail阅读gmail电子邮件时的FolderClosedException