VS Code: Cure the Extension Creep with Profiles

What makes Microsoft Visual Studio Code really useful is the concept of Extensions: Probably for every problem or use case you might find an extension. There are more than 40K extensions available for VS Code. And VS Code asks to install extensions:

VS Code asking to install an extension

The issue with this is: more and more extensions get added, making VS Code slower and slower, caused by that ‘extension creep’. Even worse: extensions can cause conflicts, and clutter the development flow. Luckily, there is a cure for this in VS Code: Profiles.

Active Profile in VS Code

VS Code Profiles

‘Profiles’ have been introduced to VS Code in February 2023 version 1.76, as ‘one of the All-Time Most Requested VS Code Features’. With a profile I can quickly switch my current workflow for a project. The profile includes settings (like colors), keybindings, and especially the set of extensions. The profile used is stored with the workspace settings.

The current active profile is visible in the left toolbar:

Current Profile

Clicking on that icon I can manage my profiles (create, edit, delete, export, import).

I’m using profiles to switch between different development flows and lecture modules (which use different extensions):

Because the profile gets associated with a workspace, I organize my ESP32, NXP, … project in workspaces too, and have the profile assigned to it. So switching or loading a workspace will have the correct profile with the required extensions loaded to it. This is especially useful, as the vendor extensions are adding UI elements (buttons, toolbar items, sidebar items) to VS Code, and they will clutter up the UI, make it slow or even break things between extensions. Using profiles I can keep them separated, assigned to workspace and can easily switch a workspace with the profile.

Happy profiling 🙂

Links

2 thoughts on “VS Code: Cure the Extension Creep with Profiles

    • Hi Randy,
      you are welcome! Yes, it is getting more and more popular, despite it still lacks many embedded features common in other environments. But with more companies jumping on the bandwagon, it means more extensions which already can be a pain if doing development for multiple platforms. Using profiles helps solving that issue.

      Like

What do you think?

This site uses Akismet to reduce spam. Learn how your comment data is processed.