Today we are shipping the first update of the year to the Visual Studio Code C/C++ extension! This update includes IntelliSense and code navigation performance improvements and a CPU Usage setting for the tag parser to specify the CPU resources to be used. Also, just recently we open-sourced part of the extension on GitHub.
IntelliSense and code navigation performance improvements
We enhanced the tag parser based IntelliSense engine by optimizing the list of files that need to be parsed, resulting in greatly improved performance for any features powered by the tag parser. This includes IntelliSense lightbulb suggestions, fallback “fuzzy” IntelliSense results, and code navigation operations such as “Go To Definition”.
CPU Usage setting for tag parser
By default, the tag parser utilizes full CPU resources to provide the best possible IntelliSense experience. However, if there are situations where you need the CPU resources spent somewhere else, you can use the new C_Cpp.workspaceParsingPriority setting in the Settings.json file (menu Preferences > Settings) to adjust the priority of the tag parser. If the setting is set to values other than “highest”, the extension will cap the CPU usage of the tag parser.
Part of the extension is now open sourced
Part of the extension code, which owns the communication between VS Code and the C++ language service and the debugger engine, is now open sourced on the VS Code C/C++ extension repo on GitHub. Issues on this repo track issues for all parts of the extension, and we’ve tagged those that can be fixed in the open-sourced part of the code with “help wanted” in case you want to contribute.
Tell us what you think
Download the C/C++ extension for Visual Studio Code, try it out, and let us know what you think. File issues and suggestions on GitHub. If you haven’t already provided us feedback, please take this quick survey to help shape this extension for your needs. You can also find us on Twitter (@VisualC).