在Eclipse中设置PEP8最大行长度的问题

11

我在一台Ubuntu x64机器上使用Eclipse Juno。

我想要更改PyDev的PEP8默认最大行长度,但是我不知道怎么做!

我尝试着去Window/Preferences/PyDev/Editor/Code Analysis/pep8.py,然后设置了以下参数:

--max-line-length=100

我做错了什么?设置了这个后,我进行了代码分析,但似乎忽略了行长度,而我不想这样。

4个回答

16

当前的Pydev有一个pep8.py可以设置--max-line-length参数。您只需前往

Window → Preferences → Pydev → Editor → Code Analysis → pep8.py

并将参数设置为:

--max-line-length=99

参数自PyDev 3.6.0开始管理(我已经在版本3.9.0中成功测试):https://github.com/fabioz/Pydev/commit/2a7c8324ebd79fa7c84ebd150b4383cef2569726 - Julien Carsique
3
为了避免他人的痛苦,我发现必须重新启动Eclipse使更改后的参数设置才能生效。 - Tom Dalton
我刚刚重新发现了自己的评论。我非常需要改用PyCharm!:-D - Tom Dalton

11

要设置最大行长度,请前往:

Window/Preferences/PyDev/Editor/Code Analysis/pep8.py

然后,打开位于pep8.py位置的文件,搜索MAX_LINE_LENGTH变量并将其设置为所需长度。您只需要重新启动Eclipse即可! :D

注意:确保检查了PyDev选项中的Do code analysis?


@Caumons,很抱歉我无法在我的Eclipse Kepler和PyDev中找到pep8.py的位置。你能帮忙吗? - Naman
@Naman:对于我来说(eclipse 4.4,linux),pep8.py可以在这里找到:~/.eclipse/org.eclipse.platform_4.4.0_77104185_linux_gtk_x86_64/plugins/org.python.pydev_3.6.0.201406232321/pysrc/third_party/pep8/pep8.py。 - bossi
2
@A-B-B 在我写这篇答案的时候,这是正确的方法,但三年半后,情况可能已经改变了...实际上,有其他更新的答案已经展示了如何在较新的版本中完成它。 - Caumons

4
问题在于pydev使用的pep8.py未实现最大行长度。这意味着它将无法识别最大行长度。
如果您使用“-max-line-length”,可以看到日志中会有一个例外,即在解析参数时。如果您打开出错的文件,可以看到“-max-line-length”丢失。
可以通过“Help->Aptana->View Log File”获取日志。 检查“pep8.py”中的错误。
要使其正常工作,您可能需要请求更新上游或在本地修复该问题。

谢谢你的回答!我无法看到日志文件,因为在帮助菜单中没有“Aptana”选项:S很遗憾这个功能不可用。 - Caumons
好的,我忘记了你使用的是Eclipse而不是Aptana。那么日志文件应该位于<workspace>/.metadata/.log。 - Henke
+1 我也花了一些时间才意识到这一点。这个答案本来可以节省我很多时间的。 - wagnerpeer
@pwagner和Henke,我刚刚又添加了一个确实解决了问题的答案。干杯! - Caumons
当前的PyDev版本有一个pep8.py,其中包含--max-line-length参数! - Sebastian Wiesinger

0

看起来自这个问题被问出来以后,PyDev 对 PEP8 的支持已经有所改善。我通过进入“窗口:首选项:PyDev:编辑器:代码分析”,然后单击 pep8.py 选项卡,使其正常运行。

我输入了参数 --max-line-length=100,但就像您描述的那样被忽略了。然而,当我启用了“使用系统解释器”复选框时,这些参数被使用了。我还发现,--ignore 设置也有效。

我正在使用 PyDev 4.2.0 和 Eclipse 4.4.2 (Luna)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接