no quiero instalar otro plugin, como pylint.vim,cómo utilizar pylint en vim
Y hoy, decido usar vim editar pitón en lugar de pydev que es un plugin de eclipse. Pero tengo problemas.
tengo añadir esto en mi vimrc
autocmd BufWritePost *.py !pylint <afile>
pero pylint no contiene el nombre de archivo de salida
************* Module mymodule
E: 22: invalid syntax
shell return 2
por lo que no puede saltar a la línea 22, así que usar sed cambiar la salida
autocmd BufWritePost *.py !pylint <afile> | sed 's/^\(\w*\):\s*\([0-9]\+\)/<afile>:\2: \1: /g'
vuelve:
mymodule.py:22: E: : invalid syntax
pero sin carcasa retorno 2 por vim. por lo que todavía no puede saltar a esa línea. vim lo consideran como compilar correctamente
========================= nuevo comentario =========== Call a function in Vim’s `autocmd` command
creo que tal vez debería usar maquillaje de comando y establecer makeprg, por lo que utilizan a continuación config
autocmd FileType python let &makeprg='pylint <afile> | sed s/^\(\w*\):\s*\([0-9]\+\)/<afile>:\2: \1: /g'
autocmd BufWritePost *.py make
al guardar, vuelve vim:
************* Module count
E: 3: invalid syntax
(1 of 2): ************* Module count
Error detected while processing BufWritePost Auto commands for "*.py":
E492: Not an editor command: sed s/^\(\w*\):\s*\([0-9]\+\)/<afile>:\2:
\1: /g
gracias. Justo lo que quiero. pero, ¿cuál es el significado de%: p. y el errorformat es una variable vim, ¿cómo podría afectar a pylint? –
'%: p' significa utilizar la ruta completa del archivo – idbrii
Gran respuesta. Pero --output-format es ahora una opción obsoleta en pylint 1.0.0. La alternativa es usar 'set makeprg = pylint \ --reports = n \ --msg-template = \" {path}: {line}: \ {msg_id} \ {symbol}, \ {obj} \ {msg} \ "\%: p' – JohnTESlade