إعداد LSP مع علامة صلبة

الخلفية

برامج التحرير مثل Emacs أو Vim أو VS Code مثل التنقل في الرموز البرمجية وإكمال الرموز البرمجية ورسائل خطأ برنامج التحويل البرمجي المضمَّن وغيرها، وذلك من خلال LSP، وهو بروتوكول Language Server. خادم اللغة الشائع الذي يدعم LSP هو clangd، والذي يعتمد على توفُّر compile_commands.json، وهو ملف JSON مع سجلّ أوامر التجميع لكل ملف في المشروع.

كيف يمكنني إنشاء compile_commands.json لرمز المصدر XLA؟

استخدِم النص البرمجي build_tools/lint/generate_compile_commands.py. يؤدي الاستدعاء التالي من جذر مستودع XLA إلى إنشاء ملف compile_commands.json في مكانه: bash bazel aquery "mnemonic(CppCompile, //xla/...)" --output=jsonproto | \ python3 build_tools/lint/generate_compile_commands.py