Microsoft C++ Language Server for GitHub Copilot CLI 现在已内置其 MSBuild 编译命令提取器,并会自动调用它。智能代理不再需要先发现并运行单独的配置技能,才能为你的项目获取精确的代码智能。有关更多信息(包括安装说明),请参阅主仓库页面。
变更内容
此前,要为基于 MSBuild 的 C++ 项目设置转到定义、查找引用以及其他语言服务器功能,你需要自行提供 compile_commands.json 文件,或者让 Copilot 先定位并运行配置技能,然后才能生成编译数据库。这一额外的发现步骤会增加设置时间,并在 Copilot 开始处理你的代码之前消耗 token。
- 编译命令提取器直接与 C++ 语言服务器捆绑在一起,因此始终可用。
- Copilot 在项目打开时启动语言服务器时会调用该提取器,无需手动或由智能代理驱动的设置技能。
- MSBuild 项目的编译数据库生成是确定性的,从而减少了设置阶段的 token 消耗。
配置其他构建系统
对于其他构建系统,你可以自行提供 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。