我在Windows上安装了http://ftp.logilab.org/pub/pylint/pylint-0.18.1.tar.gz,现在我正在尝试使用epylint脚本配置我的Emacs的flymake模式。
这是我在Windows命令提示符下尝试epylint时得到的输出。
C:\>epylint test.py
'test.py':1: [F] No module named 'test.py'
有关如何解决此问题的任何建议?
答案 0 :(得分:0)
阅读epylint.lint
函数的文档:
从emacs运行时,我们将在文件的目录中,并传递其文件名。 如果此文件是包的一部分,并且正在尝试从内部导入其他模块 它自己的包或根据它下面的目录中的另一个包,pylint将进行分类 它是一个失败的导入。
为了解决这个问题,我们遍历目录树以找到包的根 module在。我们然后从这个目录中调用pylint。
最后,我们必须更正pylint生成的输出中的文件名,以便Emacs不会 变得困惑(它只会期望原始文件名,而pylint可能会扩展它 额外的目录,如果我们已经遍历了树)
听起来它必须做一些额外的魔法才能在Emacs中工作。看起来你不能从命令行以相同的方式运行它。
在Emacs中它不适合你吗?那可能是pylint中的一个bug。 pylint是否有可以向其报告问题的邮件列表?