Clangd

Clang 项目包含解析 C 语言家族源文件并提供详细诊断的库。clangd 索引 为代码完成等服务提供精确和完整的结果。

要设置 clangd 首选项

  1. 选择 首选项 > C++ > Clangd > 使用 clangd

    {Clangd preferences}

  2. 可执行文件路径 中,输入 clangd 版本 14 或更高版本的路径。
  3. 后台索引 字段中,选择 以使用比默认索引器更快速但准确性较低的内置索引器。根据全局符号搜索时对结果的准确性或速度的重视程度设置索引优先级。
  4. 每个项目索引位置 中,选择存储每个项目索引文件的文件夹。compile-commands.json 文件也存储在此文件夹中。
  5. 每个会话索引位置 中,选择存储每个会话索引文件的文件夹。
  6. 头文件/源文件切换模式 中,选择在头文件和源文件之间切换的 C/C++ 后端。虽然 clangd 实现的功能比内置代码模型更多,但它往往会找到错误的积极结果。尝试两者 如果内置代码模型找不到任何结果,则使用 clangd。
  7. 默认情况下,clangd 尝试使用所有未使用的核心。您可以在 工作线程计数 中设置要使用的固定核心数。后台索引也使用这么多工作线程。
  8. 选择 在完成符号时插入头文件 以在完成符号时插入头文件。
  9. 选择 更新依赖源 以在编辑头文件时重新解析包含头文件的 所有源文件。如果头文件包含在许多源文件中,这可能导致繁重的 CPU 负载。清除此选项以仅保存头文件时重新解析源文件。
  10. 设置 完成结果 的数量,如果您在代码完成期间经常错过重要结果。将其设置为 0 以删除完成结果数量的限制。将此设置为 0 或一个非常高的数字可能会导致代码完成变慢。
  11. 完成排名模型中,选择用于排名提示的clangd模型。这决定了它们在选择列表中的顺序。从预训练的机器学习得出的决策树模型(默认)通常比手工制作的启发式模型提供更好的结果。如果您认为代码库中的提示与您的预期相差太大,请选择后者。
  12. 文档更新阈值中,指定Qt Creator在将文档更改发送到服务器之前等待的时间。如果在等待期间文档再次更改,此超时将被重置。
  13. 选择忽略大于的文件,通过忽略大文件来加快解析速度。在复选框旁边的字段中指定要解析的文件的最大大小。
  14. 诊断配置字段显示要执行的Clang检查。单击该字段的值以选择和编辑要执行的检查。
  15. 选择添加以选择应使用单个clangd进程进行索引的会话。

Clang Checks

单击诊断配置字段的值以打开诊断配置对话框,在该对话框中可以选择和编辑要执行的检查。

{Diagnostic Configurations dialog}

除了使用内置的检查之外,您还可以选择复制以创建它们的副本并编辑副本以满足您的需求。

  • 构建系统警告显示构建系统指定的警告。
  • 可疑结构的检查将易于避免的可疑构造的-Wall-Wextra检查以及一些其他问题结合起来。

Clang检查以-W开头。每个检查还有一个以-Wno开头的否定版本。

请注意,某些选项会开启其他选项。有关更多信息,请参阅请求或抑制警告的选项或GCC或Clang的手册页。

另请参阅指定clangd设置Clang代码模型代码模型

©2024 The Qt Company Ltd. 本文档中的贡献是各自所有者的版权。本文档提供的内容是根据免费软件基金会发布的GNU自由文档许可协议版本1.3的条款许可的。Qt及其相应的标志是The Qt Company Ltd在芬兰和/或其他国家和地区的商标。所有其他商标均为其各自所有者的财产。