1

我最近开始在 Vim 上编写代码,虽然这并不容易,但值得。我正在努力找出在 KDevelop 或 VSCode 等 IDE 中理所当然的基本内容,尤其是在通过查找引用、自动完成等来浏览代码时。

幸运的是,我找到了 CoC(-clangd 等)。但是我遇到了一个我不太理解和调试的错误:

[coc.nvim] Looks like you've configured clangd in coc-settings.json, you should
 remove it to use coc-clangd

当然,我在这个文件中配置了 clangd 正是因为 coc-clangd 插件希望我喜欢这个。

我的coc-settings.json

  {
          "languageserver":
          {
                  "clangd":
                  {
                          "command": "clangd",
                          "rootPatterns": ["compile_flags.txt",
                                          "compile_commands.json"],
                          "filetypes":["c",
                                          "cc",
                                          "cpp",
                                          "c++",
                                          "objc",
                                          "objcpp"]
                  },
                  "cmake":
                  {
                          "command": "cmake-language-server",
                          "filetypes": ["cmake"],
                          "rootPatterns": ["build/"],
                          "initializationOptions":
                          { 
                                  "buildDirectory": "build"
                          }
                  }
          }
          
  }

自动完成(例如 printf)正常工作。那么这个警告是关于什么的呢?是我的配置错误还是我的设置中遗漏了什么?

提前致谢。

编辑:我曾经编辑过内部的“clangd”字符串,它应该是这样的:

 {
          "languageserver":
          {
                  "coc-clangd": <-- This
                  {
                          "command": "clangd",

非常感谢。

4

2 回答 2

1

使用 coc-clangd 时不需要在 coc-settings.json 中设置 clangd。删除clangdcoc-settings.json 中的部分。

于 2021-03-15T06:22:18.597 回答
0

错误消息希望您安装coc-clangd和使用它coc-settings.json而不是普通的 old clangd。安装coc-clangd并替换"command": "clangd","command": "coc-clangd",(或任何命令coc-clangd

编辑:这毕竟只是一个警告,你应该可以忽略它。如果那里有警告的事实让您烦恼,则可能有一个禁用警告的选项。

于 2021-03-14T21:55:28.683 回答