在Arch Linux上通过Mason.nvim安装Pyright LSP时遇到npm错误
在Arch Linux上通过Mason.nvim安装Pyright LSP时遇到npm错误
我之前在Arch上用Mason装LSP时也踩过npm的坑,给你几个实用的排查和解决思路:
先看详细错误日志定位问题
错误提示里提到可以用--loglevel=verbose查看细节,你有两种方式获取详细日志:
一是在Neovim里执行:MasonInstall pyright后,打开Mason的日志面板看详情::MasonLog;二是用Mason的CLI工具在终端运行:mason-cli install pyright --loglevel=verbose,日志里会明确告诉你是权限问题、依赖缺失还是版本冲突导致的失败。清理npm缓存,避免缓存损坏
有时候npm的缓存文件损坏会莫名其妙导致安装失败,先强制清理缓存试试:npm cache clean --force清理完成后回到Neovim里重新尝试安装Pyright。
检查Node.js版本兼容性
你当前用的Node.js 23是开发版(非长期支持的LTS版本),这类版本经常会有兼容性小问题,Pyright可能还没完全适配。建议切换到稳定的LTS版本:- 先卸载当前的node和npm:
sudo pacman -Rns nodejs npm - 安装LTS版本:
sudo pacman -S nodejs-lts-iron npm-lts-iron(Iron是Node.js 20.x LTS的代号) - 验证版本:
node --version和npm --version,确认切换成功后再用Mason安装Pyright。
- 先卸载当前的node和npm:
排查Mason目录的权限问题
如果Mason的安装目录权限不足,npm会无法写入文件。先检查目录权限:ls -ld ~/.local/share/nvim/mason/要是发现当前用户不是目录所有者,或者权限过低,就修复权限:
sudo chown -R $USER:$USER ~/.local/share/nvim/mason/ chmod -R 755 ~/.local/share/nvim/mason/之后再尝试安装。
手动安装Pyright到Mason目录
如果上面的方法都不行,可以绕过Mason的自动安装流程,手动把Pyright装到Mason的指定路径:npm install -g pyright --prefix ~/.local/share/nvim/mason/packages/pyright安装完成后回到Neovim里运行
:Mason,应该就能看到Pyright已经被识别为已安装状态了。
内容来源于stack exchange
相关产品推荐
相关产品推荐

