Add ability to extend from other settings files
Inspired by TSLint's ability to [extend](https://palantir.github.io/tslint/2016/03/31/sharable-configurations-rules.html) configuration files, it would be nice if `.vscode/settings.json` could behave the same way. So if I have some global settings set up: `~/example-repo/.vscode/my-company-settings.json`: ```json { "editor.tabSize": 2, "editor.insertSpaces": true, "editor.formatOnSave": false } ``` I can use them in another file, without having to duplicate the settings: `~/example-repo/my-project/.vscode/settings.json`: ```json { "extends": "../../.vscode/my-company-settings.json", "editor.formatOnSave": true, "editor.fontLigatures": true } ``` And the computed settings for `~/example-repo/my-project/.vscode/settings.json` would be: ```json { "editor.tabSize": 2, "editor.insertSpaces": true, "editor.formatOnSave": true, "editor.fontLigatures": true } ``` Scenario: Multi-root workspace doesn't solve this for our use case. We have a bunch of npm modules each in their own git repository. We have a package which contains our shared tsconfig.json and tslint.json settings that all the other packages include with extends. We don't use a multi-root workspace since the idea is that people can clone the specific package(s) they need to work on. Every repository contains the exact same .vscode directory which is essentially copy&pasted all over the place. Maintaining the .vscode settings for the projects is "not pretty" compared to the tsconfig.json and tsl
Posted by maxdeviant on Nov 22, 2016, 7:27 PM
Tags
Related issues
- [Meta] Feedback on granular control over Copilot changes
- unexpected status 401 Unauthorized issue
- [MODEL] Measurable quality regression in Claude generation 5 (Fable 5 / Opus 5 / Sonnet 5): worse nonsense detection, ~2x verbosity, under-disclosed model fallb
- [CRITICAL] Subagent spawning and subagent pattern bugs trigger infinite recursion, infinite token usage, grossly inefficient token usage, and lost accumulated s
- Video stops playing after some minutes
- [MODEL] Claude verbose code comments by default — ignores instructions to stop.
Raise real-world problems, find people facing the same issue, and discuss solutions.4,500 issues0 comments
github (Software)
[Meta] Feedback on granular control over Copilot changes
unexpected status 401 Unauthorized issue
[MODEL] Measurable quality regression in Claude generation 5 (Fable 5 / Opus 5 / Sonnet 5): worse nonsense detection, ~2x verbosity, under-disclosed model fallb
[CRITICAL] Subagent spawning and subagent pattern bugs trigger infinite recursion, infinite token usage, grossly inefficient token usage, and lost accumulated s
Video stops playing after some minutes
[MODEL] Claude verbose code comments by default — ignores instructions to stop.
Scope Codex VS Code chats to the current workspace/project
Update on "Co-authored-by: Copilot" in commit messages
Add ability to extend from other settings files
Inspired by TSLint's ability to [extend](https://palantir.github.io/tslint/2016/03/31/sharable-configurations-rules.html) configuration files, it would be nice if `.vscode/settings.json` could behave the same way. So if I have some global settings set up: `~/example-repo/.vscode/my-company-settings.json`: ```json { "editor.tabSize": 2, "editor.insertSpaces": true, "editor.formatOnSave": false } ``` I can use them in another file, without having to duplicate the settings: `~/example-repo/my-project/.vscode/settings.json`: ```json { "extends": "../../.vscode/my-company-settings.json", "editor.formatOnSave": true, "editor.fontLigatures": true } ``` And the computed settings for `~/example-repo/my-project/.vscode/settings.json` would be: ```json { "editor.tabSize": 2, "editor.insertSpaces": true, "editor.formatOnSave": true, "editor.fontLigatures": true } ``` Scenario: Multi-root workspace doesn't solve this for our use case. We have a bunch of npm modules each in their own git repository. We have a package which contains our shared tsconfig.json and tslint.json settings that all the other packages include with extends. We don't use a multi-root workspace since the idea is that people can clone the specific package(s) they need to work on. Every repository contains the exact same .vscode directory which is essentially copy&pasted all over the place. Maintaining the .vscode settings for the projects is "not pretty" compared to the tsconfig.json and tsl
Comments (0)
No comments yet. Start the discussion.