在 windows 平台上为 neovim 添加 python 支持

1. 在 windows 平台上为 neovim 添加 python3 支持

运行 checkhealth 检查支持:

## Python 3 provider (optional)
  - WARNING: No Python executable found that can `import neovim`. Using the first available executable for diagnostics.
  - WARNING: Could not load Python 3:
    python3 not found in search path or not executable.
    python3.10 not found in search path or not executable.
    python3.9 not found in search path or not executable.
    python3.8 not found in search path or not executable.
    python3.7 not found in search path or not executable.
    python not found in search path or not executable.
    - ADVICE:
      - See :help |provider-python| for more information.
      - You may disable this provider (and warning) by adding `let g:loaded_python3_provider = 0` to your init.vim
  - INFO: Executable: Not found

说明在 windows 中缺少 python 支持

1. 安装 python

利用 Microsoft Store 可以快捷下载 python 运行环境:

在商店中搜索,或者在终端中输入 python 即可可安装 python

安装之后通过这篇文章中的步骤找到 python 路径:

win10商店下载位置_手把手教您win10应用商店安装目录在哪的详尽处理门径_Super Jasper的博客-CSDN博客

然后将 python 安装位置添加到 Path 系统环境变量中。

2. 为 neovim 添加 python 支持

在终端中执行如下命令:

python3 -m pip install --user --upgrade pynvim

需要注意的是原本的 neovim 包被更名为 python ,所以在网上的文章中安装 neovim 包的需要注意。

说明: Following HEAD · neovimneovim Wiki · GitHub

执行 pip3 list 查看 pynvim 包是否安装成功:

Package  Version
-------- -------
greenlet 2.0.2
msgpack  1.0.5
neovim   0.3.1
pip      23.0.1
pynvim   0.4.3

如此则安装成功。

3. 设置 PYTHON PROVIDER

上述工作完成之后还需设置 g:python3_host_prog 变量才能完成 python 对 neovim 的支持,在 neovim 的配置文件中添加下列语句:

let g:python3_host_prog = '/path/to/python3'

其中的 '/path/to/python3' 就是 python 的路径,注意路径中一定要带上 python3

重启 nvim 再次 checkhealth 检查:

## Python 3 provider (optional)
  - INFO: Using: g:python3_host_prog = "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.2800.0_x64__qbz5n2kfra8p0\python3.10"
  - INFO: Executable: C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.2800.0_x64__qbz5n2kfra8p0\python3.10.EXE
  - INFO: Python version: 3.10.10
  - INFO: pynvim version: 0.4.3
  - OK: Latest pynvim is installed.

如果不想添加 python 支持,又想让 checkhealth 不检查,只要把把对应模块的 prog=0就不会检测了。

let g:loaded_python3_provider = 0

error

1. ERROR: Failed to run healthcheck for "provider" plugin. Exception:

provider: health#provider#check
========================================================================
  - ERROR: Failed to run healthcheck for "provider" plugin. Exception:
    function health#check[20]..health#provider#check[2]..<SNR>37_check_python[135]..<SNR>37_version_info[2]..<SNR>37_system, line 11
    Vim(let):E903: Process failed to start: operation not permitted: "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.2800.0_x64__qbz5n2kfra8p0\python.EXE"

配置文件:

vim.cmd([[
	let g:python3_host_prog = 'C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.2800.0_x64__qbz5n2kfra8p0\python'
]],
false)

将其中的 python 改为 python3.10

vim.cmd([[
	let g:python3_host_prog = 'C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.2800.0_x64__qbz5n2kfra8p0\python3.10'
]],
false)

2. WARNING: Could not contact PyPI to get latest version

## Python 3 provider (optional)
  - INFO: Using: g:python3_host_prog = "C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.2800.0_x64__qbz5n2kfra8p0\python3.10"
  - INFO: Executable: C:\Program Files\WindowsApps\PythonSoftwareFoundation.Python.3.10_3.10.2800.0_x64__qbz5n2kfra8p0\python3.10.EXE
  - INFO: Python version: 3.10.10
  - INFO: pynvim version: 0.4.3
  - WARNING: Could not contact PyPI to get latest version.
  - ERROR: HTTP request failed: error: curl error with https://pypi.python.org/pypi/pynvim/json: 35

在终端中执行:

pip3 install --user pynvim

在用户中安装即可。


  1. Provider - Neovim docs
  2. Neovim on Windows can’t find python provider - Stack Overflow
  3. python - How to get a build of Neovim with python3 support for windows - Stack Overflow

猜你喜欢

转载自blog.csdn.net/GrowlR/article/details/129527644