การตั้งค่า LSP พร้อมเสียงดัง

ที่มา

เครื่องมือแก้ไข เช่น Emacs, Vim หรือ VS Code ฟีเจอร์ที่รองรับ เช่น การนำทางโค้ด การเติมโค้ด ข้อความแสดงข้อผิดพลาดของคอมไพเลอร์ในบรรทัด และอื่นๆ ผ่าน LSP ซึ่งเป็นโปรโตคอลเซิร์ฟเวอร์ภาษา เซิร์ฟเวอร์ภาษาทั่วไปที่รองรับ 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