2012-03-15 13 views
16

używam tej wtyczki do wykrywania PEP-8 błędów i ostrzeżeń w vim: http://www.vim.org/scripts/script.php?script_id=3430Ustawienia konfiguracyjne wtyczki Vim PEP-8 do ignorowania błędów i ostrzeżeń?

chcę ignorować kilka błędów i ostrzeżeń, jak E501 & W601 podane w narzędziu backend pep8: http://pypi.python.org/pypi/pep8

Kiedy Sprawdziłem kod wtyczki, widzę, że ma wsparcie dla tego:

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) 

Ale jak z tego korzystać?

Odpowiedz

11

Należy ustawić zmienną g:pep8_ignore; powinieneś umieścić to w swoim vimrc.

let g:pep8_ignore="E501,W601" 
+0

Dzięki! Zadziałało. – baijum

26

Dla tych ludzi, którzy natkną się to pytanie, a powyższa odpowiedź nie działa, oto kilka rozwiązań dla innych wtyczek Vim Pythona:

Dla Syntastic:

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

UPDATE: nowsze wersje Syntastic używają tego zamiast:

let g:syntastic_python_checkers=["flake8"] 

Dla python-mode:

let g:pymode_lint_ignore="E501,W601" 

Upewnij się, że zostały one ustawione przed aktywacją patogenu lub Vundle.

+0

dzięki @robbrit! Super useful..I'm tylko rozpalania pewną konfigurację 'python-mode', i to było to, czego potrzebowałem – Bodhi

+1

dla osób korzystających python-mode, odpowiedz @ robbrit'S,' g pozwolić: pymode_lint_ignore = "E501, W601" 'zrobił sztuczka dla mnie. Pomoc pymode vima doprowadziła mnie do czegoś innego. – CivFan

+0

TY jesteś mężczyzną! Dzięki. Ta odpowiedź zasługuje na odznakę dla tego pytania! –

9

Po wypróbowaniu wszystkich rozwiązań robbrita i stwierdzeniu, że żaden z nich nie zadziałał, przeczytałem część dokumentacji dla Syntastic. Aby przekazać argumenty do kontrolera, musisz znać kilka rzeczy. Poniżej znajduje się składnia polecenia:

let g:syntastic_python_checkers=["<checker_type>"] 

let g:syntastic_<filetype>_<checker_name>_args="--ignore=E501,W601,..." 

Oznacza to, że jeśli używasz flake8, należy napisać:

let g:syntastic_python_checkers=["flake8"] 
let g:syntastic_python_flake8_args="--ignore=E501,W601" 

Nadzieja to pomaga ktoś uniknąć ages wydatków próbuje dowiedzieć się, jak to zrobiłem.

+0

Dzięki. Tylko dla informacji, należy użyć 'let g: syntastic_python_checkers = [" flake8 "]' najpierw, jak wspomniano przez robbrit. –

+0

Dziękuję bardzo .. te informacje powinny być bardziej widoczne – noli

+0

Dzięki. W końcu dla mnie zadziałało. – nos

Powiązane problemy