在Syntastic中禁用Python文件的pep8检查

14

我与许多不符合pep8规范的代码一起工作(无法修复),希望Syntastic不使用pep8语法检查器。有没有任何方法可以禁用它?


你不需要指定要使用哪些语法检查器吗?我在我的vimrc中设置了let g:syntastic_python_checkers=['pylint']。你的g:syntastic_python_checkers设置是什么? - Christian Geier
那个变量对我来说根本没有被设置。 - rgrinberg
2个回答

23
如果您正在使用flake8作为Python语法检查器,可以按照以下方式进行设置(将其放入您的vimrcftplugin/python.vim文件中):
let g:syntastic_python_checkers=['flake8']
let g:syntastic_python_flake8_args='--ignore=E501,E225'

您需要明确地消除每个错误类(不能整体禁用pep8检查)。请参阅flake8文档pycodestyle文档(曾用名为pep8)以获取所有错误和警告代码。


3
就我个人而言,我认为flake8比pylint更强大。也许只需要使用let g:syntastic_python_flake8_args='--ignore=E501,E225'对于flake8就足够了。 - Kamel
6
以下是所有的pep8错误,将它们添加到代码中以有效地禁用pep8: '--ignore=E101,E111,E112,E113,E114,E115,E116,E121,E122,E123,E124,E125,E126,E127,E128,E129,E131,E133,E201,E202,E203,E211,E221,E222,E223,E224,E225,E226,E227,E228,E231,E241,E242,E251,E261,E262,E265,E266,E271,E272,E273,E274,E301,E302,E303,E304,E401,E402,E501,E502,E701,E702,E703,E704,E711,E712,E713,E714,E721,E731,E901,E902,W191,W291,W292,W293,W391,W503,W601,W602,W603,W604' - Lucas
1
错误代码的链接已失效。Flake8特定的错误代码在这里:http://flake8.readthedocs.io/en/latest/user/error-codes.html,pycodestyle(曾用名pep8)的错误代码在这里:https://pycodestyle.readthedocs.io/en/latest/intro.html#error-codes - JoshB
2
@Lucas,你可以使用错误类,例如E1来处理所有的E1xx警告。 - qwr

6
补充Christian的回答,你还可以添加特定的检查器参数:
let g:syntastic_python_flake8_args = "--ignore=E501 --max-complexity 10"

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