Cursor-specific overrides to .vscode/settings.json

I often work with codebases that have committed .vscode/settings.json files, targeted towards people who are using vscode, and not cursor.

However, there are some settings that may conflict between cursor or vscode - for instance, many of these projects have "python.languageServer": "Pylance", which cursor the forces to "python.languageServer": "None".

It would be helpful to have a way to override .vscode/settings.json settings with cursor-specific ones. A few ways of implementing this might be:

  • Have a separate cursor-specific file (say, .cursor/settings.json or .vscode/cursor-settings.json) that can sparsely override .vscode/settings.json
  • Have a single setting within .vscode/settings.json, whose value is dictionary with sparse cursor-specific overrides - ie, you might have a .vscode/settings.json with:
{
    "python.languageServer": "Pylance",
    "cursor.overrides": {
        "python.languageServer": "None"
    }
}
  • designate a setting-name-prefix to override specific settings, ie:
{
    "python.languageServer": "Pylance",
    "cursor.overrides.python.languageServer": "None"
}