我不想安装另一个插件,像pylint.
vim,
而今天,我决定使用vim编辑python而不是pydev这是一个eclipse插件.但我有问题.
我已经添加到我的vimrc
autocmd BufWritePost *.py !pylint
但pylint在输出中不包含文件名
************* Module mymodule
E: 22: invalid syntax
shell return 2
所以它不能跳到22行,所以我用sed改变输出
autocmd BufWritePost *.py !pylint | sed 's/^\(\w*\):\s*\([0-9]\+\)/:\2: \1: /g'
它返回:
mymodule.py:22: E: : invalid syntax
但没有shell返回2由vim.所以还是不能跳到那一行. vim将其视为编译成功
我想也许我应该使用make命令和设置makeprg,所以我使用下面的配置
autocmd FileType python let &makeprg='pylint | sed s/^\(\w*\):\s*\([0-9]\+\)/:\2: \1: /g'
autocmd BufWritePost *.py make
当我保存时,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]\+\)/:\2:
\1: /g