代码之家  ›  专栏  ›  技术社区  ›  user4601931

lsp模式在多语言monorepo中选择错误的项目根

  •  0
  • user4601931  · 技术社区  · 1 年前

    我很清楚这个问题已经被问过一百万次了。至少我觉得我已经读过一百万条关于这一点的描述(而在所谓的解决方案中,这一数字略低于此)。到目前为止,一切都没有奏效,我快疯了。

    我经常在一家大型Monrepo公司工作。从历史上看,这主要是Golang代码库,因此回购本身在一个顶级下有许多Go包 go.mod 整个回购协议都在$PATH下。但到目前为止,它还拥有数十个Rust、TS、Python等项目。我仍然需要为许多Go项目做出贡献,所以我想配置 lsp-go rustic 以及锈蚀分析仪。

    Here 这是我关于lsp-*things的emacs配置部分的开始。在 lsp-mode 我确实有 (setq lsp-auto-guess-root nil) lsp-workspace-folders-remove lsp-workspace-folders-add .

    lsp工作区文件夹添加 选择正确的一个,然后在git根目录处添加Go工作区。

    projectile 我理解,但我想还不够清楚,这个包在这个计算中起着很大的作用。 This projectile-project-root-functions .projectile 在非Go项目中。我尝试过用 .dir-locals.el 文件。我所有的努力都失败了。

    这不会那么难吧?在来这里之前,我真的试着自己解决这个问题。有人能指出我哪里做错了吗?或者,如果我还没有看到,请给我指出一些不够古老的材料,以提及不再存在的功能?如果 抛射体 这才是真正的问题,我很乐意不再使用它,所以这也是一个可能的答案。

    0 回复  |  直到 1 年前
    推荐文章