TLDR: VSCode users can type `./mach ide vscode` in order to get code completion, reference navigation, refactoring, reformatting, etc.
Hello all, VSCode <https://github.com/microsoft/vscode> is a multi-platform open-source programming editor developed by Microsoft and volunteers. It is partly built using source-code components but also uses proprietary Microsoft code. It has support for many programming languages using extensions. In the past we had a minimal <https://searchfox.org/mozilla-central/source/.vscode> configuration setup in the tree that reflected the basic extensions <https://searchfox.org/mozilla-central/source/.vscode/extensions.json> that should be used and also some tasks <https://searchfox.org/mozilla-central/source/.vscode/tasks.json> that can be triggered from the editor. Now, we significantly improved that! Starting with Bug 1656740 <https://bugzilla.mozilla.org/show_bug.cgi?id=1656740>, we’ve added comprehensive support for C/C++with the help of the `clangd` extension for Firefox development. Leveraging the `clang` toolchain compiler we now have support in the IDE for: 1. Syntax highlighting; 2. IntelliSense with comprehensive code completion and suggestion; 1. Go-to definition and Go-to declaration; 2. Find all references 3. Open type hierarchy; 4. Rename symbol, all usages of the symbol will be renamed, including declaration, definition and references; 5. Code formatting, based on `clang-format` that respects our coding standard using the `.clang-format` and `.clang-format-ignore` files. Format can be performed on an entire file or on a code selection; 6. Inline parsing errors with limited auto-fix hints; 1. Basic static-code analysis using `clang-tidy` and our list of enabled checkers. (This is still in progress not all checkers are supported by `clangd`); This new eco-system for code development is supported on all platforms that we officially support. In order to have this setup, download and install `VSCode` and run the following command: ./mach ide vscode Please file any issues that you might encounter using this setup please as blocking bugs to Bug 1662709 <https://bugzilla.mozilla.org/show_bug.cgi?id=1662709>. I would also like to address many thanks to Jonathan Watt and Botond Ballo, without their active support this would not have been made possible. Many thanks, Andi, on behalf of the team _______________________________________________ dev-platform mailing list dev-platform@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-platform