如何修改Neovim中Pyright的LSP配置参数?
在Neovim中修改Pyright的reportIncompatibleMethodOverride规则
核心配置要点
Pyright的诊断规则直接配置在settings.python.analysis字段下,注意参数名是reportIncompatibleMethodOverride(末尾是Override而非你可能误写的Overide,拼写错误会导致配置不生效)。
结合LSP-zero的正确写法
以下两种方式二选一即可:
方式1:单独配置Pyright服务
local lsp = require('lsp-zero').preset({}) lsp.on_attach(function(client, bufnr) -- 这里保留你原有的on_attach逻辑,比如快捷键绑定等 end) -- 覆盖Pyright的诊断规则 require('lspconfig').pyright.setup({ settings = { python = { analysis = { reportIncompatibleMethodOverride = "warning", -- 也可以设为false关闭该诊断 -- 其他需要修改的Pyright规则都可以添加到这个analysis对象下 } } } }) lsp.setup()
方式2:通过LSP-zero统一配置所有服务
local lsp = require('lsp-zero').preset({}) lsp.set_server_config({ -- 这里可以添加全局LSP配置,比如关闭语义令牌等 settings = { python = { analysis = { reportIncompatibleMethodOverride = "warning", } } } }) lsp.setup()
额外检查项
- 配置完成后重启Neovim,确保Pyright服务重新加载新配置
- 如果项目根目录下存在
pyrightconfig.json文件,该文件的配置优先级高于Neovim中的LSP配置,需要同步修改该文件或者删除它
内容的提问来源于stack exchange,提问作者Wills
相关产品推荐
相关产品推荐

