-
Notifications
You must be signed in to change notification settings - Fork 5k
Update C++ Settings doc #8310
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update C++ Settings doc #8310
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
A documentation update for C++ settings that merges the old customization doc with the new c_cpp_properties.json reference, clarifying default settings and introducing a recursive include paths section.
- Removed the outdated "Customize default settings" document.
- Updated and merged C++ settings reference with revised metadata, improved descriptions, and added recursive include path properties.
Reviewed Changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
File | Description |
---|---|
docs/cpp/customize-default-settings-cpp.md | Removed obsolete document; content now merged in the new settings reference. |
docs/cpp/customize-cpp-settings-cpp.md | Updated metadata and documentation content; added new recursive include properties and editorial improvements. |
Co-authored-by: Copilot <[email protected]>
|
||
- `intelliSenseMode` | ||
The IntelliSense mode to use that maps to an architecture-specific variant of MSVC, gcc, or Clang. If not set or if set to `${default}`, the extension will choose the default for that platform. | ||
The IntelliSense mode to use that maps to an architecture-specific variant of MSVC, gcc, or Clang. If not set or if set to `${default}`, the extension chooses the default for that platform. | ||
|
||
Platform defaults: | ||
- Windows: `windows-msvc-x64` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it listed somewhere the actual values for the triplets?
Might be nice to have at least the viable parts listed windows|macos|linux
-msvc|clang|gcc
-x86|x64|arm|arm64
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The values will appear in the IntelliSense for the config file. I would say that we can forego listing all the combinations here.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think we need to be consistent - then we would need to list all the options for every variable. But considering that cstandard, C++ standard, and IntelliSenseMode all have dropdowns available in the Config UI I think people can find this information very easily without us specifying.
|
||
- `defines` | ||
A list of preprocessor definitions for the IntelliSense engine to use while parsing files. Optionally, use `=` to set a value, for example `VERSION=1`. | ||
|
||
- `cStandard` | ||
The version of the C language standard to use for IntelliSense. For example, `c17`, `gnu23`, or `${default}`. Note that GNU standards are only used to query the set compiler to get GNU defines, and IntelliSense will emulate the equivalent C standard version. | ||
The version of the C language standard to use for IntelliSense. For example, `c17`, `gnu23`, or `${default}`. Note: GNU standards are only used to query the set compiler to get GNU defines, and IntelliSense emulates the equivalent C standard version. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
And again, are the supported values listed?
format the configuration and update some descriptions
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@AlexandraKemperMS mostly minor text updates.
Co-authored-by: Nick Trogh <[email protected]>
Co-authored-by: Nick Trogh <[email protected]>
Co-authored-by: Nick Trogh <[email protected]>
Co-authored-by: Nick Trogh <[email protected]>
Co-authored-by: Nick Trogh <[email protected]>
Co-authored-by: Nick Trogh <[email protected]>
Co-authored-by: Nick Trogh <[email protected]>
Co-authored-by: Nick Trogh <[email protected]>
Co-authored-by: Nick Trogh <[email protected]>
Co-authored-by: Nick Trogh <[email protected]>
Co-authored-by: Nick Trogh <[email protected]>
…andraKemperMS/vscode-docs into addRecursiveIncludesUpdates
The current settings doc for C++ points to the C_Cpp.default settings and contains inaccurate and incomplete information. Default settings are described in the general VS Code docs and only need to be linked to, and one exception needs to be covered. Additionally, this settings doc contains no information on the c_cpp_properties .json schema, which is in a separate doc that does not even have a place in the TOC right now. These two docs have been merged under "Settings Reference" to match Python's layout and updated with the most recent information.