code-settings-sync icon indicating copy to clipboard operation
code-settings-sync copied to clipboard

Considering disabled extensions

Open MarkyMarkNo1 opened this issue 8 years ago • 27 comments

Issuehunt badges

Visual Studio Code Version : 1.7.1 Code Sync Settings Version : 2.3.8 Operating System : W10 Occurs On: [Upload / Download] Proxy Enabled: No

As of version 1.7, VSCode introduced disabled extensions.

We're excited to find these supported by this beloved plugin soon, hopefully! ;) Thank you!


IssueHunt Summary

Backers (Total: $120.00)

Become a backer now!

Or submit a pull request to get the deposits!

Tips


IssueHunt has been backed by the following sponsors. Become a sponsor

MarkyMarkNo1 avatar Nov 14 '16 15:11 MarkyMarkNo1

Added some thoughts @ https://github.com/Microsoft/vscode/issues/15466#issuecomment-260871236

MartinSGill avatar Nov 16 '16 07:11 MartinSGill

I installed a lot of extentions. And some of them are not used in my daily working. Therefore to make vs code work fast, I disabled them. When I needed them I will enable them temporarily, and disable them afterwards.

I noticed that disable extension are not synced. I hope I can sync those disabled extension as well, since they are useful as well.

Thanks a lot!

Jiming

jiming avatar May 11 '17 09:05 jiming

to make vs code work fast, I disabled them. When I needed them I will enable them temporarily, and disable them afterwards.

As for now, its the limitation from code itself, in the issue referenced. But in upcoming versions, im going to introduce the the hot switch dev environment options, you can have multiple gist but can switch to any other gist and that extensions will be installed

https://github.com/shanalikhan/code-settings-sync/issues/308

shanalikhan avatar May 11 '17 10:05 shanalikhan

code --list-extensions command will show all your extensions, included the disabled ones.

Fred-Vatin avatar Jul 12 '17 13:07 Fred-Vatin

@shanalikhan Can I use the settings to choose to upload disabled or enabled plugins?

ghost avatar Aug 04 '17 08:08 ghost

@shanalikhan Just wondering, do you just ignore disabled extensions or does code api just not tell you about disabled extensions?

mastrauckas avatar Oct 08 '17 02:10 mastrauckas

Now there is no way to achieve this function ?

xushuailing avatar Oct 19 '17 01:10 xushuailing

@mastrauckas It sounds like the latter.

mditrolio avatar Dec 13 '17 15:12 mditrolio

No, Code API dont provide information regarding extension either its disabled / enabled. Getting information is not useful by getting by any mean (CLI) unless Settings sync disable extension automatically after downloading in other code machines which currently not supported by code

image https://code.visualstudio.com/docs/editor/extension-gallery#_command-line-extension-management

This issue is pending from :

  1. https://github.com/Microsoft/vscode/issues/55363
  2. https://github.com/Microsoft/vscode/issues/15466

shanalikhan avatar Dec 13 '17 16:12 shanalikhan

@shanalikhan Why not sync extension that are enabled and disabled ? I much rather have my extensions synced and have to disable manually on the other machine than lose them completely.

mastrauckas avatar Dec 16 '17 02:12 mastrauckas

Really interested in seeing this feature. @shanalikhan can you elabore more on the code limitation?

Is it possible to list and install everything (even the disabled ones)? I'd really prefer this then maybe losing some extensions.

lhnrd avatar May 26 '18 19:05 lhnrd

If you can get the full list via code --list-extensions and the the list of enabled extensions through extensions.json or the API, can't you just subtract the latter set from the former set to get the disabled list? Then you can selectively disable the correct extensions. This could be a workaround until the API is nicer. (Ideally an issue on that could be opened on the code repo.)

A simpler approach would be to just get the full list (via --list-extensions), disable all of them, and then selectively enable them based on what you get from the API or extensions.json.

daltonhildreth avatar Jun 25 '18 21:06 daltonhildreth

Any plan for releasing something to address this?

jcostello avatar Nov 13 '18 13:11 jcostello

As there is no official support, the only way seems is the approach mentioned by @fiblit

There are no exact release plan for this issue but I'm open for PR though, feel free to send. I will release new version with it.

shanalikhan avatar Nov 13 '18 13:11 shanalikhan

I would appreciate it not uninstalling disabled extensions, I normally have some extensions disabled on my work machine but now I have to leave them enabled so I don't lose them at home.

GammaGames avatar Jan 04 '19 15:01 GammaGames

+1 on it at least not uninstalling disabled extensions. It's a real chore managing extensions between multiple machines right now. Eg. I only do Python work on my work laptop, I only do JS on my personal laptop. I'd like to disable JS extensions on my work and Python extensions on my personal laptop. Right now everything being enabled makes startup that much slower

aniforprez avatar Mar 11 '19 18:03 aniforprez

@issuehunt has funded $120.00 to this issue.


IssueHuntBot avatar Apr 05 '19 07:04 IssueHuntBot

https://github.com/microsoft/vscode/issues/15466 Please upvote and comment over there. Using API instead of CLI is more feasible.

Settings Sync use API to install/uninstall all the extensions from the v3.3.0

shanalikhan avatar Jun 06 '19 22:06 shanalikhan

Yeah, I also code both angular and react. I usually have disabled extensions of either one and enable only for workspace... This extension did not sync my disabled extensions

MCFreddie777 avatar Jun 14 '19 13:06 MCFreddie777

REALLY need this, I use vue and java, they're different env set. Every time switching is painful.

kid1412621 avatar Sep 06 '19 04:09 kid1412621

I can do this. Please assign me

benkoska avatar Sep 08 '19 16:09 benkoska

We need the API from code itself to allow Settings Sync to enable / disable extensions.

cc : @sandy081

shanalikhan avatar Sep 08 '19 19:09 shanalikhan

@shanalikhan, is there something that's changed since I suggested two feasible approaches/workarounds that would make them unfeasible to do? To my understanding having the API from code is not needed, even if it is preferable.

daltonhildreth avatar Sep 08 '19 19:09 daltonhildreth

@shanalikhan This requires exposing the internals which can be flux.

Hence as mentioned in this issue - https://github.com/microsoft/vscode/issues/78966, we are planning to expose an API to an extension to register its backend data store and through which VS Code will synchronise user data.

sandy081 avatar Sep 09 '19 07:09 sandy081

To my understanding having the API from code is not needed, even if it is preferable.

@fiblit Yes i can understand, but as per discussion with @sandy081 on https://github.com/microsoft/vscode/issues/78966 and https://github.com/microsoft/vscode/issues/78869 the official support is already planned and on its way that will help Settings Sync to get such information. I suggest to wait rather then using custom CLI approaches.

shanalikhan avatar Sep 09 '19 12:09 shanalikhan

Reporting only to register (as it may be interesting to know more scenarios and how this function is important to some)!

Visual Studio Code Version : 1.45.1 Code Sync Settings Version : 3.4.3 Operating System : ubuntu 18.04.4 Occurs On: [Upload / Download] Proxy Enabled: No PS: I have another instalation on a win10 machine.

I program in several languages, Java, C++, Python, PHP, bash. I set up a good environment for PHP, when I started a job in Java I set up the environment and disabled the plugins in the worksplace. It was alright till I found PHP environment in a workspace missed some plugins afther the sync. It took me a day or so to understand what was up. Therefore I ask, please, add workspace disabled plugins to the sync.

If you need some help investigating or whatever you can call me, I'll do my best to help.

rstriquer avatar May 20 '20 03:05 rstriquer

It seems that when I enable extensions in WSL2, they get disabled locally automatically. This means any extension which is enabled in WSL2 won't sync over.

fredrikaverpil avatar Jun 28 '21 18:06 fredrikaverpil