Настройка конфигурации для плагина Vim PEP-8 для игнорирования ошибок и предупреждений? - программирование
Подтвердить что ты не робот

Настройка конфигурации для плагина Vim PEP-8 для игнорирования ошибок и предупреждений?

Я использую этот плагин для обнаружения ошибок и предупреждений PEP-8 в Vim: http://www.vim.org/scripts/script.php?script_id=3430

Я хочу игнорировать несколько ошибок и предупреждений, таких как E501 и W601, приведенные в бэкэнд-инструменте pep8: 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)

Но как его использовать?

4b9b3361

Ответ 1

Вам нужно установить переменную g:pep8_ignore; вы должны поместить это в свой vimrc.

let g:pep8_ignore="E501,W601"

Ответ 2

Для тех людей, которые наткнулись на этот вопрос, и приведенный выше ответ не работает, вот некоторые решения для других плагинов Vim Python:

Для Syntastic:

let g:syntastic_python_checker="flake8"
let g:syntastic_python_checker_args="--ignore=E501,W601"

UPDATE: вместо этого используются более новые версии Syntastic:

let g:syntastic_python_checkers=["flake8"]

Для python-mode:

let g:pymode_lint_ignore="E501,W601"

Убедитесь, что они установлены до того, как активированы Pathogen или Vundle.

Ответ 3

Попробовав все решения robbrit и обнаружив, что ни один из них не работал у меня, я прочитал часть документации для Syntastic. Чтобы передать аргументы на проверку, вам нужно знать несколько вещей. Ниже приведен синтаксис команды:

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"

Надеюсь, это поможет кому-то избежать расходов, пытаясь понять это, как я.

Ответ 4

Если вы используете python-mode вам нужно использовать список сейчас:

let g:pymode_lint_ignore=["E501", "W601"]