vscode-workspace-config-plus icon indicating copy to clipboard operation
vscode-workspace-config-plus copied to clipboard

Should we support OS specific configurations?

Open calebcartwright opened this issue 4 years ago • 2 comments

It would be fairly straightforward to expand our current supported features to also give folks the option to define platform-specific configuration files, e.g. settings.shared.json and settings.shared.{linux,darwin,windows}.json, to allow for platform specific overrides/shared configurations.

I don't have any concrete use cases in mind, but I do envision there's scenarios that could benefit from this especially when it comes to configurations like launch/debug settings.

Essentially, this would extend the configuration resolution priority order to something like the below list (settings.json used as an example, but would apply to all supported files):

  1. settings.local.{linux,darwin,window}.json
  2. settings.local.json
  3. settings.shared.{linux,darwin,windows}.json
  4. settings.shared.json

calebcartwright avatar Aug 31 '21 23:08 calebcartwright

I can take a look at this feature, is there anything I should consider before starting?

witcher112 avatar Feb 22 '23 06:02 witcher112

I can take a look at this feature, is there anything I should consider before starting?

That's an incredible offer, thank you! I don't know if there's anything in particular per se as far as implementation goes, but probably worth thinking through file names (e.g. will "darwin" resonate and be sufficiently obvious to all Mac users) as well as automated testing strategies that account for platform specifics (i.e. more functional style tests that can validate platform-specific behavior)

calebcartwright avatar Mar 11 '23 17:03 calebcartwright