Newshot
Account

C++ 语言服务器现已自动配置 MSBuild 构建

AI summary

适用于 GitHub Copilot CLI 的 Microsoft C++ 语言服务器现已内置 MSBuild 编译命令提取器并自动调用它,代理不再需要先发现并运行单独的配置技能,就能为你的项目获得精确的代码智能。此前,为基于 MSBuild 的 C++ 项目设置转到定义、查找引用等功能,需要你自行提供 compile_commands.json,或让 Copilot 先定位并运行配置技能以生成编译数据库,这一额外的发现步骤增加了设置时间并消耗了 token。现在,编译命令提取器直接与 C++ 语言服务器捆绑,始终可用;Copilot 在打开项目启动语言服务器时会调用该提取器。

Translation(model translation, not the source's own text)

Microsoft C++ Language Server for GitHub Copilot CLI 现在已内置其 MSBuild 编译命令提取器,并会自动调用它。智能代理不再需要先发现并运行单独的配置技能,才能为你的项目获取精确的代码智能。有关更多信息(包括安装说明),请参阅主仓库页面。

变更内容

此前,要为基于 MSBuild 的 C++ 项目设置转到定义、查找引用以及其他语言服务器功能,你需要自行提供 compile_commands.json 文件,或者让 Copilot 先定位并运行配置技能,然后才能生成编译数据库。这一额外的发现步骤会增加设置时间,并在 Copilot 开始处理你的代码之前消耗 token。

  • 编译命令提取器直接与 C++ 语言服务器捆绑在一起,因此始终可用。
  • Copilot 在项目打开时启动语言服务器时会调用该提取器,无需手动或由智能代理驱动的设置技能。
  • MSBuild 项目的编译数据库生成是确定性的,从而减少了设置阶段的 token 消耗。
C++ 语言服务器自动为 MSBuild 项目生成编译命令
C++ 语言服务器自动为 MSBuild 项目生成编译命令

配置其他构建系统

对于其他构建系统,你可以自行提供 compile_commands.json,或使用技能来生成一个:

  • 对于 CMake 项目,请通过要求 Copilot CLI“load project”,使用早先 C++ 语言服务器版本中引入的 generate compile commands 技能。
  • 对于自定义构建系统,请遵循指南创建自定义构建提取器技能。

开始使用

按照 Microsoft C++ Language Server 快速开始指南安装插件并接受 EULA。如果你的仓库包含基于 MSBuild 的 C++ 项目,Copilot 将自动生成其所需的编译数据库,以提供准确的代码智能。

需要有效的 GitHub Copilot 订阅。

通过填写 C++ language server survey 来帮助改进 Microsoft C++ Language Server。如需报告问题或提出改进建议,请在 Microsoft C++ Language Server 仓库中创建 issue。

The translation is machine-generated and individual terms may be off. Nothing is rewritten or cut; the original is authoritative.

Published by GitHub Changelog
This site only summarises and aggregates; copyright stays with the original author. Headlines and summaries follow the source — where they differ, the original wins.
Read the original ↗