This guide describes how to edit the Drake codebase using VS Code.
If you have tips that would help out other developers, drop us a line and we can add them here!
Setting up VS Code
There is nothing really special to do. Be sure you’ve installed the C/C++ extension pack from Microsoft.
C++ paths
Because VS Code wants to locate all included headers, but Bazel does
not provide those headers in a single consistent location, it is
common to get “red squiggles” for included headers, particularly for
externals like LCM. So far this does not seem to be avoidable; the
"C_Cpp.errorSquiggles": "enabledIfIncludesResolve"
setting does not
work to solve this problem.
C++ code formatting
The Visual Studio docs on code formatting work well. Take note of “Format Document”, “Format Selection”, “Format on save”, and “Format on type”.
In the VS Code Options configuration, check that the option for
C_Cpp: Clang_format_path
is set to Drake’s preferred value
clang-format-15
.