如何让PyDev在编辑器中显示pylint错误?

时间:2013-09-27 16:57:12

标签: python eclipse pydev pylint

我安装了最新的PyDev(2.8.2)和pylint(1.0.0)。我试图在PyDev编辑器中显示pylint错误和警告。当我启用它时似乎什么都不做。当我将其设置为将输出重定向到控制台时,它似乎正常工作(参见屏幕截图)。

我怎样才能让它发挥作用?

Console output

3 个答案:

答案 0 :(得分:3)

为什么pylint在PyDev中不起作用有很多原因。

确保已配置PyLint

选项可在window - >找到。 preferences - > pydev - > pylint

检查use pylint?

对于Location of pylint.py (lint.py):,请单击“浏览”按钮并选择文件。对于Debian GNU / Linux上的我来说,它位于/usr/share/pyshared/pylint/lint.py。如果您使用的是另一个发行版,则您的软件包管理应该可以向您显示随pylint软件包一起安装的文件。通过grep搜索lint.py

如果所有这些都很好,请确认FATALERRORSWARNINGSCONVENTIONSREFACTOR严重性未设置为忽略。< / p>

点击OK

给它一分钟,因为PyDev可能需要花一点时间才能弄清楚pylint的东西。然后故意引入一个pylint警告。如果未定义foo.bar(),则类似于简单foo的内容应该会创建一个在保存文件后显示的错误。

确保您的源文件位于PYTHONPATH

Project下 - &gt; Properties - &gt; PyDev - PYTHONPATH查看Source Folders标签,如果框中没有任何内容,则表示存在问题。通过Add Source Folder按钮将源目录添加到其中。如果您的代码位于项目的根目录中,只需选择项目目录即可。如果它在另一个文件夹下,请选择该文件夹。

注意:您只需选择代码的根目录,而不是项目中的每个文件夹。

检查您的扩展程序

确保您正在测试的文件具有.py扩展名。 PyDev不会为任何没有.py扩展名的文件调用pylint。因此,如果您有一个调用/安装脚本调用您的应用程序的其余部分没有.py扩展名,它将不会检查它。

答案 1 :(得分:1)

首先确保您已启用autobuild,以便在没有其他操作的情况下更改后pylint可以正常工作。 然后检查您没有比在指定要使用pylint的最大增量的选项中配置的更改更多的更改。 当然,如果你还没有在问题过滤器中启用pylint。 认为它必须有所帮助。

答案 2 :(得分:1)

您的控制台输出显示二进制字符,可能是文件编码问题。可能是你的* .py有DOS行结尾,如果是这样就转换它们(似乎你的盒子是Linux的)

dos2unix <your files>

您还可以在控制台第一行的命令行中尝试该命令。这就是我的控制台的样子

PyLint: Executing command line: /usr/lib/python2.7/site-packages/pylint-1.0.0-py2.7.egg /pylint/lint.py --rcfile=$HOME/.pylintrc test.py
PyLint: The stdout of the command line is: ************* Module updateProgress
C: 14, 0: Line too long (89/80) (line-too-long)
C: 26, 0: Trailing whitespace (trailing-whitespace)
C: 40, 0: Trailing whitespace (trailing-whitespace)
C: 42, 0: Trailing whitespace (trailing-whitespace)