Visual Studio Code is a popular cross-platform, multi-language IDE. I prefer using JetBrains IDEs, but this will suffice for most development projects (and many course labs).

Keybinds

  • Alt + Z to toggle code wrap.
  • Ctrl + Alt + ~ to open a terminal window.
  • Hold Alt while scrolling to enable faster scrolling.

Extensions

Globally enabled:

  • GitHub Copilot, GitHub Copilot Chat
  • GitHub Pull Requests
  • Live Preview — for in-editor previews of HTML/Markdown pages
  • SSH, Remote Explorer — for remote editing
  • WSL
  • Tokyo Night — for light/dark theming

By language:

  • C/C++ — C/C++, C/C++ Runner, CMake, CMake Tools, Makefile Tools, CodeLLDB (debugger), clangd (linter)
  • Python — Python, Pylance, Python Debugger
  • Verilog/SystemVerilog — Metalware
  • — LaTeX Workshop

Settings

A good idea is to have consistently formatted code, which can be done automatically.

  • Editor: Default Formatter can be changed (for C/C++, set to none).
  • Editor: Format on Save should be ticked on.
  • For C/C++, C_Cpp: Clang_format_fallback Style can be set to Google.

VS Code has a convenient debugging functionality. To add global variables to the sidebar, press the plus button in the “Watch” section and add the name of the global variable.

https://www.youtube.com/watch?v=VIdM5VSlJVw