@@ -114,9 +114,11 @@ TextMate 语法规则提供。
114114检查可以区分模块可用、PCM 不匹配、模块产物不可用、语言模式错误和一般检查失败。
115115完整命令及输出会写入 ` mcpp ` 输出频道。
116116
117- 当 clangd 与编译器不匹配时,** mcpp: 一键配置模块代码提示** 会通过 xlings 自动下载
118- 匹配版本的 llvm-tools(含 clangd),完成后配置 clangd 并刷新状态栏,无需 Reload
119- Window。非 LLVM 工具链(GCC/MSVC)项目会得到清晰的引导说明,不做自动切换。
117+ ** mcpp: 一键配置模块代码提示** 会先读取工具链状态,再显示一次模态确认。确认后,
118+ 它可以自动安装 host LLVM、设置 mcpp 全局默认、执行 ` mcpp build ` ,并通过已安装的
119+ xlings 补齐匹配版本的 llvm-tools(含 clangd),最后重新读取 CDB、配置 clangd 和检查
120+ 模块状态,无需 Reload Window。项目在 ` mcpp.toml ` 或 target 中显式固定 GCC/MSVC 时,
121+ 一键流程会停止并提示手动处理,绝不修改项目配置或伪装成全局切换成功。
120122
121123### 自动协调与多根工作区
122124
@@ -142,8 +144,9 @@ Window。非 LLVM 工具链(GCC/MSVC)项目会得到清晰的引导说明,
142144 状态和可安装版本。
143145- 安装 mcpp 支持的工具链 spec,或从已安装/系统项中选择全局默认工具链。
144146
145- 安装和修改默认值都需要确认。取消操作不会被当成成功,工具链安装和默认值修改共享
146- 全局互斥锁。
147+ 安装和修改默认值都需要确认。取消操作不会被当成成功,工具链安装、默认值修改和构建
148+ 共享一个全局互斥锁;一键配置只在开始处确认一次,之后不会弹出工具链选择或“是否刷新
149+ 编译数据库”的二次询问。
147150
148151## 命令
149152
@@ -160,7 +163,7 @@ Window。非 LLVM 工具链(GCC/MSVC)项目会得到清晰的引导说明,
160163| ** mcpp: 配置 clangd** | 手动重新应用当前 LLVM 工程的 clangd 配置 |
161164| ** mcpp: 刷新编译数据库** | 执行 ` mcpp build ` ,随后重新读取 CDB 并协调 clangd |
162165| ** mcpp: 检查模块支持** | 立即执行 clangd 直接检查并刷新模块状态 |
163- | ** mcpp: 一键配置模块代码提示** | 自动检测匹配 clangd,缺失时通过 xlings 安装 llvm-tools 并配置 |
166+ | ** mcpp: 一键配置模块代码提示** | 一次确认后自动安装/切换 host LLVM、执行 ` mcpp build ` ,通过 xlings 补齐匹配 llvm-tools,重载 CDB 并配置 clangd;项目显式固定非 LLVM 工具链时停止 |
164167
165168## 设置
166169
0 commit comments