问题描述
我最近开始在 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",
非常感谢。
解决方法
使用 coc-clangd 时,您不需要在 coc-settings.json 中设置 clangd。删除 coc-settings.json 中的 clangd
部分。
错误消息要求您安装 coc-clangd
并在 coc-settings.json
中使用它而不是普通的旧 clangd
。安装 coc-clangd
并将 "command": "clangd",
替换为 "command": "coc-clangd",
(或 coc-clangd
的任何命令)
编辑:它毕竟只是一个警告,您应该可以忽略它。如果那里有警告这一事实让您感到烦恼,则可能有一个选项可以禁用警告。