自从 Python 从 3.6.5 升级到 3.7.0 后,在启用电力线的情况下启动 Vim 时出现 DeprecationWarning

DeprecationWarning when starting Vim with Powerline enabled since Python upgrade from 3.6.5 to 3.7.0

我很高兴将 Powerline 用于 Vim 一段时间,直到今天 Homebrew 安装了 Python 从 3.6.5 升级到 3.7.0。从那以后,电力线在 Vim.

停止正常工作

首先,当启动 Vim 时,有一个错误说找不到 powerline 模块,我想这是有道理的,如果 pip 每个 Python次要版本。

所以我再次使用 pip 安装了 powerline-status 包,因为 described in the docs:

pip install powerline-status

现在,ModuleNotFoundError 不见了,我在 Vim 中得到了一条可用的电力线, 但是 每次我开始 Vim 我得到另一个错误说:

/must>not&exist/foo:1: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses
Press ENTER or type command to continue

而且我必须按 Enter 或任何其他键才能继续,这很烦人。

如果我从我的 .vimrc 中删除以下用于加载电力线(如 described in the docs)的命令,DeprecationWarning 消失了,但显然电力线也消失了......

python3 from powerline.vim import setup as powerline_setup
python3 powerline_setup()
python3 del powerline_setup

searched their GitHub issues,但找不到任何相关内容。

有人知道这个的解决方案吗?

如错误所述,imp 模块已弃用。
作为解决方法,将您放入 .vimrc 的命令更改为以下内容:

silent! python3 from powerline.vim import setup as powerline_setup
python3 powerline_setup()
python3 del powerline_setup

silent! 关键字将抑制错误消息。

Source