This a small utility to manage Visual Studio Code Profiles for extensions. Currently VS Code maintains Extensions at a User or Workspace Level.
The Problem Statement Some users asked if the extensions can be enable/disbaled for a specific project. So I tried to solve these.
alefragnani/vscode-project-manager#281 microsoft/vscode#81950 microsoft/vscode#40109
Throughtout the documentation I refer to the "VS Code Original Shortcut" as the one which comes with installation when VS code is installed.
For each workspace the user needs to Enable and Disable Extension , which can be Cumbersome.
To make things easier and centrally organized, you do not need to keep separate configuration of your settings. This makes backing up of settings (which includes extensions installed, information easier, by using extension you would be already familiar with, like,
User settings are configured and Extensions installed from the original shortcut, So that, original setup is not disturbed and easier to maintain a backup of the settings and extension list from a centralized point.
Any Changes made to the configuration(settings.json ) will automatically be reflected.
Here are few points to keep in mind
-
To keep settings , usually many developers , use extension like Settings Sync to keep their settings backup.
-
You need to to use the original VS code shortcut to Make changes to your settings and install any new extension.
-
Configure your extensions as detailed in the instructions of the Extension or using the Setting.json if necessary.
-
Once you have Installed and configured your extensions, you can use the VS Code Profile Manager to add it to your profile
VS Code Profile Manager will use the user settings.json and same installed extension.
- 1. 🏗 Installation of VS Code Profile Manager
- 2. 🗄️ Backup of Your Configuration
- 3. 🏁 Getting Started
- 4. ⚙️ Setting up Configuration Directories
- 5. 🗃 Profiles Pane
- 6. 🔀 Extension List Window (Adding & Removing Extensions from your Profile)
- 7. 🚴Running the Profile
- 8. ⛏️ Built Using
- 9. ✍️ Authors
- Download the MSI from
- releases
- as
- Run the installation
- The Installer will Install the application in Program Files\planetAPEX\VS Code Profile Manager Folder
- A Shortcut will be created on the desktop
There is a profileMgr. SQLite file in the Program Files\planetAPEX\VS Code Profile Manager Folder. If you need to backup all your setting you can backup this file, which contains your profiles and extensions list.
You have the following:
- Configuration Directories
- Profiles
- Extensions List
All Configurations can be saved, so that on next run, you do not need to specify.
In order for the profile manager to work, it needs two directories the
- Visual Studio Code Installation Folder
- Profile Base Folder
This is the folder where Visual Studio Code is installed, where code.exe exist. It will detect the default folder for Visual Studio Code. However, in rare case , if it can not, you will have to identify the specific folder.
I tried to solve the directory for:
- x86 installation of Visual Studio Code
- x64 installation of Visual Studio Code
- Chocolatey installation of Visual Studio Code
This is the folder where you need to keep the profiles and their shortcuts.
Probably, Some folder like Profiles in the D: drive.
There is also an option for Theme selector
Create a new Profile, and click the edit to add extensions.
Valid profile name consist of Alphabets and Digits only
You can delete your profile by clicking the delete button.
Deletion of the profile has no effect on the configurations and extensions that are installed in the original VS Code.
The list only contains the extensions already installed in your system. As mentioned in About you have to install your extension via the VS Code original shortuct
My Quick Workflow is,
- Start Searching extension in the combo box
- Select the desired extension with the up and down arrow keys, and hit enter
- This will select the Extension in the List box
- Now, you can press Ctrl+➡️ OR Ctrl+⬅️ arrow key to move into the other list box
- And, bring the cursor back to the Combo box to repeat the process for other extensions.
You can select multiple extensions and move it.
The names mentioned in the list box of the Extensions, are extracted from the cryptic names got from the Unique Identifier of the extensions, Like:
cyberbiont.vscode-open-in-typora
AFAIK, there was on other way around it to get it from the system. If someone is able to provide other way, please contact me.
Sometimes, there is inconsistency in the name of the extension, E.g. The General Name "Open in Typora" , However, the Unique Identifier of the extension is like:
cyberbiont.vscode-open-in-typora
Now the name in the list box will be vscode Open in typora
So kindly check it in the VS Code extension List or Microsoft Market place
These shortcut will work when a respective List box is in focus.
Ctrl+➡️ Will move the selected extensions to Right Listbox
Ctrl+⬅️ Will move the selected extensions to Left Listbox
Ctrl+Enter Will Save the Form
Saving the profile will create 2 shortcuts
- One in the Profiles Folder
- Other on the Desktop
Just double click the Shortcut and you are good to go.
- Powershell - Scripting Language
- DotNet v3 - Components
- sqlite
- INI Confiuration
- M. Yasir Ali Shah@planetapex - Idea & Initial work