Releases
v1.5.1
v1.5.1 — 修复 clangd 引擎未真正接管补全(关键修复)
Compare
Sorry, something went wrong.
No results found
v1.5.1
根因修复(clangd verbose 日志定位)
compile_commands.json 键名错误 :标准 CDB 的键是 file 而非 filename,键名错误导致 clangd 自 v1.4.0 起从未成功加载 CDB ,一直运行在 fallback 兜底编译模式。C++14 下 fallback 碰巧可用掩盖了问题;C++23 等高档标准下 fallback 的 preamble 构建极慢(20s+)且报头文件冲突,表现为补全只有内置数据库结果、没有 std:: 前缀与模板签名 。修复后 clangd 按真正的 g++ 命令行解析(实测 8 秒内就绪)
CDB 并发写竞态 :非原子写入会被 clangd 的 automaticReload 读到写到一半的文件 → 解析失败 → 永久 fallback。改为临时文件 + os.replace 原子写
体验修复
补全弹窗不再混入 Sublime 单词补全 (如你自己定义的 revertDSU):clangd 结果命中时同样传入 INHIBIT_WORD_COMPLETIONS
preamble 就绪检测 :clangd 首次诊断到达前补全直接走内置数据库(不再白等);就绪瞬间状态栏提示 clangd 引擎已就绪(语义补全已接管) 。注:c++20/23 + bits/stdc++.h 的 preamble 冷启动需 5~15 秒,期间为兜底结果
fallbackFlags 注入编译器真实 include 路径 (g++ -v 探测),CDB 缺条目时 fallback 也能正确解析 bits/stdc++.h(双保险)
新工具
补全引擎诊断命令 :CppAssistant: 补全引擎诊断(clangd 是否接管)——弹窗显示 clangd 路径、客户端状态、preamble 就绪状态、补全来源统计
幽灵提示条即时开关 :命令面板/菜单 CppAssistant: 显示/隐藏错误幽灵提示条,不想看到时一键关闭(波浪线与状态栏不受影响)
升级方式
覆盖 Data/Packages/CppAssistant 或 git pull 到 v1.5.1,重启 Sublime Text
You can’t perform that action at this time.