python - 得到了一个 vim 映射来显示 python 代码错误。现在我只需要在出现错误时显示它

标签 python vim

在我的 vimrc 中有这些:

set makeprg=python\ %

map <F5> :w<CR> :silent make <bar> copen<CR> 
imap <F5> <Esc>:w<CR> :silent make <bar> copen<CR>i

它可以工作,但如果没有错误,快速修复窗口不会打开,我会更好。我找到了一些信息(以及关于 klang 编译器的一个非常类似的问题),但我不太了解这些东西,有人可以帮忙吗? ty。

编辑:如果没有错误,quickfix窗口是空的,所以我想这是检查其内容的问题,但这与我有限的vim-fu相去甚远

最佳答案

使用像 vim-flake8 这样的专用插件可能会容易得多。它可以配置为在每个缓冲区保存时检查 Python 语法,因此您不需要滥用“make”程序设置:

autocmd BufWritePost *.py call Flake8()

错误会在快速修复窗口中打开,如果没有错误,则不会按照您的要求打开快速修复窗口。

编辑:...但是如果你坚持只使用基于 vimrc 的技巧(这是更便携的,你是对的),那么你必须删除 copen 命令的一部分,因为这就是强制在每次运行时打开快速修复窗口的原因:

map <F5> :w<CR> :silent make <bar><CR> 
imap <F5> <Esc>:w<CR> :silent make <bar><CR>i

关于python - 得到了一个 vim 映射来显示 python 代码错误。现在我只需要在出现错误时显示它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28639334/

相关文章:

python - 圆形变成椭圆形 - 在 Python 中设置长宽比

python - 从旧式枚举快速更新到新式枚举的安全性

python - 对于多平台 GPGPU 计算,是否有 OpenCL+PyOpenCL 的替代方案?

vim - vi/vim-如何将标签标签/标题长度设置为固定大小(以字符为单位)

regex - VIM搜索并替换: change string before replace

python - 观察属性的变化

python - Django表单错误: 'QueryDict' object has no attribute 'method' when POST assigned

Vim:如何在激活的搜索模式下立即更改设置 'iminsert' 和 'imsearch' ?

vim - 如何更快地纠正 Vim 拼写错误?

vim - 如何删除直到定界符结尾?