Neovim 项目级 LSP 配置
前言
最近在编写 Golang 代码时,为了在构建时隔离某些代码中的常量, 需要使用 Golang 内置的 build tags 功能。 因此,需要为 gopls 配置特定的启动参数,以便正确解析代码。 然而,gopls 的配置需要在项目级别完成,全局配置可能会影响其他项目。
那么,该如何进行配置呢?
配置方式
使用 Neovim 内置的 exrc 功能
exrc
功能允许 Neovim 读取当前目录下的 .exrc
文件以加载本地配置
(本质上是通过执行代码来实现配置的目的)。
然而,这种方式需要对 Neovim 有深入的了解,并且可能与其他插件发生冲突。
因此,不太推荐使用。
使用 lazy.nvim
lazy.nvim 是一款强大的 Neovim 插件管理器,能够简化插件的管理和配置。
它支持通过 .lazy.lua
文件为特定项目配置插件。
尽管 lazy.nvim 的官方文档几乎没有涉及(实际上是完全没有)这一功能,
但熟悉 lazy.nvim 的用户通常能轻松上手。
配置格式参考文档: https://lazy.folke.io/spec
return {
"nvim/nvim-lspconfig",
opts = {
servers = {
gopls = {
settings = {
gopls = {
buildFlags = { "-tags=encrypt decrypt" },
},
},
},
},
},
}
Thanks for reading! Read other posts?
This work by 林玮 (Jade Lin) is licensed under
CC BY-NC-ND 4.0