vim python mode
¿Configuraciones de configuración para el plugin Vim PEP-8 para ignorar errores y advertencias? (4)
Estoy usando este complemento para detectar errores y advertencias de PEP-8 en Vim: http://www.vim.org/scripts/script.php?script_id=3430
Quiero ignorar algunos errores y advertencias como E501 y W601 en la herramienta pep8 backend: http://pypi.python.org/pypi/pep8
Cuando miré el código del complemento, puedo ver que tiene soporte para esto:
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)
Pero, ¿cómo lo uso?
Después de probar todas las soluciones de Robbrit y descubrir que ninguna de ellas me funcionó, leí parte de la documentación de Syntastic. Para pasar args a un verificador, necesitas saber varias cosas. La siguiente es la sintaxis del comando:
let g:syntastic_python_checkers=["<checker_type>"]
let g:syntastic_<filetype>_<checker_name>_args="--ignore=E501,W601,..."
Esto significa que si usas flake8, escribirías:
let g:syntastic_python_checkers=["flake8"]
let g:syntastic_python_flake8_args="--ignore=E501,W601"
Espero que esto ayude a alguien a evitar pasar las edades tratando de resolver esto como yo lo hice.
Necesitas establecer la variable g:pep8_ignore
; Deberías poner esto en tu vimrc.
let g:pep8_ignore="E501,W601"
Para aquellas personas que tropiezan con esta pregunta y la respuesta anterior no funciona, aquí hay algunas soluciones para otros complementos de Vim Python:
Para Syntastic :
let g:syntastic_python_checker="flake8"
let g:syntastic_python_checker_args="--ignore=E501,W601"
ACTUALIZACIÓN: las nuevas versiones de Syntastic usan esto en su lugar:
let g:syntastic_python_checkers=["flake8"]
Para python-mode :
let g:pymode_lint_ignore="E501,W601"
Asegúrese de que estos estén configurados antes de que se active el patógeno o Vundle.
Si usa python-mode
necesita usar la lista ahora:
let g:pymode_lint_ignore=["E501", "W601"]