使用vim-syntastic插件保存Python文件时出现逗号语法错误求助
解决vim-syntastic保存Python文件时误报逗号错误的问题
我之前也碰到过一模一样的情况——syntastic总在列表、字典、元组这些场景里乱抛逗号语法错误,其实大概率是语法检查器的配置或版本问题在搞鬼,给你几个实用的解决步骤:
先确认当前依赖的Python语法检查器
在Vim里输入命令:SyntasticInfo,就能看到syntastic当前用的检查器(比如pylint、flake8、pyflakes)。不同检查器的规则逻辑差异很大,先找到根源才能针对性解决。升级检查器到最新版本
旧版本的检查器可能存在规则误判的bug,先把用到的检查器更新到最新版:pip install --upgrade pylint flake8 pyflakes自定义检查规则,忽略误报的逗号错误
如果是某个检查器的严格规则导致的,比如pylint的C0326错误码(针对逗号前后空格的格式校验),可以在你的.vimrc里添加配置禁用这个规则:let g:syntastic_python_pylint_args = "--disable=C0326"注意要替换成你实际报错的错误码,这个码可以从syntastic的报错提示里找到。
切换到更稳定的检查器
如果某个检查器一直闹脾气,不妨换一个试试。比如把默认检查器换成flake8,在.vimrc里添加:let g:syntastic_python_checkers = ['flake8']排查文件编码或隐藏字符问题
偶尔文件编码不对或者有看不见的特殊字符,也会让检查器误判。可以在Vim里输入:set fileencoding确认编码是UTF-8,还可以用:set list显示隐藏字符,看看有没有奇怪的制表符或空格干扰。
内容的提问来源于stack exchange,提问作者user669132
相关产品推荐
相关产品推荐

