我希望SublimeLinter忽略PEP-8 E402错误消息。我已将包用户设置更改为
"pep8_ignore": [
"E402"
]
已关闭并重新打开Sublime Text。 SublimeLinter仍然显示E402错误代码。为什么呢?
我在这些软件包中使用ST3:BufferScrool,LaTeXing,PackageControl,PackageResourceViewer,R-Box,Side Bar,Anaconda和SublimeLinter。
答案 0 :(得分:3)
首先,我注意到Anaconda执行了自己版本的PEP-8 linting,因此您发现了一些功能性重复...
其次,我注意到您似乎没有安装SublimeLinter-pep8,这意味着(因为ST3上由Package Control安装的SublimeLinter将是SublimeLinter3,这需要linting插件到做任何事情)它不是SublimeLinter。需要考虑的事项:(1)你看到的是从Anaconda而不是SublimeLinter看到的掉毛错误?如果是这样,您需要在Anaconda用户设置而不是SublimeLinter中设置"pep8_ignore"
。 (2)你(不知何故)在ST3上使用旧的,不受支持的SublimeLinter版本吗?在这种情况下,要么(a)切换到使用Anaconda并忽略SublimeLinter用于linting python文件或(b)将SublimeLinter升级到SublimeLinter3,请安装SublimeLinter-pep8并参见下文。
假设您实际上尝试在SublimeLinter3:SublimeLinter3上使用SublimeLinter-pep8 plugin,它使用先前版本的SublimeLinter中的entirely different settings structure。因此,"pep8_ignore"
设置不再受到尊重。这是预期的行为。
为了达到您想要的效果,您需要在设置文件中设置这些设置:
{
"user": {
"linters": {
"pep8": {
"ignore": "E402"
}
}
}
}
但请仔细阅读SublimeLinter settings docs,因为有很多不同的方法来配置您的设置,并查看docs for the pep-8 plugin
答案 1 :(得分:1)
作为ig0774 mentioned,Anaconda有自己的内置链接(pylint
,pep8
,pep257
和pyflakes
),它们正在产生您要忽略的错误消息,不是 SublimeLinter。如果由于某种原因你想要用Anaconda关闭linting并使用一个或多个SublimeLinter插件执行它,你需要安装和配置这些插件。 Search打包控件以获取更多信息。
要配置Anaconda,请先在同一子菜单中打开 Preferences -> Package Settings -> Anaconda -> Settings-Default
,然后 Settings-User
。将Default
的全部内容复制到User
,然后关闭Default
,因为无论如何都无法编辑它。我强烈建议您阅读整个文件,因为它评论很好。您正在寻找的设置也称为"pep8_ignore"
,它在当前版本的Anaconda中位于第318行。此文件似乎经常更改,因此此位置可能会随时间而变化。只需搜索名称。
如果您想完全关闭Anaconda的linting功能,请将"anaconda_linting"
设置为false
。