skip to Main Content

I have a setting in Visual Studio Code that says it was "Modified elsewhere," but that modification isn’t in the User or Workspace settings.json:

enter image description here

enter image description here

How do I find this modification? By that I mean, what are the possibilities? Could it be an extension? Could it be some non-settings.json configuration file? Could this merely mean another project modifies it in its Workspace settings?

I ran $ ag --hidden --ignore-dir '.git' editor.codeActionsOnSave in my workspace directory (from a Cygwin terminal), and found zero results. Could the modification go by a different name?

This comment may be more suitable for a VS Code feature request, but I feel like if VS Code knows enough to tell me it’s been modified, it should know enough to tell me where—otherwise, how would it know?

2

Answers


  1. Hover your mouse over the "Modified elsewhere" text and it should tell you where:

    tooltip for modified elsewhere

    A tooltip should show up as indicated in this issue.

    Hovering over the indicator should reveal a custom hover that notes down where else the setting has been modified.

    Login or Signup to reply.
  2. Timothy’s answer is good (hover your mouse over the modified indicator and it’ll show you where), but doesn’t address another part of the question:

    By that I mean, what are the possibilities?

    • Configuration has a "target" (API docs)- either global, workspace, or workspace folder (if you’re confused by the multiple workspace things, it’s for when you’re using multi-root workspaces).

    • Configuration has a "scope" (API docs), which can be a specific resource, or a language, or both, or a text document, or a workspace folder. For the language scope, see the related user docs.


    Could it be an extension?

    Depends what you mean. Extensions can internally do whatever they want with how they use their own contributed settings (use default values that they don’t specify in their extension manifest, or disregard the value the user sets altogether), but if they write to a setting value through the extension API for settings values (see WorkspaceConfiguration.update(...)), VS Code will know.


    Could it be some non-settings.json configuration file?

    See above. Though also, extensions can have their own types of configuration files that VS Code itself doesn’t know or care about (and if the setting change is done there, then VS Code itself will not know), while still having parallel/related settings that VS Code does know about. Such as the C/C++ extension’s c_cpp_properties.json file, for which defaults can be set via VS Code settings, or tsconfig/jsconfig files, for which some compiler/type-checking options can be defaulted via the js/ts.implicitProjectConfig.* settings, etc.


    Could this merely mean another project modifies it in its Workspace settings?

    If you mean a workspace / workspace folder that is not the currently open one, no. VS Code will not show the modified indicator for that (and thank goodness it doesn’t).

    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search