b529012 ✅ test(tests): avoid hardcoded missing path 07583c8 🐛 fix(tests): make doc link check awk-portable 6244aa3 🔧 chore(ci): relax gitattributes check 31dd0c5 🐛 fix(scripts): require existing project root 15d4d63 🔧 chore(ci): install python3-pip 90c6313 🔧 chore(ci): run tests in a single job d84eff0 🔧 chore(ci): make actions base url configurable 395598d 🔧 chore(ci): fix yaml step names 4ae2733 ✨ feat(sync_standards): auto-detect existing languages e97fb00 ✨ feat(sync_standards): default gitattributes to append da0ef2b ✅ test: add automated tests and ci workflow 99bef30 🎨 style(markdown): format all markdown files with prettier 7e96bc8 ♻️ refactor(tsl): split function.md into 44 modular files 0d6b2a0 📝 docs(readme): add quick decision table and TL;DR for distribution methods 3b2188f 🎨 style(markdown): format markdown files with prettier 41fc43b 📝 docs(tsl): document {Unit.}Type source annotation 3dceaf7 📝 docs(tsl): clarify tsf-only top-level rules and type annotations 3a63829 📝 docs(skills): add create-plan skill f02a707 🐛 fix(scripts): escape markdown backticks in vendor_playbook 064aa92 🐛 fix(scripts): correct bat scripts 4881feb 🔧 chore(gitattributes): enforce crlf for bat files 1fa3e2a 🐛 fix(scripts): escape parentheses in sync_standards output 3958cad 📝 docs(vendor_playbook): mention ci templates 9d059cf ✨ feat(templates): add gitea ci example a52bb24 📝 docs(codex_skills): normalize markdown formatting cc8ad4c 📝 docs(skills): slim commit-message 2a98e15 🐛 fix(skills): quote YAML descriptions 8f78d22 🐛 fix(sync_standards): generate minimal AGENTS.md 5547665 ✨ feat(skills): add commit-message suggestion skill 3fe8bd7 🔧 chore(sync_standards): create AGENTS.md on sync 283d311 ✨ feat(playbook): add syntax book and codex skills tooling 5b97ed5 📝 docs(tsl): clarify syntax references 27e0700 ✨ feat(skills): add pdf/docx/pptx/xlsx wrapper workflows 5551363 ✨ feat(skills): add debugging and bulk refactor workflows 1d4f548 ✨ feat(skills): add built-in workflow skills c0895dd 📝 docs(skills): add anthropics document-skills integration cf9f80d 🔧 chore(playbook): add Claude Code skills guide and align python templates git-subtree-dir: docs/standards/playbook git-subtree-split: b529012c59c5d67c3073884d7b617763647417fd
1.1 KiB
1.1 KiB
clangd 补全配置(.clangd)
本章节提供 clangd 的推荐配置模板与落地要点(参考
tsl-devkit/lsp-server/.clangd)。
1. 目标
- 让 IDE/编辑器的 C++ 补全、跳转、诊断稳定可复现。
- 优先依赖
compile_commands.json(由 CMake 生成),避免手写复杂编译参数。
2. 必要前提:生成 compile_commands.json
- CMake:建议开启
CMAKE_EXPORT_COMPILE_COMMANDS=ON(本 Playbook 的templates/cpp/CMakeLists.txt已开启)。 - 使用 preset 构建后,在对应 build 目录会生成
compile_commands.json:- 例如:
build/windows-x86_64-clang-cross/Release/compile_commands.json
- 例如:
3. .clangd 模板
- 模板文件:
templates/cpp/.clangd - 关键字段:
CompileFlags.CompilationDatabase指向 build 目录(包含compile_commands.json的目录)。
4. Modules 注意事项(C++23)
- 若新增/删除/重命名
.cppm,必须同步更新构建系统的模块清单(例如 CMakeFILE_SET CXX_MODULES),否则compile_commands.json可能缺项,导致 clangd 补全/跳转不稳定。