microsoft / vscode

Visual Studio Code
https://code.visualstudio.com
MIT License
163.95k stars 29.18k forks source link

Allow all configurations to be effective in workspace settings.json. #221446

Closed tfuto closed 1 month ago

tfuto commented 3 months ago

Main issue: Some settings in the user settings.json won't work if placed in the workspace settings.json. Some of these are:

update.mode
extensions.autoUpdate
extensions.autoCheckUpdates
telemetry.telemetryLevel

Problems with this:

  1. In a completely sandboxed environment, or in a strictly proxied environment, extranet actions should be completely suppressed. (Current issue I am trying to solve.)
  2. Although it makes sense to handle these as user settings, it does not make sense to disallow specifying/overwriting them in the workspace settings.json.
  3. --user-data-dir, in its current form, is not readily versionable. There are a mixture of various content aside of configuration JSON files there.

Ideal setup:

Suggestions:

sandy081 commented 1 month ago

Either allow specifying/overwriting the user settings in the workspace settings.json file

This cannot be supported

Support a userSettings.json file in the workspace so that user settings could be stored there (maybe also overwriting some global user settings.json values.

You can use symlinks - symlink the settings.json file from your user settings to point to the one from workspace settings.