如何将Pylint与Geany集成以使用Geany作为Python IDE?
这篇博客提到要把构建命令设置成
pylint -r no "%f"
并且要设置一个自定义的错误正则表达式
(W|E|F):([0-9]+):(.*)
评论里有人建议用这个命令
PYTHONPATH=${PYTHONPATH}:$(dirname %d) pylint --output-format=parseable --reports=n "%f"
这样的话,你可以在日志中点击行号,然后Geany会直接带你到那一行。我试过这个,但对我来说并没有成功。
在我的项目文件中,我添加了
[build_settings]
error_regex=^(W|E|F):([0-9]+):(.*)
重新加载文件后,结果还是一样。我是不是把error_regex设置错了?为什么这个不管用呢?
2 个回答
我写了一个插件,可以用来检查你的代码,主要是按照pep8、pylint和pyflakes的标准来检查。这段代码可以在launchpad上找到,并且已经为Ubuntu打包成ppa格式。
https://code.launchpad.net/~oly/geany-python-code-checker/trunk
https://launchpad.net/~oly/+archive/geany
这个插件可能对某些人有用,你还可以选择开启或关闭一些选项,比如检查代码行的长度。
我是你提到的博客文章里的评论者。
目前我在使用一个基于Debian的系统(具体来说是Linux Mint Debian),并且使用的是Geany 0.20。我有一个名为filetypes.python
的文件,位置在~/.config/geany/filedefs
,里面的内容是:
[build-menu]
FT_00_LB=pep8
FT_00_CM=pep8 --repeat --count "%f"
FT_00_WD=
FT_01_LB=PyLint (basic)
FT_01_CM=PYTHONPATH=${PYTHONPATH}:"%d" pylint --output-format=parseable --reports=n --errors-only "%f"
FT_01_WD=
FT_02_LB=PyLint (full)
FT_02_CM=PYTHONPATH=${PYTHONPATH}:"%d" pylint --output-format=parseable "%f"
FT_02_WD=
error_regex=^([^:]+?):([0-9]+):.+
需要注意的是,我的设置和博客文章中的一个主要区别是,我使用了--output-format=pareseable
,而我的error_regex
稍微不那么依赖pylint,这样它也能适用于pep8
。
其中的PYTHONPATH=${PYTHONPATH}:"%d"
部分是为了把当前工作目录添加到我的自定义Python路径中。我想,光从这点来看,在Windows上可能不太适用,所以如果你是在Windows上使用的话,肯定需要修改(或者去掉)这部分。实际上,如果你是在Windows上,请说明一下,因为可能有一些地方需要调整。