use*_*275 11 vim python-mode syntastic
我在VIM中安装了python-mode.但我也安装了Syntastic.由于两者都进行语法检查,是否会发生冲突?如何关闭Syntastic for Python文件?
谢谢你的帮助
Jim*_*art 12
要扩展@ abjuk的答案,您可以根据文件扩展名禁用:
let g:syntastic_ignore_files = ['\.py$']
Run Code Online (Sandbox Code Playgroud)
但这仅适用于结尾的文件.py.它不适用于Vim认为的其他文件filetype=python.例如,以shebang开头的文件#!/usr/bin/env python仍会将Vim置于python模式.
Syntastic还支持syntastic_mode_map(请参阅:h syntastic_mode_map),文档似乎表明应该允许基于文件类型禁用,但我无法使其工作.
另一种选择是启用Syntastic,并禁用python-mode的语法检查:
let g:pymode_lint = 0
Run Code Online (Sandbox Code Playgroud)
这是我使用的,因为我更喜欢Syntastic.它解决了冲突,虽然它不完全是你问的.
这在手册中得到了解答(参见参考资料:help syntastic-pymode):
Syntastic可以与'python-mode'Vim插件一起使用(参见https://github.com/klen/python-mode).但是,当您将缓冲区保存到磁盘时,它们都默认运行语法检查,这可能不是您想要的.要避免两个插件打开错误窗口,您可以在syntastic中设置python的被动模式(请参阅参考资料
syntastic_mode_map),或者通过设置pymode_lint_on_write为0来禁用'python-mode'中的lint检查.例如:
let g:pymode_lint_on_write = 0
Run Code Online (Sandbox Code Playgroud)