clangd を使用した LSP の設定

背景

Emacs、Vim、VS Code などのエディタは、LSP(言語サーバー プロトコル)を通じて、コード ナビゲーション、コード補完、インライン コンパイラ エラー メッセージなどの機能をサポートします。LSP をサポートしている共通言語サーバーは clangd です。これは compile_commands.json に依存します。これは、プロジェクト内の各ファイルのコンパイル コマンドの記録を含む JSON ファイルです。

XLA ソースコードの compile_commands.json を生成するにはどうすればよいですか?

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