Skip to content

Utilize VScode extension profiles with the plugin to make it easier to use and switch between sets of extensions (different toolchains)  #43

@eriklundh

Description

@eriklundh

VSCode is an impressive environment, that used to have a problem running different sets of extensions, requiring users to manually disable and enable several conflicting extensions from different vendors, e g Raspberry Pico vs ESP32 toolchains.
The VSCode devs addressed this problem some time ago by introducing 'extension profiles'.
https://code.visualstudio.com/docs/editor/profiles
Profiles was a command line switch at first, but now also has a UI in VSCode.
Different VSCode instances can run different extension profiles, making the platform less of a 'everything looks like a nail when all you have is a hammer'. I e you can run Pico development in one VSCode window, and development that requires a conflicting set of extensions in another VSCode window.
This seems to be intended to make VSCode-based solutions more attractive to ambitious devs that don't want to get stuck as sad one-trick ponies.
However, we have not yet seen any MCU toolchain installer that automatically installs in a separate VSCode profile instead of the default extension profile space. (We did suggest using VSCode extension profiles to some esp-idf devs at Embedded World 2024)
Bonus level
I have not verified this, but it might be possible to have kind of a "benign" proxy VSCode extension without conflict-causing dependencies that can live in the default profile (default extension space) that, when activated, automatically switch to the pico-vscode profile, with the right set of extensions. Might improve usability for the majority of users currently unaware of VSCode extension profiles

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions