运行clang_format.py报错No module named 'vim'的问题求助
别用系统Python直接跑Vim专属脚本
vim模块是Vim内置Python环境独有的,系统里的Python(不管是3.10.6还是2.7)根本没有这个模块。clang_format.py这类脚本是给Vim内部用的,得在Vim里通过:py3命令执行,或者作为插件加载后触发,不能直接在终端里用python clang_format.py运行。检查Vim绑定的Python版本是否和系统匹配
虽然Vim显示+python3,但它编译时绑定的Python3版本可能和你系统当前的3.10.6不一样。比如Vim用的是3.9,系统是3.10,版本不兼容就会出问题。在Vim里执行:py3 import sys; print(sys.version)就能看到Vim用的Python版本,对比系统版本是否一致。确认脚本的使用方式是否正确
这类格式化脚本一般是作为Vim插件存在的,得放到Vim的插件目录(比如~/.vim/plugin/),然后在Vim里通过快捷键或者命令触发格式化,不是单独拿出来运行的。脱离Vim环境跑脚本,肯定找不到vim模块。检查Vim的Python路径配置
如果Vim的Python环境路径不对,也会导致找不到模块。在Vim里执行:py3 import sys; print(sys.path),看看有没有包含Vim相关的Python路径。要是缺失,在vimrc里加一行let g:python3_host_prog = '/path/to/matching/python3',指定和Vim绑定版本一致的Python解释器路径。
内容的提问来源于stack exchange,提问作者Noé Weeks

