VSCode Setup
Login
Sign in using
- Microsoft account
- Github account (settings sync & supercharge git features)
Editor font
Most fonts can be found on google fonts
Favorites:
Nerd fonts
Nerd fonts are available here.
Favorites:
- ComicShannsMono Nerd Font
- 0xProto Nerd Font
- JetBrainsMono Nerd Font
Extensions
- ✔️ means verified
- ⚠️ means unverified
Git
- ✔️
eamodio.gitlens
- ⚠️
mhutchie.git-graph
SSH Connections
- ✔️
ms-vscode-remote.remote-ssh
Containers
- ✔️
ms-azuretools.vscode-docker
- ✔️
ms-vscode-remote.remote-containers
Formatting
- ⚠️
christian-kohler.path-intellisense
- ⚠️
esbenp.prettier-vscode
- ⚠️
njpwerner.autodocstring
C++
- ✔️
ms-vscode.cpptools
- ✔️
ms-vscode.cpptools-extension-pack
Build System
- ⚠️
twxs.cmake
- ✔️
ms-vscode.cmake-tools
Python
- ✔️
ms-python.vscode-pylance
- ✔️
ms-python.python
- ✔️
ms-python.debugpy
Linting
- ✔️
ms-python.pylint
- ⚠️
SonarSource.sonarlint-vscode
Markdownlint
- ⚠️
DavidAnson.vscode-markdownlint
- ⚠️
yzane.markdown-pdf
- ⚠️
bierner.markdown-mermaid
Themes
- ⚠️
PKief.material-icon-theme
- ⚠️
mechatroner.rainbow-csv
Settings
{
// Security
"security.workspace.trust.untrustedFiles": "prompt",
// Zoom
"window.zoomLevel": 0.8,
// Terminal
"terminal.integrated.fontSize": 15,
"terminal.integrated.fontLigatures.enabled": true,
"terminal.integrated.defaultLocation": "editor",
"terminal.integrated.cwd": "${workspaceFolder}",
"terminal.integrated.defaultProfile.linux": "bash",
"terminal.integrated.defaultProfile.windows": "Git Bash",
// Editor
"editor.minimap.enabled": false,
"editor.formatOnPaste": false,
"editor.formatOnType": false,
"editor.formatOnSave": false,
"editor.formatOnSaveMode": "modificationsIfAvailable",
"editor.renderWhitespace": "trailing",
"editor.occurrencesHighlight": "singleFile",
"editor.suggest.insertMode": "replace",
"editor.acceptSuggestionOnCommitCharacter": false,
"editor.guides.bracketPairs": true,
"editor.fontFamily": "'0xProto Nerd Font', Consolas, 'Courier New', monospace",
"editor.fontLigatures": true,
"editor.lineHeight": 1.5,
"editor.fontSize": 15,
"editor.mouseWheelZoom": true,
"editor.pasteAs.preferences": [
"markdown.link"
],
// Files
"files.autoSave": "afterDelay",
"files.autoSaveDelay": 1000,
"files.defaultLanguage": "markdown",
"files.trimTrailingWhitespace": true,
"files.exclude": {
"**/.git": true,
"**/.svn": true,
"**/.hg": true,
"**/CVS": true,
"**/.DS_Store": true,
"**/Thumbs.db": true
},
// Explorer related settings
"explorer.autoReveal": false,
"explorer.confirmDragAndDrop": false,
"explorer.confirmDelete": true,
// Workbench
"workbench.tree.indent": 15,
"workbench.editor.enablePreview": false,
"workbench.iconTheme": "material-icon-theme",
"workbench.colorTheme": "Solarized Light",
"workbench.colorCustomizations": {
"[Solarized Light]": {
"editor.selectionBackground": "#f4f292"
}
},
// Git
"git.confirmSync": false,
"git.enableSmartCommit": true,
// Gitlens
"gitlens.currentLine.enabled": false,
"gitlens.codeLens.enabled": false,
"gitlens.hovers.currentLine.over": "line",
// Language specific settings
"[python]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"python.analysis.autoFormatStrings": true,
"[jsonc]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[markdown]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[yaml]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
// Extensions
"autoDocstring.docstringFormat": "google",
// Disable Copilot Icon
"chat.commandCenter.enabled": false
}
Shortcuts
{
"shortcuts": [
{
"key": "ctrl+'",
"command": "editor.action.smartSelect.expand",
"when": "editorTextFocus"
},
{
"key": "ctrl+shift+'",
"command": "editor.action.addSelectionToNextFindMatch",
"when": "editorTextFocus"
},
{
"key": "ctrl+shift+x",
"command": "editor.action.clipboardCutAction",
"when": "editorTextFocus"
},
{
"key": "ctrl+shift+d",
"command": "editor.action.copyLinesDownAction",
"when": "editorTextFocus"
},
{
"key": "ctrl+shift+up",
"command": "editor.action.moveLinesUpAction",
"when": "editorTextFocus"
},
{
"key": "ctrl+shift+down",
"command": "editor.action.moveLinesDownAction",
"when": "editorTextFocus"
},
{
"key": "ctrl+shift+k",
"command": "editor.action.deleteLines",
"when": "editorTextFocus"
},
{
"key": "alt+up",
"command": "editor.action.insertLineBefore",
"when": "editorTextFocus"
},
{
"key": "alt+down",
"command": "editor.action.insertLineAfter",
"when": "editorTextFocus"
},
{
"key": "ctrl+o",
"command": "workbench.action.quickOpen",
"when": "editorTextFocus"
},
{
"key": "ctrl+shift+o",
"command": "revealFileInOS",
"when": "editorTextFocus"
},
{
"key": "ctrl+shift+l",
"command": "workbench.action.showAllEditorsByMostRecentlyUsed"
},
{
"key": "ctrl+shift+/",
"command": "workbench.action.gotoSymbol"
},
{
"key": "ctrl+n",
"command": "explorer.newFile"
},
{
"key": "ctrl+alt+l",
"command": "editor.action.formatDocument"
},
{
"key": "ctrl+t",
"command": "workbench.action.terminal.toggleTerminal"
},
{
"key": "ctrl+shift+t",
"command": "workbench.action.terminal.new"
}
]
}