何が起こったか
- Neovimでwilliamboman/mason.nvimを使い、:MasonInstallでruffをインストールすると以下のエラーが表示され、インストールに失敗してしまう。
python3 failed with exit code 1 and signal 0. Installation failed for Package(name=ruff) error=spawn: python3 failed with exit code 1 and signal 0.
- その他yamllint等のpython3が必要なLSPもインストール時に同じエラーが出てしまう。
事象が発生した環境
-
OS:Windows 11 Pro
- バージョン:23H2
- OSビルド:22631.4037
-
WSL2
- Ubuntu 22.04.3
- Docker 27.0.3
- Docker Compose v2.26.1-desktop.1
解決策
以下2点を実施したら無事にインストールできた。
- pynvimをインストールする
python3 -m pip install --user --upgrade pynvim
- python3-venvをインストールする
sudo apt install python3-venv
原因
- :checkhealthでPython 3の欄を確認するとPythonがloadできない旨が表示されていた。
- 「ADVICE:」欄に記載されている通り、:help provider-pythonを実行すると、pynvimをインストールする必要がある旨が記載されていた。
- 筆者の環境だと、pynvimをインストールしただけでは解決せず、Redditのこちらのページを参考にpython3-venvをインストールしたらLSPのインストールも成功した。
終わりに
最近neovimへの移行を進めていますが、セットアップが難しいです…
:checkhealthや各種ログを見ながら、少しずつneovimを使いこなせるようになりたいです。