我正在使用此插件来检测Vim中的PEP-8错误和警告: http://www.vim.org/scripts/script.php?script_id=3430
我想忽略一些错误和警告,如E501&后端pep8工具中给出的W601: http://pypi.python.org/pypi/pep8
当我查看插件代码时,我可以看到它支持这个:
from pep8checker import Pep8Checker
args = vim.eval('string(g:pep8_args)')
select = vim.eval('string(g:pep8_select)')
ignore = vim.eval('string(g:pep8_ignore)')
if select:
args = args + ' --select=%s' % select
if ignore:
args = args + ' --ignore=%s' % ignore
pep8_checker = Pep8Checker(cmd, args)
但我该如何使用它?
答案 0 :(得分:26)
对于那些偶然发现这个问题并且上述答案不起作用的人来说,这里有一些针对其他Vim Python插件的解决方案:
let g:syntastic_python_checker="flake8"
let g:syntastic_python_checker_args="--ignore=E501,W601"
更新:较新版本的Syntastic使用此代替:
let g:syntastic_python_checkers=["flake8"]
let g:pymode_lint_ignore="E501,W601"
确保在触发Pathogen或Vundle之前设置这些。
答案 1 :(得分:12)
您需要设置变量g:pep8_ignore
;你应该把它放在你的vimrc中。
let g:pep8_ignore="E501,W601"
答案 2 :(得分:10)
在尝试了所有robbrit的解决方案并发现它们都不适合我之后,我阅读了一些Syntastic的文档。要将args传递给检查器,您需要了解一些事情。以下是命令语法:
let g:syntastic_python_checkers=["<checker_type>"]
let g:syntastic_<filetype>_<checker_name>_args="--ignore=E501,W601,..."
这意味着如果你使用flake8,你会写:
let g:syntastic_python_checkers=["flake8"]
let g:syntastic_python_flake8_args="--ignore=E501,W601"
希望这有助于有人避免花费多年时间试图像我一样解决这个问题。
答案 3 :(得分:0)
如果您使用python-mode
,则需要立即使用列表:
let g:pymode_lint_ignore=["E501", "W601"]