NetPack 🚀
⚠️ Warning: This extension modifies your VSCode settings. A backup of your current settings will be created before any changes are made. ⚠️
Features ✨
- Update Settings Command: Quickly update your VSCode settings with predefined configurations.
- Extension Pack: Includes a curated list of extensions to enhance your development experience.
Included Extensions 📦
ctf0.local-history-new
github.codespaces
github.copilot
github.copilot-chat
ibm.output-colorizer
jeff-hykin.better-cpp-syntax
mkaminski1337.sysusage
ms-vscode-remote.remote-containers
ms-vscode-remote.remote-ssh
ms-vscode-remote.remote-ssh-edit
ms-vscode-remote.remote-wsl
ms-vscode-remote.vscode-remote-extensionpack
mjcrouch.perforce
tal7aouy.rainbow-bracket
C/C++ Settings for Large Codebases 🛠️
For large codebases, it is recommended to configure IntelliSense to only work with the code you are actively working on. This can be achieved by setting the includePath
and browse.path
to only include the directories relevant to your current work. Additionally, limiting symbols to included headers and disabling error squiggles can help improve performance.
IntelliSense Configuration
To set up IntelliSense properly for large codebases, the following settings are essential:
includePath
: Specifies the directories to be included for IntelliSense.
browse.path
: Defines the paths for the symbol database.
limitSymbolsToIncludedHeaders
: Limits the symbols to only those in the included headers.
intelliSenseMode
: Sets the IntelliSense mode (e.g., gcc-x64
).
defines
: Preprocessor definitions for IntelliSense.
cStandard
and cppStandard
: Specifies the C and C++ language standards.
Default Settings
{
"C_Cpp.default.enableConfigurationSquiggles": false,
"C_Cpp.default.intelliSenseMode": "gcc-x64",
"C_Cpp.default.includePath": ["/usr/include", "/usr/local/include", "/usr/lib/gcc/x86_64-redhat-linux/4.8.5"],
"C_Cpp.default.defines": ["DEBUG", "_GNU_SOURCE"],
"C_Cpp.default.cStandard": "c11",
"C_Cpp.default.cppStandard": "c++17",
"C_Cpp.default.browse.path": ["/usr/include", "/usr/local/include", "/usr/lib/gcc/x86_64-redhat-linux/4.8.5"],
"C_Cpp.default.browse.limitSymbolsToIncludedHeaders": true,
"C_Cpp.default.browse.databaseFilename": ""
}
Error Squiggles
{
"C_Cpp.errorSquiggles": "disabled"
}
Editor Settings for C++
{
"[cpp]": {
"editor.wordBasedSuggestions": "off",
"editor.semanticHighlighting.enabled": true,
"editor.stickyScroll.defaultModel": "foldingProviderModel",
"editor.suggest.insertMode": "replace"
}
}
C/C++ Settings for Large Codebases 🛠️
For large codebases, it is recommended to configure IntelliSense to only work with the code you are actively working on. This can be achieved by setting the includePath
and browse.path
to only include the directories relevant to your current work. Additionally, limiting symbols to included headers and disabling error squiggles can help improve performance.
C/C++ Settings ⚙️
Default Settings
{
"C_Cpp.default.enableConfigurationSquiggles": false,
"C_Cpp.default.intelliSenseMode": "gcc-x64",
"C_Cpp.default.includePath": ["/usr/include", "/usr/local/include", "/usr/lib/gcc/x86_64-redhat-linux/4.8.5"],
"C_Cpp.default.defines": ["DEBUG", "_GNU_SOURCE"],
"C_Cpp.default.cStandard": "c11",
"C_Cpp.default.cppStandard": "c++17",
"C_Cpp.default.browse.path": ["/usr/include", "/usr/local/include", "/usr/lib/gcc/x86_64-redhat-linux/4.8.5"],
"C_Cpp.default.browse.limitSymbolsToIncludedHeaders": true,
"C_Cpp.default.browse.databaseFilename": ""
}
Error Squiggles
{
"C_Cpp.errorSquiggles": "disabled"
}
Editor Settings for C++
{
"[cpp]": {
"editor.wordBasedSuggestions": "off",
"editor.semanticHighlighting.enabled": true,
"editor.stickyScroll.defaultModel": "foldingProviderModel",
"editor.suggest.insertMode": "replace"
}
}
Settings Overview 📝
General Settings 🌐
- Color Theme: Set to high contrast:
"workbench.colorTheme": "Default High Contrast"
- Remote SSH Platform: Configure remote SSH platform settings:
"remote.SSH.remotePlatform": {}
- File Associations: Define file associations:
"files.associations": {}
- Terminal Font Size: Set terminal font size to 11:
"terminal.integrated.fontSize": 11
CMake Settings 🛠️
Security Settings 🔒
- Workspace Trust: Configure workspace trust settings to never prompt and always trust:
"security.workspace.trust.startupPrompt": "never",
"security.workspace.trust.banner": "never",
"security.workspace.trust.untrustedFiles": "open",
"security.workspace.trust.enabled": false
Editor Settings ✍️
{
"editor.autoClosingComments": "never",
"editor.quickSuggestions": {
"other": true,
"comments": false,
"strings": true
},
"editor.parameterHints.enabled": true,
"editor.suggestOnTriggerCharacters": true,
"editor.suggestSelection": "first",
"editor.acceptSuggestionOnEnter": "on",
"editor.tabCompletion": "on",
"editor.autoClosingQuotes": "always",
"editor.bracketPairColorization.independentColorPoolPerBracketType": true,
"editor.codeActions.triggerOnFocusChange": true,
"editor.codeActionsOnSave": {},
"editor.wordBasedSuggestions": "off",
"editor.showFoldingControls": "always",
"editor.foldingStrategy": "indentation",
"editor.accessibilitySupport": "on",
"editor.minimap.enabled": true,
"editor.renderWhitespace": "trailing",
"editor.renderControlCharacters": true,
"editor.cursorBlinking": "smooth",
"editor.cursorSmoothCaretAnimation": "on",
"editor.formatOnPaste": false,
"editor.formatOnType": false,
"editor.tabSize": 4,
"editor.detectIndentation": false,
"editor.guides.indentation": false
}
Files Settings 📂
{
"files.trimTrailingWhitespace": true,
"files.insertFinalNewline": true,
"files.trimFinalNewlines": true,
"files.associations": {},
"files.exclude": {"**/*bedrock*/**": true},
"files.watcherExclude": {"**/bedrock/**": true}
}
Breadcrumbs Settings 🥖
{
"breadcrumbs.enabled": true
}
Explorer Settings 🔍
{
"explorer.confirmDelete": false,
"explorer.confirmDragAndDrop": false
}
Window Settings 🪟
{
"window.zoomLevel": 1
}
Workbench Settings 🛠️
{
"workbench.editor.enablePreview": false,
"workbench.statusBar.visible": true,
"workbench.panel.defaultLocation": "bottom",
"workbench.iconTheme": "vscode-icons",
"workbench.startupEditor": "welcomePage",
"workbench.editorAssociations": {"*.copilotmd": "vscode.markdown.preview.editor", "*.json": "default"}
}
Terminal Settings 💻
{
"terminal.integrated.scrollback": 10000,
"terminal.integrated.cursorBlinking": true,
"terminal.integrated.cursorStyle": "block",
"terminal.integrated.cursorWidth": 2,
"terminal.integrated.fontFamily": "monospace",
"terminal.integrated.fontWeight": "normal",
"terminal.integrated.fontWeightBold": "bold",
"terminal.integrated.lineHeight": 1.2,
"terminal.integrated.letterSpacing": 0,
"terminal.integrated.visible": true,
"terminal.integrated.env.linux": {"TERM": "xterm-256color"},
"terminal.integrated.fontSize": 11,
"terminal.integrated.shellArgs.linux": ["--color=always"]
}
Diff Editor Settings 🔍
{
"diffEditor.ignoreTrimWhitespace": true,
"diffEditor.renderSideBySide": false,
"diffEditor.hideUnchangedRegions.enabled": true
}
GitHub Copilot Settings 🤖
{
"github.copilot.chat.search.semanticTextResults": true,
"github.copilot.chat.edits.enabled": true,
"github.copilot.enable": {"*": true}
}
Search and File Exclusion Settings 🔍
{
"search.exclude": {"**/*bedrock*/**": true},
"files.exclude": {"**/*bedrock*/**": true}
}
HTTP Proxy Settings 🌐
{
"http.proxyStrictSSL": false
}
Remote SSH Settings 🔒
{
"remote.SSH.useCurlAndWgetConfigurationFiles": true,
"remote.SSH.remotePlatform": {}
}
Perforce Settings 🛠️
{
"perforce.enableP4ConfigScanOnStartup": false
}
Settings Sync 🔄
{
"settingsSync.ignoredSettings": [],
"settingsSync.keybindingsPerPlatform": true,
"settingsSync.syncExtensions": true,
"settingsSync.syncGlobalState": true,
"settingsSync.syncKeybindings": true,
"settingsSync.syncSettings": true,
"settingsSync.syncSnippets": true,
"settingsSync.syncTasks": true
}
Update Mode 🔄
{
"update.mode": "none"
}
Indent Rainbow Settings 🌈
{
"indentRainbow.indicatorStyle": "light",
"indentRainbow.lightIndicatorStyleLineWidth": 2,
"indentRainbow.colors": ["rgba(255,255,64,0.3)", "rgba(127,255,127,0.3)", "rgba(255,127,255,0.3)", "rgba(79,236,236,0.3)"],
"indentRainbow.ignoreErrorLanguages": ["*"]
}