{
  // This is a checked-in VSCode workspace configuration file that can be used
  // instead of directly opening $FUCHSIA_DIR in VSCode.
  //
  // It's an opt-in workspace configuration that contains settings for:
  //  - vscode itself
  //  - LSP settings for working correctly with the fuchsia.git checkout
  //  - etc.
  //
  // In terms of precedence, VSCode uses the following order in which settings
  // are applied (merged together).
  //
  //  0) default settings
  //  1) user's settings
  //  2) remote machine settings
  //  3) workspace settings  (this file)
  //  4) workspace folder settings
  //
  //
  // For details, see:
  // https://code.visualstudio.com/docs/getstarted/settings#_settings-precedence


  ////////
  // VSCode Workspace Contents
  //
  // These are the workspace folders, and general VSCode workspace
  // configuration itself.
  //
  // See https://code.visualstudio.com/docs/editor/workspaces for more
  // information on this section of the file.
  "folders": [
    {
      // The whole project directory.
      "path": "."
    }
  ],

  ////////
  // Recommended Extensions for VSCode and Fuchsia
  //
  "extensions": {
    "recommendations": [
      // Fuchsia's own VSCode extension. Provides ZXDB support, a log view, and
      // default target selection.
      "fuchsia-authors.vscode-fuchsia",

      // Fuchsia's own FIDL LSP extension
      "fuchsia-authors.language-fidl",

      // The official LSP for Rust, rust-analyzer.
      "rust-lang.rust-analyzer",

      // The Python extensions
      "ms-python.python",
      "ms-python.mypy-type-checker",
      "ms-python.black-formatter",

      // The GN language server from Microsoft
      "msedge-dev.gnls",

      // The official Clang LSP for C/C++.
      "llvm-vs-code-extensions.vscode-clangd",

      // Supports inserting and formatting C/C++ include guards as required
      // in Fuchsia.
      "akiramiyakoda.cppincludeguard",

      // Adds JSON5 syntax highlighting (including *.cml files).
      "mrmlnc.vscode-json5",

      // Linkifies Fuchsia URLs (components, bugs, etc.)
      "RichKadel.fuchsiaware",

      // Adds coverage gutters for `fx coverage`.
      "ryanluker.vscode-coverage-gutters",
    ],

    "unwantedRecommendations": [
      // Conflicts with vscode-clangd intellisense, and vscode-clangd is the
      // preferred C++ extension.
      "ms-vscode.cpptools",

      // Redundant and conflicts with gnls, which is preferred.
      "npclaudiu.vscode-gn",

      // Redundant and conflicts with gnls, which is preferred.
      "persidskiy.vscode-gnformat",

      // Superseded by vscode-fuchsia, which provides zxdb support.
      "fuchsia-authors.zxdb",
    ]
  },


  "settings": {
    ////////
    // Extra file associations (patterns to languages)
    "files.associations": {
      "*.cml": "json5",
      "*.inc": "cpp",

      // Golden files
      "*.c.golden": "c",
      "*.cc.golden": "cpp",
      "*.cml.golden": "json5",
      "*.dart.golden": "dart",
      "*.fidl.golden": "fidl",
      "*.gn.golden": "gn",
      "*.go.golden": "go",
      "*.h.golden": "cpp",
      "*.json.golden": "json",
      "*.md.golden": "markdown",
      "*.rs.golden": "rust",
      "*.yaml.golden": "yaml",
    },

    ////////
    // Dart
    //

    "dart.sdkPath": "${workspaceFolder}/prebuilt/third_party/dart/linux-x64",

    ////////
    // Rust
    //

    // This works around an OOM issue with the vscode extension-host's
    // implementation of file-watching.
    // see:  https://github.com/rust-lang/rust-analyzer/issues/12572
    // see:  https://github.com/microsoft/vscode/issues/153154
    "rust-analyzer.files.watcher": "server",
    "rust-analyzer.server.path": "${workspaceFolder}/prebuilt/third_party/rust/linux-x64/bin/rust-analyzer",

    // Use clippy.
    "rust-analyzer.check.overrideCommand": [
      "${workspaceFolder}/scripts/fx",
      "clippy",
      "--raw",
      "--all"
    ],

    // Remap the diagnostics results from RA to handle the change in working dir
    // from the workspace root to the root_build_dir in GN/Ninja.
    "rust-analyzer.diagnostics.remapPrefix": {
      "../../": "${workspaceFolder}",
    },

    ////////
    // C/C++

    // Formats C/C++ include guards to match Fuchsia style.
    "C/C++ Include Guard.Comment Style": "Line",
    "C/C++ Include Guard.Macro Type": "Filepath",
    "C/C++ Include Guard.Suffix": "_H_",
    "C/C++ Include Guard.Spaces After Endif": 2,

    ////////
    // Go

    "go.goroot": "${workspaceFolder}/prebuilt/third_party/go/linux-x64",

    "gopls": {
      // Restrict directories that gopls will search in, otherwise it can fail
      // with "Exhausted" after one million files.
      "build.directoryFilters": [
        "-.cache",
        "-.cipd",
        "-.git",
        "-.jiri_root",
        "-out",
        "-prebuilt",
      ],
      // Used over specifying a build tag so that cgo is also aware.
      "build.env": {
        "GOOS": "fuchsia",
      },
    },

    ////////
    // Bazel
    //
    "bazel.enableCodeLens": true,
    // See: https://github.com/bazelbuild/vscode-bazel/issues/236
    //"bazel.executable": "${workspaceFolder}/tools/devshell/bazel",

    ////////
    // Python
    //
    "[python]": {
      "editor.defaultFormatter": "ms-python.black-formatter"
    },
    "black-formatter.args": [
      "--config",
      "${workspaceFolder}/pyproject.toml"
    ],

    ////////
    // VSCode file exclusions (marked as hidden in the Workspace Explorer)

    "files.exclude": {
      "**/.DS_Store": true,
      "**/.cipd": true,
      "**/.git": true,
      "**/__pycache__": true,
    },
    // sub repos managed by jiri are listed in .gitignore, so make sure that
    // they are not hidden.
    "explorer.excludeGitIgnore": false,

    ////////
    // Files that are excluding from file-watching notifications
    "files.watcherExclude": {
      "**/.DS_Store": true,
      "**/.cipd": true,
      ".jiri_root/goma_cache/**": true,
      ".jiri_root/update_history*/**": true,
      "out/**": true,
      ".cache/**": true,
    },

    // This significantly speeds up search and avoids polluting results with
    // build output, third party code, and prebuilt binaries.
    "search.useIgnoreFiles": true,

    // Don't follow symlinks (into other parts of the tree)
    "search.followSymlinks": false,

    ////////
    // Code coverage
    "coverage-gutters.coverageBaseDir": ".",
    "coverage-gutters.showLineCoverage": true,
    "coverage-gutters.coverageFileNames": [ "lcov.info" ],

    // Disable task auto-detection for supported project configuration files
    // (e.g. NPM's project.json). This significantly speeds up task running.
    "task.autoDetect": "off",
  },

  // Tasks run with the "Tasks: Run Task" command (bind a shortcut!).
  "tasks": {
    "version": "2.0.0",
    "tasks": [
      {
        "label": "Fuchsia: fx build",
        "type": "shell",
        "command": "fx build",
        "problemMatcher": [],
      },
      {
        "label": "Fuchsia: fx build (Rust problem matcher)",
        "type": "shell",
        "command": "fx build",
        "problemMatcher": [
          {
            "base": "$rustc-watch",
            // Error file paths are relative to a build directory. The names
            // are arbitrary.
            "fileLocation": [
              "relative",
              "${workspaceFolder}/a/b"
            ],
          }
        ],
      },
      {
        "label": "Fuchsia: fx serve",
        "type": "shell",
         "command": "fx serve",
         "problemMatcher": []
      },
      {
        "label": "Fuchsia: fx ota",
        "type": "shell",
         "command": "fx ota",
         "problemMatcher": []
      },
      {
        "label": "Fuchsia: ffx doctor",
        "type": "shell",
         "command": "ffx doctor",
         "problemMatcher": []
      },
      {
        "label": "Fuchsia: fx flash",
        "type": "shell",
         "command": "fx flash",
         "problemMatcher": []
      },
      {
        "label": "Fuchsia: ffx emu start",
        "type": "shell",
         "command": "ffx emu start",
         "problemMatcher": []
      },
      {
        "label": "Fuchsia: ffx emu start --headless",
        "type": "shell",
         "command": "ffx emu start --headless",
         "problemMatcher": []
      },
      {
        "label": "Fuchsia: ffx emu stop",
        "type": "shell",
         "command": "ffx emu stop",
         "problemMatcher": []
      },
      {
        "label": "Fuchsia: ffx component list",
        "type": "shell",
         "command": "ffx component list",
         "problemMatcher": []
      },
      {
        "label": "Fuchsia: ffx component list --only",
        "type": "shell",
         "command": "ffx component list --only ${input:COMPONENT_LIST_ONLY}",
         "problemMatcher": []
      },
      {
        "label": "Fuchsia: ffx component show",
        "type": "shell",
         "command": "ffx component show ${input:COMPONENT_FILTER}",
         "problemMatcher": []
      },
      {
        "label": "Fuchsia: ffx component doctor",
        "type": "shell",
         "command": "ffx component doctor ${input:TARGET_MONIKER}",
         "problemMatcher": []
      },
      {
        "label": "Fuchsia: ffx component run",
        "type": "shell",
         "command": "ffx component run ${input:TARGET_MONIKER} ${input:COMPONENT_URL}",
         "problemMatcher": []
      },
      {
        "label": "Fuchsia: ffx component stop",
        "type": "shell",
         "command": "ffx component stop ${input:TARGET_MONIKER}",
         "problemMatcher": []
      },
      {
        "label": "Fuchsia: ffx component reload",
        "type": "shell",
         "command": "ffx component reload ${input:TARGET_MONIKER}",
         "problemMatcher": []
      },
      {
        "label": "Fuchsia: ffx component destroy",
        "type": "shell",
         "command": "ffx component destroy ${input:TARGET_MONIKER}",
         "problemMatcher": []
      },
      {
        "label": "Fuchsia: fx test",
        "type": "shell",
         "command": "fx test ${input:TEST_NAME}",
         "problemMatcher": []
      },
      {
        "label": "Fuchsia: fx coverage",
        "type": "shell",
         "command": "fx coverage --lcov-output-path ${workspaceFolder}/lcov.info ${input:TEST_NAME}",
         "problemMatcher": []
      },
      {
        "label": "Fuchsia: jiri upload",
        "type": "shell",
        "command": "jiri upload",
        "problemMatcher": [],
      },
      {
        "label": "Fuchsia: jiri update",
        "type": "shell",
        "command": "jiri update",
        "problemMatcher": [],
      },
    ],
    "inputs": [
      {
        "id": "TEST_NAME",
        "type": "promptString",
        "description": "Test name"
      },
      {
        "id": "TARGET_MONIKER",
        "type": "promptString",
        "description": "TARGET_MONIKER: The destination moniker of a new component instance. The moniker must include a component collection on the path. E.g. '/core/ffx-laboratory:hello-world'"
      },
      {
        "id": "COMPONENT_URL",
        "type": "promptString",
        "description": "COMPONENT_URL: The resource location of a component. E.g. 'fuchsia-pkg://fuchsia.com/hello-world-cpp#meta/hello-world-cpp.cm'"
      },
      {
        "id": "COMPONENT_FILTER",
        "type": "promptString",
        "description": "COMPONENT_FILTER: URL or moniker of component instance. Partial matches allowed."
      },
      {
        "id": "COMPONENT_LIST_ONLY",
        "type": "promptString",
        "description": "--only: cmx, cml, running, stopped, ancestor:foo, descendant:foo, relatives:foo"
      },
    ]
  }
}
