我已经成功设置了Sublime Text 3以使用SublimeLinter和PyCodeStyle。我喜欢用它来保持诚实,我为PyCodeStyle设置了SublimeLinter配置文件以忽略某些警告。这是我现在的文件。
{
"linters": {
"pycodestyle": {
"ignore": ["E111", "E114"],
"max-doc-length": 60,
},
// ... other linters' settings
}
我忽略了E111和E114,因为对于我的项目,我必须使用2的缩进宽度,并且我不想因为不使用4的倍数而大喊大叫。
我遇到的问题是第二条命令,我的目标是在注释行过长时获得警告。我将其设置为60(尽管我打算使用PEP的72的建议),只是强迫它跳动皮棉。
无论我将其设置为什么,我都不会收到我期望得到的警告(W505:文档行太长)。 (我从没有收到任何警告。)我还尝试了“ -max-doc-length”和“ --max-doc-length”,因为我知道通过命令行完成时可以选择后者。
有人知道我在做错什么吗,每当我的评论发表得太久时,我怎么能说服棉短绒棉给我一次严厉的演讲?
这可能是版本问题吗?我注意到我可以在PyCodeStyle's webpage上看到上面引用的选项(搜索“ --max-doc-length = n”);但是,在系统上,当我键入pycodestyle --help
时,看不到该选项。我看到了--max-line-length=n
选项,但看不到它下面的文档行。
pycodestyle --version
的输出为2.4.0
。
答案 0 :(得分:1)
首先,是的,存在版本问题。即使您具有最新版本(2.4.0,released on 10 Apr 2018),也已after that version was released, on 11 May 2018添加了max-doc-length
。
我不确定为什么当它不可用时为什么将它添加到2.4.0的文档中(可能是因为他们仍然没有将回购中的版本提高到2.4.1?),但是我我不确定这是值得报告的错误。
无论如何,如果您想要此功能(不想等待下一个版本),则必须在GitHub上安装最新版本。
但是,我认为您还是不需要此功能。
max-doc-length
(以及相应的W505警告)用于文档字符串,而不用于注释。因此,它仍然不会检测到您的注释行太长。
据我所知,pycodestyle没有办法为注释指定不同的长度。他们总是得到max-line-length
。