notes/.config/VSCodium/CachedProfilesData/__default__profile__/extensions.user.cache
2023-08-12 04:16:49 -07:00

1 line
No EOL
766 KiB
Text
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

{"input":{"location":{"$mid":1,"external":"vscode-userdata:/home/brian/.vscode-oss/extensions/extensions.json","path":"/home/brian/.vscode-oss/extensions/extensions.json","scheme":"vscode-userdata"},"mtime":1691835199883,"profile":true,"profileScanOptions":{"bailOutWhenFileNotFound":true},"type":1,"excludeObsolete":true,"validate":true,"productVersion":"1.81.1","productDate":"2023-08-12T09:40:59.508Z","productCommit":"aef377c42cea6e9aea642829953104f07097abfa","devMode":false,"language":"en","translations":{}},"result":[{"type":1,"identifier":{"id":"dbaeumer.vscode-eslint","uuid":"583b2b34-2c1e-4634-8c0b-0b82e283ea3a"},"manifest":{"name":"vscode-eslint","displayName":"ESLint","description":"Integrates ESLint JavaScript into VS Code.","version":"2.4.2","author":"Microsoft Corporation","license":"MIT","repository":{"type":"git","url":"https://github.com/Microsoft/vscode-eslint.git"},"bugs":{"url":"https://github.com/Microsoft/vscode-eslint/issues"},"publisher":"dbaeumer","icon":"eslint_icon.png","categories":["Programming Languages","Linters"],"keywords":["multi-root ready"],"engines":{"vscode":"^1.68.0"},"activationEvents":["onStartupFinished"],"extensionKind":["workspace"],"enabledApiProposals":[],"main":"./client/out/extension","capabilities":{"virtualWorkspaces":{"supported":false,"description":"Using ESLint is not possible in virtual workspaces."},"untrustedWorkspaces":{"supported":false,"description":"The extension requires workspace trust because it loads configuration files and code from the workspace and executes it."}},"contributes":{"configuration":{"type":"object","title":"ESLint","properties":{"eslint.enable":{"scope":"resource","type":"boolean","default":true,"description":"Controls whether eslint is enabled or not."},"eslint.packageManager":{"scope":"resource","type":"string","enum":["npm","yarn","pnpm"],"default":"npm","description":"The package manager you use to install node modules.","deprecationMessage":"The setting is deprecated. The Package Manager is automatically detected now."},"eslint.problems.shortenToSingleLine":{"type":"boolean","default":false,"description":"Shortens the text spans of underlined problems to their first related line.","scope":"resource"},"eslint.nodeEnv":{"scope":"resource","type":["string","null"],"default":null,"markdownDescription":"The value of `NODE_ENV` to use when running eslint tasks."},"eslint.nodePath":{"scope":"machine-overridable","type":["string","null"],"default":null,"markdownDescription":"A path added to `NODE_PATH` when resolving the eslint module."},"eslint.options":{"scope":"resource","type":"object","default":{},"markdownDescription":"The eslint options object to provide args normally passed to eslint when executed from a command line (see https://eslint.org/docs/developer-guide/nodejs-api#eslint-class)."},"eslint.trace.server":{"scope":"window","anyOf":[{"type":"string","enum":["off","messages","verbose"],"default":"off"},{"type":"object","properties":{"verbosity":{"type":"string","enum":["off","messages","verbose"],"default":"off"},"format":{"type":"string","enum":["text","json"],"default":"text"}}}],"default":"off","description":"Traces the communication between VSCode and the eslint linter service."},"eslint.run":{"scope":"resource","type":"string","enum":["onSave","onType"],"default":"onType","description":"Run the linter on save (onSave) or on type (onType)"},"eslint.autoFixOnSave":{"scope":"resource","type":"boolean","default":false,"description":"Turns auto fix on save on or off.","deprecationMessage":"The setting is deprecated. Use editor.codeActionsOnSave instead with a source.fixAll.eslint member."},"eslint.quiet":{"scope":"resource","type":"boolean","default":false,"description":"Turns on quiet mode, which ignores warnings."},"eslint.onIgnoredFiles":{"scope":"resource","type":"string","enum":["warn","off"],"default":"off","description":"Whether ESLint should issue a warning on ignored files."},"eslint.migration.2_x":{"scope":"application","type":"string","enum":["off","on"],"default":"on","description":"Whether ESlint should migrate auto fix on save settings."},"eslint.useESLintClass":{"scope":"resource","type":"boolean","default":false,"description":"Since version 7 ESLint offers a new API call ESLint. Use it even if the old CLIEngine is available. From version 8 on forward on ESLint class is available."},"eslint.experimental.useFlatConfig":{"scope":"resource","type":"boolean","default":false,"description":"Enables support of experimental Flat Config (aka eslint.config.js, supported by ESLint version 8.21 or later)."},"eslint.workingDirectories":{"scope":"resource","type":"array","items":{"anyOf":[{"type":"string"},{"type":"object","properties":{"mode":{"type":"string","enum":["auto","location"],"default":"location"}},"required":["mode"]},{"type":"object","properties":{"directory":{"type":"string","description":"The working directory to use if a file's path starts with this directory."},"changeProcessCWD":{"type":"boolean","description":"Whether the process's cwd should be changed as well."}},"deprecationMessage":"Use the new !cwd form.","required":["directory"]},{"type":"object","properties":{"directory":{"type":"string","description":"The working directory to use if a file's path starts with this directory."},"!cwd":{"type":"boolean","description":"Set to true if ESLint shouldn't change the working directory."}},"required":["directory"]},{"type":"object","properties":{"pattern":{"type":"string","description":"A glob pattern to match a working directory."},"!cwd":{"type":"boolean","description":"Set to true if ESLint shouldn't change the working directory."}},"required":["pattern"]}]},"markdownDescription":"Specifies how the working directories ESLint is using are computed. ESLint resolves configuration files (e.g. `eslintrc`, `.eslintignore`) relative to a working directory so it is important to configure this correctly."},"eslint.validate":{"scope":"resource","type":"array","items":{"anyOf":[{"type":"string"},{"type":"object","properties":{"language":{"type":"string","description":"The language id to be validated by ESLint."},"autoFix":{"type":"boolean","description":"Whether auto fixes are provided for the language."}},"deprecationMessage":"Auto Fix is enabled by default. Use the single string form."}]},"description":"An array of language ids which should be validated by ESLint. If not installed ESLint will show an error."},"eslint.ignoreUntitled":{"scope":"resource","type":"boolean","default":false,"description":"If true, untitled files won't be validated by ESLint."},"eslint.probe":{"scope":"resource","type":"array","items":{"type":"string"},"default":["javascript","javascriptreact","typescript","typescriptreact","html","vue","markdown"],"description":"An array of language ids for which the extension should probe if support is installed."},"eslint.provideLintTask":{"scope":"resource","type":"boolean","default":false,"deprecationMessage":"This option is deprecated. Use eslint.lintTask.enable instead.","description":"Controls whether a task for linting the whole workspace will be available."},"eslint.lintTask.enable":{"scope":"resource","type":"boolean","default":false,"description":"Controls whether a task for linting the whole workspace will be available."},"eslint.lintTask.options":{"scope":"resource","type":"string","default":".","markdownDescription":"Command line options applied when running the task for linting the whole workspace (see https://eslint.org/docs/user-guide/command-line-interface)."},"eslint.runtime":{"scope":"machine-overridable","type":["string","null"],"default":null,"markdownDescription":"The location of the node binary to run ESLint under."},"eslint.execArgv":{"scope":"machine-overridable","anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"default":null,"markdownDescription":"Additional exec argv argument passed to the runtime. This can for example be used to control the maximum heap space using --max_old_space_size"},"eslint.debug":{"scope":"window","type":"boolean","default":false,"markdownDescription":"Enables ESLint debug mode (same as `--debug` on the command line)"},"eslint.codeAction.disableRuleComment":{"scope":"resource","type":"object","default":{"enable":true,"location":"separateLine","commentStyle":"line"},"properties":{"enable":{"type":"boolean","default":true,"description":"Show the disable code actions."},"location":{"type":"string","enum":["separateLine","sameLine"],"default":"separateLine","description":"Configure the disable rule code action to insert the comment on the same line or a new line."},"commentStyle":{"type":"string","enum":["line","block"],"default":"line","definition":"The comment style to use when disabling a rule on a specific line."}},"additionalProperties":false,"markdownDescription":"Show disable lint rule in the quick fix menu."},"eslint.codeAction.showDocumentation":{"scope":"resource","type":"object","default":{"enable":true},"properties":{"enable":{"type":"boolean","default":true,"description":"Show the documentation code actions."}},"additionalProperties":false,"markdownDescription":"Show open lint rule documentation web page in the quick fix menu."},"eslint.codeActionsOnSave.mode":{"scope":"resource","type":"string","enum":["all","problems"],"enumDescriptions":["Fixes all possible problems in the file. This option might take some time.","Fixes only reported problems that have non-overlapping textual edits. This option runs a lot faster."],"default":"all","markdownDescription":"Specifies the code action mode. Possible values are 'all' and 'problems'."},"eslint.codeActionsOnSave.rules":{"scope":"resource","anyOf":[{"type":"array","items":{"type":"string"}},{"type":"null"}],"default":null,"markdownDescription":"The rules that should be executed when computing the code actions on save or formatting a file. Defaults to the rules configured via the ESLint configuration"},"eslint.format.enable":{"scope":"resource","type":"boolean","default":false,"description":"Enables ESLint as a formatter."},"eslint.rules.customizations":{"items":{"properties":{"severity":{"enum":["downgrade","error","info","default","upgrade","warn","off"],"type":"string"},"rule":{"type":"string"}},"type":"object"},"scope":"resource","type":"array","description":"Override the severity of one or more rules reported by this extension, regardless of the project's ESLint config. Use globs to apply default severities for multiple rules."},"eslint.notebooks.rules.customizations":{"items":{"properties":{"severity":{"enum":["downgrade","error","info","default","upgrade","warn","off"],"type":"string"},"rule":{"type":"string"}},"type":"object"},"scope":"resource","type":"array","description":"A special rules customization section for text cells in notebook documents."},"eslint.timeBudget.onValidation":{"scope":"resource","type":"object","properties":{"warn":{"type":"number","default":4000,"minimum":0,"markdownDescription":"The time budget in milliseconds to spend on validation before showing a warning."},"error":{"type":"number","default":8000,"minimum":0,"markdownDescription":"The time budget in milliseconds to spend on validation before showing an error."}},"default":{"warn":4000,"error":8000},"markdownDescription":"The time budget in milliseconds to spend on validation before showing a warning or error."},"eslint.timeBudget.onFixes":{"scope":"resource","type":"object","properties":{"warn":{"type":"number","default":3000,"minimum":0,"markdownDescription":"The time budget in milliseconds to spend on computing fixes before showing a warning."},"error":{"type":"number","default":6000,"minimum":0,"markdownDescription":"The time budget in milliseconds to spend on computing fixes before showing an error."}},"default":{"warn":3000,"error":6000},"markdownDescription":"The time budget in milliseconds to spend on computing fixes before showing a warning or error."}}},"commands":[{"title":"Fix all auto-fixable Problems","category":"ESLint","command":"eslint.executeAutofix"},{"title":"Create ESLint configuration","category":"ESLint","command":"eslint.createConfig"},{"title":"Show Output Channel","category":"ESLint","command":"eslint.showOutputChannel"},{"title":"Migrate Settings","category":"ESLint","command":"eslint.migrateSettings"},{"title":"Restart ESLint Server","category":"ESLint","command":"eslint.restart"}],"taskDefinitions":[{"type":"eslint"}],"jsonValidation":[{"fileMatch":".eslintrc","url":"https://json.schemastore.org/eslintrc"},{"fileMatch":".eslintrc.json","url":"https://json.schemastore.org/eslintrc"},{"fileMatch":"package.json","url":"./package-json-schema.json"}],"languages":[{"id":"ignore","extensions":[".eslintignore"]},{"id":"jsonc","filenames":[".eslintrc.json"]}]},"scripts":{"vscode:prepublish":"npm run webpack","webpack":"npm run clean && webpack --mode production --config ./client/webpack.config.js && webpack --mode production --config ./server/webpack.config.js","webpack:dev":"npm run clean && webpack --mode none --config ./client/webpack.config.js && webpack --mode none --config ./server/webpack.config.js","compile":"tsc -b","compile:client":"tsc -b ./client/tsconfig.json","compile:server":"tsc -b ./server/tsconfig.json","watch":"tsc -b -w","test":"cd client && npm test && cd ..","lint":"node ./build/bin/all.js run lint","clean":"rimraf client/out && rimraf server/out","postinstall":"node ./build/bin/all.js install","symlink:lsp":"node ./build/bin/symlink.js"},"devDependencies":{"@types/mocha":"^9.1.1","@types/node":"^16.11.33","@typescript-eslint/eslint-plugin":"^5.32.0","@typescript-eslint/parser":"^5.32.0","eslint":"^8.21.0","merge-options":"^3.0.4","mocha":"^10.0.0","rimraf":"^3.0.2","ts-loader":"^9.3.1","typescript":"^4.7.4","webpack":"^5.76.0","webpack-cli":"^4.10.0","shelljs":"^0.8.5"}},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/dbaeumer.vscode-eslint-2.4.2-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"583b2b34-2c1e-4634-8c0b-0b82e283ea3a","publisherId":"29859a75-d81b-4f0e-8578-2c80ecee6f99","publisherDisplayName":"dbaeumer","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691833366264,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"redhat.vscode-yaml","uuid":"2061917f-f76a-458a-8da9-f162de22b97e"},"manifest":{"name":"vscode-yaml","displayName":"YAML","description":"YAML Language Support by Red Hat, with built-in Kubernetes syntax support","author":"Red Hat","contributors":[{"name":"Joshua Pinkney","email":"jpinkney@redhat.com"},{"name":"Yevhen Vydolob","email":"yvydolob@redhat.com"}],"license":"MIT","version":"1.14.0","publisher":"redhat","bugs":"https://github.com/redhat-developer/vscode-yaml/issues","repository":{"type":"git","url":"https://github.com/redhat-developer/vscode-yaml"},"icon":"icon/icon128.png","engines":{"npm":">=7.0.0","vscode":"^1.63.0"},"categories":["Programming Languages","Linters","Snippets","Formatters"],"capabilities":{"untrustedWorkspaces":{"supported":true},"virtualWorkspaces":true},"activationEvents":["onLanguage:yaml","onLanguage:dockercompose"],"keywords":["kubernetes","yaml","autocompletion","validation"],"main":"./dist/extension","browser":"./dist/extension-web","contributes":{"languages":[{"id":"yaml","aliases":["YAML","yaml"],"extensions":[".yml",".eyaml",".eyml",".yaml"],"filenames":[".clang-format","_clang-format"],"firstLine":"^#cloud-config","configuration":"./language-configuration.json"}],"grammars":[{"language":"yaml","scopeName":"source.yaml","path":"./syntaxes/yaml.tmLanguage.json"}],"configuration":{"title:":"YAML","properties":{"redhat.telemetry.enabled":{"type":"boolean","default":null,"markdownDescription":"Enable usage data and errors to be sent to Red Hat servers. Read our [privacy statement](https://developers.redhat.com/article/tool-data-collection).","scope":"window","tags":["telemetry","usesOnlineServices"]},"yaml.yamlVersion":{"type":"string","default":"1.2","enum":["1.1","1.2"],"markdownDescription":"Default YAML spec version"},"yaml.trace.server":{"type":"string","enum":["off","messages","verbose"],"default":"off","description":"Traces the communication between VSCode and the YAML language service."},"yaml.schemas":{"type":"object","default":{},"description":"Associate schemas to YAML files in the current workspace"},"yaml.format.enable":{"type":"boolean","default":true,"description":"Enable/disable default YAML formatter"},"yaml.format.singleQuote":{"type":"boolean","default":false,"description":"Use single quotes instead of double quotes"},"yaml.format.bracketSpacing":{"type":"boolean","default":true,"description":"Print spaces between brackets in objects"},"yaml.format.proseWrap":{"type":"string","default":"preserve","enum":["preserve","never","always"],"description":"Always: wrap prose if it exceeds the print width, Never: never wrap the prose, Preserve: wrap prose as-is"},"yaml.format.printWidth":{"type":"integer","default":80,"description":"Specify the line length that the printer will wrap on"},"yaml.validate":{"type":"boolean","default":true,"description":"Enable/disable validation feature"},"yaml.hover":{"type":"boolean","default":true,"description":"Enable/disable hover feature"},"yaml.completion":{"type":"boolean","default":true,"description":"Enable/disable completion feature"},"yaml.customTags":{"type":"array","default":[],"description":"Custom tags for the parser to use"},"yaml.schemaStore.enable":{"type":"boolean","default":true,"description":"Automatically pull available YAML schemas from JSON Schema Store"},"yaml.schemaStore.url":{"type":"string","default":"https://www.schemastore.org/api/json/catalog.json","description":"URL of schema store catalog to use"},"yaml.disableAdditionalProperties":{"type":"boolean","default":false,"description":"Globally set additionalProperties to false for all objects. So if its true, no extra properties are allowed inside yaml."},"yaml.disableDefaultProperties":{"type":"boolean","default":false,"description":"Disable adding not required properties with default values into completion text."},"yaml.maxItemsComputed":{"type":"integer","default":5000,"description":"The maximum number of outline symbols and folding regions computed (limited for performance reasons)."},"yaml.suggest.parentSkeletonSelectedFirst":{"type":"boolean","default":false,"description":"If true, the user must select some parent skeleton first before autocompletion starts to suggest the rest of the properties. When yaml object is not empty, autocompletion ignores this setting and returns all properties and skeletons"},"yaml.style.flowMapping":{"type":"string","enum":["allow","forbid"],"default":"allow","description":"Forbid flow style mappings"},"yaml.style.flowSequence":{"type":"string","enum":["allow","forbid"],"default":"allow","description":"Forbid flow style sequences"},"yaml.keyOrdering":{"type":"boolean","default":false,"description":"Enforces alphabetical ordering of keys in mappings when set to true"},"yaml.extension.recommendations":{"type":"boolean","default":"true","description":"Suggest additional extensions based on YAML usage."}}},"configurationDefaults":{"[yaml]":{"editor.insertSpaces":true,"editor.tabSize":2,"editor.quickSuggestions":{"other":true,"comments":false,"strings":true},"editor.autoIndent":"keep"}}},"extensionDependencies":[],"scripts":{"build":"yarn run clean && yarn run lint && yarn run vscode:prepublish","check-dependencies":"node ./scripts/check-dependencies.js","clean":"rimraf out && rimraf dist","compile":"webpack --mode none","format":"prettier --write .","lint":"eslint -c .eslintrc.js --ext .ts src test","test":"yarn test-compile && sh scripts/e2e.sh","ui-test":"yarn test-compile && extest setup-and-run -y out/test/ui-test/allTestsSuite.js -c max","vscode:prepublish":"webpack --mode production","watch":"webpack --mode development --watch --info-verbosity verbose","test-compile":"yarn clean && tsc -p ./ && webpack --mode development","run-in-chromium":"npm run compile && vscode-test-web --browserType=chromium --extensionDevelopmentPath=. ."},"devDependencies":{"@types/chai":"^4.2.12","@types/fs-extra":"^9.0.6","@types/mocha":"^2.2.48","@types/node":"^12.12.6","@types/sinon":"^10.0.6","@types/sinon-chai":"^3.2.5","@types/vscode":"^1.63.0","@types/webpack":"^4.4.10","@typescript-eslint/eslint-plugin":"^4.16.1","@typescript-eslint/parser":"^4.16.1","@vscode/test-web":"0.0.11","buffer":"^6.0.3","chai":"^4.2.0","crypto-browserify":"^3.12.0","eslint":"^7.6.0","eslint-config-prettier":"^6.11.0","eslint-plugin-prettier":"^3.1.4","glob":"^7.1.6","mocha":"^9.1.2","path-browserify":"^1.0.1","prettier":"2.2.1","process":"^0.11.10","rimraf":"^3.0.2","sinon":"^12.0.1","sinon-chai":"^3.7.0","ts-loader":"^9.2.5","ts-node":"^3.3.0","typescript":"4.4.3","umd-compat-loader":"^2.1.2","url":"^0.11.0","util":"^0.12.5","vscode-extension-tester":"^5.3.0","vscode-test":"^1.4.0","webpack":"^5.76.1","webpack-cli":"^5.0.1"},"dependencies":{"@redhat-developer/vscode-redhat-telemetry":"^0.6.0","fs-extra":"^9.1.0","request-light":"^0.5.7","vscode-languageclient":"7.0.0","vscode-nls":"^3.2.1","vscode-uri":"^2.0.3","whatwg-fetch":"^3.6.2","yaml-language-server":"1.14.0"}},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/redhat.vscode-yaml-1.14.0-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"2061917f-f76a-458a-8da9-f162de22b97e","publisherId":"eed56242-9699-4317-8bc7-e9f4b9bdd3ff","publisherDisplayName":"redhat","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691833368486,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"esbenp.prettier-vscode","uuid":"96fa4707-6983-4489-b7c5-d5ffdfdcce90"},"manifest":{"name":"prettier-vscode","displayName":"Prettier - Code formatter","description":"Code formatter using prettier","version":"10.1.0","publisher":"esbenp","author":"Prettier <@prettiercode>","galleryBanner":{"color":"#ffe04b","theme":"light"},"sponsor":{"url":"https://opencollective.com/prettier"},"homepage":"https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode","repository":{"type":"git","url":"https://github.com/prettier/prettier-vscode.git"},"license":"MIT","bugs":{"url":"https://github.com/prettier/prettier-vscode/issues"},"engines":{"vscode":"^1.60.0"},"keywords":["multi-root ready","prettier","formatter","javascript","handlebars","js","jsx","flow","typescript","ts","json","css","less","scss","styled-components","styled-jsx","markdown","md","commonmark","mdx","php","pug","ruby","swift","html","vue","ember","glimmer","angular","graphql","yaml","yml"],"categories":["Formatters"],"activationEvents":["onStartupFinished"],"icon":"icon.png","main":"./dist/extension","browser":"./dist/web-extension","scripts":{"clean":"node ./scripts/clean.js","lint":"eslint -c .eslintrc.js --ext .ts .","pretest":"yarn test-compile && cd test-fixtures/plugins && yarn install && cd ../plugins-pnpm && pnpm i && cd ../outdated && yarn install && cd ../module && yarn install && cd ../specific-version && yarn install && cd ../explicit-dep && yarn install && cd implicit-dep && yarn install && cd ../../v3 && yarn install && cd ../plugin-tailwindcss && npm i && cd ../v3-plugins && npm i && cd ../v3-plugin-override && yarn install","prettier":"prettier --write '**/*.{ts,json,md,hbs,yml,js}'","test-compile":"yarn clean && tsc -p ./ && yarn webpack && cp -r ./src/worker ./out","test":"node ./out/test/runTests.js","version":"node ./scripts/version.js && git add CHANGELOG.md","vscode:prepublish":"webpack --mode production","watch":"tsc --watch -p ./","webpack-dev":"webpack --mode development --watch","webpack":"webpack --mode development","postinstall":"husky install","chrome":"yarn webpack && vscode-test-web --browserType=chromium --extensionDevelopmentPath=. ."},"lint-staged":{"**/*.{ts,json,md,yml,hbs,js}":["prettier --write"],"src/**/*.ts":["eslint -c .eslintrc.js --ext .ts ."]},"devDependencies":{"@types/fs-extra":"^11.0.1","@types/glob":"^7.2.0","@types/mocha":"^10.0.0","@types/node":"16.11.17","@types/prettier":"^2.7.2","@types/resolve":"^1.20.1","@types/semver":"^7.3.13","@types/sinon":"^10.0.11","@types/tmp":"^0.2.3","@types/vscode":"^1.60.0","@typescript-eslint/eslint-plugin":"^5.45.0","@typescript-eslint/parser":"^5.45.0","@vscode/test-electron":"^2.1.3","@vscode/test-web":"^0.0.30","copy-webpack-plugin":"^11.0.0","eslint":"^8.31.0","eslint-config-prettier":"^8.5.0","fs-extra":"^11.1.1","glob":"^7.2.0","husky":"^8.0.3","lint-staged":"^13.2.3","mocha":"^10.0.0","path-browserify":"^1.0.1","process":"^0.11.10","sinon":"^15.2.0","tmp":"^0.2.1","ts-loader":"^9.4.2","typescript":"^4.6.3","util":"^0.12.4","vsce":"^2.15.0","vscode-nls-dev":"^4.0.4","webpack":"^5.75.0","webpack-cli":"^5.0.1"},"dependencies":{"find-up":"5.0.0","prettier":"^2.8.8","resolve":"^1.22.2","semver":"^7.5.2","vscode-nls":"^5.2.0"},"capabilities":{"virtualWorkspaces":true,"untrustedWorkspaces":{"supported":"limited","description":"Only the built-in version of Prettier will be used when running in untrusted mode.","restrictedConfigurations":["prettier.documentSelectors","prettier.resolveGlobalModules","prettier.ignorePath","prettier.prettierPath","prettier.configPath","prettier.useEditorConfig","prettier.resolveGlobalModules","prettier.withNodeModules"]}},"contributes":{"configuration":{"type":"object","title":"Prettier","properties":{"prettier.disableLanguages":{"type":"array","items":{"type":"string"},"deprecationMessage":"This feature is no longer supported. Instead, configure VS Code [default formatters](https://github.com/prettier/prettier-vscode#default-formatter) or use .prettierignore.","markdownDescription":"A list of languages IDs to disable this extension on.","scope":"window"},"prettier.documentSelectors":{"type":"array","items":{"type":"string"},"markdownDescription":"A list of [glob patterns](https://code.visualstudio.com/api/references/vscode-api#GlobPattern) to register Prettier formatter.","scope":"window"},"prettier.enable":{"type":"boolean","default":true,"markdownDescription":"Controls whether Prettier is enabled or not.","scope":"resource"},"prettier.requireConfig":{"type":"boolean","default":false,"markdownDescription":"Require a prettier configuration file to format. See [documentation for valid configuration files](https://prettier.io/docs/en/configuration.html).\n\n> _Note, untitled files will still be formatted using the VS Code prettier settings even when this setting is set._","scope":"resource"},"prettier.resolveGlobalModules":{"type":"boolean","default":false,"markdownDescription":"When enabled, this extension will attempt to use global npm or yarn modules if local modules cannot be resolved.\n> _This setting can have a negative performance impact, particularly on Windows when you have attached network drives. Only enable this if you must use global modules._","scope":"resource"},"prettier.withNodeModules":{"type":"boolean","default":false,"markdownDescription":"This extension will process files in `node_modules`.","scope":"resource"},"prettier.packageManager":{"scope":"resource","type":"string","enum":["npm","yarn","pnpm"],"default":"npm","deprecationMessage":"Package manager is now automatically detected by VS Code. This setting is no longer used.","markdownDescription":"The package manager you use to install node modules."},"prettier.useEditorConfig":{"type":"boolean","default":true,"markdownDescription":"Whether or not to take `.editorconfig` into account when parsing configuration. See the [`prettier.resolveConfig`](https://prettier.io/docs/en/api.html) docs for details.","scope":"resource"},"prettier.ignorePath":{"type":"string","default":".prettierignore","markdownDescription":"Path to a `.prettierignore` file.","scope":"resource"},"prettier.prettierPath":{"type":"string","markdownDescription":"Path to the `prettier` module, eg: `./node_modules/prettier`.","scope":"resource"},"prettier.configPath":{"type":"string","markdownDescription":"Path to the prettier configuration file.","scope":"resource"},"prettier.enableDebugLogs":{"type":"boolean","default":false,"markdownDescription":"Enable debug logs for troubleshooting.","scope":"resource"},"prettier.printWidth":{"type":"integer","default":80,"markdownDescription":"Fit code within this line limit.","scope":"resource"},"prettier.tabWidth":{"type":"integer","default":2,"markdownDescription":"Number of spaces it should use per tab.","scope":"resource"},"prettier.singleQuote":{"type":"boolean","default":false,"markdownDescription":"Use single instead of double quotes.","scope":"resource"},"prettier.trailingComma":{"type":"string","enum":["none","es5","all"],"default":"es5","markdownDescription":"Controls the printing of trailing commas wherever possible. \nValid options:\n- `none` - No trailing commas\n- `es5` - Trailing commas where valid in ES5 (objects, arrays, etc)\n- `all` - Trailing commas wherever possible (function arguments)","scope":"resource"},"prettier.bracketSpacing":{"type":"boolean","default":true,"markdownDescription":"Controls the printing of spaces inside object literals.","scope":"resource"},"prettier.singleAttributePerLine":{"type":"boolean","default":false,"markdownDescription":"Enforces single attribute per line in HTML, JSX, Vue and Angular.","scope":"resource"},"prettier.bracketSameLine":{"type":"boolean","default":false,"markdownDescription":"Puts the `>` of a multi-line HTML (HTML, JSX, Vue, Angular) element at the end of the last line instead of being alone on the next line (does not apply to self closing elements).","scope":"resource"},"prettier.jsxBracketSameLine":{"type":"boolean","default":false,"markdownDescription":"Puts the `>` of a multi-line jsx element at the end of the last line instead of being alone on the next line (does not apply to self closing elements).","deprecationMessage":"This option has been deprecated in v2.4.0, use `bracketSameLine` instead.","scope":"resource"},"prettier.semi":{"type":"boolean","default":true,"markdownDescription":"Whether to add a semicolon at the end of every line.","scope":"resource"},"prettier.requirePragma":{"type":"boolean","default":false,"markdownDescription":"Prettier can restrict itself to only format files that contain a special comment, called a pragma, at the top of the file. This is very useful when gradually transitioning large, unformatted codebases to prettier.","scope":"resource"},"prettier.insertPragma":{"type":"boolean","default":false,"markdownDescription":"Prettier can insert a special `@format` marker at the top of files specifying that the file has been formatted with prettier. This works well when used in tandem with the `--require-pragma` option. If there is already a docblock at the top of the file then this option will add a newline to it with the `@format` marker.","scope":"resource"},"prettier.useTabs":{"type":"boolean","default":false,"markdownDescription":"Indent lines with tabs.","scope":"resource"},"prettier.proseWrap":{"type":"string","enum":["preserve","always","never"],"default":"preserve","markdownDescription":"(Markdown) wrap prose over multiple lines.","scope":"resource"},"prettier.arrowParens":{"type":"string","enum":["avoid","always"],"default":"always","markdownDescription":"Include parentheses around a sole arrow function parameter.","scope":"resource"},"prettier.jsxSingleQuote":{"type":"boolean","default":false,"markdownDescription":"Use single quotes instead of double quotes in JSX.","scope":"resource"},"prettier.htmlWhitespaceSensitivity":{"type":"string","enum":["css","strict","ignore"],"default":"css","markdownDescription":"Specify the global [whitespace sensitivity](https://prettier.io/blog/2018/11/07/1.15.0.html#whitespace-sensitive-formatting) for HTML files.\nValid options:\n- `css` - Respect the default value of CSS `display` property.\n- `strict` - Whitespaces are considered sensitive.\n- `ignore` - Whitespaces are considered insensitive.","scope":"resource"},"prettier.vueIndentScriptAndStyle":{"type":"boolean","default":false,"markdownDescription":"Whether or not to indent the code inside `<script>` and `<style>` tags in Vue SFC files.","scope":"resource"},"prettier.endOfLine":{"type":"string","enum":["auto","lf","crlf","cr"],"default":"lf","markdownDescription":"Specify the end of line used by prettier.","scope":"resource"},"prettier.quoteProps":{"type":"string","enum":["as-needed","consistent","preserve"],"default":"as-needed","markdownDescription":"Change when properties in objects are quoted.\nValid options:\n- `\"as-needed\"` - Only add quotes around object properties where required.\n- `\"consistent\"` - If at least one property in an object requires quotes, quote all properties.\n- `\"preserve\"` - Respect the input use of quotes in object properties.","scope":"resource"},"prettier.embeddedLanguageFormatting":{"type":"string","enum":["auto","off"],"default":"auto","markdownDescription":"Control whether Prettier formats quoted code embedded in the file.","scope":"resource"}}},"jsonValidation":[{"fileMatch":".prettierrc","url":"https://json.schemastore.org/prettierrc"},{"fileMatch":".prettierrc.json","url":"https://json.schemastore.org/prettierrc"},{"fileMatch":"package.json","url":"./package-json-schema.json"}],"languages":[{"id":"json","filenames":[".prettierrc"]},{"id":"ignore","filenames":[".prettierignore"]},{"id":"graphql","extensions":[".graphql"]},{"id":"vue","extensions":[".vue"]},{"id":"handlebars","extensions":[".hbs",".handlebars"]}],"commands":[{"command":"prettier.createConfigFile","title":"Prettier: Create Configuration File"},{"command":"prettier.forceFormatDocument","title":"Format Document (Forced)","when":"editorFocus"}]}},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/esbenp.prettier-vscode-10.1.0-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"96fa4707-6983-4489-b7c5-d5ffdfdcce90","publisherId":"d16f4e39-2ffb-44e3-9c0d-79d873570e3a","publisherDisplayName":"esbenp","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691833371284,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"golang.go","uuid":"d6f6cfea-4b6f-41f4-b571-6ad2ab7918da"},"manifest":{"name":"go","displayName":"Go","version":"0.39.0","publisher":"golang","description":"Rich Go language support for Visual Studio Code","author":{"name":"Go Team at Google"},"license":"MIT","icon":"media/go-logo-blue.png","categories":["Programming Languages","Snippets","Linters","Debuggers","Formatters","Testing"],"galleryBanner":{"color":"#F2F2F2","theme":"light"},"private":true,"repository":{"type":"git","url":"https://github.com/golang/vscode-go"},"bugs":{"url":"https://github.com/golang/vscode-go/issues"},"keywords":["multi-root ready","golang","gopls"],"scripts":{"clean":"rm -rf ./dist/* && rm *.vsix","package":"vsce package","vscode:prepublish":"npm run compile","bundle":"esbuild src/goMain.ts debugAdapter=src/debugAdapter/goDebug.ts --bundle --outdir=dist --external:vscode --format=cjs --platform=node","bundle-dev":"npm run bundle -- --sourcemap","bundle-watch":"npm run bundle -- --sourcemap --watch","test-compile":"tsc -p ./","compile":"npm run bundle","watch":"tsc -watch -p ./","test":"npm run test-compile && node ./out/test/runTest.js","lint":"gts lint src test","fix-lint":"gts fix src test","unit-test":"npm run test-compile && node ./node_modules/mocha/bin/_mocha -u tdd --timeout 5000 --colors ./out/test/unit","format":"prettier --write \"src/**/*.ts\" \"test/**/*.ts\""},"extensionDependencies":[],"dependencies":{"diff":"4.0.2","glob":"7.1.7","json-rpc2":"2.0.0","moment":"2.29.4","semver":"7.3.4","tree-kill":"file:third_party/tree-kill","vscode-debugadapter":"1.45.0","vscode-debugprotocol":"1.45.0","vscode-languageclient":"8.1.0","vscode-languageserver-protocol":"3.17.3","vscode-uri":"3.0.3","web-request":"1.0.7"},"devDependencies":{"@types/adm-zip":"0.4.33","@types/fs-extra":"8.1.1","@types/glob":"7.1.3","@types/mocha":"7.0.2","@types/node":"13.13.46","@types/semver":"7.3.4","@types/sinon":"9.0.11","@types/vscode":"1.67.0","@vscode/debugadapter-testsupport":"1.58.0","@vscode/test-electron":"2.2.0","@vscode/vsce":"2.19.0","adm-zip":"0.4.16","esbuild":"0.17.10","fs-extra":"9.1.0","get-port":"5.1.1","gts":"4.0.0","mocha":"9.2.2","prettier":"2.2.1","sinon":"9.2.4","typescript":"4.6.4","yarn":"1.22.10"},"engines":{"vscode":"^1.67.0","node":">=12.0.0"},"activationEvents":["onLanguage:go","workspaceContains:*.go","workspaceContains:*/*.go","workspaceContains:*/*/*.go","onCommand:go.gopath","onCommand:go.goroot","onCommand:go.tools.install","onCommand:go.locate.tools","onCommand:go.show.commands","onCommand:go.run.modinit","onDebugInitialConfigurations","onDebugResolve:go","onWebviewPanel:welcomeGo","onView:go.test.profile"],"main":"./dist/goMain.js","capabilities":{"virtualWorkspaces":false,"untrustedWorkspaces":{"supported":"limited","restrictedConfigurations":["go.alternateTools","go.gopath","go.goroot","go.inferGopath","go.toolsGopath","go.toolsEnvVars","go.toolsManagement.go"]}},"contributes":{"languages":[{"id":"go","extensions":[".go"],"aliases":["Go"]},{"id":"go.mod","filenames":["go.mod","gopls.mod"],"aliases":["Go Module File"],"configuration":"./languages/go.mod.language-configuration.json"},{"id":"go.work","filenames":["go.work"],"aliases":["Go Work File"],"configuration":"./languages/go.mod.language-configuration.json"},{"id":"go.sum","filenames":["go.sum"],"aliases":["Go Checksum File"]},{"id":"gotmpl","extensions":[".tmpl",".gotmpl"],"aliases":["Go Template File"]},{"id":"govulncheck","aliases":["Govulncheck Output"]}],"grammars":[{"language":"go.mod","scopeName":"go.mod","path":"./syntaxes/go.mod.tmGrammar.json"},{"language":"go.work","scopeName":"go.mod","path":"./syntaxes/go.mod.tmGrammar.json"},{"language":"go.sum","scopeName":"go.sum","path":"./syntaxes/go.sum.tmGrammar.json"},{"language":"govulncheck","scopeName":"govulncheck","path":"./syntaxes/govulncheck.tmGrammar.json"}],"snippets":[{"language":"go","path":"./snippets/go.json"}],"configurationDefaults":{"[go]":{"editor.insertSpaces":false,"editor.formatOnSave":true,"editor.codeActionsOnSave":{"source.organizeImports":true},"editor.suggest.snippetsPreventQuickSuggestions":false}},"commands":[{"command":"go.gopath","title":"Go: Current GOPATH","description":"See the currently set GOPATH."},{"command":"go.goroot","title":"Go: Current GOROOT","description":"See the currently set GOROOT."},{"command":"go.locate.tools","title":"Go: Locate Configured Go Tools","description":"List all the Go tools being used by this extension along with their locations."},{"command":"go.test.cursor","title":"Go: Test Function At Cursor","description":"Runs a unit test at the cursor."},{"command":"go.test.cursorOrPrevious","title":"Go: Test Function At Cursor or Test Previous","description":"Runs a unit test at the cursor if one is found, otherwise re-runs the last executed test."},{"command":"go.subtest.cursor","title":"Go: Subtest At Cursor","description":"Runs a sub test at the cursor."},{"command":"go.debug.subtest.cursor","title":"Go: Debug Subtest At Cursor","description":"Debug a sub test at the cursor."},{"command":"go.benchmark.cursor","title":"Go: Benchmark Function At Cursor","description":"Runs a benchmark at the cursor."},{"command":"go.debug.cursor","title":"Go: Debug Test At Cursor","description":"Debug test at the cursor."},{"command":"go.test.file","title":"Go: Test File","description":"Runs all unit tests in the current file."},{"command":"go.test.package","title":"Go: Test Package","description":"Runs all unit tests in the package of the current file."},{"command":"go.test.refresh","title":"Go Test: Refresh","description":"Refresh a test in the test explorer. Only available as a context menu option in the test explorer.","category":"Test","icon":"$(refresh)"},{"command":"go.test.showProfiles","title":"Go Test: Show Last Profile","description":"Show last captured profile","category":"Test"},{"command":"go.test.captureProfile","title":"Go Test: Profile","description":"Run a test and capture a profile","category":"Test"},{"command":"go.test.deleteProfile","title":"Go Test: Delete Profile","shortTitle":"Delete","description":"Delete selected profile","category":"Test"},{"command":"go.test.showProfileFile","title":"Go: Show pprof file","description":"Internal use. Open a pprof profile file."},{"command":"go.benchmark.package","title":"Go: Benchmark Package","description":"Runs all benchmarks in the package of the current file."},{"command":"go.benchmark.file","title":"Go: Benchmark File","description":"Runs all benchmarks in the current file."},{"command":"go.test.workspace","title":"Go: Test All Packages In Workspace","description":"Runs all unit tests from all packages in the current workspace."},{"command":"go.test.previous","title":"Go: Test Previous","description":"Re-runs the last executed test."},{"command":"go.debug.previous","title":"Go: Debug Previous","description":"Re-runs the last debugged test run through a codelens or \"Go: Debug Test at Cursor\" command."},{"command":"go.test.coverage","title":"Go: Toggle Test Coverage In Current Package","description":"Displays test coverage in the current package."},{"command":"go.test.generate.package","title":"Go: Generate Unit Tests For Package","description":"Generates unit tests for the current package"},{"command":"go.test.generate.file","title":"Go: Generate Unit Tests For File","description":"Generates unit tests for the current file"},{"command":"go.test.generate.function","title":"Go: Generate Unit Tests For Function","description":"Generates unit tests for the selected function in the current file"},{"command":"go.impl.cursor","title":"Go: Generate Interface Stubs","description":"Generates method stub for implementing the provided interface and inserts at the cursor."},{"command":"go.extractServerChannel","title":"Go: Extract Language Server Logs To Editor","description":"Extract logs in the `gopls (server)` output channel to the editor."},{"command":"go.welcome","title":"Go: Welcome","description":"Open the welcome page for the Go extension."},{"command":"go.toggle.gc_details","title":"Go: Toggle gc details","description":"Toggle the display of compiler optimization choices"},{"command":"go.import.add","title":"Go: Add Import","description":"Add an import declaration"},{"command":"go.add.package.workspace","title":"Go: Add Package to Workspace","description":"Add a package from the imports list to the workspace."},{"command":"go.tools.install","title":"Go: Install/Update Tools","description":"install/update the required go packages"},{"command":"go.toggle.test.file","title":"Go: Toggle Test File","description":"Toggles between file in current active editor and the corresponding test file."},{"command":"go.vulncheck.toggle","title":"Go: Toggle Vulncheck","description":"Toggle the display of vulnerability analysis in dependencies."},{"command":"go.add.tags","title":"Go: Add Tags To Struct Fields","description":"Add tags configured in go.addTags setting to selected struct using gomodifytags"},{"command":"go.remove.tags","title":"Go: Remove Tags From Struct Fields","description":"Remove tags configured in go.removeTags setting from selected struct using gomodifytags"},{"command":"go.fill.struct","title":"Go: Fill struct","description":"Fill a struct literal with default values"},{"command":"go.show.commands","title":"Go: Show All Commands...","description":"Shows all commands from the Go extension in the quick pick"},{"command":"go.browse.packages","title":"Go: Browse Packages","description":"Browse packages and Go files inside the packages."},{"command":"go.get.package","title":"Go: Get Package","description":"Run `go get -v` on the package on the current line."},{"command":"go.playground","title":"Go: Run on Go Playground","description":"Upload the current selection or file to the Go Playground"},{"command":"go.lint.package","title":"Go: Lint Current Package","description":"Run linter in the package of the current file."},{"command":"go.lint.workspace","title":"Go: Lint Workspace","description":"Run linter in the current workspace."},{"command":"go.vet.package","title":"Go: Vet Current Package","description":"Run go vet in the package of the current file."},{"command":"go.vet.workspace","title":"Go: Vet Workspace","description":"Run go vet in the current workspace."},{"command":"go.build.package","title":"Go: Build Current Package","description":"Build the package of the current file."},{"command":"go.build.workspace","title":"Go: Build Workspace","description":"Build the current workspace."},{"command":"go.install.package","title":"Go: Install Current Package","description":"Install the current package."},{"command":"go.run.modinit","title":"Go: Initialize go.mod","description":"Run `go mod init` in the workspace folder."},{"command":"go.test.cancel","title":"Go: Cancel Running Tests","description":"Cancels running tests."},{"command":"go.apply.coverprofile","title":"Go: Apply Cover Profile","description":"Applies existing cover profile."},{"command":"go.godoctor.extract","title":"Go: Extract to function","description":"Extract to function using godoctor."},{"command":"go.godoctor.var","title":"Go: Extract to variable","description":"Extract to variable using godoctor."},{"command":"go.languageserver.restart","title":"Go: Restart Language Server","description":"Restart the running instance of the language server"},{"command":"go.environment.choose","title":"Go: Choose Go Environment","description":"Choose a different Go version or binary for this project. (WIP)"},{"command":"go.survey.showConfig","title":"Go: Show Survey Configuration","description":"Show the current Go survey configuration"},{"command":"go.survey.resetConfig","title":"Go: Reset Survey Configuration","description":"Reset the current Go survey configuration history"},{"command":"go.workspace.resetState","title":"Go: Reset Workspace State","description":"Reset keys in workspace state to undefined."},{"command":"go.global.resetState","title":"Go: Reset Global State","description":"Reset keys in global state to undefined."},{"command":"go.explorer.refresh","title":"Go Explorer: Refresh","description":"Refresh the Go explorer. Only available as a menu item in the explorer.","category":"Explorer","icon":"$(refresh)"},{"command":"go.explorer.open","title":"Go Explorer: Open File","description":"Open a file from the Go explorer. Only available as a menu item in the explorer.","category":"Explorer","icon":"$(go-to-file)"},{"command":"go.workspace.editEnv","title":"Go: Edit Workspace Env","description":"Edit the Go Env for the active workspace.","icon":"$(settings-edit)","enablement":"workspaceFolderCount > 0"},{"command":"go.workspace.resetEnv","title":"Go: Reset Workspace Env","description":"Reset the Go Env for the active workspace.","icon":"$(settings-remove)","enablement":"workspaceFolderCount > 0"}],"breakpoints":[{"language":"go"}],"debuggers":[{"type":"go","label":"Go","program":"./dist/debugAdapter.js","runtime":"node","languages":["go"],"variables":{"pickProcess":"go.debug.pickProcess","pickGoProcess":"go.debug.pickGoProcess"},"configurationSnippets":[{"label":"Go: Launch package","description":"Debug/test the package in the program attribute","body":{"name":"${2:Launch Package}","type":"go","request":"launch","mode":"auto","program":"^\"\\${fileDirname}${1:}\""}},{"label":"Go: Launch file","description":"Debug the file in the program attribute","body":{"name":"${2:Launch file}","type":"go","request":"launch","mode":"debug","program":"^\"${1:\\${file\\}}\""}},{"label":"Go: Launch test function","description":"Debug the test function in the args, ensure program attributes points to right package","body":{"name":"${3:Launch test function}","type":"go","request":"launch","mode":"test","program":"^\"\\${workspaceFolder}${1:}\"","args":["-test.run","${2:MyTestFunction}"]}},{"label":"Go: Attach to local process","description":"Attach to an existing process by process ID","body":{"name":"${1:Attach to Process}","type":"go","request":"attach","mode":"local","processId":0}},{"label":"Go: Connect to server","description":"Connect to a remote headless debug server","body":{"name":"${1:Connect to server}","type":"go","request":"attach","mode":"remote","remotePath":"^\"\\${workspaceFolder}\"","port":2345,"host":"127.0.0.1"}}],"configurationAttributes":{"launch":{"required":[],"properties":{"debugAdapter":{"enum":["legacy","dlv-dap"],"description":"Select which debug adapter to use with this launch configuration.","default":"dlv-dap"},"program":{"type":"string","description":"Path to the program folder (or any go file within that folder) when in `debug` or `test` mode, and to the pre-built binary file to debug in `exec` mode. If it is not an absolute path, the extension interpretes it as a workspace relative path.","default":"${workspaceFolder}"},"mode":{"enum":["auto","debug","test","exec","replay","core"],"description":"One of `auto`, `debug`, `test`, `exec`, `replay`, `core`. In `auto` mode, the extension will choose either `debug` or `test` depending on active editor window.","default":"auto"},"traceDirPath":{"type":"string","description":"Directory in which the record trace is located or to be created for a new output trace. For use on 'replay' mode only","default":""},"coreFilePath":{"type":"string","description":"Path to the core dump file to open. For use on 'core' mode only","default":""},"stopOnEntry":{"type":"boolean","description":"Automatically stop program after launch.","default":false},"args":{"type":["array","string"],"description":"Command line arguments passed to the debugged program.","items":{"type":"string"},"default":[]},"showLog":{"type":"boolean","description":"Show log output from the delve debugger. Maps to dlv's `--log` flag.","default":false},"cwd":{"type":"string","description":"Workspace relative or absolute path to the working directory of the program being debugged if a non-empty value is specified. The `program` folder is used as the working directory if `cwd` is omitted or empty.","default":""},"env":{"type":"object","description":"Environment variables passed to the launched debuggee program. Format as string key:value pairs. Merged with `envFile` and `go.toolsEnvVars` with precedence `env` > `envFile` > `go.toolsEnvVars`.","default":{}},"substitutePath":{"type":"array","items":{"type":"object","properties":{"from":{"type":"string","description":"The absolute local path to be replaced when passing paths to the debugger.","default":""},"to":{"type":"string","description":"The absolute remote path to be replaced when passing paths back to the client.","default":""}}},"description":"An array of mappings from a local path (editor) to the remote path (debugee). This setting is useful when working in a file system with symbolic links, running remote debugging, or debugging an executable compiled externally. The debug adapter will replace the local path with the remote path in all of the calls.","default":[]},"buildFlags":{"type":"string","description":"Build flags, to be passed to the Go compiler. Maps to dlv's `--build-flags` flag.","default":""},"dlvFlags":{"type":"array","description":"Extra flags for `dlv`. See `dlv help` for the full list of supported. Flags such as `--log-output`, `--log`, `--log-dest`, `--api-version`, `--output`, `--backend` already have corresponding properties in the debug configuration, and flags such as `--listen` and `--headless` are used internally. If they are specified in `dlvFlags`, they may be ignored or cause an error.","items":{"type":"string"},"default":[]},"port":{"type":"number","description":"When applied to remote-attach configurations, will look for \"dlv ... --headless --listen=<host>:<port>\" server started externally. In dlv-dap mode this will apply to all other configurations as well. The extension will try to connect to an external server started with \"dlv dap --listen=<host>:<port>\" to ask it to launch/attach to the target process.","default":2345},"host":{"type":"string","description":"When applied to remote-attach configurations, will look for \"dlv ... --headless --listen=<host>:<port>\" server started externally. In dlv-dap mode this will apply to all other configurations as well. The extension will try to connect to an external server started with \"dlv dap --listen=<host>:<port>\" to ask it to launch/attach to the target process.","default":"127.0.0.1"},"trace":{"type":"string","enum":["verbose","trace","log","info","warn","error"],"default":"error","description":"Various levels of logging shown in the debug console & 'Go Debug' output channel. When using the `legacy` debug adapter, the logs will also be written to a file if it is set to a value other than `error`."},"envFile":{"type":["string","array"],"items":{"type":"string"},"description":"Absolute path to a file containing environment variable definitions, formatted as string key=value pairs. Multiple files can be specified by provided an array of absolute paths. Merged with `env` and `go.toolsEnvVars` with precedence `env` > `envFile` > `go.toolsEnvVars`. ","default":""},"backend":{"type":"string","enum":["default","native","lldb","rr"],"description":"Backend used by delve. Maps to `dlv`'s `--backend` flag."},"output":{"type":"string","description":"Output path for the binary of the debugee.","default":"debug"},"logOutput":{"type":"string","enum":["debugger","gdbwire","lldbout","debuglineerr","rpc","dap"],"description":"Comma separated list of components that should produce debug output. Maps to dlv's `--log-output` flag. Check `dlv log` for details.","default":"debugger"},"logDest":{"type":"string","description":"dlv's `--log-dest` flag. See `dlv log` for details. Number argument is not allowed. Supported only in `dlv-dap` mode, and on Linux and Mac OS."},"dlvLoadConfig":{"type":"object","properties":{"followPointers":{"type":"boolean","description":"FollowPointers requests pointers to be automatically dereferenced.","default":true},"maxVariableRecurse":{"type":"number","description":"MaxVariableRecurse is how far to recurse when evaluating nested types.","default":1},"maxStringLen":{"type":"number","description":"MaxStringLen is the maximum number of bytes read from a string.","default":64},"maxArrayValues":{"type":"number","description":"MaxArrayValues is the maximum number of elements read from an array, a slice or a map.","default":64},"maxStructFields":{"type":"number","description":"MaxStructFields is the maximum number of fields read from a struct, -1 will read all fields.","default":-1}},"description":"LoadConfig describes to delve, how to load values from target's memory. Not applicable when using `dlv-dap` mode.","default":{"followPointers":true,"maxVariableRecurse":1,"maxStringLen":64,"maxArrayValues":64,"maxStructFields":-1}},"apiVersion":{"type":"number","enum":[1,2],"description":"Delve Api Version to use. Default value is 2. Maps to dlv's `--api-version` flag. Not applicable when using `dlv-dap` mode.","default":2},"stackTraceDepth":{"type":"number","description":"Maximum depth of stack trace collected from Delve.","default":50},"showGlobalVariables":{"type":"boolean","default":false,"description":"Boolean value to indicate whether global package variables should be shown in the variables pane or not."},"showRegisters":{"type":"boolean","default":false,"description":"Boolean value to indicate whether register variables should be shown in the variables pane or not."},"hideSystemGoroutines":{"type":"boolean","default":false,"description":"Boolean value to indicate whether system goroutines should be hidden from call stack view."},"console":{"default":"internalConsole","description":"(Experimental) Where to launch the debugger and the debug target: internal console, integrated terminal, or external terminal. It is ignored in remote debugging.","enum":["internalConsole","integratedTerminal","externalTerminal"]},"asRoot":{"default":false,"description":"(Experimental) Debug with elevated permissions (on Unix). It requires `integrated` or `external` console modes and is ignored in remote debugging.","type":"boolean"}}},"attach":{"required":[],"properties":{"debugAdapter":{"enum":["legacy","dlv-dap"],"description":"Select which debug adapter to use with this launch configuration.","default":"dlv-dap"},"processId":{"anyOf":[{"enum":["${command:pickProcess}","${command:pickGoProcess}"],"description":"Use process picker to select a process to attach, or Process ID as integer."},{"type":"string","description":"Attach to a process by name. If more than one process matches the name, use the process picker to select a process."},{"type":"number","description":"The numeric ID of the process to be debugged. If 0, use the process picker to select a process."}],"default":0},"mode":{"enum":["local","remote"],"description":"Indicates local or remote debugging. Local is similar to the `dlv attach` command, remote - to `dlv connect`","default":"local"},"stopOnEntry":{"type":"boolean","description":"Automatically stop program after attach.","default":false},"dlvFlags":{"type":"array","description":"Extra flags for `dlv`. See `dlv help` for the full list of supported. Flags such as `--log-output`, `--log`, `--log-dest`, `--api-version`, `--output`, `--backend` already have corresponding properties in the debug configuration, and flags such as `--listen` and `--headless` are used internally. If they are specified in `dlvFlags`, they may be ignored or cause an error.","items":{"type":"string"},"default":[]},"showLog":{"type":"boolean","description":"Show log output from the delve debugger. Maps to dlv's `--log` flag.","default":false},"cwd":{"type":"string","description":"Workspace relative or absolute path to the working directory of the program being debugged. Default is the current workspace.","default":"${workspaceFolder}"},"remotePath":{"type":"string","description":"The path to the source code on the remote machine, when the remote path is different from the local machine. If specified, becomes the first entry in substitutePath. Not supported with `dlv-dap`.","markdownDeprecationMessage":"Use `substitutePath` instead.","default":""},"port":{"type":"number","description":"When applied to remote-attach configurations, will look for \"dlv ... --headless --listen=<host>:<port>\" server started externally. In dlv-dap mode, this will apply to all other configurations as well. The extension will try to connect to an external server started with \"dlv dap --listen=<host>:<port>\" to ask it to launch/attach to the target process.","default":2345},"host":{"type":"string","description":"When applied to remote-attach configurations, will look for \"dlv ... --headless --listen=<host>:<port>\" server started externally. In dlv-dap mode, this will apply to all other configurations as well. The extension will try to connect to an external server started with \"dlv dap --listen=<host>:<port>\" to ask it to launch/attach to the target process.","default":"127.0.0.1"},"substitutePath":{"type":"array","items":{"type":"object","properties":{"from":{"type":"string","description":"The absolute local path to be replaced when passing paths to the debugger.","default":""},"to":{"type":"string","description":"The absolute remote path to be replaced when passing paths back to the client.","default":""}}},"description":"An array of mappings from a local path (editor) to the remote path (debugee). This setting is useful when working in a file system with symbolic links, running remote debugging, or debugging an executable compiled externally. The debug adapter will replace the local path with the remote path in all of the calls. Overriden by `remotePath`.","default":[]},"trace":{"type":"string","enum":["verbose","trace","log","info","warn","error"],"default":"error","description":"Various levels of logging shown in the debug console & 'Go Debug' output channel. When using the `legacy` debug adapter, the logs will also be written to a file if it is set to a value other than `error`."},"backend":{"type":"string","enum":["default","native","lldb","rr"],"description":"Backend used by delve. Maps to `dlv`'s `--backend` flag."},"logOutput":{"type":"string","enum":["debugger","gdbwire","lldbout","debuglineerr","rpc","dap"],"description":"Comma separated list of components that should produce debug output. Maps to dlv's `--log-output` flag. Check `dlv log` for details.","default":"debugger"},"logDest":{"type":"string","description":"dlv's `--log-dest` flag. See `dlv log` for details. Number argument is not allowed. Supported only in `dlv-dap` mode and on Linux and Mac OS."},"dlvLoadConfig":{"type":"object","properties":{"followPointers":{"type":"boolean","description":"FollowPointers requests pointers to be automatically dereferenced","default":true},"maxVariableRecurse":{"type":"number","description":"MaxVariableRecurse is how far to recurse when evaluating nested types","default":1},"maxStringLen":{"type":"number","description":"MaxStringLen is the maximum number of bytes read from a string","default":64},"maxArrayValues":{"type":"number","description":"MaxArrayValues is the maximum number of elements read from an array, a slice or a map","default":64},"maxStructFields":{"type":"number","description":"MaxStructFields is the maximum number of fields read from a struct, -1 will read all fields","default":-1}},"description":"LoadConfig describes to delve, how to load values from target's memory. Not applicable when using `dlv-dap` mode.","default":{"followPointers":true,"maxVariableRecurse":1,"maxStringLen":64,"maxArrayValues":64,"maxStructFields":-1}},"apiVersion":{"type":"number","enum":[1,2],"description":"Delve Api Version to use. Default value is 2. Not applicable when using `dlv-dap` mode.","default":2},"stackTraceDepth":{"type":"number","description":"Maximum depth of stack trace collected from Delve.","default":50},"showGlobalVariables":{"type":"boolean","default":false,"description":"Boolean value to indicate whether global package variables should be shown in the variables pane or not."},"showRegisters":{"type":"boolean","default":false,"description":"Boolean value to indicate whether register variables should be shown in the variables pane or not."},"hideSystemGoroutines":{"type":"boolean","default":false,"description":"Boolean value to indicate whether system goroutines should be hidden from call stack view."},"console":{"default":"internalConsole","description":"(Experimental) Where to launch the debugger: internal console, integrated terminal, or external terminal. This does not affect tty of the running program. It is ignored in remote debugging.","enum":["internalConsole","integratedTerminal","externalTerminal"]},"asRoot":{"default":false,"description":"(Experimental) Debug with elevated permissions (on Unix). This requires `integrated` or `external` console modes and is ignored in remote debugging.","type":"boolean"}}}}}],"configuration":{"type":"object","title":"Go","properties":{"go.showWelcome":{"type":"boolean","default":true,"description":"Specifies whether to show the Welcome experience on first install"},"go.buildOnSave":{"type":"string","enum":["package","workspace","off"],"default":"package","description":"Compiles code on file save using 'go build' or 'go test -c'. Not applicable when using the language server.","scope":"resource","markdownDeprecationMessage":"Enable the Go language server (`#go.useLanguageServer#`) to diagnose compile errors."},"go.buildFlags":{"type":"array","items":{"type":"string"},"default":[],"description":"Flags to `go build`/`go test` used during build-on-save or running tests. (e.g. [\"-ldflags='-s'\"]) This is propagated to the language server if `gopls.build.buildFlags` is not specified.","scope":"resource"},"go.buildTags":{"type":"string","default":"","description":"The Go build tags to use for all commands, that support a `-tags '...'` argument. When running tests, go.testTags will be used instead if it was set. This is propagated to the language server if `gopls.build.buildFlags` is not specified.","scope":"resource"},"go.testTags":{"type":["string","null"],"default":null,"description":"The Go build tags to use for when running tests. If null, then buildTags will be used.","scope":"resource"},"go.disableConcurrentTests":{"type":"boolean","default":false,"description":"If true, tests will not run concurrently. When a new test run is started, the previous will be cancelled.","scope":"resource"},"go.installDependenciesWhenBuilding":{"type":"boolean","default":false,"description":"If true, then `-i` flag will be passed to `go build` everytime the code is compiled. Since Go 1.10, setting this may be unnecessary unless you are in GOPATH mode and do not use the language server.","scope":"resource"},"go.lintOnSave":{"type":"string","enum":["file","package","workspace","off"],"enumDescriptions":["lint the current file on file saving","lint the current package on file saving","lint all the packages in the current workspace root folder on file saving","do not run lint automatically"],"default":"package","description":"Lints code on file save using the configured Lint tool. Options are 'file', 'package', 'workspace' or 'off'.","scope":"resource"},"go.lintTool":{"type":"string","default":"staticcheck","description":"Specifies Lint tool name.","scope":"resource","enum":["staticcheck","golint","golangci-lint","revive"]},"go.lintFlags":{"type":"array","items":{"type":"string"},"default":[],"description":"Flags to pass to Lint tool (e.g. [\"-min_confidence=.8\"])","scope":"resource"},"go.vetOnSave":{"type":"string","enum":["package","workspace","off"],"enumDescriptions":["vet the current package on file saving","vet all the packages in the current workspace root folder on file saving","do not run vet automatically"],"default":"package","description":"Vets code on file save using 'go tool vet'. Not applicable when using the language server's diagnostics. See 'go.languageServerExperimentalFeatures.diagnostics' setting.","scope":"resource"},"go.vetFlags":{"type":"array","items":{"type":"string"},"default":[],"description":"Flags to pass to `go tool vet` (e.g. [\"-all\", \"-shadow\"])","scope":"resource"},"go.formatTool":{"type":"string","default":"default","markdownDescription":"When the language server is enabled and one of `default`/`gofmt`/`goimports`/`gofumpt` is chosen, the language server will handle formatting. If `custom` tool is selected, the extension will use the `customFormatter` tool in the `#go.alternateTools#` section.","scope":"resource","enum":["default","gofmt","goimports","goformat","gofumpt","custom"],"markdownEnumDescriptions":["If the language server is enabled, format via the language server, which already supports gofmt, goimports, goreturns, and gofumpt. Otherwise, goimports.","Formats the file according to the standard Go style. (not applicable when the language server is enabled)","Organizes imports and formats the file with gofmt. (not applicable when the language server is enabled)","Configurable gofmt, see https://github.com/mbenkmann/goformat.","Stricter version of gofmt, see https://github.com/mvdan/gofumpt. . Use `#gopls.format.gofumpt#` instead)","Formats using the custom tool specified as `customFormatter` in the `#go.alternateTools#` setting. The tool should take the input as STDIN and output the formatted code as STDOUT."]},"go.formatFlags":{"type":"array","items":{"type":"string"},"default":[],"description":"Flags to pass to format tool (e.g. [\"-s\"]). Not applicable when using the language server.","scope":"resource"},"go.inferGopath":{"type":"boolean","default":false,"description":"Infer GOPATH from the workspace root. This is ignored when using Go Modules.","scope":"resource"},"go.gopath":{"type":["string","null"],"default":null,"description":"Specify GOPATH here to override the one that is set as environment variable. The inferred GOPATH from workspace root overrides this, if go.inferGopath is set to true.","scope":"machine-overridable"},"go.toolsGopath":{"type":["string","null"],"default":null,"description":"Location to install the Go tools that the extension depends on if you don't want them in your GOPATH.","scope":"machine-overridable"},"go.goroot":{"type":["string","null"],"default":null,"description":"Specifies the GOROOT to use when no environment variable is set.","scope":"machine-overridable"},"go.testOnSave":{"type":"boolean","default":false,"description":"Run 'go test' on save for current package. It is not advised to set this to `true` when you have Auto Save enabled.","scope":"resource"},"go.coverOnSave":{"type":"boolean","default":false,"description":"If true, runs 'go test -coverprofile' on save and shows test coverage.","scope":"resource"},"go.coverOnTestPackage":{"type":"boolean","default":true,"description":"If true, shows test coverage when Go: Test Package command is run."},"go.coverOnSingleTest":{"type":"boolean","default":false,"description":"If true, shows test coverage when Go: Test Function at cursor command is run."},"go.coverOnSingleTestFile":{"type":"boolean","default":false,"description":"If true, shows test coverage when Go: Test Single File command is run."},"go.coverMode":{"type":"string","enum":["default","set","count","atomic"],"default":"default","description":"When generating code coverage, the value for -covermode. 'default' is the default value chosen by the 'go test' command.","scope":"resource"},"go.coverShowCounts":{"type":"boolean","default":false,"description":"When generating code coverage, should counts be shown as --374--","scope":"resource"},"go.coverageOptions":{"type":"string","enum":["showCoveredCodeOnly","showUncoveredCodeOnly","showBothCoveredAndUncoveredCode"],"default":"showBothCoveredAndUncoveredCode","description":"Use these options to control whether only covered or only uncovered code or both should be highlighted after running test coverage","scope":"resource"},"go.coverageDecorator":{"type":"object","properties":{"type":{"type":"string","enum":["highlight","gutter"]},"coveredHighlightColor":{"type":"string","description":"Color in the rgba format to use to highlight covered code."},"uncoveredHighlightColor":{"type":"string","description":"Color in the rgba format to use to highlight uncovered code."},"coveredBorderColor":{"type":"string","description":"Color to use for the border of covered code."},"uncoveredBorderColor":{"type":"string","description":"Color to use for the border of uncovered code."},"coveredGutterStyle":{"type":"string","enum":["blockblue","blockred","blockgreen","blockyellow","slashred","slashgreen","slashblue","slashyellow","verticalred","verticalgreen","verticalblue","verticalyellow"],"description":"Gutter style to indicate covered code."},"uncoveredGutterStyle":{"type":"string","enum":["blockblue","blockred","blockgreen","blockyellow","slashred","slashgreen","slashblue","slashyellow","verticalred","verticalgreen","verticalblue","verticalyellow"],"description":"Gutter style to indicate covered code."}},"additionalProperties":false,"default":{"type":"highlight","coveredHighlightColor":"rgba(64,128,128,0.5)","uncoveredHighlightColor":"rgba(128,64,64,0.25)","coveredBorderColor":"rgba(64,128,128,0.5)","uncoveredBorderColor":"rgba(128,64,64,0.25)","coveredGutterStyle":"blockblue","uncoveredGutterStyle":"slashyellow"},"description":"This option lets you choose the way to display code coverage. Choose either to highlight the complete line or to show a decorator in the gutter. You can customize the colors and borders for the former and the style for the latter.","scope":"resource"},"go.testTimeout":{"type":"string","default":"30s","description":"Specifies the timeout for go test in ParseDuration format.","scope":"resource"},"go.testEnvVars":{"type":"object","default":{},"description":"Environment variables that will be passed to the process that runs the Go tests","scope":"resource"},"go.testEnvFile":{"type":"string","default":null,"description":"Absolute path to a file containing environment variables definitions. File contents should be of the form key=value.","scope":"resource"},"go.testFlags":{"type":["array","null"],"items":{"type":"string"},"default":null,"description":"Flags to pass to `go test`. If null, then buildFlags will be used. This is not propagated to the language server.","scope":"resource"},"go.testExplorer.enable":{"type":"boolean","default":true,"scope":"window","description":"Enable the Go test explorer"},"go.testExplorer.packageDisplayMode":{"type":"string","enum":["flat","nested"],"default":"flat","description":"Present packages in the test explorer flat or nested.","scope":"resource"},"go.testExplorer.alwaysRunBenchmarks":{"type":"boolean","default":false,"description":"Run benchmarks when running all tests in a file or folder.","scope":"resource"},"go.testExplorer.concatenateMessages":{"type":"boolean","default":true,"description":"Concatenate all test log messages for a given location into a single message.","scope":"resource"},"go.testExplorer.showDynamicSubtestsInEditor":{"type":"boolean","default":false,"description":"Set the source location of dynamically discovered subtests to the location of the containing function. As a result, dynamically discovered subtests will be added to the gutter test widget of the containing function.","scope":"resource"},"go.testExplorer.showOutput":{"type":"boolean","default":true,"description":"Open the test output terminal when a test run is started.","scope":"window"},"go.generateTestsFlags":{"type":"array","items":{"type":"string"},"default":[],"description":"Additional command line flags to pass to `gotests` for generating tests.","scope":"resource"},"go.toolsEnvVars":{"type":"object","default":{},"description":"Environment variables that will be passed to the tools that run the Go tools (e.g. CGO_CFLAGS) and debuggee process launched by Delve. Format as string key:value pairs. When debugging, merged with `envFile` and `env` values with precedence `env` > `envFile` > `go.toolsEnvVars`.","scope":"resource"},"go.gocodeFlags":{"type":"array","items":{"type":"string"},"default":["-builtin","-ignore-case","-unimported-packages"],"description":"Additional flags to pass to gocode. Not applicable when using the language server.","scope":"resource","markdownDeprecationMessage":"`gocode` is deprecated by the Go language server. Enable the Go language server (`#go.useLanguageServer#`)."},"go.gocodeAutoBuild":{"type":"boolean","default":false,"description":"Enable gocode's autobuild feature. Not applicable when using the language server.","scope":"resource","markdownDeprecationMessage":"`gocode` is deprecated by the Go language server. Enable the Go language server (`#go.useLanguageServer#`)."},"go.gocodePackageLookupMode":{"type":"string","enum":["go","gb","bzl"],"default":"go","description":"Used to determine the Go package lookup rules for completions by gocode. Not applicable when using the language server.","scope":"resource","markdownDeprecationMessage":"`gocode` is deprecated by the Go language server. Enable the Go language server (`#go.useLanguageServer#`)."},"go.useCodeSnippetsOnFunctionSuggest":{"type":"boolean","default":false,"description":"Complete functions with their parameter signature, including the variable type. Not propagated to the language server.","scope":"resource","markdownDeprecationMessage":"Code completion without the language server is deprecated. Enable the Go language server (`#go.useLanguageServer#`) and use [`gopls's `ui.completion.usePlaceholders` setting](https://github.com/golang/vscode-go/wiki/settings#uicompletionuseplaceholders) instead."},"go.useCodeSnippetsOnFunctionSuggestWithoutType":{"type":"boolean","default":false,"description":"Complete functions with their parameter signature, excluding the variable types. Use `gopls.usePlaceholders` when using the language server.","scope":"resource","markdownDeprecationMessage":"Code completion without the language server is deprecated. Enable the Go language server (`#go.useLanguageServer#`) and use [`gopls's `ui.completion.usePlaceholders` setting](https://github.com/golang/vscode-go/wiki/settings#uicompletionuseplaceholders) instead."},"go.autocompleteUnimportedPackages":{"type":"boolean","default":false,"description":"Include unimported packages in auto-complete suggestions. Not applicable when using the language server.","scope":"resource","markdownDeprecationMessage":"Code completion without the language server is deprecated. Enable the Go language server (`#go.useLanguageServer#`)."},"go.docsTool":{"type":"string","default":"godoc","description":"Pick 'godoc' or 'gogetdoc' to get documentation. Not applicable when using the language server.","scope":"resource","enum":["godoc","gogetdoc","guru"],"markdownDeprecationMessage":"Documentation support without the language server is deprecated. Enable the Go language server (`#go.useLanguageServer#`)."},"go.useLanguageServer":{"type":"boolean","default":true,"description":"Enable intellisense, code navigation, refactoring, formatting & diagnostics for Go. The features are powered by the Go language server \"gopls\"."},"go.languageServerFlags":{"type":"array","default":[],"description":"Flags like -rpc.trace and -logfile to be used while running the language server."},"go.trace.server":{"type":"string","enum":["off","messages","verbose"],"default":"off","description":"Trace the communication between VS Code and the Go language server."},"go.logging.level":{"type":"string","default":"error","enum":["off","error","info","verbose"],"description":"The logging level the extension logs at, defaults to 'error'","scope":"machine-overridable"},"go.toolsManagement.go":{"type":"string","default":"","description":"The path to the `go` binary used to install the Go tools. If it's empty, the same `go` binary chosen for the project will be used for tool installation.","scope":"machine-overridable"},"go.toolsManagement.checkForUpdates":{"type":"string","default":"proxy","enum":["proxy","local","off"],"enumDescriptions":["keeps notified of new releases by checking the Go module proxy (GOPROXY)","checks only the minimum tools versions required by the extension","completely disables version check (not recommended)"],"markdownDescription":"Specify whether to prompt about new versions of Go and the Go tools (currently, only `gopls`) the extension depends on"},"go.toolsManagement.autoUpdate":{"type":"boolean","default":false,"description":"Automatically update the tools used by the extension, without prompting the user.","scope":"resource"},"go.useGoProxyToCheckForToolUpdates":{"type":"boolean","default":true,"description":"When enabled, the extension automatically checks the Go proxy if there are updates available for Go and the Go tools (at present, only gopls) it depends on and prompts the user accordingly","markdownDeprecationMessage":"Use `go.toolsManagement.checkForUpdates` instead."},"go.gotoSymbol.includeImports":{"type":"boolean","default":false,"description":"If false, the import statements will be excluded while using the Go to Symbol in File feature. Not applicable when using the language server.","scope":"resource","markdownDeprecationMessage":"Code navigation without the language server is deprecated. Enable the Go language server (`#go.useLanguageServer#`)."},"go.gotoSymbol.includeGoroot":{"type":"boolean","default":false,"description":"If false, the standard library located at $GOROOT will be excluded while using the Go to Symbol in File feature. Not applicable when using the language server.","scope":"resource","markdownDeprecationMessage":"Code navigation without the language server is deprecated. Enable the Go language server (`#go.useLanguageServer#`)."},"go.enableCodeLens":{"type":"object","properties":{"runtest":{"type":"boolean","default":true,"description":"If true, enables code lens for running and debugging tests"}},"additionalProperties":false,"default":{"runtest":true},"description":"Feature level setting to enable/disable code lens for references and run/debug tests","scope":"resource"},"go.addTags":{"type":"object","properties":{"promptForTags":{"type":"boolean","default":false,"description":"If true, Go: Add Tags command will prompt the user to provide tags, options, transform values instead of using the configured values"},"tags":{"type":"string","default":"json","description":"Comma separated tags to be used by Go: Add Tags command"},"options":{"type":"string","default":"json=omitempty","description":"Comma separated tag=options pairs to be used by Go: Add Tags command"},"transform":{"type":"string","enum":["snakecase","camelcase","lispcase","pascalcase","keep"],"default":"snakecase","description":"Transformation rule used by Go: Add Tags command to add tags"},"template":{"type":"string","default":"","description":"Custom format used by Go: Add Tags command for the tag value to be applied"}},"additionalProperties":false,"default":{"tags":"json","options":"json=omitempty","promptForTags":false,"transform":"snakecase","template":""},"description":"Tags and options configured here will be used by the Add Tags command to add tags to struct fields. If promptForTags is true, then user will be prompted for tags and options. By default, json tags are added.","scope":"resource"},"go.liveErrors":{"type":"object","properties":{"enabled":{"type":"boolean","default":false,"description":"If true, runs gotype on the file currently being edited and reports any semantic or syntactic errors found. Disabled when the language server is enabled."},"delay":{"type":"number","default":500,"description":"The number of milliseconds to delay before execution. Resets with each keystroke."}},"additionalProperties":false,"default":{"enabled":false,"delay":500},"description":"Use gotype on the file currently being edited and report any semantic or syntactic errors found after configured delay. Not applicable when using the language server.","scope":"resource","markdownDeprecationMessage":"Real-time diagnostics without the language server is deprecated. Enable the Go language server (`#go.useLanguageServer#`)."},"go.removeTags":{"type":"object","properties":{"promptForTags":{"type":"boolean","default":false,"description":"If true, Go: Remove Tags command will prompt the user to provide tags and options instead of using the configured values"},"tags":{"type":"string","default":"json","description":"Comma separated tags to be used by Go: Remove Tags command"},"options":{"type":"string","default":"json=omitempty","description":"Comma separated tag=options pairs to be used by Go: Remove Tags command"}},"additionalProperties":false,"default":{"tags":"","options":"","promptForTags":false},"description":"Tags and options configured here will be used by the Remove Tags command to remove tags to struct fields. If promptForTags is true, then user will be prompted for tags and options. By default, all tags and options will be removed.","scope":"resource"},"go.playground":{"type":"object","properties":{"openbrowser":{"type":"boolean","default":true,"description":"Whether to open the created Go Playground in the default browser"},"share":{"type":"boolean","default":true,"description":"Whether to make the created Go Playground shareable"},"run":{"type":"boolean","default":true,"description":"Whether to run the created Go Playground after creation"}},"description":"The flags configured here will be passed through to command `goplay`","additionalProperties":false,"default":{"openbrowser":true,"share":true,"run":true}},"go.survey.prompt":{"type":"boolean","default":true,"description":"Prompt for surveys, including the gopls survey and the Go developer survey."},"go.editorContextMenuCommands":{"type":"object","properties":{"toggleTestFile":{"type":"boolean","default":true,"description":"If true, adds command to toggle between a Go file and its test file to the editor context menu"},"addTags":{"type":"boolean","default":true,"description":"If true, adds command to add configured tags from struct fields to the editor context menu"},"removeTags":{"type":"boolean","default":true,"description":"If true, adds command to remove configured tags from struct fields to the editor context menu"},"fillStruct":{"type":"boolean","default":true,"description":"If true, adds command to fill struct literal with default values to the editor context menu"},"testAtCursor":{"type":"boolean","default":false,"description":"If true, adds command to run the test under the cursor to the editor context menu"},"testFile":{"type":"boolean","default":true,"description":"If true, adds command to run all tests in the current file to the editor context menu"},"testPackage":{"type":"boolean","default":true,"description":"If true, adds command to run all tests in the current package to the editor context menu"},"generateTestForFunction":{"type":"boolean","default":true,"description":"If true, adds command to generate unit tests for function under the cursor to the editor context menu"},"generateTestForFile":{"type":"boolean","default":true,"description":"If true, adds command to generate unit tests for current file to the editor context menu"},"generateTestForPackage":{"type":"boolean","default":true,"description":"If true, adds command to generate unit tests for current package to the editor context menu"},"addImport":{"type":"boolean","default":true,"description":"If true, adds command to import a package to the editor context menu"},"testCoverage":{"type":"boolean","default":true,"description":"If true, adds command to run test coverage to the editor context menu"},"playground":{"type":"boolean","default":true,"description":"If true, adds command to upload the current file or selection to the Go Playground"},"debugTestAtCursor":{"type":"boolean","default":false,"description":"If true, adds command to debug the test under the cursor to the editor context menu"},"benchmarkAtCursor":{"type":"boolean","default":false,"description":"If true, adds command to benchmark the test under the cursor to the editor context menu"}},"additionalProperties":false,"default":{"toggleTestFile":true,"addTags":true,"removeTags":false,"fillStruct":false,"testAtCursor":true,"testFile":false,"testPackage":false,"generateTestForFunction":true,"generateTestForFile":false,"generateTestForPackage":false,"addImport":true,"testCoverage":true,"playground":true,"debugTestAtCursor":true,"benchmarkAtCursor":false},"description":"Experimental Feature: Enable/Disable entries from the context menu in the editor.","scope":"resource"},"go.gotoSymbol.ignoreFolders":{"type":"array","items":{"type":"string"},"default":[],"description":"Folder names (not paths) to ignore while using Go to Symbol in Workspace feature. Not applicable when using the language server.","scope":"resource","markdownDeprecationMessage":"Code navigation without the language server is deprecated. Enable the Go language server (`#go.useLanguageServer#`)."},"go.delveConfig":{"type":"object","properties":{"dlvLoadConfig":{"type":"object","properties":{"followPointers":{"type":"boolean","description":"FollowPointers requests pointers to be automatically dereferenced","default":true},"maxVariableRecurse":{"type":"number","description":"MaxVariableRecurse is how far to recurse when evaluating nested types","default":1},"maxStringLen":{"type":"number","description":"MaxStringLen is the maximum number of bytes read from a string","default":64},"maxArrayValues":{"type":"number","description":"MaxArrayValues is the maximum number of elements read from an array, a slice or a map","default":64},"maxStructFields":{"type":"number","description":"MaxStructFields is the maximum number of fields read from a struct, -1 will read all fields","default":-1}},"description":"LoadConfig describes to delve, how to load values from target's memory. Ignored by 'dlv-dap'.","default":{"followPointers":true,"maxVariableRecurse":1,"maxStringLen":64,"maxArrayValues":64,"maxStructFields":-1}},"apiVersion":{"type":"number","enum":[1,2],"description":"Delve Api Version to use. Default value is 2. This applies only when using the 'legacy' debug adapter.","default":2},"showGlobalVariables":{"type":"boolean","description":"Boolean value to indicate whether global package variables should be shown in the variables pane or not.","default":false},"showRegisters":{"type":"boolean","default":false,"description":"Boolean value to indicate whether register variables should be shown in the variables pane or not."},"hideSystemGoroutines":{"type":"boolean","default":false,"description":"Boolean value to indicate whether system goroutines should be hidden from call stack view."},"showLog":{"type":"boolean","description":"Show log output from the delve debugger. Maps to dlv's `--log` flag.","default":false},"logOutput":{"type":"string","enum":["debugger","gdbwire","lldbout","debuglineerr","rpc","dap"],"description":"Comma separated list of components that should produce debug output. Maps to dlv's `--log-output` flag. Check `dlv log` for details.","default":"debugger"},"debugAdapter":{"type":"string","enum":["legacy","dlv-dap"],"description":"Select which debug adapter to use by default. This is also used for choosing which debug adapter to use when no launch.json is present and with codelenses.","default":"dlv-dap"},"dlvFlags":{"type":"array","description":"Extra flags for `dlv`. See `dlv help` for the full list of supported. Flags such as `--log-output`, `--log`, `--log-dest`, `--api-version`, `--output`, `--backend` already have corresponding properties in the debug configuration, and flags such as `--listen` and `--headless` are used internally. If they are specified in `dlvFlags`, they may be ignored or cause an error.","items":{"type":"string"},"default":[]},"substitutePath":{"type":"array","items":{"type":"object","properties":{"from":{"type":"string","description":"The absolute local path to be replaced when passing paths to the debugger","default":""},"to":{"type":"string","description":"The absolute remote path to be replaced when passing paths back to the client","default":""}}},"description":"An array of mappings from a local path to the remote path that is used by the debuggee. The debug adapter will replace the local path with the remote path in all of the calls. Overriden by `remotePath` (in attach request).","default":[]}},"default":{},"description":"Delve settings that applies to all debugging sessions. Debug configuration in the launch.json file will override these values.","scope":"resource"},"go.alternateTools":{"type":"object","default":{},"description":"Alternate tools or alternate paths for the same tools used by the Go extension. Provide either absolute path or the name of the binary in GOPATH/bin, GOROOT/bin or PATH. Useful when you want to use wrapper script for the Go tools.","scope":"resource","properties":{"go":{"type":"string","default":"go","description":"Alternate tool to use instead of the go binary or alternate path to use for the go binary."},"gopls":{"type":"string","default":"gopls","description":"Alternate tool to use instead of the gopls binary or alternate path to use for the gopls binary."},"dlv":{"type":"string","default":"dlv","description":"Alternate tool to use instead of the dlv binary or alternate path to use for the dlv binary."},"customFormatter":{"type":"string","default":"","markdownDescription":"Custom formatter to use instead of the language server. This should be used with the `custom` option in `#go.formatTool#`."}},"additionalProperties":true},"go.tasks.provideDefault":{"default":true,"description":"enable the default go build/test task provider.","scope":"window","type":"boolean"},"go.terminal.activateEnvironment":{"default":true,"description":"Apply the Go & PATH environment variables used by the extension to all integrated terminals.","scope":"resource","type":"boolean"},"gopls":{"type":"object","markdownDescription":"Configure the default Go language server ('gopls'). In most cases, configuring this section is unnecessary. See [the documentation](https://github.com/golang/tools/blob/master/gopls/doc/settings.md) for all available settings.","scope":"resource","properties":{"build.allowImplicitNetworkAccess":{"type":"boolean","markdownDescription":"(Experimental) allowImplicitNetworkAccess disables GOPROXY=off, allowing implicit module\ndownloads rather than requiring user action. This option will eventually\nbe removed.\n","default":false,"scope":"resource"},"build.allowModfileModifications":{"type":"boolean","markdownDescription":"(Experimental) allowModfileModifications disables -mod=readonly, allowing imports from\nout-of-scope modules. This option will eventually be removed.\n","default":false,"scope":"resource"},"build.buildFlags":{"type":"array","markdownDescription":"buildFlags is the set of flags passed on to the build system when invoked.\nIt is applied to queries like `go list`, which is used when discovering files.\nThe most common use is to set `-tags`.\n\nIf unspecified, values of `go.buildFlags, go.buildTags` will be propagated.\n","default":[],"scope":"resource"},"build.directoryFilters":{"type":"array","markdownDescription":"directoryFilters can be used to exclude unwanted directories from the\nworkspace. By default, all directories are included. Filters are an\noperator, `+` to include and `-` to exclude, followed by a path prefix\nrelative to the workspace folder. They are evaluated in order, and\nthe last filter that applies to a path controls whether it is included.\nThe path prefix can be empty, so an initial `-` excludes everything.\n\nDirectoryFilters also supports the `**` operator to match 0 or more directories.\n\nExamples:\n\nExclude node_modules at current depth: `-node_modules`\n\nExclude node_modules at any depth: `-**/node_modules`\n\nInclude only project_a: `-` (exclude everything), `+project_a`\n\nInclude only project_a, but not node_modules inside it: `-`, `+project_a`, `-project_a/node_modules`\n","default":["-**/node_modules"],"scope":"resource"},"build.env":{"type":"object","markdownDescription":"env adds environment variables to external commands run by `gopls`, most notably `go list`.\n","scope":"resource"},"build.expandWorkspaceToModule":{"type":"boolean","markdownDescription":"(Experimental) expandWorkspaceToModule instructs `gopls` to adjust the scope of the\nworkspace to find the best available module root. `gopls` first looks for\na go.mod file in any parent directory of the workspace folder, expanding\nthe scope to that directory if it exists. If no viable parent directory is\nfound, gopls will check if there is exactly one child directory containing\na go.mod file, narrowing the scope to that directory if it exists.\n","default":true,"scope":"resource"},"build.memoryMode":{"type":"string","markdownDescription":"(Experimental) memoryMode controls the tradeoff `gopls` makes between memory usage and\ncorrectness.\n\nValues other than `Normal` are untested and may break in surprising ways.\n","enum":["DegradeClosed","Normal"],"markdownEnumDescriptions":["`\"DegradeClosed\"`: In DegradeClosed mode, `gopls` will collect less information about\npackages without open files. As a result, features like Find\nReferences and Rename will miss results in such packages.\n",""],"default":"Normal","scope":"resource"},"build.standaloneTags":{"type":"array","markdownDescription":"standaloneTags specifies a set of build constraints that identify\nindividual Go source files that make up the entire main package of an\nexecutable.\n\nA common example of standalone main files is the convention of using the\ndirective `//go:build ignore` to denote files that are not intended to be\nincluded in any package, for example because they are invoked directly by\nthe developer using `go run`.\n\nGopls considers a file to be a standalone main file if and only if it has\npackage name \"main\" and has a build directive of the exact form\n\"//go:build tag\" or \"// +build tag\", where tag is among the list of tags\nconfigured by this setting. Notably, if the build constraint is more\ncomplicated than a simple tag (such as the composite constraint\n`//go:build tag && go1.18`), the file is not considered to be a standalone\nmain file.\n\nThis setting is only supported when gopls is built with Go 1.16 or later.\n","default":["ignore"],"scope":"resource"},"build.templateExtensions":{"type":"array","markdownDescription":"templateExtensions gives the extensions of file names that are treateed\nas template files. (The extension\nis the part of the file name after the final dot.)\n","default":[],"scope":"resource"},"formatting.gofumpt":{"type":"boolean","markdownDescription":"gofumpt indicates if we should run gofumpt formatting.\n","default":false,"scope":"resource"},"formatting.local":{"type":"string","markdownDescription":"local is the equivalent of the `goimports -local` flag, which puts\nimports beginning with this string after third-party packages. It should\nbe the prefix of the import path whose imports should be grouped\nseparately.\n","default":"","scope":"resource"},"ui.codelenses":{"type":"object","markdownDescription":"codelenses overrides the enabled/disabled state of code lenses. See the\n\"Code Lenses\" section of the\n[Settings page](https://github.com/golang/tools/blob/master/gopls/doc/settings.md#code-lenses)\nfor the list of supported lenses.\n\nExample Usage:\n\n```json5\n\"gopls\": {\n...\n \"codelenses\": {\n \"generate\": false, // Don't show the `go generate` lens.\n \"gc_details\": true // Show a code lens toggling the display of gc's choices.\n }\n...\n}\n```\n","scope":"resource","properties":{"gc_details":{"type":"boolean","markdownDescription":"Toggle the calculation of gc annotations.","default":false},"generate":{"type":"boolean","markdownDescription":"Runs `go generate` for a given directory.","default":true},"regenerate_cgo":{"type":"boolean","markdownDescription":"Regenerates cgo definitions.","default":true},"run_govulncheck":{"type":"boolean","markdownDescription":"Run vulnerability check (`govulncheck`).","default":false},"test":{"type":"boolean","markdownDescription":"Runs `go test` for a specific set of test or benchmark functions.","default":false},"tidy":{"type":"boolean","markdownDescription":"Runs `go mod tidy` for a module.","default":true},"upgrade_dependency":{"type":"boolean","markdownDescription":"Upgrades a dependency in the go.mod file for a module.","default":true},"vendor":{"type":"boolean","markdownDescription":"Runs `go mod vendor` for a module.","default":true}}},"ui.completion.completionBudget":{"type":"string","markdownDescription":"(For Debugging) completionBudget is the soft latency goal for completion requests. Most\nrequests finish in a couple milliseconds, but in some cases deep\ncompletions can take much longer. As we use up our budget we\ndynamically reduce the search scope to ensure we return timely\nresults. Zero means unlimited.\n","default":"100ms","scope":"resource"},"ui.completion.experimentalPostfixCompletions":{"type":"boolean","markdownDescription":"(Experimental) experimentalPostfixCompletions enables artificial method snippets\nsuch as \"someSlice.sort!\".\n","default":true,"scope":"resource"},"ui.completion.matcher":{"type":"string","markdownDescription":"(Advanced) matcher sets the algorithm that is used when calculating completion\ncandidates.\n","enum":["CaseInsensitive","CaseSensitive","Fuzzy"],"markdownEnumDescriptions":["","",""],"default":"Fuzzy","scope":"resource"},"ui.completion.usePlaceholders":{"type":"boolean","markdownDescription":"placeholders enables placeholders for function parameters or struct\nfields in completion responses.\n","default":false,"scope":"resource"},"ui.diagnostic.analyses":{"type":"object","markdownDescription":"analyses specify analyses that the user would like to enable or disable.\nA map of the names of analysis passes that should be enabled/disabled.\nA full list of analyzers that gopls uses can be found in\n[analyzers.md](https://github.com/golang/tools/blob/master/gopls/doc/analyzers.md).\n\nExample Usage:\n\n```json5\n...\n\"analyses\": {\n \"unreachable\": false, // Disable the unreachable analyzer.\n \"unusedparams\": true // Enable the unusedparams analyzer.\n}\n...\n```\n","scope":"resource","properties":{"asmdecl":{"type":"boolean","markdownDescription":"report mismatches between assembly files and Go declarations","default":true},"assign":{"type":"boolean","markdownDescription":"check for useless assignments\n\nThis checker reports assignments of the form x = x or a[i] = a[i].\nThese are almost always useless, and even when they aren't they are\nusually a mistake.","default":true},"atomic":{"type":"boolean","markdownDescription":"check for common mistakes using the sync/atomic package\n\nThe atomic checker looks for assignment statements of the form:\n\n\tx = atomic.AddUint64(&x, 1)\n\nwhich are not atomic.","default":true},"atomicalign":{"type":"boolean","markdownDescription":"check for non-64-bits-aligned arguments to sync/atomic functions","default":true},"bools":{"type":"boolean","markdownDescription":"check for common mistakes involving boolean operators","default":true},"buildtag":{"type":"boolean","markdownDescription":"check //go:build and // +build directives","default":true},"cgocall":{"type":"boolean","markdownDescription":"detect some violations of the cgo pointer passing rules\n\nCheck for invalid cgo pointer passing.\nThis looks for code that uses cgo to call C code passing values\nwhose types are almost always invalid according to the cgo pointer\nsharing rules.\nSpecifically, it warns about attempts to pass a Go chan, map, func,\nor slice to C, either directly, or via a pointer, array, or struct.","default":true},"composites":{"type":"boolean","markdownDescription":"check for unkeyed composite literals\n\nThis analyzer reports a diagnostic for composite literals of struct\ntypes imported from another package that do not use the field-keyed\nsyntax. Such literals are fragile because the addition of a new field\n(even if unexported) to the struct will cause compilation to fail.\n\nAs an example,\n\n\terr = &net.DNSConfigError{err}\n\nshould be replaced by:\n\n\terr = &net.DNSConfigError{Err: err}\n","default":true},"copylocks":{"type":"boolean","markdownDescription":"check for locks erroneously passed by value\n\nInadvertently copying a value containing a lock, such as sync.Mutex or\nsync.WaitGroup, may cause both copies to malfunction. Generally such\nvalues should be referred to through a pointer.","default":true},"deepequalerrors":{"type":"boolean","markdownDescription":"check for calls of reflect.DeepEqual on error values\n\nThe deepequalerrors checker looks for calls of the form:\n\n reflect.DeepEqual(err1, err2)\n\nwhere err1 and err2 are errors. Using reflect.DeepEqual to compare\nerrors is discouraged.","default":true},"directive":{"type":"boolean","markdownDescription":"check Go toolchain directives such as //go:debug\n\nThis analyzer checks for problems with known Go toolchain directives\nin all Go source files in a package directory, even those excluded by\n//go:build constraints, and all non-Go source files too.\n\nFor //go:debug (see https://go.dev/doc/godebug), the analyzer checks\nthat the directives are placed only in Go source files, only above the\npackage comment, and only in package main or *_test.go files.\n\nSupport for other known directives may be added in the future.\n\nThis analyzer does not check //go:build, which is handled by the\nbuildtag analyzer.\n","default":true},"embed":{"type":"boolean","markdownDescription":"check for //go:embed directive import\n\nThis analyzer checks that the embed package is imported when source code contains //go:embed comment directives.\nThe embed package must be imported for //go:embed directives to function.import _ \"embed\".","default":true},"errorsas":{"type":"boolean","markdownDescription":"report passing non-pointer or non-error values to errors.As\n\nThe errorsas analysis reports calls to errors.As where the type\nof the second argument is not a pointer to a type implementing error.","default":true},"fieldalignment":{"type":"boolean","markdownDescription":"find structs that would use less memory if their fields were sorted\n\nThis analyzer find structs that can be rearranged to use less memory, and provides\na suggested edit with the most compact order.\n\nNote that there are two different diagnostics reported. One checks struct size,\nand the other reports \"pointer bytes\" used. Pointer bytes is how many bytes of the\nobject that the garbage collector has to potentially scan for pointers, for example:\n\n\tstruct { uint32; string }\n\nhave 16 pointer bytes because the garbage collector has to scan up through the string's\ninner pointer.\n\n\tstruct { string; *uint32 }\n\nhas 24 pointer bytes because it has to scan further through the *uint32.\n\n\tstruct { string; uint32 }\n\nhas 8 because it can stop immediately after the string pointer.\n\nBe aware that the most compact order is not always the most efficient.\nIn rare cases it may cause two variables each updated by its own goroutine\nto occupy the same CPU cache line, inducing a form of memory contention\nknown as \"false sharing\" that slows down both goroutines.\n","default":false},"fillreturns":{"type":"boolean","markdownDescription":"suggest fixes for errors due to an incorrect number of return values\n\nThis checker provides suggested fixes for type errors of the\ntype \"wrong number of return values (want %d, got %d)\". For example:\n\tfunc m() (int, string, *bool, error) {\n\t\treturn\n\t}\nwill turn into\n\tfunc m() (int, string, *bool, error) {\n\t\treturn 0, \"\", nil, nil\n\t}\n\nThis functionality is similar to https://github.com/sqs/goreturns.\n","default":true},"fillstruct":{"type":"boolean","markdownDescription":"note incomplete struct initializations\n\nThis analyzer provides diagnostics for any struct literals that do not have\nany fields initialized. Because the suggested fix for this analysis is\nexpensive to compute, callers should compute it separately, using the\nSuggestedFix function below.\n","default":true},"httpresponse":{"type":"boolean","markdownDescription":"check for mistakes using HTTP responses\n\nA common mistake when using the net/http package is to defer a function\ncall to close the http.Response Body before checking the error that\ndetermines whether the response is valid:\n\n\tresp, err := http.Head(url)\n\tdefer resp.Body.Close()\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\t// (defer statement belongs here)\n\nThis checker helps uncover latent nil dereference bugs by reporting a\ndiagnostic for such mistakes.","default":true},"ifaceassert":{"type":"boolean","markdownDescription":"detect impossible interface-to-interface type assertions\n\nThis checker flags type assertions v.(T) and corresponding type-switch cases\nin which the static type V of v is an interface that cannot possibly implement\nthe target interface T. This occurs when V and T contain methods with the same\nname but different signatures. Example:\n\n\tvar v interface {\n\t\tRead()\n\t}\n\t_ = v.(io.Reader)\n\nThe Read method in v has a different signature than the Read method in\nio.Reader, so this assertion cannot succeed.","default":true},"infertypeargs":{"type":"boolean","markdownDescription":"check for unnecessary type arguments in call expressions\n\nExplicit type arguments may be omitted from call expressions if they can be\ninferred from function arguments, or from other type arguments:\n\n\tfunc f[T any](T) {}\n\t\n\tfunc _() {\n\t\tf[string](\"foo\") // string could be inferred\n\t}\n","default":true},"loopclosure":{"type":"boolean","markdownDescription":"check references to loop variables from within nested functions\n\nThis analyzer reports places where a function literal references the\niteration variable of an enclosing loop, and the loop calls the function\nin such a way (e.g. with go or defer) that it may outlive the loop\niteration and possibly observe the wrong value of the variable.\n\nIn this example, all the deferred functions run after the loop has\ncompleted, so all observe the final value of v.\n\n\tfor _, v := range list {\n\t defer func() {\n\t use(v) // incorrect\n\t }()\n\t}\n\nOne fix is to create a new variable for each iteration of the loop:\n\n\tfor _, v := range list {\n\t v := v // new var per iteration\n\t defer func() {\n\t use(v) // ok\n\t }()\n\t}\n\nThe next example uses a go statement and has a similar problem.\nIn addition, it has a data race because the loop updates v\nconcurrent with the goroutines accessing it.\n\n\tfor _, v := range elem {\n\t go func() {\n\t use(v) // incorrect, and a data race\n\t }()\n\t}\n\nA fix is the same as before. The checker also reports problems\nin goroutines started by golang.org/x/sync/errgroup.Group.\nA hard-to-spot variant of this form is common in parallel tests:\n\n\tfunc Test(t *testing.T) {\n\t for _, test := range tests {\n\t t.Run(test.name, func(t *testing.T) {\n\t t.Parallel()\n\t use(test) // incorrect, and a data race\n\t })\n\t }\n\t}\n\nThe t.Parallel() call causes the rest of the function to execute\nconcurrent with the loop.\n\nThe analyzer reports references only in the last statement,\nas it is not deep enough to understand the effects of subsequent\nstatements that might render the reference benign.\n(\"Last statement\" is defined recursively in compound\nstatements such as if, switch, and select.)\n\nSee: https://golang.org/doc/go_faq.html#closures_and_goroutines","default":true},"lostcancel":{"type":"boolean","markdownDescription":"check cancel func returned by context.WithCancel is called\n\nThe cancellation function returned by context.WithCancel, WithTimeout,\nand WithDeadline must be called or the new context will remain live\nuntil its parent context is cancelled.\n(The background context is never cancelled.)","default":true},"nilfunc":{"type":"boolean","markdownDescription":"check for useless comparisons between functions and nil\n\nA useless comparison is one like f == nil as opposed to f() == nil.","default":true},"nilness":{"type":"boolean","markdownDescription":"check for redundant or impossible nil comparisons\n\nThe nilness checker inspects the control-flow graph of each function in\na package and reports nil pointer dereferences, degenerate nil\npointers, and panics with nil values. A degenerate comparison is of the form\nx==nil or x!=nil where x is statically known to be nil or non-nil. These are\noften a mistake, especially in control flow related to errors. Panics with nil\nvalues are checked because they are not detectable by\n\n\tif r := recover(); r != nil {\n\nThis check reports conditions such as:\n\n\tif f == nil { // impossible condition (f is a function)\n\t}\n\nand:\n\n\tp := &v\n\t...\n\tif p != nil { // tautological condition\n\t}\n\nand:\n\n\tif p == nil {\n\t\tprint(*p) // nil dereference\n\t}\n\nand:\n\n\tif p == nil {\n\t\tpanic(p)\n\t}","default":false},"nonewvars":{"type":"boolean","markdownDescription":"suggested fixes for \"no new vars on left side of :=\"\n\nThis checker provides suggested fixes for type errors of the\ntype \"no new vars on left side of :=\". For example:\n\tz := 1\n\tz := 2\nwill turn into\n\tz := 1\n\tz = 2\n","default":true},"noresultvalues":{"type":"boolean","markdownDescription":"suggested fixes for unexpected return values\n\nThis checker provides suggested fixes for type errors of the\ntype \"no result values expected\" or \"too many return values\".\nFor example:\n\tfunc z() { return nil }\nwill turn into\n\tfunc z() { return }\n","default":true},"printf":{"type":"boolean","markdownDescription":"check consistency of Printf format strings and arguments\n\nThe check applies to calls of the formatting functions such as\n[fmt.Printf] and [fmt.Sprintf], as well as any detected wrappers of\nthose functions.\n\nIn this example, the %d format operator requires an integer operand:\n\n\tfmt.Printf(\"%d\", \"hello\") // fmt.Printf format %d has arg \"hello\" of wrong type string\n\nSee the documentation of the fmt package for the complete set of\nformat operators and their operand types.\n\nTo enable printf checking on a function that is not found by this\nanalyzer's heuristics (for example, because control is obscured by\ndynamic method calls), insert a bogus call:\n\n\tfunc MyPrintf(format string, args ...any) {\n\t\tif false {\n\t\t\t_ = fmt.Sprintf(format, args...) // enable printf checker\n\t\t}\n\t\t...\n\t}\n\nThe -funcs flag specifies a comma-separated list of names of additional\nknown formatting functions or methods. If the name contains a period,\nit must denote a specific function using one of the following forms:\n\n\tdir/pkg.Function\n\tdir/pkg.Type.Method\n\t(*dir/pkg.Type).Method\n\nOtherwise the name is interpreted as a case-insensitive unqualified\nidentifier such as \"errorf\". Either way, if a listed name ends in f, the\nfunction is assumed to be Printf-like, taking a format string before the\nargument list. Otherwise it is assumed to be Print-like, taking a list\nof arguments with no format string.","default":true},"shadow":{"type":"boolean","markdownDescription":"check for possible unintended shadowing of variables\n\nThis analyzer check for shadowed variables.\nA shadowed variable is a variable declared in an inner scope\nwith the same name and type as a variable in an outer scope,\nand where the outer variable is mentioned after the inner one\nis declared.\n\n(This definition can be refined; the module generates too many\nfalse positives and is not yet enabled by default.)\n\nFor example:\n\n\tfunc BadRead(f *os.File, buf []byte) error {\n\t\tvar err error\n\t\tfor {\n\t\t\tn, err := f.Read(buf) // shadows the function variable 'err'\n\t\t\tif err != nil {\n\t\t\t\tbreak // causes return of wrong value\n\t\t\t}\n\t\t\tfoo(buf)\n\t\t}\n\t\treturn err\n\t}","default":false},"shift":{"type":"boolean","markdownDescription":"check for shifts that equal or exceed the width of the integer","default":true},"simplifycompositelit":{"type":"boolean","markdownDescription":"check for composite literal simplifications\n\nAn array, slice, or map composite literal of the form:\n\t[]T{T{}, T{}}\nwill be simplified to:\n\t[]T{{}, {}}\n\nThis is one of the simplifications that \"gofmt -s\" applies.","default":true},"simplifyrange":{"type":"boolean","markdownDescription":"check for range statement simplifications\n\nA range of the form:\n\tfor x, _ = range v {...}\nwill be simplified to:\n\tfor x = range v {...}\n\nA range of the form:\n\tfor _ = range v {...}\nwill be simplified to:\n\tfor range v {...}\n\nThis is one of the simplifications that \"gofmt -s\" applies.","default":true},"simplifyslice":{"type":"boolean","markdownDescription":"check for slice simplifications\n\nA slice expression of the form:\n\ts[a:len(s)]\nwill be simplified to:\n\ts[a:]\n\nThis is one of the simplifications that \"gofmt -s\" applies.","default":true},"sortslice":{"type":"boolean","markdownDescription":"check the argument type of sort.Slice\n\nsort.Slice requires an argument of a slice type. Check that\nthe interface{} value passed to sort.Slice is actually a slice.","default":true},"stdmethods":{"type":"boolean","markdownDescription":"check signature of methods of well-known interfaces\n\nSometimes a type may be intended to satisfy an interface but may fail to\ndo so because of a mistake in its method signature.\nFor example, the result of this WriteTo method should be (int64, error),\nnot error, to satisfy io.WriterTo:\n\n\ttype myWriterTo struct{...}\n\tfunc (myWriterTo) WriteTo(w io.Writer) error { ... }\n\nThis check ensures that each method whose name matches one of several\nwell-known interface methods from the standard library has the correct\nsignature for that interface.\n\nChecked method names include:\n\n\tFormat GobEncode GobDecode MarshalJSON MarshalXML\n\tPeek ReadByte ReadFrom ReadRune Scan Seek\n\tUnmarshalJSON UnreadByte UnreadRune WriteByte\n\tWriteTo","default":true},"stringintconv":{"type":"boolean","markdownDescription":"check for string(int) conversions\n\nThis checker flags conversions of the form string(x) where x is an integer\n(but not byte or rune) type. Such conversions are discouraged because they\nreturn the UTF-8 representation of the Unicode code point x, and not a decimal\nstring representation of x as one might expect. Furthermore, if x denotes an\ninvalid code point, the conversion cannot be statically rejected.\n\nFor conversions that intend on using the code point, consider replacing them\nwith string(rune(x)). Otherwise, strconv.Itoa and its equivalents return the\nstring representation of the value in the desired base.","default":true},"structtag":{"type":"boolean","markdownDescription":"check that struct field tags conform to reflect.StructTag.Get\n\nAlso report certain struct tags (json, xml) used with unexported fields.","default":true},"stubmethods":{"type":"boolean","markdownDescription":"stub methods analyzer\n\nThis analyzer generates method stubs for concrete types\nin order to implement a target interface","default":true},"testinggoroutine":{"type":"boolean","markdownDescription":"report calls to (*testing.T).Fatal from goroutines started by a test.\n\nFunctions that abruptly terminate a test, such as the Fatal, Fatalf, FailNow, and\nSkip{,f,Now} methods of *testing.T, must be called from the test goroutine itself.\nThis checker detects calls to these functions that occur within a goroutine\nstarted by the test. For example:\n\n\tfunc TestFoo(t *testing.T) {\n\t go func() {\n\t t.Fatal(\"oops\") // error: (*T).Fatal called from non-test goroutine\n\t }()\n\t}","default":true},"tests":{"type":"boolean","markdownDescription":"check for common mistaken usages of tests and examples\n\nThe tests checker walks Test, Benchmark, Fuzzing and Example functions checking\nmalformed names, wrong signatures and examples documenting non-existent\nidentifiers.\n\nPlease see the documentation for package testing in golang.org/pkg/testing\nfor the conventions that are enforced for Tests, Benchmarks, and Examples.","default":true},"timeformat":{"type":"boolean","markdownDescription":"check for calls of (time.Time).Format or time.Parse with 2006-02-01\n\nThe timeformat checker looks for time formats with the 2006-02-01 (yyyy-dd-mm)\nformat. Internationally, \"yyyy-dd-mm\" does not occur in common calendar date\nstandards, and so it is more likely that 2006-01-02 (yyyy-mm-dd) was intended.","default":true},"undeclaredname":{"type":"boolean","markdownDescription":"suggested fixes for \"undeclared name: <>\"\n\nThis checker provides suggested fixes for type errors of the\ntype \"undeclared name: <>\". It will either insert a new statement,\nsuch as:\n\n\"<> := \"\n\nor a new function declaration, such as:\n\nfunc <>(inferred parameters) {\n\tpanic(\"implement me!\")\n}\n","default":true},"unmarshal":{"type":"boolean","markdownDescription":"report passing non-pointer or non-interface values to unmarshal\n\nThe unmarshal analysis reports calls to functions such as json.Unmarshal\nin which the argument type is not a pointer or an interface.","default":true},"unreachable":{"type":"boolean","markdownDescription":"check for unreachable code\n\nThe unreachable analyzer finds statements that execution can never reach\nbecause they are preceded by an return statement, a call to panic, an\ninfinite loop, or similar constructs.","default":true},"unsafeptr":{"type":"boolean","markdownDescription":"check for invalid conversions of uintptr to unsafe.Pointer\n\nThe unsafeptr analyzer reports likely incorrect uses of unsafe.Pointer\nto convert integers to pointers. A conversion from uintptr to\nunsafe.Pointer is invalid if it implies that there is a uintptr-typed\nword in memory that holds a pointer value, because that word will be\ninvisible to stack copying and to the garbage collector.","default":true},"unusedparams":{"type":"boolean","markdownDescription":"check for unused parameters of functions\n\nThe unusedparams analyzer checks functions to see if there are\nany parameters that are not being used.\n\nTo reduce false positives it ignores:\n- methods\n- parameters that do not have a name or are underscored\n- functions in test files\n- functions with empty bodies or those with just a return stmt","default":false},"unusedresult":{"type":"boolean","markdownDescription":"check for unused results of calls to some functions\n\nSome functions like fmt.Errorf return a result and have no side\neffects, so it is always a mistake to discard the result. Other\nfunctions may return an error that must not be ignored, or a cleanup\noperation that must be called. This analyzer reports calls to\nfunctions like these when the result of the call is ignored.\n\nThe set of functions may be controlled using flags.","default":true},"unusedvariable":{"type":"boolean","markdownDescription":"check for unused variables\n\nThe unusedvariable analyzer suggests fixes for unused variables errors.\n","default":false},"unusedwrite":{"type":"boolean","markdownDescription":"checks for unused writes\n\nThe analyzer reports instances of writes to struct fields and\narrays that are never read. Specifically, when a struct object\nor an array is copied, its elements are copied implicitly by\nthe compiler, and any element write to this copy does nothing\nwith the original object.\n\nFor example:\n\n\ttype T struct { x int }\n\n\tfunc f(input []T) {\n\t\tfor i, v := range input { // v is a copy\n\t\t\tv.x = i // unused write to field x\n\t\t}\n\t}\n\nAnother example is about non-pointer receiver:\n\n\ttype T struct { x int }\n\n\tfunc (t T) f() { // t is a copy\n\t\tt.x = i // unused write to field x\n\t}","default":false},"useany":{"type":"boolean","markdownDescription":"check for constraints that could be simplified to \"any\"","default":false}}},"ui.diagnostic.annotations":{"type":"object","markdownDescription":"(Experimental) annotations specifies the various kinds of optimization diagnostics\nthat should be reported by the gc_details command.\n","scope":"resource","properties":{"bounds":{"type":"boolean","markdownDescription":"`\"bounds\"` controls bounds checking diagnostics.\n","default":true},"escape":{"type":"boolean","markdownDescription":"`\"escape\"` controls diagnostics about escape choices.\n","default":true},"inline":{"type":"boolean","markdownDescription":"`\"inline\"` controls diagnostics about inlining choices.\n","default":true},"nil":{"type":"boolean","markdownDescription":"`\"nil\"` controls nil checks.\n","default":true}}},"ui.diagnostic.diagnosticsDelay":{"type":"string","markdownDescription":"(Advanced) diagnosticsDelay controls the amount of time that gopls waits\nafter the most recent file modification before computing deep diagnostics.\nSimple diagnostics (parsing and type-checking) are always run immediately\non recently modified packages.\n\nThis option must be set to a valid duration string, for example `\"250ms\"`.\n","default":"1s","scope":"resource"},"ui.diagnostic.staticcheck":{"type":"boolean","markdownDescription":"(Experimental) staticcheck enables additional analyses from staticcheck.io.\nThese analyses are documented on\n[Staticcheck's website](https://staticcheck.io/docs/checks/).\n","default":false,"scope":"resource"},"ui.documentation.hoverKind":{"type":"string","markdownDescription":"hoverKind controls the information that appears in the hover text.\nSingleLine and Structured are intended for use only by authors of editor plugins.\n","enum":["FullDocumentation","NoDocumentation","SingleLine","Structured","SynopsisDocumentation"],"markdownEnumDescriptions":["","","","`\"Structured\"` is an experimental setting that returns a structured hover format.\nThis format separates the signature from the documentation, so that the client\ncan do more manipulation of these fields.\n\nThis should only be used by clients that support this behavior.\n",""],"default":"FullDocumentation","scope":"resource"},"ui.documentation.linkTarget":{"type":"string","markdownDescription":"linkTarget controls where documentation links go.\nIt might be one of:\n\n* `\"godoc.org\"`\n* `\"pkg.go.dev\"`\n\nIf company chooses to use its own `godoc.org`, its address can be used as well.\n\nModules matching the GOPRIVATE environment variable will not have\ndocumentation links in hover.\n","default":"pkg.go.dev","scope":"resource"},"ui.documentation.linksInHover":{"type":"boolean","markdownDescription":"linksInHover toggles the presence of links to documentation in hover.\n","default":true,"scope":"resource"},"ui.navigation.importShortcut":{"type":"string","markdownDescription":"importShortcut specifies whether import statements should link to\ndocumentation or go to definitions.\n","enum":["Both","Definition","Link"],"markdownEnumDescriptions":["","",""],"default":"Both","scope":"resource"},"ui.navigation.symbolMatcher":{"type":"string","markdownDescription":"(Advanced) symbolMatcher sets the algorithm that is used when finding workspace symbols.\n","enum":["CaseInsensitive","CaseSensitive","FastFuzzy","Fuzzy"],"markdownEnumDescriptions":["","","",""],"default":"FastFuzzy","scope":"resource"},"ui.navigation.symbolScope":{"type":"string","markdownDescription":"symbolScope controls which packages are searched for workspace/symbol\nrequests. The default value, \"workspace\", searches only workspace\npackages. The legacy behavior, \"all\", causes all loaded packages to be\nsearched, including dependencies; this is more expensive and may return\nunwanted results.\n","enum":["all","workspace"],"markdownEnumDescriptions":["`\"all\"` matches symbols in any loaded package, including\ndependencies.\n","`\"workspace\"` matches symbols in workspace packages only.\n"],"default":"all","scope":"resource"},"ui.navigation.symbolStyle":{"type":"string","markdownDescription":"(Advanced) symbolStyle controls how symbols are qualified in symbol responses.\n\nExample Usage:\n\n```json5\n\"gopls\": {\n...\n \"symbolStyle\": \"Dynamic\",\n...\n}\n```\n","enum":["Dynamic","Full","Package"],"markdownEnumDescriptions":["`\"Dynamic\"` uses whichever qualifier results in the highest scoring\nmatch for the given symbol query. Here a \"qualifier\" is any \"/\" or \".\"\ndelimited suffix of the fully qualified symbol. i.e. \"to/pkg.Foo.Field\" or\njust \"Foo.Field\".\n","`\"Full\"` is fully qualified symbols, i.e.\n\"path/to/pkg.Foo.Field\".\n","`\"Package\"` is package qualified symbols i.e.\n\"pkg.Foo.Field\".\n"],"default":"Dynamic","scope":"resource"},"ui.noSemanticNumber":{"type":"boolean","markdownDescription":"(Experimental) noSemanticNumber turns off the sending of the semantic token 'number'\n","default":false,"scope":"resource"},"ui.noSemanticString":{"type":"boolean","markdownDescription":"(Experimental) noSemanticString turns off the sending of the semantic token 'string'\n","default":false,"scope":"resource"},"ui.semanticTokens":{"type":"boolean","markdownDescription":"(Experimental) semanticTokens controls whether the LSP server will send\nsemantic tokens to the client.\n","default":false,"scope":"resource"},"verboseOutput":{"type":"boolean","markdownDescription":"(For Debugging) verboseOutput enables additional debug logging.\n","default":false,"scope":"resource"}}},"go.diagnostic.vulncheck":{"type":"string","markdownDescription":"(Experimental) vulncheck enables vulnerability scanning.\n","enum":["Imports","Off"],"markdownEnumDescriptions":["`\"Imports\"`: In Imports mode, `gopls` will report vulnerabilities that affect packages\ndirectly and indirectly used by the analyzed main module.\n","`\"Off\"`: Disable vulnerability analysis.\n"],"default":"Off","scope":"resource"},"go.inlayHints.assignVariableTypes":{"type":"boolean","markdownDescription":"Enable/disable inlay hints for variable types in assign statements:\n```go\n\ti/* int*/, j/* int*/ := 0, len(r)-1\n```","default":false},"go.inlayHints.compositeLiteralFields":{"type":"boolean","markdownDescription":"Enable/disable inlay hints for composite literal field names:\n```go\n\t{/*in: */\"Hello, world\", /*want: */\"dlrow ,olleH\"}\n```","default":false},"go.inlayHints.compositeLiteralTypes":{"type":"boolean","markdownDescription":"Enable/disable inlay hints for composite literal types:\n```go\n\tfor _, c := range []struct {\n\t\tin, want string\n\t}{\n\t\t/*struct{ in string; want string }*/{\"Hello, world\", \"dlrow ,olleH\"},\n\t}\n```","default":false},"go.inlayHints.constantValues":{"type":"boolean","markdownDescription":"Enable/disable inlay hints for constant values:\n```go\n\tconst (\n\t\tKindNone Kind = iota/* = 0*/\n\t\tKindPrint/* = 1*/\n\t\tKindPrintf/* = 2*/\n\t\tKindErrorf/* = 3*/\n\t)\n```","default":false},"go.inlayHints.functionTypeParameters":{"type":"boolean","markdownDescription":"Enable/disable inlay hints for implicit type parameters on generic functions:\n```go\n\tmyFoo/*[int, string]*/(1, \"hello\")\n```","default":false},"go.inlayHints.parameterNames":{"type":"boolean","markdownDescription":"Enable/disable inlay hints for parameter names:\n```go\n\tparseInt(/* str: */ \"123\", /* radix: */ 8)\n```","default":false},"go.inlayHints.rangeVariableTypes":{"type":"boolean","markdownDescription":"Enable/disable inlay hints for variable types in range statements:\n```go\n\tfor k/* int*/, v/* string*/ := range []string{} {\n\t\tfmt.Println(k, v)\n\t}\n```","default":false}}},"menus":{"commandPalette":[{"command":"go.test.refresh","when":"false"},{"command":"go.test.showProfiles","when":"false"},{"command":"go.test.captureProfile","when":"false"},{"command":"go.test.deleteProfile","when":"false"},{"command":"go.test.showProfileFile","when":"false"},{"command":"go.explorer.refresh","when":"false"},{"command":"go.explorer.open","when":"false"}],"editor/context":[{"when":"editorTextFocus && config.go.editorContextMenuCommands.toggleTestFile && resourceLangId == go","command":"go.toggle.test.file","group":"Go group 1"},{"when":"editorTextFocus && config.go.editorContextMenuCommands.addTags && resourceLangId == go","command":"go.add.tags","group":"Go group 1"},{"when":"editorTextFocus && config.go.editorContextMenuCommands.removeTags && resourceLangId == go","command":"go.remove.tags","group":"Go group 1"},{"when":"editorTextFocus && config.go.editorContextMenuCommands.fillStruct && resourceLangId == go","command":"go.fill.struct","group":"Go group 1"},{"when":"editorTextFocus && config.go.editorContextMenuCommands.testAtCursor && resourceLangId == go","command":"go.test.cursor","group":"Go group 1"},{"when":"editorTextFocus && config.go.editorContextMenuCommands.benchmarkAtCursor && resourceLangId == go","command":"go.benchmark.cursor","group":"Go group 1"},{"when":"editorTextFocus && config.go.editorContextMenuCommands.debugTestAtCursor && resourceLangId == go","command":"go.debug.cursor","group":"Go group 1"},{"when":"editorTextFocus && config.go.editorContextMenuCommands.testFile && resourceLangId == go","command":"go.test.file","group":"Go group 1"},{"when":"editorTextFocus && config.go.editorContextMenuCommands.testPackage && resourceLangId == go","command":"go.test.package","group":"Go group 1"},{"when":"editorTextFocus && config.go.editorContextMenuCommands.generateTestForFunction && resourceLangId == go","command":"go.test.generate.function","group":"Go group 1"},{"when":"editorTextFocus && config.go.editorContextMenuCommands.generateTestForFile && resourceLangId == go","command":"go.test.generate.file","group":"Go group 1"},{"when":"editorTextFocus && config.go.editorContextMenuCommands.generateTestForPackage && resourceLangId == go","command":"go.test.generate.package","group":"Go group 1"},{"when":"editorTextFocus && config.go.editorContextMenuCommands.addImport && resourceLangId == go","command":"go.import.add","group":"Go group 1"},{"when":"editorTextFocus && config.go.editorContextMenuCommands.testCoverage && resourceLangId == go","command":"go.test.coverage","group":"Go group 1"},{"when":"editorTextFocus && config.go.editorContextMenuCommands.playground && resourceLangId == go","command":"go.playground","group":"Go group 1"},{"when":"editorTextFocus && resourceLangId == go","command":"go.show.commands","group":"Go group 2"}],"testing/item/context":[{"command":"go.test.refresh","when":"testId in go.tests","group":"inline"},{"command":"go.test.showProfiles","when":"testId in go.profiledTests","group":"profile"},{"command":"go.test.captureProfile","when":"testId in go.tests && testId =~ /\\?(test|benchmark)/","group":"profile"}],"view/title":[{"command":"go.explorer.refresh","when":"view == go.explorer","group":"navigation"}],"view/item/context":[{"command":"go.test.deleteProfile","when":"viewItem == go:test:file"},{"command":"go.explorer.open","when":"viewItem == go:explorer:envfile","group":"inline"},{"command":"go.workspace.editEnv","when":"viewItem =~ /(go:explorer:envtree|go:explorer:envitem)/ && workspaceFolderCount > 0","group":"inline"},{"command":"go.workspace.resetEnv","when":"viewItem =~ /go:explorer:env/ && workspaceFolderCount > 0"}]},"views":{"explorer":[{"id":"go.explorer","name":"go","icon":"media/go-logo-white.svg","when":"go.showExplorer"}],"test":[{"id":"go.test.profile","name":"Profiles","contextualTitle":"Go","icon":"$(graph)","when":"go.hasProfiles"}]},"taskDefinitions":[{"type":"go","required":["command"],"properties":{"label":{"type":"string","description":"the name of go task"},"command":{"type":"string","description":"go command to run","enum":["build","test"],"enumDescriptions":["go build","go test"],"default":"build"},"args":{"type":"array","description":"additional arguments to pass to the go command (including the build target)","items":{"type":"string"}},"options":{"type":"object","description":"additional command options","properties":{"cwd":{"type":"string","description":"the current working directory of the executed program or script. If omitted Code's current workspace root is used."},"env":{"type":"object","markdownDescription":"Environment variables in the format of \"name\": \"value\"."}}}}}]}},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/golang.go-0.39.0-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"d6f6cfea-4b6f-41f4-b571-6ad2ab7918da","publisherId":"dbf6ae0a-da75-4167-ac8b-75b4512f2153","publisherDisplayName":"golang","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691833381010,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"ms-python.python","uuid":"f1f59ae4-9318-4f3c-a9b5-81b2eaa5f8a5"},"manifest":{"name":"python","displayName":"Python","description":"IntelliSense (Pylance), Linting, Debugging (multi-threaded, remote), Jupyter Notebooks, code formatting, refactoring, unit tests, and more.","version":"2023.12.0","featureFlags":{"usingNewInterpreterStorage":true},"capabilities":{"untrustedWorkspaces":{"supported":"limited","description":"Only Partial IntelliSense with Pylance is supported. Cannot execute Python with untrusted files."},"virtualWorkspaces":{"supported":"limited","description":"Only Partial IntelliSense supported."}},"publisher":"ms-python","enabledApiProposals":["contribEditorContentMenu","quickPickSortByLabel","envShellEvent","testObserver","quickPickItemTooltip","envCollectionWorkspace","saveEditor","envCollectionOptions"],"author":{"name":"Microsoft Corporation"},"license":"MIT","homepage":"https://github.com/Microsoft/vscode-python","repository":{"type":"git","url":"https://github.com/Microsoft/vscode-python"},"bugs":{"url":"https://github.com/Microsoft/vscode-python/issues"},"qna":"https://github.com/microsoft/vscode-python/discussions/categories/q-a","icon":"icon.png","galleryBanner":{"color":"#1e415e","theme":"dark"},"engines":{"vscode":"^1.79.0-20230526"},"enableTelemetry":false,"keywords":["python","django","unittest","multi-root ready"],"categories":["Programming Languages","Debuggers","Linters","Formatters","Other","Data Science","Machine Learning","Notebooks"],"activationEvents":["onDebugInitialConfigurations","onLanguage:python","onDebugDynamicConfigurations:python","onDebugResolve:python","onWalkthrough:pythonWelcome","onWalkthrough:pythonWelcomeWithDS","onWalkthrough:pythonDataScienceWelcome","workspaceContains:mspythonconfig.json","workspaceContains:pyproject.toml","workspaceContains:Pipfile","workspaceContains:setup.py","workspaceContains:requirements.txt","workspaceContains:manage.py","workspaceContains:app.py"],"main":"./out/client/extension","browser":"./dist/extension.browser.js","l10n":"./l10n","contributes":{"walkthroughs":[{"id":"pythonWelcome","title":"Get Started with Python Development","description":"Your first steps to set up a Python project with all the powerful tools and features that the Python extension has to offer!","when":"workspacePlatform != webworker","steps":[{"id":"python.createPythonFile","title":"Create a Python file","description":"[Open](command:toSide:workbench.action.files.openFile) or [create](command:toSide:workbench.action.files.newUntitledFile?%7B%22languageId%22%3A%22python%22%7D) a Python file - make sure to save it as \".py\".\n[Create Python File](command:toSide:workbench.action.files.newUntitledFile?%7B%22languageId%22%3A%22python%22%7D)","media":{"svg":"resources/walkthrough/open-folder.svg","altText":"Open a Python file or a folder with a Python project."},"when":""},{"id":"python.installPythonWin8","title":"Install Python","description":"The Python Extension requires Python to be installed. Install Python [from python.org](https://www.python.org/downloads).\n\n[Install Python](https://www.python.org/downloads)\n","media":{"markdown":"resources/walkthrough/install-python-windows-8.md"},"when":"workspacePlatform == windows && showInstallPythonTile"},{"id":"python.installPythonMac","title":"Install Python","description":"The Python Extension requires Python to be installed. Install Python 3 through the terminal.\n[Install Python via Brew](command:python.installPythonOnMac)\n","media":{"markdown":"resources/walkthrough/install-python-macos.md"},"when":"workspacePlatform == mac && showInstallPythonTile","command":"workbench.action.terminal.new"},{"id":"python.installPythonLinux","title":"Install Python","description":"The Python Extension requires Python to be installed. Install Python 3 through the terminal.\n[Install Python via terminal](command:python.installPythonOnLinux)\n","media":{"markdown":"resources/walkthrough/install-python-linux.md"},"when":"workspacePlatform == linux && showInstallPythonTile","command":"workbench.action.terminal.new"},{"id":"python.selectInterpreter","title":"Select a Python Interpreter","description":"Choose which Python interpreter/environment you want to use for your Python project.\n[Select Python Interpreter](command:python.setInterpreter)\n**Tip**: Run the ``Python: Select Interpreter`` command in the [Command Palette](command:workbench.action.showCommands).","media":{"svg":"resources/walkthrough/python-interpreter.svg","altText":"Selecting a Python interpreter from the status bar"},"when":"workspaceFolderCount == 0"},{"id":"python.createEnvironment","title":"Create a Python Environment ","description":"Create an environment for your Python project.\n[Create Environment](command:python.createEnvironment)\n**Tip**: Run the ``Python: Create Environment`` command in the [Command Palette](command:workbench.action.showCommands).\n 🔍 Check out our [docs](https://aka.ms/pythonenvs) to learn more.","media":{"svg":"resources/walkthrough/create-environment.svg","altText":"Creating a Python environment from the Command Palette"},"when":"workspaceFolderCount > 0"},{"id":"python.runAndDebug","title":"Run and debug your Python file","description":"Open your Python file and click on the play button on the top right of the editor, or press F5 when on the file and select \"Python File\" to run with the debugger. \n \n[Learn more](https://code.visualstudio.com/docs/python/python-tutorial#_run-hello-world)","media":{"svg":"resources/walkthrough/rundebug2.svg","altText":"How to run and debug in VS Code with F5 or the play button on the top right."},"when":""},{"id":"python.learnMoreWithDS","title":"Explore more resources","description":"🎨 Explore all the features the Python extension has to offer by looking for \"Python\" in the [Command Palette](command:workbench.action.showCommands). \n 📈 Learn more about getting started with [data science](command:workbench.action.openWalkthrough?%7B%22category%22%3A%22ms-python.python%23pythonDataScienceWelcome%22%2C%22step%22%3A%22ms-python.python%23python.createNewNotebook%22%7D) in Python. \n ✨ Take a look at our [Release Notes](https://aka.ms/AA8dxtb) to learn more about the latest features. \n \n[Learn More](https://aka.ms/AA8dqti)","media":{"altText":"Image representing our documentation page and mailing list resources.","svg":"resources/walkthrough/learnmore.svg"},"when":""}]},{"id":"pythonWelcome2","title":"Get Started with Python Development","description":"Your first steps to set up a Python project with all the powerful tools and features that the Python extension has to offer!","when":"false","steps":[{"id":"python.createPythonFolder","title":"Open a Python project folder","description":"[Open](command:workbench.action.files.openFolder) or create a project folder.\n[Open Project Folder](command:workbench.action.files.openFolder)","media":{"svg":"resources/walkthrough/open-folder.svg","altText":"Open a Python file or a folder with a Python project."},"when":"workspaceFolderCount = 0"},{"id":"python.createPythonFile","title":"Create a Python file","description":"[Open](command:toSide:workbench.action.files.openFile) or [create](command:toSide:workbench.action.files.newUntitledFile?%7B%22languageId%22%3A%22python%22%7D) a Python file - make sure to save it as \".py\".\n[Create Python File](command:toSide:workbench.action.files.newUntitledFile?%7B%22languageId%22%3A%22python%22%7D)","media":{"svg":"resources/walkthrough/open-folder.svg","altText":"Open a Python file or a folder with a Python project."},"when":""},{"id":"python.installPythonWin8","title":"Install Python","description":"The Python Extension requires Python to be installed. Install Python [from python.org](https://www.python.org/downloads).\n\n[Install Python](https://www.python.org/downloads)\n","media":{"markdown":"resources/walkthrough/install-python-windows-8.md"},"when":"workspacePlatform == windows && showInstallPythonTile"},{"id":"python.installPythonMac","title":"Install Python","description":"The Python Extension requires Python to be installed. Install Python 3 through the terminal.\n[Install Python via Brew](command:python.installPythonOnMac)\n","media":{"markdown":"resources/walkthrough/install-python-macos.md"},"when":"workspacePlatform == mac && showInstallPythonTile","command":"workbench.action.terminal.new"},{"id":"python.installPythonLinux","title":"Install Python","description":"The Python Extension requires Python to be installed. Install Python 3 through the terminal.\n[Install Python via terminal](command:python.installPythonOnLinux)\n","media":{"markdown":"resources/walkthrough/install-python-linux.md"},"when":"workspacePlatform == linux && showInstallPythonTile","command":"workbench.action.terminal.new"},{"id":"python.createEnvironment2","title":"Create or select a Python Environment ","description":"Create an environment for your Python project or use [Select Python Interpreter](command:python.setInterpreter) to select an existing one.\n[Create Environment](command:python.createEnvironment)\n**Tip**: Run the ``Python: Create Environment`` command in the [Command Palette](command:workbench.action.showCommands).","media":{"markdown":"resources/walkthrough/environments-info.md"},"when":""},{"id":"python.runAndDebug","title":"Run and debug your Python file","description":"Open your Python file and click on the play button on the top right of the editor, or press F5 when on the file and select \"Python File\" to run with the debugger. \n \n[Learn more](https://code.visualstudio.com/docs/python/python-tutorial#_run-hello-world)","media":{"svg":"resources/walkthrough/rundebug2.svg","altText":"How to run and debug in VS Code with F5 or the play button on the top right."},"when":""},{"id":"python.learnMoreWithDS2","title":"Explore more resources","description":"🎨 Explore all the features the Python extension has to offer by looking for \"Python\" in the [Command Palette](command:workbench.action.showCommands). \n 📈 Learn more about getting started with [data science](command:workbench.action.openWalkthrough?%7B%22category%22%3A%22ms-python.python%23pythonDataScienceWelcome%22%2C%22step%22%3A%22ms-python.python%23python.createNewNotebook%22%7D) in Python. \n ✨ Take a look at our [Release Notes](https://aka.ms/AA8dxtb) to learn more about the latest features. \n \n[Follow along with the Python Tutorial](https://aka.ms/AA8dqti)","media":{"altText":"Image representing our documentation page and mailing list resources.","svg":"resources/walkthrough/learnmore.svg"},"when":""}]},{"id":"pythonDataScienceWelcome","title":"Get Started with Python for Data Science","description":"Your first steps to getting started with a Data Science project with Python!","when":"false","steps":[{"id":"python.installJupyterExt","title":"Install Jupyter extension","description":"If you haven't already, install the [Jupyter extension](command:workbench.extensions.search?\"ms-toolsai.jupyter\") to take full advantage of notebooks experiences in VS Code!\n \n[Search Jupyter extension](command:workbench.extensions.search?\"ms-toolsai.jupyter\")","media":{"svg":"resources/walkthrough/data-science.svg","altText":"Creating a new Jupyter notebook"}},{"id":"python.createNewNotebook","title":"Create or open a Jupyter Notebook","description":"Right click in the file explorer and create a new file with an .ipynb extension. Or, open the [Command Palette](command:workbench.action.showCommands) and run the command \n``Jupyter: Create New Blank Notebook``.\n[Create new Jupyter Notebook](command:toSide:jupyter.createnewnotebook)\n If you have an existing project, you can also [open a folder](command:workbench.action.files.openFolder) and/or clone a project from GitHub: [clone a Git repository](command:git.clone).","media":{"svg":"resources/walkthrough/create-notebook.svg","altText":"Creating a new Jupyter notebook"},"completionEvents":["onCommand:jupyter.createnewnotebook","onCommand:workbench.action.files.openFolder","onCommand:workbench.action.files.openFileFolder"]},{"id":"python.openInteractiveWindow","title":"Open the Python Interactive Window","description":"The Python Interactive Window is a Python shell where you can execute and view the results of your Python code. You can create cells on a Python file by typing ``#%%``.\n \nTo open the interactive window anytime, open the [Command Palette](command:workbench.action.showCommands) and run the command \n``Jupyter: Create Interactive Window``.\n[Open Interactive Window](command:jupyter.createnewinteractive)","media":{"svg":"resources/walkthrough/interactive-window.svg","altText":"Opening Python interactive window"},"completionEvents":["onCommand:jupyter.createnewinteractive"]},{"id":"python.dataScienceLearnMore","title":"Find out more!","description":"📒 Take a look into the [Jupyter extension](command:workbench.extensions.search?\"ms-toolsai.jupyter\") features, by looking for \"Jupyter\" in the [Command Palette](command:workbench.action.showCommands). \n 🏃🏻 Find out more features in our [Tutorials](https://aka.ms/AAdjzpd). \n[Learn more](https://aka.ms/AAdar6q)","media":{"svg":"resources/walkthrough/learnmore.svg","altText":"Image representing our documentation page and mailing list resources."}}]}],"breakpoints":[{"language":"html"},{"language":"jinja"},{"language":"python"},{"language":"django-html"},{"language":"django-txt"}],"commands":[{"title":"New Python File","shortTitle":"Python File","category":"Python","command":"python.createNewFile"},{"category":"Python","command":"python.analysis.restartLanguageServer","title":"Restart Language Server"},{"category":"Python","command":"python.clearCacheAndReload","title":"Clear Cache and Reload Window"},{"category":"Python","command":"python.clearWorkspaceInterpreter","title":"Clear Workspace Interpreter Setting"},{"category":"Python","command":"python.configureTests","title":"Configure Tests"},{"category":"Python","command":"python.createTerminal","title":"Create Terminal"},{"category":"Python","command":"python.createEnvironment","title":"Create Environment..."},{"category":"Python","command":"python.createEnvironment-button","title":"Create Environment..."},{"category":"Python","command":"python.enableLinting","title":"Enable/Disable Linting"},{"category":"Python","command":"python.enableSourceMapSupport","title":"Enable Source Map Support For Extension Debugging"},{"category":"Python","command":"python.execInTerminal","title":"Run Python File in Terminal"},{"category":"Python","command":"python.execInTerminal-icon","icon":"$(play)","title":"Run Python File"},{"category":"Python","command":"python.debugInTerminal","icon":"$(debug-alt)","title":"Debug Python File"},{"category":"Python","command":"python.execSelectionInDjangoShell","title":"Run Selection/Line in Django Shell"},{"category":"Python","command":"python.execSelectionInTerminal","title":"Run Selection/Line in Python Terminal"},{"category":"Python","command":"python.launchTensorBoard","title":"Launch TensorBoard"},{"category":"Python","command":"python.refreshTensorBoard","enablement":"python.hasActiveTensorBoardSession","icon":"$(refresh)","title":"Refresh TensorBoard"},{"category":"Python","command":"python.reportIssue","title":"Report Issue..."},{"category":"Test","command":"testing.reRunFailTests","icon":"$(run-errors)","title":"Rerun Failed Tests"},{"category":"Python","command":"python.runLinting","title":"Run Linting"},{"category":"Python","command":"python.setInterpreter","title":"Select Interpreter"},{"category":"Python","command":"python.setLinter","title":"Select Linter"},{"category":"Python Refactor","command":"python.sortImports","title":"Sort Imports"},{"category":"Python","command":"python.startREPL","title":"Start REPL"},{"category":"Python","command":"python.viewLanguageServerOutput","enablement":"python.hasLanguageServerOutputChannel","title":"Show Language Server Output"},{"category":"Python","command":"python.viewOutput","icon":{"dark":"resources/dark/repl.svg","light":"resources/light/repl.svg"},"title":"Show Output"},{"category":"Python","command":"python.installJupyter","title":"Install the Jupyter extension"}],"configuration":{"properties":{"python.activeStateToolPath":{"default":"state","description":"Path to the State Tool executable for ActiveState runtimes (version 0.36+).","scope":"machine-overridable","type":"string"},"python.autoComplete.extraPaths":{"default":[],"description":"List of paths to libraries and the like that need to be imported by auto complete engine. E.g. when using Google App SDK, the paths are not in system path, hence need to be added into this list.","scope":"resource","type":"array","uniqueItems":true},"python.createEnvironment.contentButton":{"default":"show","markdownDescription":"Show or hide Create Environment button in the editor for `requirements.txt` or other dependency files.","scope":"machine-overridable","type":"string","enum":["show","hide"],"tags":["experimental"]},"python.condaPath":{"default":"","description":"Path to the conda executable to use for activation (version 4.4+).","scope":"machine","type":"string"},"python.defaultInterpreterPath":{"default":"python","markdownDescription":"Path to default Python to use when extension loads up for the first time, no longer used once an interpreter is selected for the workspace. See [here](https://aka.ms/AAfekmf) to understand when this is used","scope":"machine-overridable","type":"string"},"python.diagnostics.sourceMapsEnabled":{"default":false,"description":"Enable source map support for meaningful stack traces in error logs.","scope":"application","type":"boolean"},"python.envFile":{"default":"${workspaceFolder}/.env","description":"Absolute path to a file containing environment variable definitions.","scope":"resource","type":"string"},"python.experiments.enabled":{"default":true,"description":"Enables A/B tests experiments in the Python extension. If enabled, you may get included in proposed enhancements and/or features.","scope":"machine","type":"boolean"},"python.experiments.optInto":{"default":[],"markdownDescription":"List of experiment to opt into. If empty, user is assigned the default experiment groups. See [here](https://github.com/microsoft/vscode-python/wiki/AB-Experiments) for more details.","items":{"enum":["All","pythonSurveyNotification","pythonPromptNewToolsExt","pythonTerminalEnvVarActivation","pythonTestAdapter"],"enumDescriptions":["Combined list of all experiments.","Denotes the Python Survey Notification experiment.","Denotes the Python Prompt New Tools Extension experiment.","Enables use of environment variables to activate terminals instead of sending activation commands.","Denotes the Python Test Adapter experiment."]},"scope":"machine","type":"array","uniqueItems":true},"python.experiments.optOutFrom":{"default":[],"markdownDescription":"List of experiment to opt out of. If empty, user is assigned the default experiment groups. See [here](https://github.com/microsoft/vscode-python/wiki/AB-Experiments) for more details.","items":{"enum":["All","pythonSurveyNotification","pythonPromptNewToolsExt","pythonTerminalEnvVarActivation","pythonTestAdapter"],"enumDescriptions":["Combined list of all experiments.","Denotes the Python Survey Notification experiment.","Denotes the Python Prompt New Tools Extension experiment.","Enables use of environment variables to activate terminals instead of sending activation commands.","Denotes the Python Test Adapter experiment."]},"scope":"machine","type":"array","uniqueItems":true},"python.formatting.autopep8Args":{"default":[],"description":"Arguments passed in. Each argument is a separate item in the array.","items":{"type":"string"},"scope":"resource","type":"array"},"python.formatting.autopep8Path":{"default":"autopep8","description":"Path to autopep8, you can use a custom version of autopep8 by modifying this setting to include the full path.","scope":"machine-overridable","type":"string"},"python.formatting.blackArgs":{"default":[],"description":"Arguments passed in. Each argument is a separate item in the array.","items":{"type":"string"},"scope":"resource","type":"array"},"python.formatting.blackPath":{"default":"black","description":"Path to Black, you can use a custom version of Black by modifying this setting to include the full path.","scope":"machine-overridable","type":"string"},"python.formatting.provider":{"default":"autopep8","description":"Provider for formatting. Possible options include 'autopep8', 'black', and 'yapf'.","enum":["autopep8","black","none","yapf"],"scope":"resource","type":"string"},"python.formatting.yapfArgs":{"default":[],"description":"Arguments passed in. Each argument is a separate item in the array.","items":{"type":"string"},"scope":"resource","type":"array"},"python.formatting.yapfPath":{"default":"yapf","description":"Path to yapf, you can use a custom version of yapf by modifying this setting to include the full path.","scope":"machine-overridable","type":"string"},"python.globalModuleInstallation":{"default":false,"description":"Whether to install Python modules globally when not using an environment.","scope":"resource","type":"boolean"},"python.languageServer":{"default":"Default","description":"Defines type of the language server.","enum":["Default","Jedi","Pylance","None"],"enumDescriptions":["Automatically select a language server: Pylance if installed and available, otherwise fallback to Jedi.","Use Jedi behind the Language Server Protocol (LSP) as a language server.","Use Pylance as a language server.","Disable language server capabilities."],"scope":"window","type":"string"},"python.linting.banditArgs":{"default":[],"description":"Arguments passed in. Each argument is a separate item in the array.","items":{"type":"string"},"scope":"resource","type":"array"},"python.linting.banditEnabled":{"default":false,"description":"Whether to lint Python files using bandit.","scope":"resource","type":"boolean"},"python.linting.banditPath":{"default":"bandit","description":"Path to bandit, you can use a custom version of bandit by modifying this setting to include the full path.","scope":"machine-overridable","type":"string"},"python.linting.cwd":{"default":null,"description":"Optional working directory for linters.","scope":"resource","type":"string"},"python.linting.enabled":{"default":true,"description":"Whether to lint Python files.","scope":"resource","type":"boolean"},"python.linting.flake8Args":{"default":[],"description":"Arguments passed in. Each argument is a separate item in the array.","items":{"type":"string"},"scope":"resource","type":"array"},"python.linting.flake8CategorySeverity.E":{"default":"Error","description":"Severity of Flake8 message type 'E'.","enum":["Error","Hint","Information","Warning"],"scope":"resource","type":"string"},"python.linting.flake8CategorySeverity.F":{"default":"Error","description":"Severity of Flake8 message type 'F'.","enum":["Error","Hint","Information","Warning"],"scope":"resource","type":"string"},"python.interpreter.infoVisibility":{"default":"onPythonRelated","description":"Controls when to display information of selected interpreter in the status bar.","enum":["never","onPythonRelated","always"],"enumDescriptions":["Never display information.","Only display information if Python-related files are opened.","Always display information."],"scope":"machine","type":"string"},"python.linting.flake8CategorySeverity.W":{"default":"Warning","description":"Severity of Flake8 message type 'W'.","enum":["Error","Hint","Information","Warning"],"scope":"resource","type":"string"},"python.linting.flake8Enabled":{"default":false,"description":"Whether to lint Python files using flake8.","scope":"resource","type":"boolean"},"python.linting.flake8Path":{"default":"flake8","description":"Path to flake8, you can use a custom version of flake8 by modifying this setting to include the full path.","scope":"machine-overridable","type":"string"},"python.linting.ignorePatterns":{"default":["**/site-packages/**/*.py",".vscode/*.py"],"description":"Patterns used to exclude files or folders from being linted.","items":{"type":"string"},"scope":"resource","type":"array","uniqueItems":true},"python.linting.lintOnSave":{"default":true,"description":"Whether to lint Python files when saved.","scope":"resource","type":"boolean"},"python.linting.maxNumberOfProblems":{"default":100,"description":"Controls the maximum number of problems produced by the server.","scope":"resource","type":"number"},"python.linting.mypyArgs":{"default":["--follow-imports=silent","--ignore-missing-imports","--show-column-numbers","--no-pretty"],"description":"Arguments passed in. Each argument is a separate item in the array.","items":{"type":"string"},"scope":"resource","type":"array"},"python.linting.mypyCategorySeverity.error":{"default":"Error","description":"Severity of Mypy message type 'Error'.","enum":["Error","Hint","Information","Warning"],"scope":"resource","type":"string"},"python.linting.mypyCategorySeverity.note":{"default":"Information","description":"%python.linting.mypyCategorySeverity.note.description%.","enum":["Error","Hint","Information","Warning"],"scope":"resource","type":"string"},"python.linting.mypyEnabled":{"default":false,"description":"Whether to lint Python files using mypy.","scope":"resource","type":"boolean"},"python.linting.mypyPath":{"default":"mypy","description":"Path to mypy, you can use a custom version of mypy by modifying this setting to include the full path.","scope":"machine-overridable","type":"string"},"python.linting.prospectorArgs":{"default":[],"description":"Arguments passed in. Each argument is a separate item in the array.","items":{"type":"string"},"scope":"resource","type":"array"},"python.linting.prospectorEnabled":{"default":false,"description":"Whether to lint Python files using prospector.","scope":"resource","type":"boolean"},"python.linting.prospectorPath":{"default":"prospector","description":"Path to Prospector, you can use a custom version of prospector by modifying this setting to include the full path.","scope":"machine-overridable","type":"string"},"python.linting.pycodestyleArgs":{"default":[],"description":"Arguments passed in. Each argument is a separate item in the array.","items":{"type":"string"},"scope":"resource","type":"array"},"python.linting.pycodestyleCategorySeverity.E":{"default":"Error","description":"Severity of pycodestyle message type 'E'.","enum":["Error","Hint","Information","Warning"],"scope":"resource","type":"string"},"python.linting.pycodestyleCategorySeverity.W":{"default":"Warning","description":"Severity of pycodestyle message type 'W'.","enum":["Error","Hint","Information","Warning"],"scope":"resource","type":"string"},"python.linting.pycodestyleEnabled":{"default":false,"description":"Whether to lint Python files using pycodestyle.","scope":"resource","type":"boolean"},"python.linting.pycodestylePath":{"default":"pycodestyle","description":"Path to pycodestyle, you can use a custom version of pycodestyle by modifying this setting to include the full path.","scope":"machine-overridable","type":"string"},"python.linting.pydocstyleArgs":{"default":[],"description":"Arguments passed in. Each argument is a separate item in the array.","items":{"type":"string"},"scope":"resource","type":"array"},"python.linting.pydocstyleEnabled":{"default":false,"description":"Whether to lint Python files using pydocstyle.","scope":"resource","type":"boolean"},"python.linting.pydocstylePath":{"default":"pydocstyle","description":"Path to pydocstyle, you can use a custom version of pydocstyle by modifying this setting to include the full path.","scope":"machine-overridable","type":"string"},"python.linting.pylamaArgs":{"default":[],"description":"Arguments passed in. Each argument is a separate item in the array.","items":{"type":"string"},"scope":"resource","type":"array"},"python.linting.pylamaEnabled":{"default":false,"description":"Whether to lint Python files using pylama.","scope":"resource","type":"boolean"},"python.linting.pylamaPath":{"default":"pylama","description":"Path to pylama, you can use a custom version of pylama by modifying this setting to include the full path.","scope":"machine-overridable","type":"string"},"python.linting.pylintArgs":{"default":[],"description":"Arguments passed in. Each argument is a separate item in the array.","items":{"type":"string"},"scope":"resource","type":"array"},"python.linting.pylintCategorySeverity.convention":{"default":"Information","description":"Severity of Pylint message type 'Convention/C'.","enum":["Error","Hint","Information","Warning"],"scope":"resource","type":"string"},"python.linting.pylintCategorySeverity.error":{"default":"Error","description":"Severity of Pylint message type 'Error/E'.","enum":["Error","Hint","Information","Warning"],"scope":"resource","type":"string"},"python.linting.pylintCategorySeverity.fatal":{"default":"Error","description":"Severity of Pylint message type 'Error/F'.","enum":["Error","Hint","Information","Warning"],"scope":"resource","type":"string"},"python.linting.pylintCategorySeverity.refactor":{"default":"Hint","description":"Severity of Pylint message type 'Refactor/R'.","enum":["Error","Hint","Information","Warning"],"scope":"resource","type":"string"},"python.linting.pylintCategorySeverity.warning":{"default":"Warning","description":"Severity of Pylint message type 'Warning/W'.","enum":["Error","Hint","Information","Warning"],"scope":"resource","type":"string"},"python.linting.pylintEnabled":{"default":false,"description":"Whether to lint Python files using pylint.","scope":"resource","type":"boolean"},"python.linting.pylintPath":{"default":"pylint","description":"Path to Pylint, you can use a custom version of pylint by modifying this setting to include the full path.","scope":"machine-overridable","type":"string"},"python.logging.level":{"default":"error","deprecationMessage":"This setting is deprecated. Please use command `Developer: Set Log Level...` to set logging level.","description":"The logging level the extension logs at, defaults to 'error'","enum":["debug","error","info","off","warn"],"scope":"machine","type":"string"},"python.pipenvPath":{"default":"pipenv","description":"Path to the pipenv executable to use for activation.","scope":"machine-overridable","type":"string"},"python.poetryPath":{"default":"poetry","description":"Path to the poetry executable.","scope":"machine-overridable","type":"string"},"python.sortImports.args":{"default":[],"description":"Arguments passed in. Each argument is a separate item in the array.","items":{"type":"string"},"scope":"resource","type":"array","deprecationMessage":"This setting will be removed soon. Use 'isort.args' instead."},"python.sortImports.path":{"default":"","description":"Path to isort script, default using inner version","scope":"machine-overridable","type":"string","deprecationMessage":"This setting will be removed soon. Use 'isort.path' instead."},"python.tensorBoard.logDirectory":{"default":"","description":"Set this setting to your preferred TensorBoard log directory to skip log directory prompt when starting TensorBoard.","scope":"resource","type":"string"},"python.terminal.activateEnvInCurrentTerminal":{"default":false,"description":"Activate Python Environment in the current Terminal on load of the Extension.","scope":"resource","type":"boolean"},"python.terminal.activateEnvironment":{"default":true,"description":"Activate Python Environment in all Terminals created.","scope":"resource","type":"boolean"},"python.terminal.executeInFileDir":{"default":false,"description":"When executing a file in the terminal, whether to use execute in the file's directory, instead of the current open folder.","scope":"resource","type":"boolean"},"python.terminal.focusAfterLaunch":{"default":false,"description":"When launching a python terminal, whether to focus the cursor on the terminal.","scope":"resource","type":"boolean"},"python.terminal.launchArgs":{"default":[],"description":"Python launch arguments to use when executing a file in the terminal.","scope":"resource","type":"array"},"python.testing.autoTestDiscoverOnSaveEnabled":{"default":true,"description":"Enable auto run test discovery when saving a test file.","scope":"resource","type":"boolean"},"python.testing.cwd":{"default":null,"description":"Optional working directory for tests.","scope":"resource","type":"string"},"python.testing.debugPort":{"default":3000,"description":"Port number used for debugging of tests.","scope":"resource","type":"number"},"python.testing.promptToConfigure":{"default":true,"description":"Prompt to configure a test framework if potential tests directories are discovered.","scope":"resource","type":"boolean"},"python.testing.pytestArgs":{"default":[],"description":"Arguments passed in. Each argument is a separate item in the array.","items":{"type":"string"},"scope":"resource","type":"array"},"python.testing.pytestEnabled":{"default":false,"description":"Enable testing using pytest.","scope":"resource","type":"boolean"},"python.testing.pytestPath":{"default":"pytest","description":"Path to pytest (pytest), you can use a custom version of pytest by modifying this setting to include the full path.","scope":"machine-overridable","type":"string"},"python.testing.unittestArgs":{"default":["-v","-s",".","-p","*test*.py"],"description":"Arguments passed in. Each argument is a separate item in the array.","items":{"type":"string"},"scope":"resource","type":"array"},"python.testing.unittestEnabled":{"default":false,"description":"Enable testing using unittest.","scope":"resource","type":"boolean"},"python.venvFolders":{"default":[],"description":"Folders in your home directory to look into for virtual environments (supports pyenv, direnv and virtualenvwrapper by default).","items":{"type":"string"},"scope":"machine","type":"array","uniqueItems":true},"python.venvPath":{"default":"","description":"Path to folder with a list of Virtual Environments (e.g. ~/.pyenv, ~/Envs, ~/.virtualenvs).","scope":"machine","type":"string"}},"title":"Python","type":"object"},"debuggers":[{"configurationAttributes":{"attach":{"properties":{"connect":{"label":"Attach by connecting to debugpy over a socket.","properties":{"host":{"default":"127.0.0.1","description":"Hostname or IP address to connect to.","type":"string"},"port":{"description":"Port to connect to.","type":"number"}},"required":["port"],"type":"object"},"debugAdapterPath":{"description":"Path (fully qualified) to the python debug adapter executable.","type":"string"},"django":{"default":false,"description":"Django debugging.","type":"boolean"},"host":{"default":"127.0.0.1","description":"Hostname or IP address to connect to.","type":"string"},"jinja":{"default":null,"description":"Jinja template debugging (e.g. Flask).","enum":[false,null,true]},"justMyCode":{"default":true,"description":"If true, show and debug only user-written code. If false, show and debug all code, including library calls.","type":"boolean"},"listen":{"label":"Attach by listening for incoming socket connection from debugpy","properties":{"host":{"default":"127.0.0.1","description":"Hostname or IP address of the interface to listen on.","type":"string"},"port":{"description":"Port to listen on.","type":"number"}},"required":["port"],"type":"object"},"logToFile":{"default":false,"description":"Enable logging of debugger events to a log file.","type":"boolean"},"pathMappings":{"default":[],"items":{"label":"Path mapping","properties":{"localRoot":{"default":"${workspaceFolder}","label":"Local source root.","type":"string"},"remoteRoot":{"default":"","label":"Remote source root.","type":"string"}},"required":["localRoot","remoteRoot"],"type":"object"},"label":"Path mappings.","type":"array"},"port":{"description":"Port to connect to.","type":"number"},"processId":{"anyOf":[{"default":"${command:pickProcess}","description":"Use process picker to select a process to attach, or Process ID as integer.","enum":["${command:pickProcess}"]},{"description":"ID of the local process to attach to.","type":"integer"}]},"redirectOutput":{"default":true,"description":"Redirect output.","type":"boolean"},"showReturnValue":{"default":true,"description":"Show return value of functions when stepping.","type":"boolean"},"subProcess":{"default":false,"description":"Whether to enable Sub Process debugging","type":"boolean"}}},"launch":{"properties":{"args":{"default":[],"description":"Command line arguments passed to the program.","items":{"type":"string"},"type":["array","string"]},"autoReload":{"default":{},"description":"Configures automatic reload of code on edit.","properties":{"enable":{"default":false,"description":"Automatically reload code on edit.","type":"boolean"},"exclude":{"default":["**/.git/**","**/.metadata/**","**/__pycache__/**","**/node_modules/**","**/site-packages/**"],"description":"Glob patterns of paths to exclude from auto reload.","items":{"type":"string"},"type":"array"},"include":{"default":["**/*.py","**/*.pyw"],"description":"Glob patterns of paths to include in auto reload.","items":{"type":"string"},"type":"array"}},"type":"object"},"console":{"default":"integratedTerminal","description":"Where to launch the debug target: internal console, integrated terminal, or external terminal.","enum":["externalTerminal","integratedTerminal","internalConsole"]},"cwd":{"default":"${workspaceFolder}","description":"Absolute path to the working directory of the program being debugged. Default is the root directory of the file (leave empty).","type":"string"},"debugAdapterPath":{"description":"Path (fully qualified) to the python debug adapter executable.","type":"string"},"django":{"default":false,"description":"Django debugging.","type":"boolean"},"env":{"additionalProperties":{"type":"string"},"default":{},"description":"Environment variables defined as a key value pair. Property ends up being the Environment Variable and the value of the property ends up being the value of the Env Variable.","type":"object"},"envFile":{"default":"${workspaceFolder}/.env","description":"Absolute path to a file containing environment variable definitions.","type":"string"},"gevent":{"default":false,"description":"Enable debugging of gevent monkey-patched code.","type":"boolean"},"host":{"default":"localhost","description":"IP address of the of the local debug server (default is localhost).","type":"string"},"jinja":{"default":null,"description":"Jinja template debugging (e.g. Flask).","enum":[false,null,true]},"justMyCode":{"default":true,"description":"Debug only user-written code.","type":"boolean"},"logToFile":{"default":false,"description":"Enable logging of debugger events to a log file.","type":"boolean"},"module":{"default":"","description":"Name of the module to be debugged.","type":"string"},"pathMappings":{"default":[],"items":{"label":"Path mapping","properties":{"localRoot":{"default":"${workspaceFolder}","label":"Local source root.","type":"string"},"remoteRoot":{"default":"","label":"Remote source root.","type":"string"}},"required":["localRoot","remoteRoot"],"type":"object"},"label":"Path mappings.","type":"array"},"port":{"default":0,"description":"Debug port (default is 0, resulting in the use of a dynamic port).","type":"number"},"program":{"default":"${file}","description":"Absolute path to the program.","type":"string"},"purpose":{"default":[],"description":"Tells extension to use this configuration for test debugging, or when using debug-in-terminal command.","items":{"enum":["debug-test","debug-in-terminal"],"enumDescriptions":["Use this configuration while debugging tests using test view or test debug commands.","Use this configuration while debugging a file using debug in terminal button in the editor."]},"type":"array"},"pyramid":{"default":false,"description":"Whether debugging Pyramid applications","type":"boolean"},"python":{"default":"${command:python.interpreterPath}","description":"Absolute path to the Python interpreter executable; overrides workspace configuration if set.","type":"string"},"pythonArgs":{"default":[],"description":"Command-line arguments passed to the Python interpreter. To pass arguments to the debug target, use \"args\".","items":{"type":"string"},"type":"array"},"redirectOutput":{"default":true,"description":"Redirect output.","type":"boolean"},"showReturnValue":{"default":true,"description":"Show return value of functions when stepping.","type":"boolean"},"stopOnEntry":{"default":false,"description":"Automatically stop after launch.","type":"boolean"},"subProcess":{"default":false,"description":"Whether to enable Sub Process debugging","type":"boolean"},"sudo":{"default":false,"description":"Running debug program under elevated permissions (on Unix).","type":"boolean"}}}},"configurationSnippets":[],"label":"Python","languages":["python"],"type":"python","variables":{"pickProcess":"python.pickLocalProcess"},"when":"!virtualWorkspace && shellExecutionSupported"}],"grammars":[{"language":"pip-requirements","path":"./syntaxes/pip-requirements.tmLanguage.json","scopeName":"source.pip-requirements"}],"jsonValidation":[{"fileMatch":".condarc","url":"./schemas/condarc.json"},{"fileMatch":"environment.yml","url":"./schemas/conda-environment.json"},{"fileMatch":"meta.yaml","url":"./schemas/conda-meta.json"}],"keybindings":[{"command":"python.execSelectionInTerminal","key":"shift+enter","when":"editorTextFocus && editorLangId == python && !findInputFocussed && !replaceInputFocussed && !jupyter.ownsSelection && !notebookEditorFocused"},{"command":"python.refreshTensorBoard","key":"ctrl+r","mac":"cmd+r","when":"python.hasActiveTensorBoardSession"}],"languages":[{"aliases":["Jinja"],"extensions":[".j2",".jinja2"],"id":"jinja"},{"aliases":["pip requirements","requirements.txt"],"configuration":"./languages/pip-requirements.json","filenamePatterns":["**/*requirements*.{txt, in}","**/*constraints*.txt","**/requirements/*.{txt,in}","**/constraints/*.txt"],"filenames":["constraints.txt","requirements.in","requirements.txt"],"id":"pip-requirements"},{"filenames":[".condarc"],"id":"yaml"},{"filenames":[".flake8",".pep8",".pylintrc",".pypirc"],"id":"ini"},{"filenames":["Pipfile","poetry.lock"],"id":"toml"},{"filenames":["Pipfile.lock"],"id":"json"}],"menus":{"commandPalette":[{"category":"Python","command":"python.analysis.restartLanguageServer","title":"Restart Language Server","when":"!virtualWorkspace && shellExecutionSupported && editorLangId == python"},{"category":"Python","command":"python.clearCacheAndReload","title":"Clear Cache and Reload Window","when":"!virtualWorkspace && shellExecutionSupported"},{"category":"Python","command":"python.clearWorkspaceInterpreter","title":"Clear Workspace Interpreter Setting","when":"!virtualWorkspace && shellExecutionSupported && editorLangId == python"},{"category":"Python","command":"python.configureTests","title":"Configure Tests","when":"!virtualWorkspace && shellExecutionSupported"},{"category":"Python","command":"python.createEnvironment","title":"Create Environment...","when":"!virtualWorkspace && shellExecutionSupported"},{"category":"Python","command":"python.createEnvironment-button","title":"Create Environment...","when":"false"},{"category":"Python","command":"python.createTerminal","title":"Create Terminal","when":"!virtualWorkspace && shellExecutionSupported"},{"category":"Python","command":"python.enableLinting","title":"Enable/Disable Linting","when":"!virtualWorkspace && shellExecutionSupported && editorLangId == python"},{"category":"Python","command":"python.enableSourceMapSupport","title":"Enable Source Map Support For Extension Debugging","when":"!virtualWorkspace && shellExecutionSupported"},{"category":"Python","command":"python.execInTerminal","title":"Run Python File in Terminal","when":"!virtualWorkspace && shellExecutionSupported && editorLangId == python"},{"category":"Python","command":"python.execInTerminal-icon","icon":"$(play)","title":"Run Python File","when":"false"},{"category":"Python","command":"python.debugInTerminal","icon":"$(debug-alt)","title":"Debug Python File","when":"!virtualWorkspace && shellExecutionSupported && editorLangId == python"},{"category":"Python","command":"python.execSelectionInDjangoShell","title":"Run Selection/Line in Django Shell","when":"!virtualWorkspace && shellExecutionSupported && editorLangId == python"},{"category":"Python","command":"python.execSelectionInTerminal","title":"Run Selection/Line in Python Terminal","when":"!virtualWorkspace && shellExecutionSupported && editorLangId == python"},{"category":"Python","command":"python.launchTensorBoard","title":"Launch TensorBoard","when":"!virtualWorkspace && shellExecutionSupported"},{"category":"Python","command":"python.refreshTensorBoard","enablement":"python.hasActiveTensorBoardSession","icon":"$(refresh)","title":"Refresh TensorBoard","when":"!virtualWorkspace && shellExecutionSupported"},{"category":"Python","command":"python.reportIssue","title":"Report Issue...","when":"!virtualWorkspace && shellExecutionSupported"},{"category":"Test","command":"testing.reRunFailTests","icon":"$(run-errors)","title":"Rerun Failed Tests","when":"!virtualWorkspace && shellExecutionSupported"},{"category":"Python","command":"python.runLinting","title":"Run Linting","when":"!virtualWorkspace && shellExecutionSupported && editorLangId == python"},{"category":"Python","command":"python.setInterpreter","title":"Select Interpreter","when":"!virtualWorkspace && shellExecutionSupported"},{"category":"Python","command":"python.setLinter","title":"Select Linter","when":"!virtualWorkspace && shellExecutionSupported && editorLangId == python"},{"category":"Python Refactor","command":"python.sortImports","title":"Sort Imports","when":"!virtualWorkspace && shellExecutionSupported && editorLangId == python"},{"category":"Python","command":"python.startREPL","title":"Start REPL","when":"!virtualWorkspace && shellExecutionSupported"},{"category":"Python","command":"python.viewLanguageServerOutput","enablement":"python.hasLanguageServerOutputChannel","title":"Show Language Server Output","when":"!virtualWorkspace && shellExecutionSupported"},{"category":"Python","command":"python.viewOutput","title":"Show Output","when":"!virtualWorkspace && shellExecutionSupported"}],"editor/content":[{"group":"Python","command":"python.createEnvironment-button","when":"showCreateEnvButton && resourceLangId == pip-requirements && !virtualWorkspace && shellExecutionSupported && !inDiffEditor && !isMergeResultEditor && pythonDepsNotInstalled"},{"group":"Python","command":"python.createEnvironment-button","when":"showCreateEnvButton && resourceFilename == pyproject.toml && pipInstallableToml && !virtualWorkspace && shellExecutionSupported && !inDiffEditor && !isMergeResultEditor && pythonDepsNotInstalled"}],"editor/context":[{"submenu":"python.run","group":"Python","when":"editorLangId == python && !virtualWorkspace && shellExecutionSupported && isWorkspaceTrusted"},{"command":"python.sortImports","group":"Refactor","title":"Sort Imports","when":"editorLangId == python && !notebookEditorFocused && !virtualWorkspace && shellExecutionSupported"},{"submenu":"python.runFileInteractive","group":"Jupyter2","when":"editorLangId == python && !virtualWorkspace && shellExecutionSupported && !isJupyterInstalled && isWorkspaceTrusted"}],"python.runFileInteractive":[{"command":"python.installJupyter","group":"Jupyter2","when":"resourceLangId == python && !virtualWorkspace && shellExecutionSupported"}],"python.run":[{"command":"python.execInTerminal","group":"Python","when":"resourceLangId == python && !virtualWorkspace && shellExecutionSupported"},{"command":"python.execSelectionInDjangoShell","group":"Python","when":"editorHasSelection && editorLangId == python && python.isDjangoProject && !virtualWorkspace && shellExecutionSupported"},{"command":"python.execSelectionInTerminal","group":"Python","when":"editorFocus && editorLangId == python && !virtualWorkspace && shellExecutionSupported"}],"editor/title":[{"command":"python.refreshTensorBoard","group":"navigation@0","when":"python.hasActiveTensorBoardSession && !virtualWorkspace && shellExecutionSupported"}],"editor/title/run":[{"command":"python.execInTerminal-icon","group":"navigation@0","title":"Run Python File","when":"resourceLangId == python && !isInDiffEditor && !virtualWorkspace && shellExecutionSupported"},{"command":"python.debugInTerminal","group":"navigation@1","title":"Debug Python File","when":"resourceLangId == python && !isInDiffEditor && !virtualWorkspace && shellExecutionSupported"}],"explorer/context":[{"command":"python.execInTerminal","group":"Python","when":"resourceLangId == python && !virtualWorkspace && shellExecutionSupported"}],"file/newFile":[{"command":"python.createNewFile","group":"file","when":"!virtualWorkspace"}],"view/title":[{"command":"testing.reRunFailTests","when":"view == workbench.view.testing && hasFailedTests && !virtualWorkspace && shellExecutionSupported","group":"navigation@1"}]},"submenus":[{"id":"python.run","label":"Run Python","icon":"$(play)"},{"id":"python.runFileInteractive","label":"Run in Interactive window"}],"viewsWelcome":[{"view":"testing","contents":"Configure a test framework to see your tests here.\n[Configure Python Tests](command:python.configureTests)","when":"!virtualWorkspace && shellExecutionSupported"}],"yamlValidation":[{"fileMatch":".condarc","url":"./schemas/condarc.json"},{"fileMatch":"environment.yml","url":"./schemas/conda-environment.json"},{"fileMatch":"meta.yaml","url":"./schemas/conda-meta.json"}]},"scripts":{"package":"gulp clean && gulp prePublishBundle && vsce package -o ms-python-insiders.vsix","prePublish":"gulp clean && gulp prePublishNonBundle","compile":"tsc -watch -p ./","compiled":"deemon npm run compile","kill-compiled":"deemon --kill npm run compile","checkDependencies":"gulp checkDependencies","test":"node ./out/test/standardTest.js && node ./out/test/multiRootTest.js","test:unittests":"mocha --config ./build/.mocha.unittests.json","test:unittests:cover":"nyc --no-clean --nycrc-path ./build/.nycrc mocha --config ./build/.mocha.unittests.json","test:functional":"mocha --require source-map-support/register --config ./build/.mocha.functional.json","test:functional:perf":"node --inspect-brk ./node_modules/mocha/bin/_mocha --require source-map-support/register --config ./build/.mocha.functional.perf.json","test:functional:memleak":"node --inspect-brk ./node_modules/mocha/bin/_mocha --require source-map-support/register --config ./build/.mocha.functional.json","test:functional:cover":"nyc --no-clean --nycrc-path ./build/.nycrc mocha --require source-map-support/register --config ./build/.mocha.functional.json","test:cover:report":"nyc --nycrc-path ./build/.nycrc report --reporter=text --reporter=html --reporter=text-summary --reporter=cobertura","testDebugger":"node ./out/test/testBootstrap.js ./out/test/debuggerTest.js","testDebugger:cover":"nyc --no-clean --use-spawn-wrap --nycrc-path ./build/.nycrc --require source-map-support/register node ./out/test/debuggerTest.js","testSingleWorkspace":"node ./out/test/testBootstrap.js ./out/test/standardTest.js","testSingleWorkspace:cover":"nyc --no-clean --use-spawn-wrap --nycrc-path ./build/.nycrc --require source-map-support/register node ./out/test/standardTest.js","preTestJediLSP":"node ./out/test/languageServers/jedi/lspSetup.js","testJediLSP":"node ./out/test/languageServers/jedi/lspSetup.js && cross-env CODE_TESTS_WORKSPACE=src/test VSC_PYTHON_CI_TEST_GREP='Language Server:' node ./out/test/testBootstrap.js ./out/test/standardTest.js && node ./out/test/languageServers/jedi/lspTeardown.js","testMultiWorkspace":"node ./out/test/testBootstrap.js ./out/test/multiRootTest.js","testPerformance":"node ./out/test/testBootstrap.js ./out/test/performanceTest.js","testSmoke":"cross-env INSTALL_JUPYTER_EXTENSION=true \"node ./out/test/smokeTest.js\"","testInsiders":"cross-env VSC_PYTHON_CI_TEST_VSC_CHANNEL=insiders INSTALL_PYLANCE_EXTENSION=true TEST_FILES_SUFFIX=insiders.test CODE_TESTS_WORKSPACE=src/testMultiRootWkspc/smokeTests \"node ./out/test/standardTest.js\"","lint-staged":"node gulpfile.js","lint":"eslint --ext .ts,.js src build","lint-fix":"eslint --fix --ext .ts,.js src build gulpfile.js","format-check":"prettier --check 'src/**/*.ts' 'build/**/*.js' '.github/**/*.yml' gulpfile.js","format-fix":"prettier --write 'src/**/*.ts' 'build/**/*.js' '.github/**/*.yml' gulpfile.js","clean":"gulp clean","addExtensionPackDependencies":"gulp addExtensionPackDependencies","updateBuildNumber":"gulp updateBuildNumber","verifyBundle":"gulp verifyBundle","webpack":"webpack"},"dependencies":{"@iarna/toml":"^2.2.5","@vscode/extension-telemetry":"^0.7.7","@vscode/jupyter-lsp-middleware":"^0.2.50","arch":"^2.1.0","diff-match-patch":"^1.0.0","fs-extra":"^10.0.1","glob":"^7.2.0","hash.js":"^1.1.7","iconv-lite":"^0.6.3","inversify":"^5.0.4","jsonc-parser":"^3.0.0","lodash":"^4.17.21","md5":"^2.2.1","minimatch":"^5.0.1","named-js-regexp":"^1.3.3","node-stream-zip":"^1.6.0","reflect-metadata":"^0.1.12","rxjs":"^6.5.4","rxjs-compat":"^6.5.4","semver":"^5.5.0","stack-trace":"0.0.10","sudo-prompt":"^9.2.1","tmp":"^0.0.33","uint64be":"^3.0.0","unicode":"^14.0.0","untildify":"^4.0.0","vscode-debugadapter":"^1.28.0","vscode-debugprotocol":"^1.28.0","vscode-jsonrpc":"8.0.2-next.1","vscode-languageclient":"^8.1.0","vscode-languageserver":"^8.1.0","vscode-languageserver-protocol":"^3.17.3","vscode-tas-client":"^0.1.63","which":"^2.0.2","winreg":"^1.2.4","xml2js":"^0.5.0"},"devDependencies":{"@istanbuljs/nyc-config-typescript":"^1.0.2","@types/bent":"^7.3.0","@types/chai":"^4.1.2","@types/chai-arrays":"^2.0.0","@types/chai-as-promised":"^7.1.0","@types/diff-match-patch":"^1.0.32","@types/download":"^8.0.1","@types/fs-extra":"^9.0.13","@types/glob":"^7.2.0","@types/lodash":"^4.14.104","@types/md5":"^2.1.32","@types/mocha":"^9.1.0","@types/nock":"^10.0.3","@types/node":"^16.17.0","@types/semver":"^5.5.0","@types/shortid":"^0.0.29","@types/sinon":"^10.0.11","@types/stack-trace":"0.0.29","@types/tmp":"^0.0.33","@types/uuid":"^8.3.4","@types/vscode":"^1.75.0","@types/which":"^2.0.1","@types/winreg":"^1.2.30","@types/xml2js":"^0.4.2","@typescript-eslint/eslint-plugin":"^3.7.0","@typescript-eslint/parser":"^3.7.0","@vscode/test-electron":"^2.1.3","@vscode/vsce":"^2.18.0","bent":"^7.3.12","chai":"^4.1.2","chai-arrays":"^2.0.0","chai-as-promised":"^7.1.1","copy-webpack-plugin":"^9.1.0","cross-spawn":"^6.0.5","del":"^6.0.0","download":"^8.0.0","es5-ext":"0.10.53","eslint":"^7.2.0","eslint-config-airbnb":"^18.2.0","eslint-config-prettier":"^8.3.0","eslint-plugin-import":"^2.25.4","eslint-plugin-jsx-a11y":"^6.3.1","eslint-plugin-react":"^7.20.3","eslint-plugin-react-hooks":"^4.0.0","expose-loader":"^3.1.0","flat":"^5.0.2","get-port":"^5.1.1","gulp":"^4.0.0","gulp-typescript":"^5.0.0","mocha":"^9.2.2","mocha-junit-reporter":"^2.0.2","mocha-multi-reporters":"^1.1.7","nock":"^10.0.6","node-has-native-dependencies":"^1.0.2","node-loader":"^1.0.2","node-polyfill-webpack-plugin":"^1.1.4","nyc":"^15.0.0","prettier":"^2.0.2","rewiremock":"^3.13.0","rimraf":"^3.0.2","shortid":"^2.2.8","sinon":"^13.0.1","source-map-support":"^0.5.12","ts-loader":"^9.2.8","ts-mockito":"^2.5.0","ts-node":"^10.7.0","tsconfig-paths-webpack-plugin":"^3.2.0","typemoq":"^2.1.0","typescript":"4.5.5","uuid":"^8.3.2","vscode-debugadapter-testsupport":"^1.27.0","webpack":"^5.76.0","webpack-bundle-analyzer":"^4.5.0","webpack-cli":"^4.9.2","webpack-fix-default-import-plugin":"^1.0.3","webpack-merge":"^5.8.0","webpack-node-externals":"^3.0.0","webpack-require-from":"^1.8.6","yargs":"^15.3.1"},"extensionPack":["ms-python.vscode-pylance"]},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/ms-python.python-2023.12.0-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"f1f59ae4-9318-4f3c-a9b5-81b2eaa5f8a5","publisherId":"998b010b-e2af-44a5-a6cd-0b5fd3b9b6f8","publisherDisplayName":"ms-python","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691833375755,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"ritwickdey.liveserver","uuid":"b63c44fd-0457-4696-99e9-dbfdf70d77de"},"manifest":{"name":"LiveServer","displayName":"Live Server","description":"Launch a development local Server with live reload feature for static & dynamic pages","version":"5.7.9","publisher":"ritwickdey","author":{"name":"Ritwick Dey","email":"ritwickdey@outlook.com","url":"http://twitter.com/Dey_Ritwick"},"engines":{"vscode":"^1.51.0"},"categories":["Other"],"keywords":["html preview","live preview","live reload","svg preview","open in browser","multi-root ready"],"preview":false,"galleryBanner":{"color":"#41205f","theme":"dark"},"activationEvents":["onStartupFinished"],"main":"./out/src/extension.js","contributes":{"commands":[{"command":"extension.liveServer.goOffline","title":"Stop Live Server","category":"Live Server"},{"command":"extension.liveServer.goOnline","title":"Open with Live Server","category":"Live Server"},{"command":"extension.liveServer.changeWorkspace","title":"Change Live Server workspace","category":"Live Server"}],"keybindings":[{"command":"extension.liveServer.goOffline","key":"alt+L alt+C","when":"editorTextFocus","mac":"cmd+L cmd+C"},{"command":"extension.liveServer.goOnline","key":"alt+L alt+O","when":"editorTextFocus","mac":"cmd+L cmd+O"}],"menus":{"editor/context":[{"command":"extension.liveServer.goOnline","group":"myGrp@liveServer","when":"resourceLangId == html"},{"command":"extension.liveServer.goOffline","group":"myGrp@liveServer","when":"resourceLangId == html"},{"command":"extension.liveServer.goOnline","group":"myGrp@liveServer","when":"resourceLangId == xml"}],"explorer/context":[{"command":"extension.liveServer.goOnline","group":"navigation@-LiveServer","when":"resourceLangId == html"},{"command":"extension.liveServer.goOnline","group":"navigation@-LiveServer","when":"resourceLangId == xml"}]},"configuration":{"title":"Live Server Config","properties":{"liveServer.settings.port":{"type":["number"],"default":5500,"minimum":0,"maximum":65535,"description":"Set Custom Port Number of Live Server. Set 0 if you want random port."},"liveServer.settings.root":{"type":["string"],"default":"/","pattern":"/|/[^\\/]","description":"Set Custom root of Live Server. \nTo change root the the server to sub folder of workspace, use '/' and relative path from workspace. \nExample: /subfolder1/subfolder2"},"liveServer.settings.CustomBrowser":{"type":["string","null"],"default":null,"enum":["chrome","chrome:PrivateMode","firefox","firefox:PrivateMode","microsoft-edge","blisk",null],"description":"Specify custom browser settings for Live Server. \nBy Default it will open your default favorite browser."},"liveServer.settings.ChromeDebuggingAttachment":{"type":["boolean"],"default":false,"description":"Enable Chrome Debugging Attachment to Live Server at Debuging Port 9222.\n NOTE: You have to install 'Debugger for Chrome' \nIf the value is true, Select 'Attach to Chrome' from Debug Window to start debugging. \n\n CAUTION: If it is true, 'Launch Chrome against localhost' may not work."},"liveServer.settings.AdvanceCustomBrowserCmdLine":{"type":["string","null"],"default":null,"description":"Note: If it is not Null, It will override CustomBrowser and ChromeDebuggingAttachment settings.\n\n Examples : \nchrome --incognito --headless --remote-debugging-port=9222 \n C:\\\\Program Files\\\\Firefox Developer Edition\\\\firefox.exe --private-window"},"liveServer.settings.showOnStatusbar":{"type":"boolean","default":true,"description":"Change this to false if you don't want the button to show in the statusbar"},"liveServer.settings.NoBrowser":{"type":"boolean","default":false,"description":"If it is true live server will start without browser opened."},"liveServer.settings.ignoreFiles":{"type":"array","default":[".vscode/**","**/*.scss","**/*.sass","**/*.ts"],"description":"To ignore specific file changes"},"liveServer.settings.mount":{"type":"array","items":{"type":"array","minItems":2,"maxItems":2,"items":{"type":"string"}},"default":[],"description":"Mount a directory to a route. Such as [['/components', './node_modules']]"},"liveServer.settings.donotShowInfoMsg":{"type":"boolean","default":false,"description":"To disable information pop up messages."},"liveServer.settings.donotVerifyTags":{"type":"boolean","default":false,"description":"To turn off prompt warning message if body or head or other supporting tag is missing in your HTML."},"liveServer.settings.host":{"type":"string","default":"127.0.0.1","description":"To switch between localhost or 127.0.0.1 or anything else. Default is 127.0.0.1"},"liveServer.settings.useLocalIp":{"type":"boolean","default":false,"description":"Use local IP as host"},"liveServer.settings.proxy":{"type":"object","default":{"enable":false,"baseUri":"/","proxyUri":"http://127.0.0.1:80"},"properties":{"enable":{"type":"boolean","default":false,"description":"Make it true to enable the feature."},"baseUri":{"type":"string","default":"/","pattern":""},"proxyUri":{"type":"string","default":"http://127.0.0.1:80","pattern":"(^http[s]?://)(.[^(\\|\\s)]+)$"}},"required":["enable","baseUri","proxyUri"],"additionalProperties":false,"description":"To Setup Proxy"},"liveServer.settings.useWebExt":{"type":"boolean","default":false,"description":"You have to install a browser extension. That will be works for your dynamic pages (like PHP)."},"liveServer.settings.wait":{"type":"number","default":100,"description":"Delay before live reloading. Value in milliseconds. Default is 100"},"liveServer.settings.fullReload":{"type":"boolean","default":false,"description":"By Default Live Server inject CSS changes without full reloading of browser. You can change this behavior by making this setting as `true`"},"liveServer.settings.https":{"type":"object","default":{"enable":false,"cert":"","key":"","passphrase":""},"properties":{"enable":{"type":"boolean","default":false,"description":"Make it true to enable it."},"cert":{"type":"string","default":"","description":"Add full path certificate."},"key":{"type":"string","default":"","description":"Add full path key"},"passphrase":{"type":"string","default":"","description":"Add Pass Phrase."}},"required":["enable","cert","key","passphrase"],"additionalProperties":false,"description":"Setup https configuration"},"liveServer.settings.file":{"type":"string","default":"","description":"When set, serve this file (server root relative) for every 404 (useful for single-page applications)"},"liveServer.settings.multiRootWorkspaceName":{"type":"string","default":null,"description":"This the entry point of server when you're in multiroot workspace"}}}},"license":"MIT","icon":"images/icon.png","bugs":{"url":"https://github.com/ritwickdey/vscode-live-server/issues","email":"ritwickdey@outlook.com"},"repository":{"type":"git","url":"https://github.com/ritwickdey/vscode-live-server.git"},"homepage":"https://ritwickdey.github.io/vscode-live-server/","scripts":{"vscode:prepublish":"tsc -p ./","compile":"tsc -p ./","test":"run-s test:*","test:lint":"tslint --project .","test:unit":"node ./out/test/runTest.js","test:e2e":"wdio run ./test/wdio.conf.ts","precommit":"npm run test:lint","prepush":"npm run test:lint","watch":"tsc -watch -p ./"},"husky":{"hooks":{"pre-commit":"npm run precommit","pre-push":"npm run prepush"}},"devDependencies":{"@types/glob":"^7.1.1","@types/node":"^17.0.6","@types/vscode":"^1.51.0","@vscode/test-electron":"^2.0.1","@wdio/cli":"^7.19.3","@wdio/local-runner":"^7.19.3","@wdio/mocha-framework":"^7.19.3","@wdio/spec-reporter":"^7.19.1","glob":"^7.2.0","husky":"^1.2.1","mocha":"^9.2.2","npm-run-all":"^4.1.5","semver":"^7.3.6","ts-node":"^10.7.0","tslint":"^6.1.3","typescript":"^4.5.4","vsce":"^2.7.0","wdio-vscode-service":"^2.0.1","es5-ext":"0.10.53"},"dependencies":{"http-shutdown":"^1.2.0","ips":"^2.1.3","live-server":"file:lib\\live-server","opn":"^6.0.0","vsls":"^0.3.967"},"overrides":{"es5-ext":"0.10.53"},"announcement":{"onVersion":"5.7.9","message":"[NEW] LiveServer@5.7.9: Activation load time improved"}},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/ritwickdey.liveserver-5.7.9-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"b63c44fd-0457-4696-99e9-dbfdf70d77de","publisherId":"17fd9a78-e430-4a78-add2-ade4a8830352","publisherDisplayName":"ritwickdey","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691833385947,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"vscodevim.vim","uuid":"d96e79c6-8b25-4be3-8545-0e0ecefcae03"},"manifest":{"name":"vim","displayName":"Vim","description":"Vim emulation for Visual Studio Code","icon":"images/icon.png","version":"1.25.2","publisher":"vscodevim","galleryBanner":{"color":"#e3f4ff","theme":"light"},"license":"MIT","keywords":["vim","vi","vscodevim"],"repository":{"type":"git","url":"https://github.com/VSCodeVim/Vim.git"},"homepage":"https://github.com/VSCodeVim/Vim","bugs":{"url":"https://github.com/VSCodeVim/Vim/issues"},"engines":{"vscode":"^1.74.0"},"categories":["Other","Keymaps"],"extensionKind":["ui"],"sideEffects":false,"activationEvents":["*","onCommand:type"],"qna":"https://vscodevim.herokuapp.com/","main":"./out/extension","browser":"./out/extensionWeb","capabilities":{"untrustedWorkspaces":{"supported":true},"virtualWorkspaces":true},"contributes":{"commands":[{"command":"toggleVim","title":"Vim: Toggle Vim Mode"},{"command":"vim.showQuickpickCmdLine","title":"Vim: Show Command Line"},{"command":"vim.editVimrc","enablement":"!isWeb","title":"Vim: Edit .vimrc"}],"keybindings":[{"key":"Escape","command":"extension.vim_escape","when":"editorTextFocus && vim.active && !inDebugRepl"},{"key":"Escape","command":"notebook.cell.quitEdit","when":"inputFocus && notebookEditorFocused && !editorHasSelection && !editorHoverVisible && vim.active && vim.mode == 'Normal'"},{"key":"Home","command":"extension.vim_home","when":"editorTextFocus && vim.active && !inDebugRepl && vim.mode != 'Insert'"},{"key":"ctrl+home","command":"extension.vim_ctrl+home","when":"editorTextFocus && vim.active && !inDebugRepl && vim.mode != 'Insert'"},{"key":"End","command":"extension.vim_end","when":"editorTextFocus && vim.active && !inDebugRepl && vim.mode != 'Insert'"},{"key":"ctrl+end","command":"extension.vim_ctrl+end","when":"editorTextFocus && vim.active && !inDebugRepl && vim.mode != 'Insert'"},{"key":"Insert","command":"extension.vim_insert","when":"editorTextFocus && vim.active && !inDebugRepl"},{"key":"Backspace","command":"extension.vim_backspace","when":"editorTextFocus && vim.active && !inDebugRepl"},{"key":"Delete","command":"extension.vim_delete","when":"editorTextFocus && vim.active && !inDebugRepl"},{"key":"tab","command":"extension.vim_tab","when":"editorFocus && vim.active && vim.mode != 'Insert' && !inDebugRepl"},{"key":"shift+tab","command":"extension.vim_shift+tab","when":"editorFocus && vim.active && vim.mode != 'Insert' && !inDebugRepl"},{"key":"left","command":"extension.vim_left","when":"editorTextFocus && vim.active && !inDebugRepl"},{"key":"right","command":"extension.vim_right","when":"editorTextFocus && vim.active && !inDebugRepl"},{"key":"up","command":"extension.vim_up","when":"editorTextFocus && vim.active && !inDebugRepl && !suggestWidgetVisible && !parameterHintsVisible"},{"key":"down","command":"extension.vim_down","when":"editorTextFocus && vim.active && !inDebugRepl && !suggestWidgetVisible && !parameterHintsVisible"},{"key":"g g","command":"list.focusFirst","when":"listFocus && !inputFocus"},{"key":"h","command":"list.collapse","when":"listFocus && !inputFocus"},{"key":"j","command":"list.focusDown","when":"listFocus && !inputFocus"},{"key":"k","command":"list.focusUp","when":"listFocus && !inputFocus"},{"key":"l","command":"list.select","when":"listFocus && !inputFocus"},{"key":"o","command":"list.toggleExpand","when":"listFocus && !inputFocus"},{"key":"/","command":"list.toggleKeyboardNavigation","when":"listFocus && !inputFocus && listSupportsKeyboardNavigation"},{"key":"ctrl+a","command":"extension.vim_ctrl+a","when":"editorTextFocus && vim.active && vim.use<C-a> && !inDebugRepl"},{"key":"ctrl+b","command":"extension.vim_ctrl+b","when":"editorTextFocus && vim.active && vim.use<C-b> && vim.mode != 'Insert' && !inDebugRepl"},{"key":"ctrl+c","command":"extension.vim_ctrl+c","when":"editorTextFocus && vim.active && vim.use<C-c> && !inDebugRepl && vim.overrideCtrlC"},{"key":"ctrl+d","command":"extension.vim_ctrl+d","when":"editorTextFocus && vim.active && vim.use<C-d> && !inDebugRepl"},{"key":"ctrl+d","command":"list.focusPageDown","when":"listFocus && !inputFocus"},{"key":"ctrl+e","command":"extension.vim_ctrl+e","when":"editorTextFocus && vim.active && vim.use<C-e> && !inDebugRepl"},{"key":"ctrl+f","command":"extension.vim_ctrl+f","when":"editorTextFocus && vim.active && vim.use<C-f> && vim.mode != 'Insert' && !inDebugRepl"},{"key":"ctrl+g","command":"extension.vim_ctrl+g","when":"editorTextFocus && vim.active && vim.use<C-g> && !inDebugRepl"},{"key":"ctrl+h","command":"extension.vim_ctrl+h","when":"editorTextFocus && vim.active && vim.use<C-h> && !inDebugRepl"},{"key":"ctrl+i","command":"extension.vim_ctrl+i","when":"editorTextFocus && vim.active && vim.use<C-i> && !inDebugRepl"},{"key":"ctrl+j","command":"extension.vim_ctrl+j","when":"editorTextFocus && vim.active && vim.use<C-j> && !inDebugRepl"},{"key":"ctrl+k","command":"extension.vim_ctrl+k","when":"editorTextFocus && vim.active && vim.use<C-k> && !inDebugRepl"},{"key":"ctrl+l","command":"extension.vim_navigateCtrlL","when":"editorTextFocus && vim.active && vim.use<C-l> && !inDebugRepl"},{"key":"ctrl+m","command":"extension.vim_ctrl+m","when":"editorTextFocus && vim.active && vim.use<C-m> && !inDebugRepl || vim.mode == 'CommandlineInProgress' && vim.active && vim.use<C-m> && !inDebugRepl || vim.mode == 'SearchInProgressMode' && vim.active && vim.use<C-m> && !inDebugRepl"},{"key":"ctrl+n","command":"extension.vim_ctrl+n","when":"editorTextFocus && vim.active && vim.use<C-n> && !inDebugRepl || vim.mode == 'CommandlineInProgress' && vim.active && vim.use<C-n> && !inDebugRepl || vim.mode == 'SearchInProgressMode' && vim.active && vim.use<C-n> && !inDebugRepl"},{"key":"ctrl+o","command":"extension.vim_ctrl+o","when":"editorTextFocus && vim.active && vim.use<C-o> && !inDebugRepl"},{"key":"ctrl+p","command":"extension.vim_ctrl+p","when":"suggestWidgetVisible && vim.active && vim.use<C-p> && !inDebugRepl || vim.mode == 'CommandlineInProgress' && vim.active && vim.use<C-p> && !inDebugRepl || vim.mode == 'SearchInProgressMode' && vim.active && vim.use<C-p> && !inDebugRepl"},{"key":"ctrl+q","command":"extension.vim_winCtrlQ","when":"editorTextFocus && vim.active && vim.use<C-q> && !inDebugRepl"},{"key":"ctrl+r","command":"extension.vim_ctrl+r","when":"editorTextFocus && vim.active && vim.use<C-r> && !inDebugRepl"},{"key":"ctrl+s","command":"extension.vim_ctrl+s","when":"editorTextFocus && vim.active && vim.use<C-s> && !inDebugRepl"},{"key":"ctrl+t","command":"extension.vim_ctrl+t","when":"editorTextFocus && vim.active && vim.use<C-t> && !inDebugRepl"},{"key":"ctrl+u","command":"extension.vim_ctrl+u","when":"editorTextFocus && vim.active && vim.use<C-u> && !inDebugRepl"},{"key":"ctrl+u","command":"list.focusPageUp","when":"listFocus && !inputFocus"},{"key":"ctrl+v","command":"extension.vim_ctrl+v","when":"editorTextFocus && vim.active && vim.use<C-v> && !inDebugRepl"},{"key":"ctrl+w","command":"extension.vim_ctrl+w","when":"editorTextFocus && vim.active && vim.use<C-w> && !inDebugRepl"},{"key":"ctrl+x","command":"extension.vim_ctrl+x","when":"editorTextFocus && vim.active && vim.use<C-x> && !inDebugRepl"},{"key":"ctrl+y","command":"extension.vim_ctrl+y","when":"editorTextFocus && vim.active && vim.use<C-y> && !inDebugRepl"},{"key":"ctrl+z","command":"extension.vim_ctrl+z","when":"editorTextFocus && vim.active && vim.use<C-z> && !inDebugRepl"},{"key":"ctrl+6","command":"extension.vim_ctrl+6","when":"editorTextFocus && vim.active && vim.use<C-6> && !inDebugRepl"},{"key":"ctrl+^","command":"extension.vim_ctrl+^","when":"editorTextFocus && vim.active && vim.use<C-^> && !inDebugRepl"},{"key":"ctrl+[","command":"extension.vim_ctrl+[","when":"editorTextFocus && vim.active && vim.use<C-[> && !inDebugRepl"},{"key":"ctrl+]","command":"extension.vim_ctrl+]","when":"editorTextFocus && vim.active && vim.use<C-]> && !inDebugRepl"},{"key":"ctrl+shift+2","command":"extension.vim_ctrl+shift+2","when":"editorTextFocus && vim.active && vim.use<C-shift+2>"},{"key":"ctrl+up","command":"extension.vim_ctrl+up","when":"editorTextFocus && vim.active && vim.mode != 'Insert' && !inDebugRepl"},{"key":"ctrl+down","command":"extension.vim_ctrl+down","when":"editorTextFocus && vim.active && vim.mode != 'Insert' && !inDebugRepl"},{"key":"ctrl+left","command":"extension.vim_ctrl+left","when":"editorTextFocus && vim.active && vim.mode != 'Insert' && !inDebugRepl"},{"key":"ctrl+right","command":"extension.vim_ctrl+right","when":"editorTextFocus && vim.active && vim.mode != 'Insert' && !inDebugRepl"},{"key":"ctrl+pagedown","command":"extension.vim_ctrl+pagedown","when":"editorTextFocus && vim.active && vim.use<C-pagedown> && !inDebugRepl"},{"key":"ctrl+pageup","command":"extension.vim_ctrl+pageup","when":"editorTextFocus && vim.active && vim.use<C-pageup> && !inDebugRepl"},{"key":"ctrl+space","command":"extension.vim_ctrl+space","when":"editorTextFocus && vim.active && vim.use<C-space> && !inDebugRepl && vim.mode != 'Insert'"},{"key":"shift+G","command":"list.focusLast","when":"listFocus && !inputFocus"},{"key":"ctrl+backspace","command":"extension.vim_ctrl+backspace","when":"editorTextFocus && vim.active && vim.use<C-BS> && vim.mode != 'Insert' && !inDebugRepl"},{"key":"shift+backspace","command":"extension.vim_shift+backspace","when":"editorTextFocus && vim.active && vim.use<S-BS> && vim.mode != 'Insert' && !inDebugRepl"},{"key":"cmd+left","command":"extension.vim_cmd+left","when":"editorTextFocus && vim.active && vim.use<D-left> && !inDebugRepl && vim.mode != 'Insert'"},{"key":"cmd+right","command":"extension.vim_cmd+right","when":"editorTextFocus && vim.active && vim.use<D-right> && !inDebugRepl && vim.mode != 'Insert'"},{"key":"cmd+a","command":"extension.vim_cmd+a","when":"editorTextFocus && vim.active && vim.use<D-a> && !inDebugRepl && vim.mode != 'Insert'"},{"key":"cmd+c","command":"extension.vim_cmd+c","when":"editorTextFocus && vim.active && vim.use<D-c> && vim.overrideCopy && !inDebugRepl"},{"key":"cmd+d","command":"extension.vim_cmd+d","when":"editorTextFocus && vim.active && vim.use<D-d> && !inDebugRepl"},{"key":"cmd+v","command":"extension.vim_cmd+v","when":"editorTextFocus && vim.active && vim.use<D-v> && vim.mode == 'CommandlineInProgress' && !inDebugRepl || editorTextFocus && vim.active && vim.use<D-v> && vim.mode == 'SearchInProgressMode' && !inDebugRepl"},{"key":"ctrl+alt+down","linux":"shift+alt+down","mac":"cmd+alt+down","command":"extension.vim_cmd+alt+down","when":"editorTextFocus && vim.active && !inDebugRepl"},{"key":"ctrl+alt+up","linux":"shift+alt+up","mac":"cmd+alt+up","command":"extension.vim_cmd+alt+up","when":"editorTextFocus && vim.active && !inDebugRepl"},{"key":"j","command":"notebook.focusNextEditor","when":"vim.mode == 'Normal' && editorTextFocus && inputFocus && notebookEditorFocused && notebookEditorCursorAtBoundary != 'none' && notebookEditorCursorAtBoundary != 'top'"},{"key":"k","command":"notebook.focusPreviousEditor","when":"vim.mode == 'Normal' && editorTextFocus && inputFocus && notebookEditorFocused && notebookEditorCursorAtBoundary != 'bottom' && notebookEditorCursorAtBoundary != 'none'"}],"configuration":{"title":"Vim","type":"object","properties":{"vim.normalModeKeyBindings":{"type":"array","markdownDescription":"Remapped keys in Normal mode. Allows mapping to Vim commands or VS Code actions. See [README](https://github.com/VSCodeVim/Vim/#key-remapping) for details.","scope":"application"},"vim.normalModeKeyBindingsNonRecursive":{"type":"array","markdownDescription":"Non-recursive remapped keys in Normal mode. Allows mapping to Vim commands or VS Code actions. See [README](https://github.com/VSCodeVim/Vim/#key-remapping) for details.","scope":"application"},"vim.operatorPendingModeKeyBindings":{"type":"array","markdownDescription":"Remapped keys in OperatorPending mode. Allows mapping to Vim commands or VS Code actions. See [README](https://github.com/VSCodeVim/Vim/#key-remapping) for details.","scope":"application"},"vim.operatorPendingModeKeyBindingsNonRecursive":{"type":"array","markdownDescription":"Non-recursive remapped keys in OperatorPending mode. Allows mapping to Vim commands or VS Code actions. See [README](https://github.com/VSCodeVim/Vim/#key-remapping) for details.","scope":"application"},"vim.useCtrlKeys":{"type":"boolean","markdownDescription":"Enable some Vim Ctrl key commands that override otherwise common operations, like `Ctrl+C`.","default":true},"vim.leader":{"type":"string","markdownDescription":"What key should `<leader>` map to in remappings?","default":"\\"},"vim.searchHighlightColor":{"type":"string","markdownDescription":"Background color of non-current search matches. The color must not be opaque so as not to hide underlying decorations. Uses `#editor.findMatchHighlightColor#` from current theme if undefined."},"vim.searchHighlightTextColor":{"type":"string","markdownDescription":"Foreground color of non-current search matches."},"vim.searchMatchColor":{"type":"string","markdownDescription":"Background color of the current match. Uses `#editor.findMatchColor#` from current theme if undefined."},"vim.searchMatchTextColor":{"type":"string","markdownDescription":"Foreground color of the current match."},"vim.substitutionColor":{"type":"string","markdownDescription":"Background color of substituted text when `#editor.inccommand#` is enabled. Uses `#editor.findMatchColor#` from current theme if undefined."},"vim.substitutionTextColor":{"type":"string","markdownDescription":"Foreground color of substituted text when `#editor.inccommand#` is enabled."},"vim.highlightedyank.enable":{"type":"boolean","description":"Enable highlighting when yanking.","default":false},"vim.highlightedyank.color":{"type":"string","description":"Background color of yanked text. The color must not be opaque so as not to hide underlying decorations.","default":"rgba(250, 240, 170, 0.5)"},"vim.highlightedyank.textColor":{"type":"string","description":"Foreground color of yanked text."},"vim.highlightedyank.duration":{"type":"number","description":"Duration in milliseconds of the yank highlight.","default":200,"minimum":1},"vim.useSystemClipboard":{"type":"boolean","description":"Use system clipboard for unnamed register.","default":false},"vim.overrideCopy":{"type":"boolean","description":"Override VS Code's copy command with our own copy command, which works better with VSCodeVim. Turn this off if copying is not working.","default":true},"vim.insertModeKeyBindings":{"type":"array","markdownDescription":"Remapped keys in Insert mode. Allows mapping to Vim commands or VS Code actions. See [README](https://github.com/VSCodeVim/Vim/#key-remapping) for details.","scope":"application"},"vim.insertModeKeyBindingsNonRecursive":{"type":"array","markdownDescription":"Non-recursive keybinding overrides to use for Insert mode. Allows mapping to Vim commands or VS Code actions. See [README](https://github.com/VSCodeVim/Vim/#key-remapping) for details.","scope":"application"},"vim.visualModeKeyBindings":{"type":"array","markdownDescription":"Remapped keys in Visual mode. Allows mapping to Vim commands or VS Code actions. See [README](https://github.com/VSCodeVim/Vim/#key-remapping) for details.","scope":"application"},"vim.visualModeKeyBindingsNonRecursive":{"type":"array","markdownDescription":"Non-recursive keybinding overrides to use for Visual mode. Allows mapping to Vim commands or VS Code actions. See [README](https://github.com/VSCodeVim/Vim/#key-remapping) for details.","scope":"application"},"vim.commandLineModeKeyBindings":{"type":"array","markdownDescription":"Remapped keys in command line mode. Allows mapping to Vim commands or VS Code actions. See [README](https://github.com/VSCodeVim/Vim/#key-remapping) for details.","scope":"application"},"vim.commandLineModeKeyBindingsNonRecursive":{"type":"array","markdownDescription":"Non-recursive keybinding overrides to use for command line mode. Allows mapping to Vim commands or VS Code actions. See [README](https://github.com/VSCodeVim/Vim/#key-remapping) for details.","scope":"application"},"vim.textwidth":{"type":"number","markdownDescription":"Width to word-wrap to when using `gq`.","default":80,"scope":"language-overridable","minimum":1},"vim.timeout":{"type":"number","description":"Timeout in milliseconds for remapped commands.","default":1000,"minimum":0},"vim.maxmapdepth":{"type":"number","description":"Maximum number of times a mapping is done without resulting in a character to be used.","default":1000,"minimum":0},"vim.scroll":{"type":"number","markdownDescription":"Number of lines to scroll with `Ctrl-U` and `Ctrl-D` commands. Set to 0 to use a half page scroll.","default":0,"minimum":0},"vim.showcmd":{"type":"boolean","description":"Show the text of any command you are in the middle of writing.","default":true},"vim.showmodename":{"type":"boolean","description":"Show the name of the current mode in the statusbar.","default":true},"vim.iskeyword":{"type":"string","markdownDescription":"Keywords contain alphanumeric characters and '_'. If not configured, `#editor.wordSeparators#` is used."},"vim.ignorecase":{"type":"boolean","description":"Ignore case in search patterns.","default":true},"vim.smartcase":{"type":"boolean","markdownDescription":"Override the `ignorecase` option if the search pattern contains upper case characters.","default":true},"vim.matchpairs":{"type":"string","markdownDescription":"Characters that form pairs. The % command jumps from one to the other. Only character pairs are allowed that are different, thus you cannot jump between two double quotes. The characters must be separated by a colon. The pairs must be separated by a comma.","default":"(:),{:},[:]"},"vim.camelCaseMotion.enable":{"type":"boolean","markdownDescription":"Enable the [CamelCaseMotion](https://github.com/bkad/CamelCaseMotion) plugin for Vim.","default":false},"vim.easymotion":{"type":"boolean","markdownDescription":"Enable the [EasyMotion](https://github.com/easymotion/vim-easymotion) plugin for Vim.","default":false},"vim.easymotionMarkerBackgroundColor":{"type":"string","default":"#0000","description":"Set a custom background color for EasyMotion markers."},"vim.easymotionMarkerForegroundColorOneChar":{"type":"string","default":"#ff0000","description":"Set a custom color for the text on one character long markers."},"vim.easymotionMarkerForegroundColorTwoCharFirst":{"type":"string","default":"#ffb400","description":"Set a custom color for the first character on two character long markers."},"vim.easymotionMarkerForegroundColorTwoCharSecond":{"type":"string","default":"#b98300","description":"Set a custom color for the second character on two character long markers."},"vim.easymotionIncSearchForegroundColor":{"type":"string","default":"#7fbf00","markdownDescription":"Set a custom color for the easymotion search n-character (default `<leader><leader>/`)."},"vim.easymotionDimColor":{"type":"string","default":"#777777","markdownDescription":"Set a custom color for the easymotion dimmed characters when `#vim.easymotionDimBackground#` is set to true."},"vim.easymotionDimBackground":{"type":"boolean","description":"Whether to dim other text while markers are visible.","default":true},"vim.easymotionMarkerFontWeight":{"type":"string","description":"Set the font weight of the marker text.","default":"bold"},"vim.easymotionKeys":{"type":"string","description":"Set the characters used for jump marker name.","default":"hklyuiopnm,qwertzxcvbasdgjf;"},"vim.easymotionJumpToAnywhereRegex":{"type":"string","description":"Regex matches for JumpToAnywhere motion.","default":"\\b[A-Za-z0-9]|[A-Za-z0-9]\\b|_.|#.|[a-z][A-Z]"},"vim.replaceWithRegister":{"type":"boolean","markdownDescription":"Enable the [ReplaceWithRegister](https://github.com/vim-scripts/ReplaceWithRegister) plugin for Vim.","default":false},"vim.smartRelativeLine":{"type":"boolean","markdownDescription":"`#editor.lineNumbers#` is determined by the active Vim mode, absolute when in insert mode, relative otherwise.","default":false},"vim.targets.enable":{"type":"boolean","markdownDescription":"Enable [targets.vim](https://github.com/wellle/targets.vim#quote-text-objects) plugin (not fully implemented yet).","default":false},"vim.targets.bracketObjects.enable":{"type":"boolean","markdownDescription":"Enable last/next movements for bracket objects.","default":true},"vim.targets.smartQuotes.enable":{"type":"boolean","markdownDescription":"Enable the smart quotes movements from [targets.vim](https://github.com/wellle/targets.vim#quote-text-objects).","default":true},"vim.targets.smartQuotes.breakThroughLines":{"type":"boolean","markdownDescription":"Whether to break through lines when using [n]ext/[l]ast motion, see [targets.vim#next-and-last-quote](https://github.com/wellle/targets.vim#next-and-last-quote).","default":true},"vim.targets.smartQuotes.aIncludesSurroundingSpaces":{"type":"boolean","markdownDescription":"Whether to use default Vim behavior when using `a` (e.g. `da'`) which include surrounding spaces, or not, as for other text objects.","default":true},"vim.sneak":{"type":"boolean","markdownDescription":"Enable the [Sneak](https://github.com/justinmk/vim-sneak) plugin for Vim.","default":false},"vim.sneakUseIgnorecaseAndSmartcase":{"type":"boolean","markdownDescription":"Case sensitivity is determined by `#vim.ignorecase#` and `#vim.smartcase#`.","default":false},"vim.sneakReplacesF":{"type":"boolean","markdownDescription":"Use single-character [Sneak](https://github.com/justinmk/vim-sneak) instead of Vim's native `f`.","default":false},"vim.surround":{"type":"boolean","markdownDescription":"Enable the [Surround](https://github.com/tpope/vim-surround) plugin for Vim.","default":true},"vim.argumentObjectSeparators":{"type":"array","items":{"type":"string"},"markdownDescription":"Set separators for the argument text object.","default":[","]},"vim.argumentObjectOpeningDelimiters":{"type":"array","items":{"type":"string"},"markdownDescription":"Set opening delimiters for the argument text object.","default":["(","["]},"vim.argumentObjectClosingDelimiters":{"type":"array","items":{"type":"string"},"markdownDescription":"Set closing delimiters for the argument text object.","default":[")","]"]},"vim.hlsearch":{"type":"boolean","description":"Show all matches of the most recent search pattern.","default":false},"vim.inccommand":{"type":"string","markdownDescription":"Show the effects of the `:substitute` command as you type.","default":"replace","enum":["","append","replace"],"enumDescriptions":["Don't show substitutions","Show substitutions after matched text","Replace matched text with substitutions"]},"vim.incsearch":{"type":"boolean","markdownDescription":"Show where a `/` or `?` search matches as you type it.","default":true},"vim.history":{"type":"number","description":"How much search or command history should be remembered.","default":50,"minimum":1},"vim.autoindent":{"type":"boolean","description":"Indent code automatically.","default":true},"vim.joinspaces":{"type":"boolean","description":"Add two spaces after '.', '?', and '!' when joining or reformatting.","default":true},"vim.startInInsertMode":{"type":"boolean","description":"Start in Insert mode."},"vim.handleKeys":{"type":"object","description":"Delegate certain key combinations back to VSCode to be handled natively.","default":{"<C-d>":true,"<C-s>":false,"<C-z>":false}},"vim.statusBarColorControl":{"type":"boolean","markdownDescription":"Allow VSCodeVim to change status bar color based on mode. **NOTE:** Using this feature will have a negative impact on performance.","default":false},"vim.statusBarColors.normal":{"type":["string","array"],"description":"Status bar color when in Normal mode.","default":"#005f5f"},"vim.statusBarColors.insert":{"type":["string","array"],"description":"Status bar color when in Insert mode.","default":"#5f0000"},"vim.statusBarColors.visual":{"type":["string","array"],"description":"Status bar color when in Visual mode.","default":"#5f00af"},"vim.statusBarColors.visualline":{"type":["string","array"],"description":"Status bar color when in VisualLine mode.","default":"#005f5f"},"vim.statusBarColors.visualblock":{"type":["string","array"],"description":"Status bar color when in VisualBlock mode.","default":"#86592d"},"vim.statusBarColors.replace":{"type":["string","array"],"description":"Status bar color when in Replace mode.","default":"#00000"},"vim.statusBarColors.commandlineinprogress":{"type":["string","array"],"description":"Status bar color when in CommandLineInProgress mode.","default":"#007acc"},"vim.statusBarColors.searchinprogressmode":{"type":["string","array"],"description":"Status bar color when in SearchInProgress mode.","default":"#007acc"},"vim.statusBarColors.easymotionmode":{"type":["string","array"],"description":"Status bar color when in EasyMotion mode.","default":"#007acc"},"vim.statusBarColors.easymotioninputmode":{"type":["string","array"],"description":"Status bar color when in EasyMotionInput mode.","default":"#007acc"},"vim.statusBarColors.surroundinputmode":{"type":["string","array"],"description":"Status bar color when in SurroundInput mode.","default":"#007acc"},"vim.visualstar":{"type":"boolean","markdownDescription":"In Visual mode, start a search with `*` or `#` using the current selection.","default":false},"vim.changeWordIncludesWhitespace":{"type":"boolean","description":"Includes trailing whitespace when changing word.","default":false},"vim.foldfix":{"type":"boolean","description":"Uses a hack to move around folds properly.","default":false},"vim.mouseSelectionGoesIntoVisualMode":{"type":"boolean","description":"If enabled, dragging with the mouse activates Visual mode.","default":true},"vim.disableExtension":{"type":"boolean","description":"Disables the VSCodeVim extension. The extension will continue to be loaded and activated, but Vim functionality will be disabled.","default":false},"vim.enableNeovim":{"type":"boolean","markdownDescription":"Use Neovim to execute Ex commands. You should restart VS Code after enabling/disabling this for the changes to take effect. **NOTE:** Neovim version 0.2.0 or greater must be installed, and if the executable is not on your PATH, `#vim.neovimPath#` must be set.","default":false},"vim.neovimPath":{"type":"string","markdownDescription":"Path to Neovim executable. For example, `/usr/bin/nvim`, or `C:\\Program Files\\Neovim\\bin\\nvim.exe`.","default":"","scope":"machine"},"vim.neovimUseConfigFile":{"type":"boolean","markdownDescription":"Use a config file for Neovim, specified by `vim.neovimConfigPath`.","default":false},"vim.neovimConfigPath":{"type":"string","markdownDescription":"Path to Neovim configuration file. `vim.neovimUseConfigFile` must be enabled. If path is left blank, Neovim will use its default config path, i.e. `~/.config/nvim/init.vim` or 'C:\\Users\\USERNAME\\AppData\\Local\\nvim\\init.vim'.","default":"","scope":"machine"},"vim.vimrc.enable":{"type":"boolean","markdownDescription":"Use key mappings from a `.vimrc` file.","default":false},"vim.vimrc.path":{"type":"string","markdownDescription":"Path to a Vim configuration file. If unset, it will check for `$HOME/.vscodevimrc`, `$HOME/.vimrc`, `$HOME/_vimrc`, and `$HOME/.config/nvim/init.vim`, in that order."},"vim.substituteGlobalFlag":{"type":"boolean","markdownDescription":"Automatically apply the global flag, `/g`, to substitute commands. When set to true, use `/g` to mean only first match should be replaced.","default":false,"markdownDeprecationMessage":"**Deprecated**: Please use `#vim.gdefault#` instead.","deprecationMessage":"Deprecated: Please use vim.gdefault instead."},"vim.gdefault":{"type":"boolean","markdownDescription":"Automatically apply the global flag, `/g`, to substitute commands. When set to true, use `/g` to mean only first match should be replaced.","default":false},"vim.cursorStylePerMode.normal":{"type":"string","description":"Cursor style for Normal mode.","enum":["","block","block-outline","line","line-thin","underline","underline-thin"]},"vim.cursorStylePerMode.insert":{"type":"string","description":"Cursor style for Insert mode.","enum":["","block","block-outline","line","line-thin","underline","underline-thin"]},"vim.cursorStylePerMode.replace":{"type":"string","description":"Cursor style for Replace mode.","enum":["","block","block-outline","line","line-thin","underline","underline-thin"]},"vim.cursorStylePerMode.visual":{"type":"string","description":"Cursor style for Visual mode.","enum":["","block","block-outline","line","line-thin","underline","underline-thin"]},"vim.cursorStylePerMode.visualline":{"type":"string","description":"Cursor style for VisualLine mode.","enum":["","block","block-outline","line","line-thin","underline","underline-thin"]},"vim.cursorStylePerMode.visualblock":{"type":"string","description":"Cursor style for VisualBlock mode.","enum":["","block","block-outline","line","line-thin","underline","underline-thin"]},"vim.autoSwitchInputMethod.enable":{"type":"boolean","description":"If enabled, the input method switches automatically when the mode changes.","default":false},"vim.autoSwitchInputMethod.defaultIM":{"type":"string","markdownDescription":"The input method for your normal mode, find more information [here](https://github.com/VSCodeVim/Vim#input-method).","default":"","scope":"machine"},"vim.autoSwitchInputMethod.switchIMCmd":{"type":"string","description":"The shell command to switch input method.","default":"/path/to/im-select {im}","scope":"machine"},"vim.autoSwitchInputMethod.obtainIMCmd":{"type":"string","description":"The shell command to get current input method.","default":"/path/to/im-select","scope":"machine"},"vim.whichwrap":{"type":"string","description":"Comma-separated list of motion keys that should wrap to next/previous line.","default":"b,s"},"vim.report":{"type":"number","description":"Threshold for reporting number of lines changed.","default":2,"minimum":1},"vim.digraphs":{"type":"object","description":"Custom digraph shortcuts for inserting special characters, expressed as UTF16 code points.","default":{}},"vim.wrapscan":{"type":"boolean","description":"Searches wrap around the end of the file.","default":true},"vim.startofline":{"type":"boolean","markdownDescription":"When `true` the commands listed below move the cursor to the first non-blank of the line. When `false` the cursor is kept in the same column (if possible). This applies to the commands: `<C-d>`, `<C-u>`, `<C-b>`, `<C-f>`, `G`, `H`, `M`, `L`, `gg`, and to the commands `d`, `<<` and `>>` with a linewise operator.","default":true},"vim.showMarksInGutter":{"type":"boolean","description":"Show the currently set mark(s) in the gutter.","default":false},"vim.shell":{"type":"string","description":"Path to the shell to use for `!` and `:!` commands.","default":""}}},"languages":[{"id":"vimrc","extensions":[".vimrc"],"configuration":"./language-configuration.json"}],"grammars":[{"language":"vimrc","scopeName":"source.vimrc","path":"./syntaxes/vimrc.tmLanguage.json"}]},"scripts":{"vscode:prepublish":"gulp build","build":"gulp build","build-dev":"gulp build-dev","build-test":"gulp prepare-test","test":"node ./out/test/runTest.js","lint":"tslint --project .","lint:fix":"tslint --project . --fix","prettier":"prettier --write .","prettier:check":"prettier --check .","watch":"webpack -c webpack.dev.js --watch","package":"yarn run vsce package --yarn --allow-star-activation","prepare":"husky install"},"dependencies":{"diff-match-patch":"1.0.5","lodash":"^4.17.21","neovim":"4.10.1","os-browserify":"0.3.0","parsimmon":"^1.18.0","path-browserify":"1.0.1","process":"0.11.10","queue":"^6.0.2","untildify":"4.0.0","util":"0.12.5"},"devDependencies":{"@types/diff":"5.0.2","@types/diff-match-patch":"1.0.32","@types/glob":"8.1.0","@types/lodash":"4.14.191","@types/mocha":"10.0.1","@types/node":"16.18.13","@types/parsimmon":"1.10.6","@types/sinon":"10.0.13","@types/vscode":"1.74.0","@vscode/test-electron":"2.3.0","circular-dependency-plugin":"^5.2.2","clean-webpack-plugin":"4.0.0","event-stream":"4.0.1","fork-ts-checker-webpack-plugin":"7.3.0","gulp":"4.0.2","gulp-bump":"3.2.0","gulp-git":"2.10.1","gulp-tag-version":"1.3.1","gulp-typescript":"5.0.1","husky":"^8.0.3","lint-staged":"^13.1.2","minimist":"1.2.8","mocha":"10.2.0","plugin-error":"2.0.1","prettier":"2.8.4","sinon":"15.0.1","ts-loader":"9.4.2","tslint":"6.1.3","typescript":"4.9.5","vsce":"2.15.0","webpack":"5.75.0","webpack-cli":"5.0.1","webpack-merge":"5.8.0","webpack-stream":"7.0.0"},"lint-staged":{"*.{ts,js,json,md,yml}":"prettier --write","*.{ts}":"tslint --fix"}},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/vscodevim.vim-1.25.2-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"d96e79c6-8b25-4be3-8545-0e0ecefcae03","publisherId":"5d63889b-1b67-4b1f-8350-4f1dce041a26","publisherDisplayName":"vscodevim","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691833413494,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"vue.volar","uuid":"a5223b43-8621-4351-a14e-3d560f85f277"},"manifest":{"private":true,"name":"volar","version":"1.8.8","repository":{"type":"git","url":"https://github.com/vuejs/language-tools.git","directory":"packages/vscode-vue"},"categories":["Programming Languages"],"sponsor":{"url":"https://github.com/sponsors/johnsoncodehk"},"icon":"images/icon.png","displayName":"Vue Language Features (Volar)","description":"Language support for Vue 3","author":"johnsoncodehk","publisher":"Vue","engines":{"vscode":"^1.67.0"},"activationEvents":["onLanguage:vue","onLanguage:markdown","onLanguage:html","onLanguage:javascript","onLanguage:typescript","onLanguage:javascriptreact","onLanguage:typescriptreact"],"main":"./client.js","browser":"./web.js","capabilities":{"virtualWorkspaces":{"supported":"limited","description":"Install https://marketplace.visualstudio.com/items?itemName=johnsoncodehk.vscode-typescript-web to have IntelliSense for .vue files in Web IDE."},"untrustedWorkspaces":{"supported":"limited","description":"Workspace must be trusted for Volar to work properly.","restrictedConfigurations":["typescript.tsdk","typescript.tsserver.pluginPaths","typescript.npm"]}},"contributes":{"jsonValidation":[{"fileMatch":"tsconfig.json","url":"https://json.schemastore.org/tsconfig"},{"fileMatch":"tsconfig.*.json","url":"https://json.schemastore.org/tsconfig"},{"fileMatch":"tsconfig-*.json","url":"https://json.schemastore.org/tsconfig"},{"fileMatch":"typings.json","url":"https://json.schemastore.org/typings"},{"fileMatch":".bowerrc","url":"https://json.schemastore.org/bowerrc"},{"fileMatch":".babelrc","url":"https://json.schemastore.org/babelrc"},{"fileMatch":".babelrc.json","url":"https://json.schemastore.org/babelrc"},{"fileMatch":"babel.config.json","url":"https://json.schemastore.org/babelrc"},{"fileMatch":"jsconfig.json","url":"https://json.schemastore.org/jsconfig"},{"fileMatch":"jsconfig.*.json","url":"https://json.schemastore.org/jsconfig"},{"fileMatch":"tsconfig.json","url":"./dist/schemas/vue-tsconfig.schema.json"},{"fileMatch":"tsconfig-*.json","url":"./dist/schemas/vue-tsconfig.schema.json"},{"fileMatch":"tsconfig.*.json","url":"./dist/schemas/vue-tsconfig.schema.json"},{"fileMatch":"jsconfig.json","url":"./dist/schemas/vue-tsconfig.schema.json"},{"fileMatch":"jsconfig-*.json","url":"./dist/schemas/vue-tsconfig.schema.json"},{"fileMatch":"jsconfig.*.json","url":"./dist/schemas/vue-tsconfig.schema.json"},{"fileMatch":"tsconfig.json","url":"./dist/schemas/vue-tsconfig.deprecated.schema.json"},{"fileMatch":"tsconfig-*.json","url":"./dist/schemas/vue-tsconfig.deprecated.schema.json"},{"fileMatch":"tsconfig.*.json","url":"./dist/schemas/vue-tsconfig.deprecated.schema.json"},{"fileMatch":"jsconfig.json","url":"./dist/schemas/vue-tsconfig.deprecated.schema.json"},{"fileMatch":"jsconfig-*.json","url":"./dist/schemas/vue-tsconfig.deprecated.schema.json"},{"fileMatch":"jsconfig.*.json","url":"./dist/schemas/vue-tsconfig.deprecated.schema.json"}],"semanticTokenScopes":[{"language":"vue","scopes":{"component":["support.class.component.vue"]}},{"language":"markdown","scopes":{"component":["support.class.component.vue"]}},{"language":"html","scopes":{"component":["support.class.component.vue"]}}],"languages":[{"id":"vue","extensions":[".vue"],"configuration":"./languages/vue-language-configuration.json"},{"id":"markdown","configuration":"./languages/markdown-language-configuration.json"},{"id":"html","configuration":"./languages/sfc-template-language-configuration.json"},{"id":"jade","configuration":"./languages/sfc-template-language-configuration.json"},{"id":"plaintext","configuration":"./languages/sfc-template-language-configuration.json"},{"id":"vue-injection-markdown"},{"id":"vue-directives"},{"id":"vue-interpolations"},{"id":"vue-sfc-style-variable-injection"}],"grammars":[{"language":"vue","scopeName":"source.vue","path":"./syntaxes/vue.tmLanguage.json","embeddedLanguages":{"source.vue":"vue","text":"plaintext","text.html.derivative":"html","text.html.markdown":"markdown","text.pug":"jade","source.css":"css","source.css.scss":"scss","source.css.less":"less","source.sass":"sass","source.stylus":"stylus","source.postcss":"postcss","source.js":"javascript","source.ts":"typescript","source.js.jsx":"javascriptreact","source.tsx":"typescriptreact","meta.tag.js":"jsx-tags","meta.tag.tsx":"jsx-tags","meta.tag.without-attributes.js":"jsx-tags","meta.tag.without-attributes.tsx":"jsx-tags","source.json":"json","source.json.comments":"jsonc","source.json5":"json5","source.yaml":"yaml","source.toml":"toml","source.graphql":"graphql"},"unbalancedBracketScopes":["keyword.operator.relational","storage.type.function.arrow","keyword.operator.bitwise.shift","meta.brace.angle","punctuation.definition.tag"]},{"language":"vue-injection-markdown","scopeName":"markdown.vue.codeblock","path":"./syntaxes/markdown-vue.json","injectTo":["text.html.markdown"],"embeddedLanguages":{"meta.embedded.block.vue":"vue","source.vue":"vue","text":"plaintext","text.html.derivative":"html","text.html.markdown":"markdown","text.pug":"jade","source.css":"css","source.css.scss":"scss","source.css.less":"less","source.sass":"sass","source.stylus":"stylus","source.postcss":"postcss","source.js":"javascript","source.ts":"typescript","source.js.jsx":"javascriptreact","source.tsx":"typescriptreact","meta.tag.js":"jsx-tags","meta.tag.tsx":"jsx-tags","meta.tag.without-attributes.js":"jsx-tags","meta.tag.without-attributes.tsx":"jsx-tags","source.json":"json","source.json.comments":"jsonc","source.json5":"json5","source.yaml":"yaml","source.toml":"toml","source.graphql":"graphql"}},{"language":"vue-directives","scopeName":"vue.directives","path":"./syntaxes/vue-directives.json","injectTo":["source.vue","text.html.markdown","text.html.derivative","text.pug"]},{"language":"vue-interpolations","scopeName":"vue.interpolations","path":"./syntaxes/vue-interpolations.json","injectTo":["source.vue","text.html.markdown","text.html.derivative","text.pug"]},{"language":"vue-sfc-style-variable-injection","scopeName":"vue.sfc.style.variable.injection","path":"./syntaxes/vue-sfc-style-variable-injection.json","injectTo":["source.vue"]}],"breakpoints":[{"language":"vue"}],"configuration":{"type":"object","title":"Volar","properties":{"typescript.tsdk":{"type":"string"},"volar.format.initialIndent":{"type":"object","description":"Whether to have initial indent.","default":{"html":true},"properties":{"html":{"type":"boolean","default":true},"typescript":{"type":"boolean","default":false},"javascript":{"type":"boolean","default":false},"typescriptreact":{"type":"boolean","default":false},"javascriptreact":{"type":"boolean","default":false},"css":{"type":"boolean","default":false},"scss":{"type":"boolean","default":false},"less":{"type":"boolean","default":false},"sass":{"type":"boolean","default":false},"jade":{"type":"boolean","default":false},"json":{"type":"boolean","default":false},"jsonc":{"type":"boolean","default":false},"json5":{"type":"boolean","default":false}}},"volar.takeOverMode.extension":{"type":"string","default":"Vue.volar","description":"The extension that take over language support for *.ts."},"vue-semantic-server.trace.server":{"scope":"window","type":"string","enum":["off","messages","verbose"],"default":"off","description":"Traces the communication between VS Code and the language server."},"vue-syntactic-server.trace.server":{"scope":"window","type":"string","enum":["off","messages","verbose"],"default":"off","description":"Traces the communication between VS Code and the language server."},"vue.server.configFilePath":{"type":"string","default":"./volar.config.js","description":"Path to volar.config.js."},"vue.server.maxFileSize":{"type":"number","default":20971520,"description":"Maximum file size for Vue Server to load. (default: 20MB)"},"vue.server.petiteVue.supportHtmlFile":{"type":"boolean","default":false},"vue.server.vitePress.supportMdFile":{"type":"boolean","default":false},"vue.server.diagnosticModel":{"type":"string","default":"push","enum":["push","pull"],"enumDescriptions":["Diagnostic push by language server.","Diagnostic pull by language client."],"description":"Diagnostic update model."},"vue.server.maxOldSpaceSize":{"type":["number","null"],"default":null,"description":"Set --max-old-space-size option on server process. If you have problem on frequently \"Request textDocument/** failed.\" error, try setting higher memory(MB) on it."},"vue.server.reverseConfigFilePriority":{"type":"boolean","default":false,"description":"Reverse priority for tsconfig pickup."},"vue.server.additionalExtensions":{"type":"array","items":{"type":"string"},"default":[],"description":"List any additional file extensions that should be processed as Vue files (requires restart)."},"vue.server.fullCompletionList":{"type":"boolean","default":false,"description":"Enable this option if you want to get complete CompletionList in language client. (Disable for better performance)"},"vue.doctor.status":{"type":"boolean","default":true,"description":"Show known problems in status bar."},"vue.splitEditors.icon":{"type":"boolean","default":false,"description":"Show split editor icon in title area of editor."},"vue.splitEditors.layout.left":{"type":"array","default":["script","scriptSetup","styles"]},"vue.splitEditors.layout.right":{"type":"array","default":["template","customBlocks"]},"vue.updateImportsOnFileMove.enabled":{"type":"boolean","default":false,"description":"Enabled update imports on file move."},"vue.codeActions.enabled":{"type":"boolean","default":true,"description":"Enabled code actions."},"vue.codeActions.savingTimeLimit":{"type":"number","default":1000,"description":"Time limit for code actions on save (ms)."},"vue.codeLens.enabled":{"type":"boolean","default":true,"description":"Enabled code lens."},"vue.complete.casing.tags":{"type":"string","enum":["autoKebab","autoPascal","kebab","pascal"],"enumDescriptions":["Auto Detect from Content (Fallback to <kebab-case> if detect failed)","Auto Detect from Content (Fallback to <PascalCase> if detect failed)","<kebab-case>","<PascalCase>"],"default":"autoPascal","description":"Preferred tag name case."},"vue.complete.casing.props":{"type":"string","enum":["autoKebab","autoCamel","kebab","camel"],"enumDescriptions":["Auto Detect from Content (Fallback to :kebab-case=\"...\" if detect failed)","Auto Detect from Content (Fallback to :camelCase=\"...\" if detect failed)",":kebab-case=\"...\"",":camelCase=\"...\""],"default":"autoKebab","description":"Preferred attr name case."},"vue.complete.casing.status":{"type":"boolean","default":true,"description":"Show name casing in status bar."},"vue.complete.normalizeComponentImportName":{"type":"boolean","default":true,"description":"Normalize import name for auto import. (\"myCompVue\" -> \"MyComp\")"},"vue.autoInsert.parentheses":{"type":"boolean","default":true,"description":"Auto-wrap `()` to As Expression in interpolations for fix issue #520."},"vue.autoInsert.dotValue":{"type":"boolean","default":false,"description":"Auto-complete Ref value with `.value`."},"vue.autoInsert.bracketSpacing":{"type":"boolean","default":true,"description":"Auto add space between double curly brackets: {{|}} -> {{ | }}"},"vue.inlayHints.missingProps":{"type":"boolean","default":false,"description":"Show inlay hints for missing required props."},"vue.inlayHints.inlineHandlerLeading":{"type":"boolean","default":false,"description":"Show inlay hints for event argument in inline handlers."},"vue.inlayHints.optionsWrapper":{"type":"boolean","default":false,"description":"Show inlay hints for component options wrapper for type support."}}},"commands":[{"command":"volar.action.restartServer","title":"Restart Vue server","category":"Volar"},{"command":"volar.action.reloadProject","title":"Reload Project","category":"Volar"},{"command":"volar.action.doctor","title":"Doctor","category":"Volar"},{"command":"volar.action.writeVirtualFiles","title":"Write Virtual Files","category":"Volar (Debug)"},{"command":"volar.action.showComponentMeta","title":"Show Component Meta","category":"Volar"},{"command":"volar.action.splitEditors","title":"Split <script>, <template>, <style> Editors","category":"Volar","icon":"images/split-editors.png"},{"command":"volar.selectTypeScriptVersion","title":"Select TypeScript Version...","category":"Volar"},{"command":"volar.vue.findAllFileReferences","title":"Vue: Find File References","category":"Volar"}],"menus":{"commandPalette":[{"command":"volar.action.restartServer","when":"volar.activated"},{"command":"volar.action.reloadProject","when":"volar.activated"},{"command":"volar.action.doctor","when":"volar.activated"},{"command":"volar.action.writeVirtualFiles","when":"volar.activated"},{"command":"volar.action.splitEditors","when":"editorLangId == vue"},{"command":"volar.selectTypeScriptVersion","when":"volar.activated"}],"editor/title":[{"command":"volar.action.splitEditors","when":"resourceLangId == vue && config.vue.splitEditors.icon","group":"navigation"}],"explorer/context":[{"command":"volar.vue.findAllFileReferences","when":"resourceLangId == typescript","group":"4_search"},{"command":"volar.vue.findAllFileReferences","when":"resourceLangId == typescriptreact","group":"4_search"},{"command":"volar.vue.findAllFileReferences","when":"resourceLangId == javascript","group":"4_search"},{"command":"volar.vue.findAllFileReferences","when":"resourceLangId == javascriptreact","group":"4_search"},{"command":"volar.vue.findAllFileReferences","when":"resourceLangId == vue","group":"4_search"},{"command":"volar.vue.findAllFileReferences","when":"resourceLangId == html","group":"4_search"}]},"problemMatchers":[{"name":"vite","label":"Vite problems","pattern":{"regexp":""},"background":{"activeOnStart":true,"beginsPattern":"restarting server...$","endsPattern":"\\s*ready in|server restarted."}}]},"scripts":{"prebuild":"cd ../.. && npm run build","build":"node scripts/build","build:minify":"npm run build -- --minify","watch":"npm run build -- --watch","pack":"npm run build:minify && vsce package","pack:next":"npm run build && vsce package","release":"npm run build:minify && vsce publish","release:next":"npm run build && vsce publish --pre-release","bundle-size":"npm run build:minify --metafile && esbuild-visualizer --metadata ./meta.json && open ./stats.html"},"devDependencies":{"@types/semver":"^7.3.13","@types/vscode":"1.67.0","@volar/vscode":"~1.10.0","@vue/language-core":"1.8.8","@vue/language-server":"1.8.8","esbuild":"0.15.18","esbuild-plugin-copy":"latest","esbuild-visualizer":"latest","semver":"^7.3.8","vsce":"latest","vscode-languageclient":"^8.1.0"}},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/vue.volar-1.8.8-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"a5223b43-8621-4351-a14e-3d560f85f277","publisherId":"49983e2f-38ad-4441-beea-d678b53d0549","publisherDisplayName":"Vue","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691833418957,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"svelte.svelte-vscode","uuid":"c5463f77-75d9-4a25-8cc4-d8541a461285"},"manifest":{"name":"svelte-vscode","version":"107.10.0","description":"Svelte language support for VS Code","main":"dist/src/extension.js","scripts":{"build:grammar":"npx js-yaml syntaxes/svelte.tmLanguage.src.yaml > syntaxes/svelte.tmLanguage.json && npx js-yaml syntaxes/postcss.src.yaml > syntaxes/postcss.json","build:ts":"tsc -p ./","build":"npm run build:ts && npm run build:grammar","vscode:prepublish":"npm install && npm run build && npm prune --production","watch":"npm run build:grammar && tsc -w -p ./","test":"npm run build:grammar && node test/grammar/test.js"},"repository":{"type":"git","url":"https://github.com/sveltejs/language-tools.git"},"keywords":["svelte","vscode"],"author":"James Birtles <jameshbirtles@gmail.com> & the Svelte Core Team","license":"MIT","bugs":{"url":"https://github.com/sveltejs/language-tools/issues"},"homepage":"https://github.com/sveltejs/language-tools#readme","displayName":"Svelte for VS Code","publisher":"svelte","icon":"icons/logo.png","galleryBanner":{"color":"#FF3E00","theme":"dark"},"categories":["Programming Languages","Formatters"],"engines":{"vscode":"^1.67.0"},"activationEvents":["onLanguage:svelte","onCommand:svelte.restartLanguageServer","onLanguage:javascript","onLanguage:typescript"],"capabilities":{"untrustedWorkspaces":{"supported":"limited","restrictedConfigurations":["svelte.language-server.runtime","svelte.language-server.ls-path"],"description":"The extension requires workspace trust because it executes code specified by the workspace. Loading the user's node_modules and loading svelte config files is disabled when untrusted"}},"contributes":{"typescriptServerPlugins":[{"name":"typescript-svelte-plugin","enableForWorkspaceTypeScriptVersions":true}],"configuration":{"type":"object","title":"Svelte","properties":{"svelte.enable-ts-plugin":{"type":"boolean","default":false,"title":"Enable TypeScript Svelte plugin","description":"Enables a TypeScript plugin which provides intellisense for Svelte files inside TS/JS files."},"svelte.ask-to-enable-ts-plugin":{"type":"boolean","default":true,"title":"Ask to enable TypeScript Svelte plugin","description":"Ask on startup to enable the TypeScript plugin."},"svelte.language-server.runtime":{"type":"string","title":"Language Server Runtime","description":"- You normally don't need this - Path to the node executable to use to spawn the language server. This is useful when you depend on native modules such as node-sass as without this they will run in the context of vscode, meaning node version mismatch is likely. Minimum required node version is 12.17. This setting can only be changed in user settings for security reasons."},"svelte.language-server.ls-path":{"type":"string","title":"Language Server Path","description":"- You normally don't set this - Path to the language server executable. If you installed the \"svelte-language-server\" npm package, it's within there at \"bin/server.js\". Path can be either relative to your workspace root or absolute. Set this only if you want to use a custom version of the language server. This will then also use the workspace version of TypeScript. This setting can only be changed in user settings for security reasons."},"svelte.language-server.port":{"type":"number","title":"Language Server Port","description":"- You normally don't set this - At which port to spawn the language server. Can be used for attaching to the process for debugging / profiling. If you experience crashes due to \"port already in use\", try setting the port. -1 = default port is used.","default":-1},"svelte.language-server.debug":{"type":"boolean","title":"Language Server Debug Mode","description":"- You normally don't set this - Enable more verbose logging for the language server useful for debugging language server execution."},"svelte.trace.server":{"type":"string","enum":["off","messages","verbose"],"default":"off","description":"Traces the communication between VS Code and the Svelte Language Server."},"svelte.ui.svelteKitFilesContextMenu.enable":{"type":"string","default":"auto","enum":["auto","never","always"],"description":"Show a context menu to generate SvelteKit files. \"always\" to always show it. \"never\" to always disable it. \"auto\" to show it when in a SvelteKit project. "},"svelte.plugin.typescript.enable":{"type":"boolean","default":true,"title":"TypeScript","description":"Enable the TypeScript plugin"},"svelte.plugin.typescript.diagnostics.enable":{"type":"boolean","default":true,"title":"TypeScript: Diagnostics","description":"Enable diagnostic messages for TypeScript"},"svelte.plugin.typescript.hover.enable":{"type":"boolean","default":true,"title":"TypeScript: Hover Info","description":"Enable hover info for TypeScript"},"svelte.plugin.typescript.documentSymbols.enable":{"type":"boolean","default":true,"title":"TypeScript: Symbols in Outline","description":"Enable document symbols for TypeScript"},"svelte.plugin.typescript.completions.enable":{"type":"boolean","default":true,"title":"TypeScript: Completions","description":"Enable completions for TypeScript"},"svelte.plugin.typescript.codeActions.enable":{"type":"boolean","default":true,"title":"TypeScript: Code Actions","description":"Enable code actions for TypeScript"},"svelte.plugin.typescript.selectionRange.enable":{"type":"boolean","default":true,"title":"TypeScript: Selection Range","description":"Enable selection range for TypeScript"},"svelte.plugin.typescript.signatureHelp.enable":{"type":"boolean","default":true,"title":"TypeScript: Signature Help","description":"Enable signature help (parameter hints) for TypeScript"},"svelte.plugin.typescript.semanticTokens.enable":{"type":"boolean","default":true,"title":"TypeScript: Semantic Tokens","description":"Enable semantic tokens (semantic highlight) for TypeScript."},"svelte.plugin.css.enable":{"type":"boolean","default":true,"title":"CSS","description":"Enable the CSS plugin"},"svelte.plugin.css.globals":{"type":"string","default":"","title":"CSS: Global Files","description":"Which css files should be checked for global variables (`--global-var: value;`). These variables are added to the css completions. String of comma-separated file paths or globs relative to workspace root."},"svelte.plugin.css.diagnostics.enable":{"type":"boolean","default":true,"title":"CSS: Diagnostics","description":"Enable diagnostic messages for CSS"},"svelte.plugin.css.hover.enable":{"type":"boolean","default":true,"title":"CSS: Hover Info","description":"Enable hover info for CSS"},"svelte.plugin.css.completions.enable":{"type":"boolean","default":true,"title":"CSS: Auto Complete","description":"Enable auto completions for CSS"},"svelte.plugin.css.completions.emmet":{"type":"boolean","default":true,"title":"CSS: Include Emmet Completions","description":"Enable emmet auto completions for CSS"},"svelte.plugin.css.documentColors.enable":{"type":"boolean","default":true,"title":"CSS: Document Colors","description":"Enable document colors for CSS"},"svelte.plugin.css.colorPresentations.enable":{"type":"boolean","default":true,"title":"CSS: Color Picker","description":"Enable color picker for CSS"},"svelte.plugin.css.documentSymbols.enable":{"type":"boolean","default":true,"title":"CSS: Symbols in Outline","description":"Enable document symbols for CSS"},"svelte.plugin.css.selectionRange.enable":{"type":"boolean","default":true,"title":"CSS: SelectionRange","description":"Enable selection range for CSS"},"svelte.plugin.html.enable":{"type":"boolean","default":true,"title":"HTML","description":"Enable the HTML plugin"},"svelte.plugin.html.hover.enable":{"type":"boolean","default":true,"title":"HTML: Hover Info","description":"Enable hover info for HTML"},"svelte.plugin.html.completions.enable":{"type":"boolean","default":true,"title":"HTML: Auto Complete","description":"Enable auto completions for HTML"},"svelte.plugin.html.completions.emmet":{"type":"boolean","default":true,"title":"HTML: Include Emmet Completions","description":"Enable emmet auto completions for HTML"},"svelte.plugin.html.tagComplete.enable":{"type":"boolean","default":true,"title":"HTML: Tag Auto Closing","description":"Enable HTML tag auto closing"},"svelte.plugin.html.documentSymbols.enable":{"type":"boolean","default":true,"title":"HTML: Symbols in Outline","description":"Enable document symbols for HTML"},"svelte.plugin.html.linkedEditing.enable":{"type":"boolean","default":true,"title":"HTML: Linked Editing","description":"Enable Linked Editing for HTML"},"svelte.plugin.svelte.enable":{"type":"boolean","default":true,"title":"Svelte","description":"Enable the Svelte plugin"},"svelte.plugin.svelte.diagnostics.enable":{"type":"boolean","default":true,"title":"Svelte: Diagnostics","description":"Enable diagnostic messages for Svelte"},"svelte.plugin.svelte.compilerWarnings":{"type":"object","additionalProperties":{"type":"string","enum":["ignore","error"]},"default":{},"title":"Svelte: Compiler Warnings Settings","description":"Svelte compiler warning codes to ignore or to treat as errors. Example: { 'css-unused-selector': 'ignore', 'unused-export-let': 'error'}"},"svelte.plugin.svelte.format.enable":{"type":"boolean","default":true,"title":"Svelte: Format","description":"Enable formatting for Svelte (includes css & js). You can set some formatting options through this extension. They will be ignored if there's any kind of configuration file, for example a `.prettierrc` file."},"svelte.plugin.svelte.format.config.svelteSortOrder":{"type":"string","default":"options-scripts-markup-styles","title":"Svelte Format: Sort Order","description":"Format: join the keys `options`, `scripts`, `markup`, `styles` with a - in the order you want. This option is ignored if there's any kind of configuration file, for example a `.prettierrc` file."},"svelte.plugin.svelte.format.config.svelteStrictMode":{"type":"boolean","default":false,"title":"Svelte Format: Strict Mode","description":"More strict HTML syntax. This option is ignored if there's any kind of configuration file, for example a `.prettierrc` file."},"svelte.plugin.svelte.format.config.svelteAllowShorthand":{"type":"boolean","default":true,"title":"Svelte Format: Allow Shorthand","description":"Option to enable/disable component attribute shorthand if attribute name and expression are the same. This option is ignored if there's any kind of configuration file, for example a `.prettierrc` file."},"svelte.plugin.svelte.format.config.svelteBracketNewLine":{"type":"boolean","default":true,"title":"Svelte Format: Bracket New Line","description":"Put the `>` of a multiline element on a new line. This option is ignored if there's any kind of configuration file, for example a `.prettierrc` file."},"svelte.plugin.svelte.format.config.svelteIndentScriptAndStyle":{"type":"boolean","default":true,"title":"Svelte Format: Indent Script And Style","description":"Whether or not to indent code inside `<script>` and `<style>` tags. This option is ignored if there's any kind of configuration file, for example a `.prettierrc` file."},"svelte.plugin.svelte.format.config.printWidth":{"type":"number","default":80,"title":"Svelte Format: Print Width","description":"Maximum line width after which code is tried to be broken up. This is a Prettier core option. If you have the Prettier extension installed, this option is ignored and the corresponding option of that extension is used instead. This option is also ignored if there's any kind of configuration file, for example a `.prettierrc` file."},"svelte.plugin.svelte.format.config.singleQuote":{"type":"boolean","default":false,"title":"Svelte Format: Quotes","description":"Use single quotes instead of double quotes, where possible. This is a Prettier core option. If you have the Prettier extension installed, this option is ignored and the corresponding option of that extension is used instead. This option is also ignored if there's any kind of configuration file, for example a `.prettierrc` file."},"svelte.plugin.svelte.completions.enable":{"type":"boolean","default":true,"title":"Svelte: Completions","description":"Enable auto completions for Svelte"},"svelte.plugin.svelte.hover.enable":{"type":"boolean","default":true,"title":"Svelte: Hover","description":"Enable hover information for Svelte"},"svelte.plugin.svelte.codeActions.enable":{"type":"boolean","default":true,"title":"Svelte: Code Actions","description":"Enable Code Actions for Svelte"},"svelte.plugin.svelte.selectionRange.enable":{"type":"boolean","default":true,"title":"Svelte: Selection Range","description":"Enable selection range for Svelte"},"svelte.plugin.svelte.rename.enable":{"type":"boolean","default":true,"title":"Svelte: Rename","description":"Enable rename/move Svelte files functionality"},"svelte.plugin.svelte.defaultScriptLanguage":{"type":"string","default":"none","title":"Svelte: Default Script Language","description":"The default language to use when generating new script tags","enum":["none","ts"]}}},"languages":[{"id":"svelte","aliases":["Svelte","svelte"],"extensions":[".svelte"],"configuration":"./language-configuration.json"},{"id":"json","filenames":[".prettierrc"]}],"jsonValidation":[{"fileMatch":".prettierrc","url":"./prettier-options-schema.json"},{"fileMatch":".prettierrc.json","url":"./prettier-options-schema.json"},{"fileMatch":"package.json","url":"./package-json-schema.json"}],"grammars":[{"language":"svelte","scopeName":"source.svelte","path":"./syntaxes/svelte.tmLanguage.json","embeddedLanguages":{"text.html.basic":"html","text.html.markdown":"markdown","text.pug":"jade","source.css":"css","source.css.less":"less","source.css.scss":"scss","source.css.postcss":"postcss","source.sass":"sass","source.stylus":"stylus","source.js":"javascript","source.ts":"typescript","source.coffee":"coffeescript"},"unbalancedBracketScopes":["keyword.operator.relational","storage.type.function.arrow","keyword.operator.bitwise.shift","meta.brace.angle","punctuation.definition.tag"]},{"scopeName":"svelte.pug","path":"./syntaxes/pug-svelte.json","injectTo":["source.svelte"],"embeddedLanguages":{"source.ts":"typescript","text.pug":"jade"}},{"scopeName":"svelte.pug.tags","path":"./syntaxes/pug-svelte-tags.json","injectTo":["source.svelte"],"embeddedLanguages":{"source.ts":"typescript","text.pug":"jade"}},{"scopeName":"svelte.pug.dotblock","path":"./syntaxes/pug-svelte-dotblock.json","injectTo":["source.svelte"],"embeddedLanguages":{"source.ts":"typescript"}},{"scopeName":"markdown.svelte.codeblock","path":"./syntaxes/markdown-svelte.json","injectTo":["text.html.markdown"],"embeddedLanguages":{"meta.embedded.block.svelte":"svelte"}},{"scopeName":"markdown.svelte.codeblock.script","path":"./syntaxes/markdown-svelte-js.json","injectTo":["text.html.markdown"]},{"scopeName":"markdown.svelte.codeblock.style","path":"./syntaxes/markdown-svelte-css.json","injectTo":["text.html.markdown"]},{"scopeName":"source.css.postcss","path":"./syntaxes/postcss.json","injectTo":["source.svelte"]}],"commands":[{"command":"svelte.restartLanguageServer","title":"Svelte: Restart Language Server"},{"command":"svelte.showCompiledCodeToSide","title":"Svelte: Show Compiled Code","icon":{"light":"icons/preview-right-light.svg","dark":"icons/preview-right-dark.svg"}},{"command":"svelte.extractComponent","title":"Svelte: Extract Component"},{"command":"svelte.typescript.findAllFileReferences","title":"Svelte: Find File References"},{"command":"svelte.typescript.findComponentReferences","title":"Svelte: Find Component References"},{"command":"svelte.kit.generateMultipleFiles","title":"SvelteKit: Create route"},{"command":"svelte.kit.generatePage","title":"SvelteKit: Create +page.svelte"},{"command":"svelte.kit.generatePageLoad","title":"SvelteKit: Create +page.js/ts"},{"command":"svelte.kit.generatePageServerLoad","title":"SvelteKit: Create +page.server.js/ts"},{"command":"svelte.kit.generateLayout","title":"SvelteKit: Create +layout.svelte"},{"command":"svelte.kit.generateLayoutLoad","title":"SvelteKit: Create +layout.js/ts"},{"command":"svelte.kit.generateLayoutServerLoad","title":"SvelteKit: Create +layout.server.js/ts"},{"command":"svelte.kit.generateServer","title":"SvelteKit: Create +server.js/ts"},{"command":"svelte.kit.generateError","title":"SvelteKit: Create +error.svelte"}],"menus":{"commandPalette":[{"command":"svelte.showCompiledCodeToSide","when":"editorLangId == svelte"},{"command":"svelte.typescript.findAllFileReferences","when":"editorLangId == svelte && resourceScheme == file"},{"command":"svelte.typescript.findComponentReferences","when":"editorLangId == svelte && resourceScheme == file"}],"editor/title":[{"command":"svelte.showCompiledCodeToSide","when":"editorLangId == svelte","group":"navigation"}],"editor/title/context":[{"command":"svelte.typescript.findAllFileReferences","when":"resourceLangId == svelte && resourceScheme == file"},{"command":"svelte.typescript.findComponentReferences","when":"resourceLangId == svelte && resourceScheme == file"}],"editor/context":[{"command":"svelte.extractComponent","when":"editorLangId == svelte","group":"1_modification"},{"command":"svelte.typescript.findAllFileReferences","when":"editorLangId == svelte","group":"4_search"},{"command":"svelte.typescript.findComponentReferences","when":"editorLangId == svelte","group":"4_search"}],"explorer/context":[{"command":"svelte.typescript.findAllFileReferences","when":"resourceLangId == svelte","group":"4_search"},{"command":"svelte.typescript.findComponentReferences","when":"resourceLangId == svelte","group":"4_search"},{"when":"explorerResourceIsFolder && config.svelte.ui.svelteKitFilesContextMenu.enable == always || explorerResourceIsFolder && svelte.uiContext.svelteKitFilesContextMenu.enable","submenu":"sveltekit2files","group":"1_SvelteKit2files"}],"sveltekit2files":[{"command":"svelte.kit.generateMultipleFiles","group":"0_SvelteKit_Multiple"},{"command":"svelte.kit.generatePage","group":"1_SvelteKit_Page"},{"command":"svelte.kit.generatePageLoad","group":"1_SvelteKit_Page"},{"command":"svelte.kit.generatePageServerLoad","group":"1_SvelteKit_Page"},{"command":"svelte.kit.generateLayout","group":"3_SvelteKit_Layout"},{"command":"svelte.kit.generateLayoutLoad","group":"3_SvelteKit_Layout"},{"command":"svelte.kit.generateLayoutServerLoad","group":"3_SvelteKit_Layout"},{"command":"svelte.kit.generateServer","group":"2_SvelteKit_Server"},{"command":"svelte.kit.generateError","group":"4_SvelteKit_Error"}]},"submenus":[{"id":"sveltekit2files","label":"SvelteKit Files"}],"breakpoints":[{"language":"svelte"}],"snippets":[{"language":"svelte","path":"./snippets/svelte.json"},{"language":"javascript","path":"./snippets/javascript.json"},{"language":"typescript","path":"./snippets/typescript.json"}]},"devDependencies":{"@tsconfig/node16":"^1.0.0","@types/lodash":"^4.14.116","@types/node":"^16.0.0","@types/vscode":"^1.67","js-yaml":"^3.14.0","tslib":"^2.4.0","typescript":"*","vscode-tmgrammar-test":"^0.0.11"},"dependencies":{"lodash":"^4.17.21","svelte-language-server":"*","typescript-svelte-plugin":"*","vscode-languageclient":"^8.0.0","vscode-languageserver-protocol":"3.17.2"}},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/svelte.svelte-vscode-107.10.0-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"c5463f77-75d9-4a25-8cc4-d8541a461285","publisherId":"c3bf51ad-baaa-466c-952c-9c3ca9bfabed","publisherDisplayName":"svelte","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691833415961,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"ecmel.vscode-html-css","uuid":"aaee577c-f062-495a-9816-0cbd442f1d25"},"manifest":{"name":"vscode-html-css","displayName":"HTML CSS Support","description":"CSS Intellisense for HTML","version":"1.13.1","publisher":"ecmel","license":"MIT","homepage":"https://github.com/ecmel/vscode-html-css","bugs":"https://github.com/ecmel/vscode-html-css/issues","icon":"icon.png","sponsor":{"url":"https://github.com/sponsors/ecmel"},"repository":{"type":"git","url":"https://github.com/ecmel/vscode-html-css.git"},"engines":{"vscode":"^1.66.0"},"categories":["Programming Languages","Other"],"keywords":["css","html","twig","blade","django","nunjucks","mustache","angular","react","vue","multi-root ready"],"activationEvents":["*"],"contributes":{"configuration":{"title":"CSS Settings","properties":{"css.enabledLanguages":{"type":"array","scope":"application","description":"List of languages which suggestions are desired.","default":["html"]},"css.styleSheets":{"type":"array","scope":"resource","description":"List of local or remote style sheets for suggestions.","default":[]}}},"commands":[{"command":"vscode-html-css.validate","title":"CSS: Validate Attributes"},{"command":"vscode-html-css.dispose","title":"CSS: Clear Cache"}]},"main":"./dist/extension.js","scripts":{"vscode:prepublish":"npm run package","compile":"webpack","watch":"webpack --watch","package":"webpack --mode production --devtool hidden-source-map","compile-tests":"tsc -p . --outDir out","watch-tests":"tsc -p . -w --outDir out","pretest":"npm run compile-tests && npm run compile && npm run lint","lint":"eslint src --ext ts","test":"node ./out/test/runTest.js","deploy":"vsce publish"},"devDependencies":{"@types/css-tree":"^1.0.7","@types/glob":"^7.2.0","@types/mocha":"^9.1.1","@types/node":"14.x","@types/node-fetch":"^2.5.8","@types/vscode":"^1.66.0","@typescript-eslint/eslint-plugin":"^5.21.0","@typescript-eslint/parser":"^5.21.0","@vscode/test-electron":"^2.1.3","css-tree":"^2.0.4","eslint":"^8.14.0","glob":"^8.0.1","mocha":"^9.2.2","node-fetch":"^2.6.1","ts-loader":"^9.2.8","typescript":"^4.6.4","vsce":"^2.9.1","webpack":"^5.70.0","webpack-cli":"^4.9.2"}},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/ecmel.vscode-html-css-1.13.1-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"aaee577c-f062-495a-9816-0cbd442f1d25","publisherId":"7aa35068-d7c4-4220-b9c1-10360795fd5f","publisherDisplayName":"ecmel","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691833443877,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"timonwong.shellcheck","uuid":"f95d8fff-f70a-4ae5-bb06-5c47ddbc8fc6"},"manifest":{"name":"shellcheck","displayName":"ShellCheck","description":"Integrates ShellCheck into VS Code, a linter for Shell scripts.","version":"0.33.1","publisher":"timonwong","author":"Timon Wong <timon86.wang@gmail.com> (https://github.com/timonwong)","contributors":["Felipe Santos <felipecassiors@gmail.com> (https://github.com/felipecrs)"],"license":"MIT","categories":["Linters","Programming Languages"],"keywords":["shell","shellscript","bash","linter","lint"],"homepage":"https://github.com/vscode-shellcheck/vscode-shellcheck#readme","private":true,"repository":{"type":"git","url":"https://github.com/vscode-shellcheck/vscode-shellcheck.git"},"bugs":{"url":"https://github.com/vscode-shellcheck/vscode-shellcheck/issues"},"sponsor":{"url":"https://github.com/vscode-shellcheck/vscode-shellcheck"},"icon":"shellcheck.png","activationEvents":["onLanguage:shellscript","workspaceContains:**/.shellcheckrc"],"main":"./dist/extension.js","capabilities":{"untrustedWorkspaces":{"supported":"limited","description":"Only the user defined shellcheck executable will be taken into account when running in untrusted mode.","restrictedConfigurations":["shellcheck.executablePath"]}},"contributes":{"snippets":[{"language":"shellscript","path":"./snippets/snippets.json"}],"languages":[{"id":"shellcheckrc","extensions":[".shellcheckrc"],"configuration":"./languages/shellcheckrc/language-configuration.json"},{"id":"shellcheck-output","configuration":"./languages/shellcheck-output/language-configuration.json"}],"grammars":[{"language":"shellcheckrc","scopeName":"source.shellcheckrc","path":"./languages/shellcheckrc/tmLanguage.json"},{"language":"shellcheck-output","scopeName":"shellcheck-output","path":"./languages/shellcheck-output/tmLanguage.json"}],"commands":[{"command":"shellcheck.runLint","title":"ShellCheck: Run Linting"},{"command":"shellcheck.collectDiagnostics","title":"ShellCheck: Collect Diagnostics For Current Document"}],"configuration":{"title":"ShellCheck","type":"object","properties":{"shellcheck.enable":{"description":"Whether shellcheck is enabled or not.","type":"boolean","scope":"resource","default":true},"shellcheck.enableQuickFix":{"description":"Whether to enable the \"Quick Fix\" feature.","type":"boolean","scope":"resource","default":true},"shellcheck.executablePath":{"description":"Path to the shellcheck executable (builtin binaries will be used if empty).","examples":["shellcheck"],"type":"string","scope":"machine-overridable"},"shellcheck.run":{"description":"Whether shellcheck is run on save or on type.","type":"string","enum":["onSave","onType","manual"],"scope":"resource","default":"onType"},"shellcheck.exclude":{"markdownDescription":"Exclude certain error codes. For example, to exclude [SC1017](https://shellcheck.net/wiki/SC1017), enter _1017_.\n\nEnumerated error codes can be found [in this gist](https://gist.github.com/nicerobot/53cee11ee0abbdc997661e65b348f375).","type":"array","items":{"type":"string","pattern":"^(SC)?\\d{4}$","patternErrorMessage":"Valid shellcheck error code should be 4-digit numbers, 1017 for example.\n"},"scope":"resource","default":[],"examples":[["1017"]]},"shellcheck.customArgs":{"markdownDescription":"Custom arguments to pass when calling the `shellcheck` binary.","type":"array","items":{"type":"string"},"scope":"resource","default":[],"examples":[["--external-sources"]]},"shellcheck.ignorePatterns":{"markdownDescription":"Configure glob patterns for excluding files and folders by shellcheck. Glob patterns are interpreted relative to the workspace's root folder.\n\nRead more about glob patterns [here](https://code.visualstudio.com/docs/editor/codebasics#_advanced-search-options).","examples":[{"**/*.zsh":true,"**/*.zsh*":true,"**/.git/*.sh":true,"**/folder/**/*.sh":true}],"type":"object","scope":"resource","additionalProperties":{"type":"boolean","description":"The glob pattern to match file paths against. Set to true or false to enable or disable the pattern."},"default":{"**/*.csh":true,"**/*.cshrc":true,"**/*.fish":true,"**/*.login":true,"**/*.logout":true,"**/*.tcsh":true,"**/*.tcshrc":true,"**/*.xonshrc":true,"**/*.xsh":true,"**/*.zsh":true,"**/*.zshrc":true,"**/zshrc":true,"**/*.zprofile":true,"**/zprofile":true,"**/*.zlogin":true,"**/zlogin":true,"**/*.zlogout":true,"**/zlogout":true,"**/*.zshenv":true,"**/zshenv":true,"**/*.zsh-theme":true}},"shellcheck.ignoreFileSchemes":{"description":"Matching file schemes are being ignored by shellcheck.","type":"array","items":{"type":"string"},"scope":"application","default":["git","gitfs","output"]},"shellcheck.useWorkspaceRootAsCwd":{"description":"Whether to use the workspace root directory as the current working directory when launching ShellCheck.","type":"boolean","scope":"resource","default":false},"shellcheck.logLevel":{"description":"The trace level the extension logs at, defaults to 'info'.","type":"string","scope":"window","enum":["trace","debug","info","warn","error","off"],"default":"info"},"shellcheck.disableVersionCheck":{"description":"Whether to disable shellcheck binary version check, which prompts for updating when an outdated version is found.","type":"boolean","scope":"machine-overridable","default":false}}}},"scripts":{"prepare":"bindl","build":"webpack","build:watch":"webpack --watch","build:prod":"webpack --mode production --devtool hidden-source-map","build:test":"tsc --project tsconfig.test.json","build:test:watch":"tsc --project tsconfig.test.json --watch","build:all":"run-p build build:test","build:all:watch":"run-p build:watch build:test:watch","vscode:prepublish":"npm run build:prod","package":"vsce package","publish":"vsce publish","lint":"eslint .","lint:fix":"eslint --fix .","format":"prettier --write .","format:check":"prettier --check .","spell":"cspell \"**\"","pretest":"npm run build:all","test":"node ./out/test/runTest.js","posttest":"npm run lint && npm run format:check && npm run spell","release":"semantic-release"},"dependencies":{"execa":"^5.0.0","lodash":"^4.17.19","minimatch":"^9.0.3","semver":"^7.5.4"},"devDependencies":{"@semantic-release/changelog":"^6.0.3","@semantic-release/git":"^10.0.1","@types/lodash":"^4.14.196","@types/mocha":"^10.0.1","@types/node":"^16.18.39","@types/semver":"^7.5.0","@types/vscode":"~1.66.0","@typescript-eslint/eslint-plugin":"^6.3.0","@typescript-eslint/parser":"^6.3.0","@vscode/test-electron":"^2.3.4","bindl":"^4.1.6","conventional-changelog-conventionalcommits":"^6.1.0","cspell":"^6.31.2","eslint":"^8.46.0","eslint-config-prettier":"^9.0.0","glob":"^10.3.3","kind-of":"^6.0.3","mocha":"^10.2.0","npm-run-all":"^4.1.5","prettier":"^3.0.1","semantic-release":"^19.0.5","semantic-release-stop-before-publish":"^1.0.0","semantic-release-vsce":"^5.6.0","ts-loader":"^9.4.4","typescript":"^5.1.6","webpack":"^5.88.2","webpack-cli":"^5.1.4"},"overrides":{"keytar":"./see_vscode_vsce_issue_786"},"engines":{"vscode":"^1.66.0"},"volta":{"node":"16.20.1","npm":"9.8.0"},"shellcheckVersion":"0.9.0"},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/timonwong.shellcheck-0.33.1-linux-x64","scheme":"file"},"isBuiltin":false,"targetPlatform":"linux-x64","metadata":{"id":"f95d8fff-f70a-4ae5-bb06-5c47ddbc8fc6","publisherId":"04757770-dd50-443e-aae4-e1c7cf9c24f5","publisherDisplayName":"timonwong","targetPlatform":"linux-x64","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691833436958,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"yzhang.markdown-all-in-one","uuid":"98790d67-10fa-497c-9113-f6c7489207b2"},"manifest":{"name":"markdown-all-in-one","displayName":"Markdown All in One","description":"All you need to write Markdown (keyboard shortcuts, table of contents, auto preview and more)","icon":"images/Markdown-mark.png","version":"3.5.1","publisher":"yzhang","engines":{"vscode":"^1.63.0"},"categories":["Programming Languages","Formatters","Other"],"keywords":["markdown"],"bugs":{"url":"https://github.com/yzhang-gh/vscode-markdown/issues"},"repository":{"type":"git","url":"https://github.com/yzhang-gh/vscode-markdown"},"license":"MIT","activationEvents":["onLanguage:markdown","onLanguage:rmd","onLanguage:quarto","onCommand:markdown.extension.printToHtmlBatch","workspaceContains:README.md"],"main":"./dist/node/main.js","contributes":{"colors":[{"id":"markdown.extension.editor.codeSpan.background","description":"Background color of code spans in the Markdown editor.","defaults":{"dark":"#00000000","light":"#00000000","highContrast":"#00000000"}},{"id":"markdown.extension.editor.codeSpan.border","description":"Border color of code spans in the Markdown editor.","defaults":{"dark":"editor.selectionBackground","light":"editor.selectionBackground","highContrast":"editor.selectionBackground"}},{"id":"markdown.extension.editor.formattingMark.foreground","description":"Color of formatting marks (paragraphs, hard line breaks, links, etc.) in the Markdown editor.","defaults":{"dark":"editorWhitespace.foreground","light":"editorWhitespace.foreground","highContrast":"diffEditor.insertedTextBorder"}},{"id":"markdown.extension.editor.trailingSpace.background","description":"Background color of trailing space (U+0020) characters in the Markdown editor.","defaults":{"dark":"diffEditor.diagonalFill","light":"diffEditor.diagonalFill","highContrast":"editorWhitespace.foreground"}}],"commands":[{"command":"markdown.extension.toc.create","enablement":"editorLangId =~ /^markdown$|^rmd$|^quarto$/","title":"Create Table of Contents","category":"Markdown All in One"},{"command":"markdown.extension.toc.update","enablement":"editorLangId =~ /^markdown$|^rmd$|^quarto$/","title":"Update Table of Contents","category":"Markdown All in One"},{"command":"markdown.extension.toc.addSecNumbers","enablement":"editorLangId =~ /^markdown$|^rmd$|^quarto$/","title":"Add/Update section numbers","category":"Markdown All in One"},{"command":"markdown.extension.toc.removeSecNumbers","enablement":"editorLangId =~ /^markdown$|^rmd$|^quarto$/","title":"Remove section numbers","category":"Markdown All in One"},{"command":"markdown.extension.printToHtml","enablement":"editorLangId =~ /^markdown$|^rmd$|^quarto$/","title":"Print current document to HTML","category":"Markdown All in One"},{"command":"markdown.extension.printToHtmlBatch","enablement":"workspaceFolderCount >= 1","title":"Print documents to HTML (select a source folder)","category":"Markdown All in One"},{"command":"markdown.extension.editing.toggleCodeSpan","enablement":"editorLangId =~ /^markdown$|^rmd$|^quarto$/","title":"Toggle code span","category":"Markdown All in One"},{"command":"markdown.extension.editing.toggleMath","enablement":"editorLangId =~ /^markdown$|^rmd$|^quarto$/","title":"Toggle math environment","category":"Markdown All in One"},{"command":"markdown.extension.editing.toggleMathReverse","enablement":"editorLangId =~ /^markdown$|^rmd$|^quarto$/","title":"Toggle math environment (in reverse order)","category":"Markdown All in One"},{"command":"markdown.extension.editing.toggleList","enablement":"editorLangId =~ /^markdown$|^rmd$|^quarto$/","title":"Toggle list","category":"Markdown All in One"},{"command":"markdown.extension.editing.toggleCodeBlock","enablement":"editorLangId =~ /^markdown$|^rmd$|^quarto$/","title":"Toggle code block","category":"Markdown All in One"}],"keybindings":[{"command":"markdown.extension.editing.toggleBold","key":"ctrl+b","mac":"cmd+b","when":"editorTextFocus && !editorReadonly && editorLangId =~ /^markdown$|^rmd$|^quarto$/"},{"command":"markdown.extension.editing.toggleItalic","key":"ctrl+i","mac":"cmd+i","when":"editorTextFocus && !editorReadonly && editorLangId =~ /^markdown$|^rmd$|^quarto$/"},{"command":"markdown.extension.editing.toggleStrikethrough","key":"alt+s","when":"editorTextFocus && !editorReadonly && editorLangId =~ /^markdown$|^rmd$|^quarto$/ && !isMac"},{"command":"markdown.extension.editing.toggleHeadingUp","key":"ctrl+shift+]","mac":"ctrl+shift+]","when":"editorTextFocus && !editorReadonly && editorLangId =~ /^markdown$|^rmd$|^quarto$/"},{"command":"markdown.extension.editing.toggleHeadingDown","key":"ctrl+shift+[","mac":"ctrl+shift+[","when":"editorTextFocus && !editorReadonly && editorLangId =~ /^markdown$|^rmd$|^quarto$/"},{"command":"markdown.extension.editing.toggleMath","key":"ctrl+m","mac":"cmd+m","when":"editorTextFocus && !editorReadonly && editorLangId =~ /^markdown$|^rmd$|^quarto$/"},{"command":"markdown.extension.onEnterKey","key":"enter","when":"editorTextFocus && !editorReadonly && editorLangId =~ /^markdown$|^rmd$|^quarto$/ && !suggestWidgetVisible && !editorHasMultipleSelections && vim.mode != 'Normal' && vim.mode != 'Visual' && vim.mode != 'VisualBlock' && vim.mode != 'VisualLine' && vim.mode != 'SearchInProgressMode' && vim.mode != 'CommandlineInProgress' && vim.mode != 'Replace' && vim.mode != 'EasyMotionMode' && vim.mode != 'EasyMotionInputMode' && vim.mode != 'SurroundInputMode' && !markdown.extension.editor.cursor.inFencedCodeBlock && !markdown.extension.editor.cursor.inMathEnv"},{"command":"markdown.extension.onCtrlEnterKey","key":"ctrl+enter","mac":"cmd+enter","when":"editorTextFocus && !editorReadonly && editorLangId =~ /^markdown$|^rmd$|^quarto$/ && !suggestWidgetVisible && !editorHasMultipleSelections && !markdown.extension.editor.cursor.inFencedCodeBlock && !markdown.extension.editor.cursor.inMathEnv"},{"command":"markdown.extension.onShiftEnterKey","key":"shift+enter","when":"editorTextFocus && !editorReadonly && editorLangId =~ /^markdown$|^rmd$|^quarto$/ && !suggestWidgetVisible && !editorHasMultipleSelections && !markdown.extension.editor.cursor.inFencedCodeBlock && !markdown.extension.editor.cursor.inMathEnv"},{"command":"markdown.extension.onTabKey","key":"tab","when":"editorTextFocus && !editorReadonly && editorLangId =~ /^markdown$|^rmd$|^quarto$/ && !suggestWidgetVisible && !inlineSuggestionVisible && !editorHasMultipleSelections && !editorTabMovesFocus && !inSnippetMode && !hasSnippetCompletions && !hasOtherSuggestions && markdown.extension.editor.cursor.inList && !markdown.extension.editor.cursor.inFencedCodeBlock && !markdown.extension.editor.cursor.inMathEnv"},{"command":"markdown.extension.onShiftTabKey","key":"shift+tab","when":"editorTextFocus && !editorReadonly && editorLangId =~ /^markdown$|^rmd$|^quarto$/ && !suggestWidgetVisible && !editorHasMultipleSelections && !editorTabMovesFocus && !inSnippetMode && !hasSnippetCompletions && !hasOtherSuggestions && markdown.extension.editor.cursor.inList && !markdown.extension.editor.cursor.inFencedCodeBlock && !markdown.extension.editor.cursor.inMathEnv"},{"command":"markdown.extension.onBackspaceKey","key":"backspace","when":"editorTextFocus && !editorReadonly && editorLangId =~ /^markdown$|^rmd$|^quarto$/ && !suggestWidgetVisible && !editorHasMultipleSelections && vim.mode != 'Normal' && vim.mode != 'Visual' && vim.mode != 'VisualBlock' && vim.mode != 'VisualLine' && vim.mode != 'SearchInProgressMode' && vim.mode != 'CommandlineInProgress' && vim.mode != 'Replace' && vim.mode != 'EasyMotionMode' && vim.mode != 'EasyMotionInputMode' && vim.mode != 'SurroundInputMode' && !markdown.extension.editor.cursor.inFencedCodeBlock && !markdown.extension.editor.cursor.inMathEnv"},{"command":"markdown.extension.onMoveLineUp","key":"alt+up","when":"editorTextFocus && !editorReadonly && editorLangId =~ /^markdown$|^rmd$|^quarto$/ && !suggestWidgetVisible"},{"command":"markdown.extension.onMoveLineDown","key":"alt+down","when":"editorTextFocus && !editorReadonly && editorLangId =~ /^markdown$|^rmd$|^quarto$/ && !suggestWidgetVisible"},{"command":"markdown.extension.onCopyLineUp","win":"shift+alt+up","mac":"shift+alt+up","linux":"ctrl+shift+alt+up","when":"editorTextFocus && !editorReadonly && editorLangId =~ /^markdown$|^rmd$|^quarto$/ && !suggestWidgetVisible"},{"command":"markdown.extension.onCopyLineDown","win":"shift+alt+down","mac":"shift+alt+down","linux":"ctrl+shift+alt+down","when":"editorTextFocus && !editorReadonly && editorLangId =~ /^markdown$|^rmd$|^quarto$/ && !suggestWidgetVisible"},{"command":"markdown.extension.onIndentLines","key":"ctrl+]","mac":"cmd+]","when":"editorTextFocus && editorLangId =~ /^markdown$|^rmd$|^quarto$/ && !suggestWidgetVisible"},{"command":"markdown.extension.onOutdentLines","key":"ctrl+[","mac":"cmd+[","when":"editorTextFocus && editorLangId =~ /^markdown$|^rmd$|^quarto$/ && !suggestWidgetVisible"},{"command":"markdown.extension.checkTaskList","key":"alt+c","when":"editorTextFocus && editorLangId =~ /^markdown$|^rmd$|^quarto$/"},{"command":"markdown.extension.closePreview","key":"ctrl+shift+v","mac":"cmd+shift+v","when":"markdownPreviewFocus"},{"command":"markdown.extension.closePreview","key":"ctrl+k v","mac":"cmd+k v","when":"markdownPreviewFocus"},{"command":"markdown.extension.editing.paste","key":"ctrl+v","mac":"cmd+v","when":"editorTextFocus && editorLangId =~ /^markdown$|^rmd$|^quarto$/ && editorHasSelection"}],"configuration":{"type":"object","title":"Markdown All in One","properties":{"markdown.extension.completion.respectVscodeSearchExclude":{"type":"boolean","default":true,"markdownDescription":"Whether to exclude files from auto-completion using VS Code's `#search.exclude#` setting. (`node_modules`, `bower_components` and `*.code-search` are **always excluded**, not affected by this option.)","scope":"resource"},"markdown.extension.completion.root":{"type":"string","default":"","description":"The root folder for path auto-completion.","scope":"resource"},"markdown.extension.italic.indicator":{"type":"string","default":"*","markdownDescription":"Use `*` or `_` to wrap italic text.","enum":["*","_"]},"markdown.extension.bold.indicator":{"type":"string","default":"**","markdownDescription":"Use `**` or `__` to wrap bold text.","enum":["**","__"]},"markdown.extension.katex.macros":{"type":"object","default":{},"description":"User-defined KaTeX macros."},"markdown.extension.list.indentationSize":{"type":"string","enum":["adaptive","inherit"],"markdownEnumDescriptions":["Adaptive indentation size according to the context, trying to **left align the sublist with its parent's content**. For example:\n\n```markdown\n- Parent\n - Sublist\n\n1. Parent\n 1. Sublist\n\n10. Parent with longer marker\n 1. Sublist\n```","Use the configured tab size of the current document (see the status bar). For example (with `tabSize: 4`):\n\n```markdown\n- Parent\n - Sublist\n\n1. Parent\n 1. Sublist\n\n10. Parent with longer marker\n 1. Sublist\n```"],"default":"adaptive","markdownDescription":"List indentation scheme. (Also affects TOC generation.)\n\nWhether to use different indentation sizes on different list contexts or stick to VS Code's tab size.","scope":"resource"},"markdown.extension.list.toggle.candidate-markers":{"type":"array","default":["-","*","+","1.","1)"],"items":{"enum":["-","*","+","1.","1)"]},"minItems":1,"maxItems":5,"uniqueItems":true,"description":"List candidate markers. It will cycle through those markers"},"markdown.extension.math.enabled":{"type":"boolean","default":true,"description":"Enable basic math support (Powered by KaTeX)."},"markdown.extension.orderedList.autoRenumber":{"type":"boolean","default":true,"description":"Auto fix ordered list markers."},"markdown.extension.orderedList.marker":{"type":"string","default":"ordered","description":"Ordered list marker.","enum":["one","ordered"],"markdownEnumDescriptions":["Always use `1.` as ordered list marker.","Use increasing numbers as ordered list marker."]},"markdown.extension.preview.autoShowPreviewToSide":{"type":"boolean","default":false,"description":"Auto show preview to side."},"markdown.extension.print.absoluteImgPath":{"type":"boolean","default":true,"description":"Convert image path to absolute path.","scope":"resource"},"markdown.extension.print.imgToBase64":{"type":"boolean","default":false,"description":"Convert images to base64 when printing to HTML.","scope":"resource"},"markdown.extension.print.includeVscodeStylesheets":{"type":"boolean","default":true,"description":"Include VS Code's basic Markdown styles so that the exported HTML looks similar as inside VS Code."},"markdown.extension.print.onFileSave":{"type":"boolean","default":false,"description":"Print current document to HTML when file is saved.","scope":"resource"},"markdown.extension.print.theme":{"type":"string","default":"light","enum":["light","dark"],"description":"Theme of the exported HTML. Only affects code blocks.","scope":"resource"},"markdown.extension.print.validateUrls":{"type":"boolean","default":true,"description":"Enable/disable URL validation when printing."},"markdown.extension.syntax.decorations":{"type":"boolean","default":null,"markdownDeprecationMessage":"(**Deprecated**) Use `#markdown.extension.theming.decoration.renderCodeSpan#` instead. See <https://github.com/yzhang-gh/vscode-markdown/issues/888> for details."},"markdown.extension.syntax.decorationFileSizeLimit":{"type":"number","default":50000,"description":"If a file is larger than this size (in byte/B), we won't attempt to render syntax decorations."},"markdown.extension.syntax.plainTheme":{"type":"boolean","default":false,"markdownDescription":"(**Experimental**) Report issue at <https://github.com/yzhang-gh/vscode-markdown/issues/185>."},"markdown.extension.tableFormatter.enabled":{"type":"boolean","default":true,"markdownDescription":"Enable [GitHub Flavored Markdown](https://github.github.com/gfm/) table formatter."},"markdown.extension.tableFormatter.normalizeIndentation":{"type":"boolean","default":false,"markdownDescription":"Normalize table indentation to closest multiple of configured editor tab size."},"markdown.extension.tableFormatter.delimiterRowNoPadding":{"type":"boolean","default":false,"markdownDescription":"Don't add padding to the delimiter row."},"markdown.extension.theming.decoration.renderCodeSpan":{"type":"boolean","default":true,"markdownDescription":"Apply a border around a [code span](https://spec.commonmark.org/0.29/#code-spans).","scope":"application"},"markdown.extension.theming.decoration.renderHardLineBreak":{"type":"boolean","default":false,"markdownDescription":"(**Experimental**)","scope":"application"},"markdown.extension.theming.decoration.renderLink":{"type":"boolean","default":false,"markdownDescription":"(**Experimental**)","scope":"application"},"markdown.extension.theming.decoration.renderParagraph":{"type":"boolean","default":false,"markdownDescription":"(**Experimental**)","scope":"application"},"markdown.extension.theming.decoration.renderStrikethrough":{"type":"boolean","default":true,"markdownDescription":"Show a line through the middle of a [strikethrough](https://github.github.com/gfm/#strikethrough-extension-).","scope":"application"},"markdown.extension.theming.decoration.renderTrailingSpace":{"type":"boolean","default":false,"markdownDescription":"Shade the background of trailing space (U+0020) characters on a [line](https://spec.commonmark.org/0.29/#line).","scope":"application"},"markdown.extension.toc.levels":{"type":"string","default":"1..6","markdownDescription":"Range of levels for table of contents. Use `x..y` for level `x` to `y`.","pattern":"^[1-6]\\.\\.[1-6]$"},"markdown.extension.toc.omittedFromToc":{"type":"object","default":{},"description":"Lists of headings to omit by project file.\nExample:\n{ \"README.md\": [\"# Introduction\"] }"},"markdown.extension.toc.orderedList":{"type":"boolean","default":false,"description":"Use ordered list, that is:\n1. ...\n2. ..."},"markdown.extension.toc.plaintext":{"type":"boolean","default":false,"description":"Just plain text TOC, no links."},"markdown.extension.toc.slugifyMode":{"type":"string","default":"github","markdownDescription":"The method to generate heading ID. This affects **links to headings** in **TOC**, **code completion**, and **printing**.","enum":["github","azureDevops","bitbucket-cloud","gitea","gitlab","vscode"],"enumDescriptions":["GitHub","Azure DevOps","Bitbucket Cloud","Gitea","GitLab","Visual Studio Code"]},"markdown.extension.toc.unorderedList.marker":{"type":"string","default":"-","markdownDescription":"Use `-`, `*`, or `+` in the table of contents (for **unordered** list).","enum":["-","*","+"]},"markdown.extension.toc.updateOnSave":{"type":"boolean","default":true,"description":"Auto update TOC on save."},"markdown.extension.extraLangIds":{"type":"array","default":[],"items":{"enum":["rmd","quarto"]},"description":"List of extra supported languages (e.g., rmd, quarto), default []."}}},"markdown.markdownItPlugins":true,"markdown.previewStyles":["./media/checkbox.css","./node_modules/katex/dist/katex.min.css"],"grammars":[{"scopeName":"markdown.math_display","path":"./syntaxes/math_display.markdown.tmLanguage.json","injectTo":["text.html.markdown"]},{"scopeName":"markdown.math_inline","path":"./syntaxes/math_inline.markdown.tmLanguage.json","injectTo":["text.html.markdown"]},{"scopeName":"text.katex","path":"./syntaxes/katex.tmLanguage.json"}]},"capabilities":{"virtualWorkspaces":{"supported":"limited","description":"In virtual workspaces, some features may not work well."}},"scripts":{"vscode:prepublish":"npm run build","build":"node ./build/build.js","dev-build":"webpack --mode development","dev-compile":"tsc --build --watch --verbose","pretest":"tsc --build","test":"node ./out/test/runTest.js"},"dependencies":{"@neilsustc/markdown-it-katex":"^1.0.0","entities":"^3.0.1","grapheme-splitter":"^1.0.4","highlight.js":"^11.5.1","image-size":"^0.9.3","katex":"^0.16.4","markdown-it":"^12.3.2","markdown-it-task-lists":"^2.1.1","string-similarity":"^4.0.4"},"devDependencies":{"@types/glob":"^7.2.0","@types/katex":"^0.14.0","@types/markdown-it":"^12.2.3","@types/mocha":"^9.1.0","@types/node":"~14.18.13","@types/string-similarity":"^4.0.0","@types/vscode":"~1.63.2","@vscode/test-electron":"^1.6.2","glob":"^7.2.0","mocha":"^9.2.2","ts-loader":"^9.2.8","typescript":"~4.5.5","webpack":"~5.65.0","webpack-cli":"^4.9.2"}},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/yzhang.markdown-all-in-one-3.5.1-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"98790d67-10fa-497c-9113-f6c7489207b2","publisherId":"36c8b41c-6ef6-4bf5-a5b7-65bef29b606f","publisherDisplayName":"yzhang","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691833454927,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"tomi.xasnippets","uuid":"706b9f6a-3f3a-4dc9-a585-5b6c62f8fade"},"manifest":{"name":"xasnippets","description":"React-typescript code snippets for XAcademy.","version":"2.13.1","displayName":"React - Typescript snippets (XAcademy)","publisher":"Tomi","icon":"images/react.png","license":"ISC","scripts":{"build":"yarn clean && vsce package","clean":"rm -rf xasnippets-*.vsix"},"repository":{"type":"git","url":"https://github.com/Tom-xacademy/xa-snippets"},"keywords":["react","react-xa","typescript","codesnippets","typescript code snippets","xacademy"],"engines":{"vscode":"^0.10.x"},"categories":["Snippets"],"contributes":{"snippets":[{"language":"typescript","path":"./snippets/snippets.json"},{"language":"typescriptreact","path":"./snippets/snippets.json"},{"language":"json","path":"./snippets/jsnip.json"}]},"author":"tamas.xacademy@gmail.com","bugs":{"url":"https://github.com/Tom-xacademy/xa-snippets/issues"},"homepage":"https://github.com/Tom-xacademy/xa-snippets#readme"},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/tomi.xasnippets-2.13.1-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"706b9f6a-3f3a-4dc9-a585-5b6c62f8fade","publisherId":"e1257433-8ca7-40c6-ae91-744c2d49e6ee","publisherDisplayName":"tomi","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691833480417,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"vivaxy.vscode-conventional-commits","uuid":"b6b26bce-33f4-4bce-bf92-89812388ed0a"},"manifest":{"name":"vscode-conventional-commits","displayName":"Conventional Commits","description":"💬Conventional Commits for VSCode.","icon":"assets/icon.png","publisher":"vivaxy","version":"1.25.0","engines":{"vscode":"^1.44.0"},"categories":["Snippets","SCM Providers"],"keywords":["git","commit","conventional-commits","gacp","conventional-changelog","commitizen","cz"],"repository":{"type":"git","url":"https://github.com/vivaxy/vscode-conventional-commits.git"},"author":"vivaxy","license":"MIT","bugs":{"url":"https://github.com/vivaxy/vscode-conventional-commits/issues"},"homepage":"https://github.com/vivaxy/vscode-conventional-commits","activationEvents":["onCommand:extension.conventionalCommits","onCommand:extension.conventionalCommits.resetGlobalState","onCommand:extension.conventionalCommits.showNewVersionNotes"],"main":"./dist/extension.js","contributes":{"commands":[{"command":"extension.conventionalCommits","title":"Conventional Commits","icon":{"dark":"./assets/menu-icon-dark.svg","light":"./assets/menu-icon-light.svg"}},{"command":"extension.conventionalCommits.resetGlobalState","title":"Conventional Commits: Reset Global State"},{"command":"extension.conventionalCommits.showNewVersionNotes","title":"Conventional Commits: Show Version Notes"}],"menus":{"scm/title":[{"when":"scmProvider == git","command":"extension.conventionalCommits","group":"navigation"}]},"configuration":{"title":"Conventional Commits","properties":{"conventionalCommits.autoCommit":{"type":"boolean","default":true,"markdownDescription":"Control whether the extension should commit files after: forming the message or closing the editor tab.\n\nWhen `#git.enableSmartCommit#` enabled and `#git.smartCommitChanges#` was set to `all`, It allows to commit all changes when there are no staged changes.\n\nAnd set `#git.postCommitCommand#` to `sync` to run `git.sync` after commit."},"conventionalCommits.silentAutoCommit":{"type":"boolean","default":false,"markdownDescription":"Control that auto commit should be silent, without focusing source control panel."},"conventionalCommits.emojiFormat":{"type":"string","default":"code","markdownDescription":"Specify which format will be shown in the `gitmoji`.","enum":["code","emoji"],"markdownEnumDescriptions":["Display as `:bug:`","Display as `🐛`"]},"conventionalCommits.gitmoji":{"type":"boolean","default":true,"markdownDescription":"Control whether the extension should prompt for a `gitmoji`."},"conventionalCommits.lineBreak":{"type":"string","default":"","markdownDescription":"Specify which word will be treated as line breaks in the `body`.\n\nBlank means no line breaks."},"conventionalCommits.promptBody":{"type":"boolean","default":true,"markdownDescription":"Control whether the extension should prompt for the `body` section."},"conventionalCommits.promptCI":{"type":"boolean","default":false,"markdownDescription":"Control whether the extension should prompt for skipping CI run."},"conventionalCommits.promptFooter":{"type":"boolean","default":true,"markdownDescription":"Control whether the extension should prompt for the `footer` section."},"conventionalCommits.promptScopes":{"type":"boolean","default":true,"markdownDescription":"Control whether the extension should prompt for the `scope` section."},"conventionalCommits.scopes":{"type":"array","default":[],"markdownDescription":"Specify available selections in the `scope` section."},"conventionalCommits.showEditor":{"type":"boolean","default":false,"markdownDescription":"Control whether the extension should show the commit message as a text document in a separate tab."},"conventionalCommits.showNewVersionNotes":{"type":"boolean","default":true,"markdownDescription":"Control whether the extension should show the new version notes."},"conventionalCommits.editor.keepAfterSave":{"type":"boolean","default":false,"markdownDescription":"Control whether the extension should keep the editor tab open, after saving the commit message."}}}},"scripts":{"vscode:prepublish":"webpack --mode production","webpack":"webpack --mode development","webpack-dev":"webpack --mode development --watch","compile":"tsc -p ./","watch":"tsc -watch -p ./","deploy":"vsce publish --yarn","build":"node prepare.js && vsce package","_build":"vsce package","prepare":"husky install"},"devDependencies":{"@types/node":"^16.0.0","@types/vscode":"^1.44.0","@vscode/vsce":"^2.16.0","clean-webpack-plugin":"^4.0.0","husky":"8","lint-staged":"^13.0.0","ovsx":"^0.5.0","pinst":"^3.0.0","prettier":"^2.0.2","standard-version":"^9.0.0","string-replace-loader":"^3.0.1","ts-loader":"^9.0.0","typescript":"^4.0.0","warnings-to-errors-webpack-plugin":"^2.0.1","webpack":"^5.25.0","webpack-cli":"^4.5.0"},"lint-staged":{"*.{js,ts,css,less,json,md,html,yml,yaml,pcss,jsx,tsx}":["prettier --write"]},"dependencies":{"@commitlint/cli":"^13.0.0","@commitlint/config-conventional":"^13.0.0","@commitlint/load":"^13.0.0","@commitlint/rules":"^13.0.0","@yi-xu-0100/conventional-commit-types-i18n":"1.6.0"},"commitlint":{"extends":["@commitlint/config-conventional"]}},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/vivaxy.vscode-conventional-commits-1.25.0-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"b6b26bce-33f4-4bce-bf92-89812388ed0a","publisherId":"cd0bc23b-0195-4718-a6dd-c6611ee1c8bf","publisherDisplayName":"vivaxy","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691834563797,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"codezombiech.gitignore","uuid":"3e891cf9-53cb-49a3-8d01-8f0b1f0afb29"},"manifest":{"name":"gitignore","displayName":"gitignore","description":"Lets you pull .gitignore templates from the https://github.com/github/gitignore repository. Language support for .gitignore files.","version":"0.9.0","author":"Marc-André Bühler","publisher":"codezombiech","icon":"icon.png","repository":{"type":"git","url":"https://github.com/CodeZombieCH/vscode-gitignore"},"bugs":{"url":"https://github.com/CodeZombieCH/vscode-gitignore/issues"},"homepage":"https://github.com/CodeZombieCH/vscode-gitignore/issues","license":"MIT","engines":{"vscode":"^1.18.0"},"categories":["Programming Languages","Other"],"keywords":["multi-root ready"],"activationEvents":["onCommand:gitignore.addgitignore"],"main":"./dist/extension.js","contributes":{"commands":[{"command":"gitignore.addgitignore","title":"Add gitignore"}],"configuration":{"type":"object","title":"gitignore extension configuration","properties":{"gitignore.cacheExpirationInterval":{"type":"integer","default":3600,"description":"Number of seconds the list of `.gitignore` files retrieved from github will be cached"}}},"languages":[{"id":"gitignore","aliases":["Gitignore"],"filenames":[".gitignore"],"configuration":"./gitignore.configuration.json"}],"grammars":[{"language":"gitignore","scopeName":"text.gitignore","path":"./syntaxes/gitignore.json"}]},"scripts":{"vscode:prepublish":"npm run package","compile":"webpack","watch":"webpack --watch","package":"webpack --mode production --devtool hidden-source-map","compile-tests":"tsc -p . --outDir out","watch-tests":"tsc -p . -w --outDir out","pretest":"npm run compile-tests && npm run compile && npm run lint","lint":"eslint src --ext ts","test":"node ./out/test/runTest.js"},"devDependencies":{"@types/glob":"^7.2.0","@types/mocha":"^9.1.1","@types/node":"16.x","@types/vscode":"1.18.x","@typescript-eslint/eslint-plugin":"^5.30.0","@typescript-eslint/parser":"^5.30.0","@vscode/test-electron":"^2.1.5","eslint":"^8.18.0","glob":"^8.0.3","mocha":"^10.0.0","ts-loader":"^9.3.1","typescript":"^4.7.4","vsce":"^2.9.2","webpack":"^5.73.0","webpack-cli":"^4.10.0"},"dependencies":{"https-proxy-agent":"^4.0.0"}},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/codezombiech.gitignore-0.9.0-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"3e891cf9-53cb-49a3-8d01-8f0b1f0afb29","publisherId":"930310c4-ca8b-4e80-9d19-2b1507b2af61","publisherDisplayName":"codezombiech","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691834563823,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"github.github-vscode-theme","uuid":"7328a705-91fc-49e6-8293-da6f112e482d"},"manifest":{"name":"github-vscode-theme","displayName":"GitHub Theme","description":"GitHub theme for VS Code","version":"6.3.4","publisher":"GitHub","license":"MIT","icon":"icon.png","galleryBanner":{"color":"#1b1f23","theme":"dark"},"repository":{"type":"git","url":"https://github.com/primer/github-vscode-theme"},"bugs":{"url":"https://github.com/primer/github-vscode-theme/issues"},"engines":{"vscode":"^1.43.0"},"categories":["Themes"],"keywords":["theme","github","light","dark","protanopia","colorblind"],"contributes":{"themes":[{"label":"GitHub Light Default","uiTheme":"vs","path":"./themes/light-default.json"},{"label":"GitHub Light High Contrast","uiTheme":"hc-light","path":"./themes/light-high-contrast.json"},{"label":"GitHub Light Colorblind (Beta)","uiTheme":"vs","path":"./themes/light-colorblind.json"},{"label":"GitHub Dark Default","uiTheme":"vs-dark","path":"./themes/dark-default.json"},{"label":"GitHub Dark High Contrast","uiTheme":"hc-black","path":"./themes/dark-high-contrast.json"},{"label":"GitHub Dark Colorblind (Beta)","uiTheme":"vs-dark","path":"./themes/dark-colorblind.json"},{"label":"GitHub Dark Dimmed","uiTheme":"vs-dark","path":"./themes/dark-dimmed.json"},{"label":"GitHub Light","uiTheme":"vs","path":"./themes/light.json"},{"label":"GitHub Dark","uiTheme":"vs-dark","path":"./themes/dark.json"}]},"devDependencies":{"@changesets/changelog-github":"^0.4.1","@changesets/cli":"^2.17.0","@primer/primitives":"7.10.0","chroma-js":"^2.1.2","color":"^3.1.2","nodemon":"^2.0.3","vsce":"^1.100.1"},"scripts":{"start":"nodemon --watch src src/index.js","build":"node src/index.js && mkdir -p build","package":"vsce package -o ./build/github-vscode-theme.vsix","prepublishOnly":"npm run build && vsce publish","release":"changeset publish"},"publishConfig":{"access":"public"}},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/github.github-vscode-theme-6.3.4-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"7328a705-91fc-49e6-8293-da6f112e482d","publisherId":"7c1c19cd-78eb-4dfb-8999-99caf7679002","publisherDisplayName":"GitHub","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691834563867,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"waderyan.gitblame","uuid":"2335b326-c334-4e81-bc51-c408fcec6e7c"},"manifest":{"name":"gitblame","displayName":"Git Blame","description":"See git blame information in the status bar.","version":"10.4.0","publisher":"waderyan","engines":{"vscode":"^1.80.0"},"categories":["Other"],"galleryBanner":{"color":"#f0efe7","theme":"light"},"icon":"images/git_icon.png","activationEvents":["onStartupFinished"],"keywords":["git","gitblame","blame","github","gitlab","bitbucket"],"qna":false,"main":"./out/src/index","scripts":{"vscode:prepublish":"npm run build","build":"node esbuild.mjs","package":"npx vsce package","lint":"rome check ./src","pretest":"tsc --project tsconfig.test.json","test":"npm run pretest && node ./out/test/run-test.js"},"devDependencies":{"@types/mocha":"10.0.1","@types/node":"16.11.39","@types/sinon":"10.0.15","@types/vscode":"1.80.0","@vscode/test-electron":"2.3.3","esbuild":"0.18.11","mocha":"10.2.0","rome":"12.1.3","sinon":"15.2.0","typescript":"5.1.6"},"homepage":"https://github.com/Sertion/vscode-gitblame/blob/master/README.md","bugs":{"url":"https://github.com/Sertion/vscode-gitblame/issues"},"license":"MIT","repository":{"type":"git","url":"https://github.com/Sertion/vscode-gitblame"},"extensionDependencies":["vscode.git"],"capabilities":{"virtualWorkspaces":false},"contributes":{"commands":[{"command":"gitblame.quickInfo","title":"Git Blame: Show quick info"},{"command":"gitblame.online","title":"Git Blame: View last change online"},{"command":"gitblame.addCommitHashToClipboard","title":"Git Blame: Copy hash to clipboard"},{"command":"gitblame.addToolUrlToClipboard","title":"Git Blame: Copy tool URL to clipboard"},{"command":"gitblame.gitShow","title":"Git Blame: Git show for current line hash"}],"configuration":{"type":"object","title":"Git Blame","properties":{"gitblame.infoMessageFormat":{"type":"string","default":"${commit.summary}","description":"Customize the info message"},"gitblame.statusBarMessageClickAction":{"type":"string","default":"Show info message","enum":["Show info message","Open tool URL","Open git show"],"enumDescriptions":["Show a info message with a short summary of the commit","Attempt to directly open the tool URL","Run git show in a vscode terminal view"]},"gitblame.statusBarMessageFormat":{"type":"string","default":"Blame ${author.name} (${time.ago})","description":"Customize the status bar message"},"gitblame.statusBarMessageNoCommit":{"type":"string","default":"Not Committed Yet","description":"Customize the status bar message"},"gitblame.statusBarPositionPriority":{"type":"number","default":500,"description":"Priority where the status bar view should be placed"},"gitblame.inlineMessageEnabled":{"type":"boolean","default":false,"description":"Show blame information inline (next to the code)"},"gitblame.inlineMessageFormat":{"type":"string","default":"Blame ${author.name} (${time.ago})","description":"Customize the inline message"},"gitblame.inlineMessageNoCommit":{"type":"string","default":"Not Committed Yet","description":"Customize the inline message"},"gitblame.inlineMessageMargin":{"type":"number","default":2,"description":"The amount of margin between line and inline blame view"},"gitblame.remoteName":{"type":"string","default":"origin","markdownDescription":"The name of the git remote used to build the URL."},"gitblame.commitUrl":{"type":"string","default":"${tool.protocol}//${gitorigin.hostname}${gitorigin.port}${gitorigin.path}${tool.commitpath}${hash}","markdownDescription":"The link to an online tool to view a commit (use `${hash}` for the commit hash)."},"gitblame.ignoreWhitespace":{"type":"boolean","default":false,"markdownDescription":"Ignore whitespace changes when blaming (`-w` flag)"},"gitblame.isWebPathPlural":{"deprecationMessage":"This setting has been replaced by gitblame.pluralWebPathSubstrings"},"gitblame.pluralWebPathSubstrings":{"type":"array","default":["bitbucket","atlassian"],"markdownDescription":"An array of substrings that, when present in the git origin URL, adds an extra _s_ to the url after _commit_ in `gitblame.commitUrl`'s default behavior"},"gitblame.delayBlame":{"type":"number","default":0,"markdownDescription":"This setting adds a delay (in milliseconds) before the blame is displayed"},"gitblame.parallelBlames":{"type":"number","minimum":1,"default":2,"markdownDescription":"Limit allowed parallel git blame process count"}}}}},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/waderyan.gitblame-10.4.0-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"2335b326-c334-4e81-bc51-c408fcec6e7c","publisherId":"531ba7ca-0230-4a97-bfd1-0d02fdb02958","publisherDisplayName":"waderyan","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691834563859,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"adam-bender.commit-message-editor","uuid":"b9883563-e6ba-4f6c-b03c-193c80e79c75"},"manifest":{"name":"commit-message-editor","displayName":"Commit Message Editor","description":"Edit commit messages in a convenient way.","version":"0.25.0","license":"MIT","preview":false,"publisher":"adam-bender","engines":{"vscode":"^1.70.0"},"categories":["Other"],"keywords":["git","vcs","semantic","conventional","commit"],"icon":"icon.png","repository":{"url":"https://github.com/bendera/vscode-commit-message-editor"},"activationEvents":["onCommand:commitMessageEditor.openEditor","onCommand:commitMessageEditor.copyFromSCMInputBox","onCommand:commitMessageEditor.openSettingsPage","onWebviewPanel:copyFromExtensionMessageBox"],"main":"./out/extension.js","contributes":{"commands":[{"command":"commitMessageEditor.openEditor","title":"Open commit message editor","category":"Git","icon":"$(edit)"},{"command":"commitMessageEditor.copyFromSCMInputBox","title":"Copy text from SCM input box","category":"Git"},{"command":"commitMessageEditor.loadTemplate","title":"Load template","category":"Git"},{"command":"commitMessageEditor.openSettingsPage","title":"Open Settings Page","category":"Commit Message Editor"}],"menus":{"scm/title":[{"command":"commitMessageEditor.openEditor","group":"navigation@1","title":"Edit","when":"scmProvider == git"},{"command":"commitMessageEditor.openEditor","group":"inline","title":"Edit","when":"scmProvider == git"}]},"configuration":{"title":"Commit Message Editor","properties":{"commit-message-editor.confirmAmend":{"type":"boolean","description":"Confirm amend commit","default":true},"commit-message-editor.dynamicTemplate":{"type":"array","description":"Template for the form view. You can refer to tokens in {token_name} format.","items":{"type":"string"},"default":["{type}{scope}: {description}","","{body}","","{breaking_change}{footer}"]},"commit-message-editor.staticTemplate":{"type":"array","description":"Template for the text view.","items":{"type":"string"},"default":["feat: Short description","","Message body","","Message footer"]},"commit-message-editor.tokens":{"type":"array","description":"Editable inputs in the form view","default":[{"label":"Type","name":"type","type":"enum","options":[{"label":"---","value":""},{"label":"build","description":"Changes that affect the build system or external dependencies (example scopes: gulp, broccoli, npm)"},{"label":"chore","description":"Updating grunt tasks etc; no production code change"},{"label":"ci","description":"Changes to our CI configuration files and scripts (example scopes: Travis, Circle, BrowserStack, SauceLabs)"},{"label":"docs","description":"Documentation only changes"},{"label":"feat","description":"A new feature"},{"label":"fix","description":"A bug fix"},{"label":"perf","description":"A code change that improves performance"},{"label":"refactor","description":"A code change that neither fixes a bug nor adds a feature"},{"label":"revert"},{"label":"style","description":"Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)"},{"label":"test","description":"Adding missing tests or correcting existing tests"}],"description":"Type of changes"},{"label":"Scope","name":"scope","description":"A scope may be provided to a commits type, to provide additional contextual information and is contained within parenthesis, e.g., \"feat(parser): add ability to parse arrays\".","type":"text","multiline":false,"prefix":"(","suffix":")"},{"label":"Short description","name":"description","description":"Short description in the subject line.","type":"text","multiline":false},{"label":"Body","name":"body","description":"Optional body","type":"text","multiline":true,"lines":5,"maxLines":10},{"label":"Breaking change","name":"breaking_change","type":"boolean","value":"BREAKING CHANGE: ","default":false},{"label":"Footer","name":"footer","description":"Optional footer","type":"text","multiline":true}]},"commit-message-editor.reduceEmptyLines":{"type":"boolean","default":true,"description":"If more than two empty lines follow each other, only the first two lines will be kept. The last line also will be removed if it is empty."},"commit-message-editor.view.columnToShowIn":{"type":"string","enum":["Active","Beside","One","Two","Three","Four","Five","Six","Seven","Eight","Nine"],"enumDescriptions":["Open in the active column","Open next to the active column","Open in the first column","Open in the second column","Open in the third column","Open in the fourth column","Open in the fifth column","Open in the sixth column","Open in the seventh column","Open in the eighth column","Open in the ninth column"],"description":"In which column the editor should open","default":"Active"},"commit-message-editor.view.defaultView":{"type":"string","default":"text","enum":["text","form"]},"commit-message-editor.view.visibleViews":{"type":"string","default":"both","enum":["text","form","both"]},"commit-message-editor.view.fullWidth":{"type":"boolean","description":"The editor fills the whole available space.","default":false},"commit-message-editor.view.useMonospaceEditor":{"type":"boolean","description":"Use monospace font in the text view","default":false},"commit-message-editor.view.tabSize":{"type":"number","description":"Tab size in the monospace editor","default":4},"commit-message-editor.view.useTabs":{"type":"boolean","description":"Use tabs for indentation in the monospace editor","default":false},"commit-message-editor.view.rulers":{"type":"array","description":"Render vertical rulers after a certain number of monospace characters in the monospace editor. Use multiple values for multiple rulers. No rulers are drawn if array is empty.","default":[50,72]},"commit-message-editor.view.visibleLines":{"type":"number","description":"Visible lines in the text view","default":10},"commit-message-editor.view.showRecentCommits":{"type":"boolean","description":"Show recent commits in the main view.","default":true},"commit-message-editor.view.saveAndClose":{"type":"boolean","description":"Close commit message editor tab after saving","default":false}}}},"scripts":{"esbuild-base":"esbuild ./src/extension.ts --bundle --outfile=out/extension.js --external:vscode --format=cjs --platform=node","esbuild":"npm run esbuild-base -- --sourcemap","vscode:prepublish":"npm run compile","compile":"npm run compile:extension && npm run compile:frontend","compile:frontend":"cd frontend && npm run build","compile:extension":"npm run esbuild-base -- --minify","watch":"npm run esbuild-base -- --sourcemap --watch","pretest":"npm run compile","test":"node ./out/test/runTest.js","wdio":"wdio run ./wdio.conf.ts"},"extensionDependencies":["vscode.git"],"devDependencies":{"@types/glob":"^8.0.1","@types/mocha":"^10.0.1","@types/node":"^18.11.18","@types/vscode":"^1.70.0","@vscode/vsce":"^2.19.0","@wdio/cli":"^8.6.7","@wdio/local-runner":"^8.6.7","@wdio/mocha-framework":"^8.6.6","@wdio/spec-reporter":"^8.6.6","chromedriver":"^111.0.0","esbuild":"^0.17.5","glob":"^8.1.0","mocha":"^10.2.0","semver":"^7.5.0","ts-node":"^10.9.1","tslint":"^6.1.2","typescript":"^4.9.5","vscode-test":"^1.5.2","wdio-chromedriver-service":"^8.1.1","wdio-vscode-service":"^5.0.0"},"dependencies":{"ajv":"^8.12.0","vscode-codicons":"0.0.17"}},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/adam-bender.commit-message-editor-0.25.0-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"b9883563-e6ba-4f6c-b03c-193c80e79c75","publisherId":"6a793492-8741-4d08-8c79-e2ae07de44ce","publisherDisplayName":"adam-bender","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691834563836,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"mhutchie.git-graph","uuid":"438221f8-1107-4ccd-a6fe-f3b7fe0856b7"},"manifest":{"name":"git-graph","displayName":"Git Graph","version":"1.30.0","publisher":"mhutchie","author":{"name":"Michael Hutchison","email":"mhutchie@16right.com"},"description":"View a Git Graph of your repository, and perform Git actions from the graph.","keywords":["git","graph","visualise","diff","action"],"categories":["Other"],"homepage":"https://github.com/mhutchie/vscode-git-graph","repository":{"type":"git","url":"https://github.com/mhutchie/vscode-git-graph.git"},"bugs":{"url":"https://github.com/mhutchie/vscode-git-graph/issues"},"qna":"https://github.com/mhutchie/vscode-git-graph/wiki/Support-Resources","license":"SEE LICENSE IN 'LICENSE'","icon":"resources/icon.png","engines":{"vscode":"^1.38.0"},"extensionKind":["workspace"],"activationEvents":["*"],"main":"./out/extension.js","contributes":{"commands":[{"category":"Git Graph","command":"git-graph.view","title":"View Git Graph (git log)","icon":{"light":"resources/cmd-icon-light.svg","dark":"resources/cmd-icon-dark.svg"}},{"category":"Git Graph","command":"git-graph.addGitRepository","title":"Add Git Repository..."},{"category":"Git Graph","command":"git-graph.clearAvatarCache","title":"Clear Avatar Cache"},{"category":"Git Graph","command":"git-graph.endAllWorkspaceCodeReviews","title":"End All Code Reviews in Workspace"},{"category":"Git Graph","command":"git-graph.endSpecificWorkspaceCodeReview","title":"End a specific Code Review in Workspace..."},{"category":"Git Graph","command":"git-graph.fetch","title":"Fetch from Remote(s)"},{"category":"Git Graph","command":"git-graph.removeGitRepository","title":"Remove Git Repository..."},{"category":"Git Graph","command":"git-graph.resumeWorkspaceCodeReview","title":"Resume a specific Code Review in Workspace..."},{"category":"Git Graph","command":"git-graph.version","title":"Get Version Information"},{"category":"Git Graph","command":"git-graph.openFile","title":"Open File","icon":"$(go-to-file)","enablement":"isInDiffEditor && resourceScheme == git-graph && git-graph:codiconsSupported"}],"configuration":{"type":"object","title":"Git Graph","properties":{"git-graph.commitDetailsView.autoCenter":{"type":"boolean","default":true,"description":"Automatically center the Commit Details View when it is opened."},"git-graph.commitDetailsView.fileView.fileTree.compactFolders":{"type":"boolean","default":true,"description":"Render the File Tree in the Commit Details View in a compacted form, such that folders with a single child folder are compressed into a single combined folder element."},"git-graph.commitDetailsView.fileView.type":{"type":"string","enum":["File Tree","File List"],"enumDescriptions":["Display files in a tree structure.","Display files in a list (useful for repositories with deep folder structures)."],"default":"File Tree","description":"Sets the default type of File View used in the Commit Details View. This can be overridden per repository using the controls on the right side of the Commit Details View."},"git-graph.commitDetailsView.location":{"type":"string","enum":["Inline","Docked to Bottom"],"enumDescriptions":["Show the Commit Details View inline with the graph & commits.","Show the Commit Details View docked to the bottom of the Git Graph View."],"default":"Inline","description":"Specifies where the Commit Details View is rendered in the Git Graph View."},"git-graph.contextMenuActionsVisibility":{"type":"object","default":{},"properties":{"branch":{"type":"object","properties":{"checkout":{"type":"boolean","title":"Checkout Branch"},"rename":{"type":"boolean","title":"Rename Branch..."},"delete":{"type":"boolean","title":"Delete Branch..."},"merge":{"type":"boolean","title":"Merge into current branch..."},"rebase":{"type":"boolean","title":"Rebase current branch on Branch..."},"push":{"type":"boolean","title":"Push Branch..."},"createPullRequest":{"type":"boolean","title":"Create Pull Request..."},"createArchive":{"type":"boolean","title":"Create Archive"},"selectInBranchesDropdown":{"type":"boolean","title":"Select in Branches Dropdown"},"unselectInBranchesDropdown":{"type":"boolean","title":"Unselect in Branches Dropdown"},"copyName":{"type":"boolean","title":"Copy Branch Name to Clipboard"}}},"commit":{"type":"object","properties":{"addTag":{"type":"boolean","title":"Add Tag..."},"createBranch":{"type":"boolean","title":"Create Branch..."},"checkout":{"type":"boolean","title":"Checkout..."},"cherrypick":{"type":"boolean","title":"Cherry Pick..."},"revert":{"type":"boolean","title":"Revert..."},"drop":{"type":"boolean","title":"Drop..."},"merge":{"type":"boolean","title":"Merge into current branch..."},"rebase":{"type":"boolean","title":"Rebase current branch on this Commit..."},"reset":{"type":"boolean","title":"Reset current branch to this Commit..."},"copyHash":{"type":"boolean","title":"Copy Commit Hash to Clipboard"},"copySubject":{"type":"boolean","title":"Copy Commit Subject to Clipboard"}}},"remoteBranch":{"type":"object","properties":{"checkout":{"type":"boolean","title":"Checkout Branch..."},"delete":{"type":"boolean","title":"Delete Remote Branch..."},"fetch":{"type":"boolean","title":"Fetch into local branch..."},"merge":{"type":"boolean","title":"Merge into current branch..."},"pull":{"type":"boolean","title":"Pull into current branch..."},"createPullRequest":{"type":"boolean","title":"Create Pull Request"},"createArchive":{"type":"boolean","title":"Create Archive"},"selectInBranchesDropdown":{"type":"boolean","title":"Select in Branches Dropdown"},"unselectInBranchesDropdown":{"type":"boolean","title":"Unselect in Branches Dropdown"},"copyName":{"type":"boolean","title":"Copy Branch Name to Clipboard"}}},"stash":{"type":"object","properties":{"apply":{"type":"boolean","title":"Apply Stash..."},"createBranch":{"type":"boolean","title":"Create Branch from Stash..."},"pop":{"type":"boolean","title":"Pop Stash..."},"drop":{"type":"boolean","title":"Drop Stash..."},"copyName":{"type":"boolean","title":"Copy Stash Name to Clipboard"},"copyHash":{"type":"boolean","title":"Copy Stash Hash to Clipboard"}}},"tag":{"type":"object","properties":{"viewDetails":{"type":"boolean","title":"View Details"},"delete":{"type":"boolean","title":"Delete Tag..."},"push":{"type":"boolean","title":"Push Tag..."},"createArchive":{"type":"boolean","title":"Create Archive"},"copyName":{"type":"boolean","title":"Copy Tag Name to Clipboard"}}},"uncommittedChanges":{"type":"object","properties":{"stash":{"type":"boolean","title":"Stash uncommitted changes..."},"reset":{"type":"boolean","title":"Reset uncommitted changes..."},"clean":{"type":"boolean","title":"Clean untracked files..."},"openSourceControlView":{"type":"boolean","title":"Open Source Control View"}}}},"markdownDescription":"Customise which context menu actions are visible. For example, if you want to hide the rebase action from the branch context menu, a suitable value for this setting is `{ \"branch\": { \"rebase\": false } }`. For more information of how to configure this setting, view the documentation [here](https://github.com/mhutchie/vscode-git-graph/wiki/Extension-Settings#context-menu-actions-visibility)."},"git-graph.customBranchGlobPatterns":{"type":"array","items":{"type":"object","title":"Branch Glob Pattern","required":["name","glob"],"properties":{"name":{"type":"string","title":"Name of pattern","description":"Name used to reference the pattern in the 'Branches' dropdown"},"glob":{"type":"string","title":"Glob pattern","description":"The Glob Pattern <glob-pattern>, as used in 'git log --glob=<glob-pattern>'. For example: heads/feature/*"}}},"default":[],"description":"An array of Custom Branch Glob Patterns to be shown in the 'Branches' dropdown. Example: [{\"name\": \"Feature Requests\", \"glob\": \"heads/feature/*\"}]"},"git-graph.customEmojiShortcodeMappings":{"type":"array","items":{"type":"object","title":"Custom Emoji Shortcode Mapping","required":["shortcode","emoji"],"properties":{"shortcode":{"type":"string","title":"Emoji Shortcode","description":"Emoji Shortcode (e.g. \":sparkles:\")"},"emoji":{"type":"string","title":"Emoji","description":"Emoji (e.g. \"✨\")"}}},"default":[],"description":"An array of custom Emoji Shortcode mappings. Example: [{\"shortcode\": \":sparkles:\", \"emoji\":\"✨\"}]"},"git-graph.customPullRequestProviders":{"type":"array","items":{"type":"object","title":"Pull Request Provider","required":["name","templateUrl"],"properties":{"name":{"type":"string","title":"Name of the Provider","description":"A unique, identifying, display name for the provider."},"templateUrl":{"type":"string","title":"Template URL","markdownDescription":"A template URL that can be used to create a Pull Request, after the $1 - $8 variables have been substituted to construct the final URL. For information on how to configure this setting, see the documentation [here](https://github.com/mhutchie/vscode-git-graph/wiki/Configuring-a-custom-Pull-Request-Provider)."}}},"default":[],"markdownDescription":"An array of custom Pull Request providers that can be used in the \"Pull Request Creation\" Integration. For information on how to configure this setting, see the documentation [here](https://github.com/mhutchie/vscode-git-graph/wiki/Configuring-a-custom-Pull-Request-Provider)."},"git-graph.date.format":{"type":"string","enum":["Date & Time","Date Only","ISO Date & Time","ISO Date Only","Relative"],"enumDescriptions":["Show the date and time (e.g. \"24 Mar 2019 21:34\")","Show the date only (e.g. \"24 Mar 2019\")","Show the ISO date and time (e.g. \"2019-03-24 21:34\")","Show the ISO date only (e.g. \"2019-03-24\")","Show relative times (e.g. \"5 minutes ago\")"],"default":"Date & Time","description":"Specifies the date format to be used in the \"Date\" column on the Git Graph View."},"git-graph.date.type":{"type":"string","enum":["Author Date","Commit Date"],"enumDescriptions":["Use the author date of a commit.","Use the committer date of a commit."],"default":"Author Date","description":"Specifies the date type to be displayed in the \"Date\" column on the Git Graph View."},"git-graph.defaultColumnVisibility":{"type":"object","properties":{"Date":{"type":"boolean","title":"Visibility of the Date column"},"Author":{"type":"boolean","title":"Visibility of the Author column"},"Commit":{"type":"boolean","title":"Visibility of the Commit column"}},"default":{"Date":true,"Author":true,"Commit":true},"description":"An object specifying the default visibility of the Date, Author & Commit columns. Example: {\"Date\": true, \"Author\": true, \"Commit\": true}"},"git-graph.dialog.addTag.pushToRemote":{"type":"boolean","default":false,"description":"Default state of the field indicating whether the tag should be pushed to a remote once it is added."},"git-graph.dialog.addTag.type":{"type":"string","enum":["Annotated","Lightweight"],"default":"Annotated","description":"Default type of the tag being added."},"git-graph.dialog.applyStash.reinstateIndex":{"type":"boolean","default":false,"description":"Default state of the \"Reinstate Index\" checkbox."},"git-graph.dialog.cherryPick.noCommit":{"type":"boolean","default":false,"description":"Default state of the \"No Commit\" checkbox."},"git-graph.dialog.cherryPick.recordOrigin":{"type":"boolean","default":false,"description":"Default state of the \"Record Origin\" checkbox."},"git-graph.dialog.createBranch.checkOut":{"type":"boolean","default":false,"description":"Default state of the \"Check out\" checkbox."},"git-graph.dialog.deleteBranch.forceDelete":{"type":"boolean","default":false,"description":"Default state of the \"Force Delete\" checkbox."},"git-graph.dialog.fetchIntoLocalBranch.forceFetch":{"type":"boolean","default":false,"description":"Default state of the \"Force Fetch\" checkbox."},"git-graph.dialog.fetchRemote.prune":{"type":"boolean","default":false,"description":"Default state of the \"Prune\" checkbox."},"git-graph.dialog.fetchRemote.pruneTags":{"type":"boolean","default":false,"description":"Default state of the \"Prune Tags\" checkbox."},"git-graph.dialog.general.referenceInputSpaceSubstitution":{"type":"string","enum":["None","Hyphen","Underscore"],"enumDescriptions":["Don't replace spaces.","Replace space characters with hyphens, for example: \"new branch\" -> \"new-branch\".","Replace space characters with underscores, for example: \"new branch\" -> \"new_branch\"."],"default":"None","description":"Specifies a substitution that is automatically performed when space characters are entered or pasted into reference inputs on dialogs (e.g. Create Branch, Add Tag, etc.)."},"git-graph.dialog.merge.noCommit":{"type":"boolean","default":false,"description":"Default state of the \"No Commit\" checkbox."},"git-graph.dialog.merge.noFastForward":{"type":"boolean","default":true,"description":"Default state of the \"Create a new commit even if fast-forward is possible\" checkbox."},"git-graph.dialog.merge.squashCommits":{"type":"boolean","default":false,"description":"Default state of the \"Squash Commits\" checkbox."},"git-graph.dialog.merge.squashMessageFormat":{"type":"string","enum":["Default","Git SQUASH_MSG"],"enumDescriptions":["Use the squash message generated by Git Graph.","Use the detailed squash message generated by Git (stored in .git/SQUASH_MSG)."],"default":"Default","description":"Specifies the message format used for the squashed commit (when the \"Squash Commits\" option is selected)."},"git-graph.dialog.popStash.reinstateIndex":{"type":"boolean","default":false,"description":"Default state of the \"Reinstate Index\" checkbox."},"git-graph.dialog.pullBranch.noFastForward":{"type":"boolean","default":false,"description":"Default state of the \"Create a new commit even if fast-forward is possible\" checkbox."},"git-graph.dialog.pullBranch.squashCommits":{"type":"boolean","default":false,"description":"Default state of the \"Squash Commits\" checkbox."},"git-graph.dialog.pullBranch.squashMessageFormat":{"type":"string","enum":["Default","Git SQUASH_MSG"],"enumDescriptions":["Use the squash message generated by Git Graph.","Use the detailed squash message generated by Git (stored in .git/SQUASH_MSG)."],"default":"Default","description":"Specifies the message format used for the squashed commit (when the \"Squash Commits\" option is selected)."},"git-graph.dialog.rebase.ignoreDate":{"type":"boolean","default":true,"description":"Default state of the \"Ignore Date (non-interactive rebase only)\" checkbox."},"git-graph.dialog.rebase.launchInteractiveRebase":{"type":"boolean","default":false,"description":"Default state of the \"Launch Interactive Rebase in new Terminal\" checkbox."},"git-graph.dialog.resetCurrentBranchToCommit.mode":{"type":"string","enum":["Soft","Mixed","Hard"],"enumDescriptions":["Soft - Keep all changes, but reset head","Mixed - Keep working tree, but reset index","Hard - Discard all changes"],"default":"Mixed","description":"Default mode to be used for the reset action."},"git-graph.dialog.resetUncommittedChanges.mode":{"type":"string","enum":["Mixed","Hard"],"enumDescriptions":["Mixed - Keep working tree, but reset index","Hard - Discard all changes"],"default":"Mixed","description":"Default mode to be used for the reset action."},"git-graph.dialog.stashUncommittedChanges.includeUntracked":{"type":"boolean","default":true,"description":"Default state of the \"Include Untracked\" checkbox."},"git-graph.enhancedAccessibility":{"type":"boolean","default":false,"description":"Visual file change A|M|D|R|U indicators in the Commit Details View for users with colour blindness. In the future, this setting will enable any additional accessibility related features of Git Graph that aren't enabled by default."},"git-graph.fileEncoding":{"type":"string","default":"utf8","markdownDescription":"The character set encoding used when retrieving a specific version of repository files (e.g. in the Diff View). A list of all supported encodings can be found [here](https://github.com/ashtuchkin/iconv-lite/wiki/Supported-Encodings).","scope":"resource"},"git-graph.graph.colours":{"type":"array","items":{"type":"string","description":"Colour (HEX or RGB)","pattern":"^\\s*(#[0-9a-fA-F]{6}|#[0-9a-fA-F]{8}|rgb[a]?\\s*\\(\\d{1,3},\\s*\\d{1,3},\\s*\\d{1,3}\\))\\s*$"},"default":["#0085d9","#d9008f","#00d90a","#d98500","#a300d9","#ff0000","#00d9cc","#e138e8","#85d900","#dc5b23","#6f24d6","#ffcc00"],"description":"Specifies the colours used on the graph."},"git-graph.graph.style":{"type":"string","enum":["rounded","angular"],"enumDescriptions":["Use smooth curves when transitioning between branches on the graph.","Use angular lines when transitioning between branches on the graph."],"default":"rounded","description":"Specifies the style of the graph."},"git-graph.graph.uncommittedChanges":{"type":"string","enum":["Open Circle at the Uncommitted Changes","Open Circle at the Checked Out Commit"],"enumDescriptions":["Display the Uncommitted Changes as a grey open circle, connected to the commit referenced by HEAD with a solid grey line. The current file system's state is therefore always displayed as an open circle.","Display the Uncommitted Changes as a grey closed circle, connected to the commit referenced by HEAD with a dotted grey line. The commit referenced by HEAD is therefore always displayed as an open circle."],"default":"Open Circle at the Uncommitted Changes","description":"Specifies how the Uncommitted Changes are displayed on the graph."},"git-graph.integratedTerminalShell":{"type":"string","default":"","description":"Specifies the path and filename of the Shell executable to be used by the Visual Studio Code Integrated Terminal, when it is opened by Git Graph. For example, to use Git Bash on Windows this setting would commonly be set to \"C:\\Program Files\\Git\\bin\\bash.exe\". If this setting is left blank, the default Shell is used.","scope":"machine"},"git-graph.keyboardShortcut.find":{"type":"string","enum":["UNASSIGNED","CTRL/CMD + A","CTRL/CMD + B","CTRL/CMD + C","CTRL/CMD + D","CTRL/CMD + E","CTRL/CMD + F","CTRL/CMD + G","CTRL/CMD + H","CTRL/CMD + I","CTRL/CMD + J","CTRL/CMD + K","CTRL/CMD + L","CTRL/CMD + M","CTRL/CMD + N","CTRL/CMD + O","CTRL/CMD + P","CTRL/CMD + Q","CTRL/CMD + R","CTRL/CMD + S","CTRL/CMD + T","CTRL/CMD + U","CTRL/CMD + V","CTRL/CMD + W","CTRL/CMD + X","CTRL/CMD + Y","CTRL/CMD + Z"],"default":"CTRL/CMD + F","description":"The keybinding for the keyboard shortcut that opens the Find Widget in the Git Graph View."},"git-graph.keyboardShortcut.refresh":{"type":"string","enum":["UNASSIGNED","CTRL/CMD + A","CTRL/CMD + B","CTRL/CMD + C","CTRL/CMD + D","CTRL/CMD + E","CTRL/CMD + F","CTRL/CMD + G","CTRL/CMD + H","CTRL/CMD + I","CTRL/CMD + J","CTRL/CMD + K","CTRL/CMD + L","CTRL/CMD + M","CTRL/CMD + N","CTRL/CMD + O","CTRL/CMD + P","CTRL/CMD + Q","CTRL/CMD + R","CTRL/CMD + S","CTRL/CMD + T","CTRL/CMD + U","CTRL/CMD + V","CTRL/CMD + W","CTRL/CMD + X","CTRL/CMD + Y","CTRL/CMD + Z"],"default":"CTRL/CMD + R","description":"The keybinding for the keyboard shortcut that refreshes the Git Graph View."},"git-graph.keyboardShortcut.scrollToHead":{"type":"string","enum":["UNASSIGNED","CTRL/CMD + A","CTRL/CMD + B","CTRL/CMD + C","CTRL/CMD + D","CTRL/CMD + E","CTRL/CMD + F","CTRL/CMD + G","CTRL/CMD + H","CTRL/CMD + I","CTRL/CMD + J","CTRL/CMD + K","CTRL/CMD + L","CTRL/CMD + M","CTRL/CMD + N","CTRL/CMD + O","CTRL/CMD + P","CTRL/CMD + Q","CTRL/CMD + R","CTRL/CMD + S","CTRL/CMD + T","CTRL/CMD + U","CTRL/CMD + V","CTRL/CMD + W","CTRL/CMD + X","CTRL/CMD + Y","CTRL/CMD + Z"],"default":"CTRL/CMD + H","description":"The keybinding for the keyboard shortcut that scrolls the Git Graph View to be centered on the commit referenced by HEAD."},"git-graph.keyboardShortcut.scrollToStash":{"type":"string","enum":["UNASSIGNED","CTRL/CMD + A","CTRL/CMD + B","CTRL/CMD + C","CTRL/CMD + D","CTRL/CMD + E","CTRL/CMD + F","CTRL/CMD + G","CTRL/CMD + H","CTRL/CMD + I","CTRL/CMD + J","CTRL/CMD + K","CTRL/CMD + L","CTRL/CMD + M","CTRL/CMD + N","CTRL/CMD + O","CTRL/CMD + P","CTRL/CMD + Q","CTRL/CMD + R","CTRL/CMD + S","CTRL/CMD + T","CTRL/CMD + U","CTRL/CMD + V","CTRL/CMD + W","CTRL/CMD + X","CTRL/CMD + Y","CTRL/CMD + Z"],"default":"CTRL/CMD + S","description":"The keybinding for the keyboard shortcut that scrolls the Git Graph View to the first (or next) stash in the loaded commits. The Shift Key Modifier can be applied to this keybinding to scroll the Git Graph View to the last (or previous) stash in the loaded commits."},"git-graph.markdown":{"type":"boolean","default":true,"description":"Parse and render a frequently used subset of inline Markdown formatting rules in commit messages and tag details (bold, italics, bold & italics, and inline code blocks)."},"git-graph.maxDepthOfRepoSearch":{"type":"number","default":0,"description":"Specifies the maximum depth of subfolders to search when discovering repositories in the workspace. Note: Sub-repos are not automatically detected when searching subfolders, however they can be manually added by running the command \"Git Graph: Add Git Repository\" in the Command Palette."},"git-graph.openNewTabEditorGroup":{"type":"string","enum":["Active","Beside","One","Two","Three","Four","Five","Six","Seven","Eight","Nine"],"enumDescriptions":["Open the new tab in the Active Editor Group.","Open the new tab beside the Active Editor Group.","Open the new tab in the First Editor Group.","Open the new tab in the Second Editor Group.","Open the new tab in the Third Editor Group.","Open the new tab in the Fourth Editor Group.","Open the new tab in the Fifth Editor Group.","Open the new tab in the Sixth Editor Group.","Open the new tab in the Seventh Editor Group.","Open the new tab in the Eighth Editor Group.","Open the new tab in the Ninth Editor Group."],"default":"Active","description":"Specifies the Editor Group where Git Graph should open new tabs, when performing the following actions from the Git Graph View: Viewing the Visual Studio Code Diff View, Opening a File, Viewing a File at a Specific Revision."},"git-graph.openToTheRepoOfTheActiveTextEditorDocument":{"type":"boolean","default":false,"description":"Open the Git Graph View to the repository containing the active Text Editor document."},"git-graph.referenceLabels.alignment":{"type":"string","enum":["Normal","Branches (on the left) & Tags (on the right)","Branches (aligned to the graph) & Tags (on the right)"],"enumDescriptions":["Show branch & tag labels on the left of the commit message in the 'Description' column.","Show branch labels on the left of the commit message in the 'Description' column, and tag labels on the right.","Show branch labels aligned to the graph in the 'Graph' column, and tag labels on the right in the 'Description' column."],"default":"Normal","description":"Specifies how branch and tag reference labels are aligned for each commit."},"git-graph.referenceLabels.combineLocalAndRemoteBranchLabels":{"type":"boolean","default":true,"description":"Combine local and remote branch labels if they refer to the same branch, and are on the same commit."},"git-graph.repository.commits.fetchAvatars":{"type":"boolean","default":false,"description":"Fetch avatars of commit authors and committers. By enabling this setting, you consent to commit author and committer email addresses being sent GitHub, GitLab or Gravatar, depending on the repositories remote origin."},"git-graph.repository.commits.initialLoad":{"type":"number","default":300,"description":"Specifies the number of commits to initially load."},"git-graph.repository.commits.loadMore":{"type":"number","default":100,"description":"Specifies the number of additional commits to load when the \"Load More Commits\" button is pressed, or more commits are automatically loaded."},"git-graph.repository.commits.loadMoreAutomatically":{"type":"boolean","default":true,"description":"When the view has been scrolled to the bottom, automatically load more commits if they exist (instead of having to press the \"Load More Commits\" button)."},"git-graph.repository.commits.mute.commitsThatAreNotAncestorsOfHead":{"type":"boolean","default":false,"description":"Display commits that aren't ancestors of the checked-out branch / commit with a muted text color. Muting will only occur if the commit referenced by HEAD is within the loaded commits on the Git Graph View."},"git-graph.repository.commits.mute.mergeCommits":{"type":"boolean","default":true,"description":"Display merge commits with a muted text color."},"git-graph.repository.commits.order":{"type":"string","enum":["date","author-date","topo"],"enumDescriptions":["Show commits in the commit timestamp order.","Show commits in the author timestamp order.","Avoid showing commits on multiple lines of history intermixed."],"default":"date","markdownDescription":"Specifies the order of commits on the Git Graph View. See [git log](https://git-scm.com/docs/git-log#_commit_ordering) for more information on each order option. This can be overridden per repository via the Git Graph View's Column Header Context Menu."},"git-graph.repository.commits.showSignatureStatus":{"type":"boolean","default":false,"description":"Show the commit's signature status to the right of the Committer in the Commit Details View (only for signed commits). Hovering over the signature icon displays a tooltip with the signature details. Requires Git (>= 2.4.0) & GPG (or equivalent) to be installed on the same machine that is running Visual Studio Code."},"git-graph.repository.fetchAndPrune":{"type":"boolean","default":false,"description":"Before fetching from remote(s) using the Fetch button on the Git Graph View Control Bar, remove any remote-tracking references that no longer exist on the remote(s)."},"git-graph.repository.fetchAndPruneTags":{"type":"boolean","default":false,"description":"Before fetching from remote(s) using the Fetch button on the Git Graph View Control Bar, remove any local tags that no longer exist on the remote(s). Requires Git >= 2.17.0, and the \"Repository: Fetch And Prune\" setting to be enabled. Caution: If you work in repositories that have multiple remotes, it is not recommended to use this setting (instead you can prune tags for a specific remote via \"Fetch Remote\" Dialog from the Repository Settings Widget on the Git Graph View)."},"git-graph.repository.includeCommitsMentionedByReflogs":{"type":"boolean","default":false,"description":"Include commits only mentioned by reflogs in the Git Graph View (only applies when showing all branches). This can be overridden per repository in the Git Graph View's Repository Settings Widget."},"git-graph.repository.onLoad.scrollToHead":{"type":"boolean","default":false,"description":"Automatically scroll the Git Graph View to be centered on the commit referenced by HEAD. This will only occur if the commit referenced by HEAD is within the loaded commits on the Git Graph View."},"git-graph.repository.onLoad.showCheckedOutBranch":{"type":"boolean","default":false,"description":"Show the checked out branch when a repository is loaded in the Git Graph View. This setting can be used in conjunction with \"Repository > On Load: Show Specific Branches\". Default: false (show all branches)"},"git-graph.repository.onLoad.showSpecificBranches":{"type":"array","items":{"type":"string","description":"A local branch name (e.g. \"master\"), a remote-tracking branch name prefixed with \"remotes/\" (e.g. \"remotes/origin/master\"), or a glob pattern defined in git-graph.customBranchGlobPatterns prefixed with \"--glob=\" (e.g. \"--glob=heads/feature/*\")."},"default":[],"markdownDescription":"Show specific branches when a repository is loaded in the Git Graph View. Branches can be specified as follows: A local branch name (e.g. `master`), a remote-tracking branch name prefixed with \"remotes/\" (e.g. `remotes/origin/master`), or a glob pattern defined in `git-graph.customBranchGlobPatterns` prefixed with \"--glob=\" (e.g. `--glob=heads/feature/*`). This setting can be used in conjunction with \"Repository > On Load: Show Checked Out Branch\". Default: [] (show all branches)"},"git-graph.repository.onlyFollowFirstParent":{"type":"boolean","default":false,"markdownDescription":"Only follow the first parent of commits when discovering the commits to load in the Git Graph View. See [--first-parent](https://git-scm.com/docs/git-log#Documentation/git-log.txt---first-parent) to find out more about this setting. This can be overridden per repository in the Git Graph View's Repository Settings Widget."},"git-graph.repository.showCommitsOnlyReferencedByTags":{"type":"boolean","default":true,"description":"Show Commits that are only referenced by tags in Git Graph."},"git-graph.repository.showRemoteBranches":{"type":"boolean","default":true,"description":"Show Remote Branches in Git Graph by default. This can be overridden per repository from the Git Graph View's Control Bar."},"git-graph.repository.showRemoteHeads":{"type":"boolean","default":true,"description":"Show Remote HEAD Symbolic References in Git Graph (e.g. \"origin/HEAD\")."},"git-graph.repository.showStashes":{"type":"boolean","default":true,"description":"Show Stashes in Git Graph by default. This can be overridden per repository in the Git Graph View's Repository Settings Widget."},"git-graph.repository.showTags":{"type":"boolean","default":true,"description":"Show Tags in Git Graph by default. This can be overridden per repository in the Git Graph View's Repository Settings Widget."},"git-graph.repository.showUncommittedChanges":{"type":"boolean","default":true,"description":"Show uncommitted changes. If you work on large repositories, disabling this setting can reduce the load time of the Git Graph View."},"git-graph.repository.showUntrackedFiles":{"type":"boolean","default":true,"description":"Show untracked files when viewing the uncommitted changes. If you work on large repositories, disabling this setting can reduce the load time of the Git Graph View."},"git-graph.repository.sign.commits":{"type":"boolean","default":false,"description":"Enables commit signing with GPG or X.509."},"git-graph.repository.sign.tags":{"type":"boolean","default":false,"description":"Enables tag signing with GPG or X.509."},"git-graph.repository.useMailmap":{"type":"boolean","default":false,"markdownDescription":"Respect [.mailmap](https://git-scm.com/docs/git-check-mailmap#_mapping_authors) files when displaying author & committer names and email addresses."},"git-graph.repositoryDropdownOrder":{"type":"string","enum":["Full Path","Name","Workspace Full Path"],"enumDescriptions":["Sort repositories alphabetically by the full path of the repository.","Sort repositories alphabetically by the name of the repository.","Sort repositories according to the Visual Studio Code Workspace Folder order, then alphabetically by the full path of the repository."],"default":"Workspace Full Path","description":"Specifies the order that repositories are sorted in the repository dropdown on the Git Graph View (only visible when more than one repository exists in the current Visual Studio Code Workspace)."},"git-graph.retainContextWhenHidden":{"type":"boolean","default":true,"description":"Specifies if the Git Graph View's Visual Studio Code context is kept when the panel is no longer visible (e.g. moved to background tab). Enabling this setting will make Git Graph load significantly faster when switching back to the Git Graph tab, however has a higher memory overhead."},"git-graph.showStatusBarItem":{"type":"boolean","default":true,"description":"Show a Status Bar Item that opens the Git Graph View when clicked."},"git-graph.sourceCodeProviderIntegrationLocation":{"type":"string","enum":["Inline","More Actions"],"enumDescriptions":["Show the 'View Git Graph' action on the title of SCM Providers","Show the 'View Git Graph' action in the 'More Actions...' menu on the title of SCM Providers"],"default":"Inline","description":"Specifies where the \"View Git Graph\" action appears on the title of SCM Providers."},"git-graph.tabIconColourTheme":{"type":"string","enum":["colour","grey"],"enumDescriptions":["Show a colour icon which suits most Visual Studio Code colour themes","Show a grey icon which suits Visual Studio Code colour themes that are predominantly grayscale"],"default":"colour","description":"Specifies the colour theme of the icon displayed on the Git Graph tab."},"git-graph.autoCenterCommitDetailsView":{"type":"boolean","default":true,"description":"Automatically center the commit details view when it is opened.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.commitDetailsView.autoCenter","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.commitDetailsView.autoCenter#`"},"git-graph.combineLocalAndRemoteBranchLabels":{"type":"boolean","default":true,"description":"Combine local and remote branch labels if they refer to the same branch, and are on the same commit.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.referenceLabels.combineLocalAndRemoteBranchLabels","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.referenceLabels.combineLocalAndRemoteBranchLabels#`"},"git-graph.commitDetailsViewFileTreeCompactFolders":{"type":"boolean","default":true,"description":"Render the File Tree in the Commit Details / Comparison View in a compacted form, such that folders with a single child folder are compressed into a single combined folder element.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.commitDetailsView.fileView.fileTree.compactFolders","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.commitDetailsView.fileView.fileTree.compactFolders#`"},"git-graph.commitDetailsViewLocation":{"type":"string","enum":["Inline","Docked to Bottom"],"enumDescriptions":["Show the Commit Details View inline with the graph","Show the Commit Details View docked to the bottom of the Git Graph view"],"default":"Inline","description":"Specifies where the Commit Details View is rendered in the Git Graph view.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.commitDetailsView.location","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.commitDetailsView.location#`"},"git-graph.commitOrdering":{"type":"string","enum":["date","author-date","topo"],"enumDescriptions":["Show commits in the commit timestamp order.","Show commits in the author timestamp order.","Avoid showing commits on multiple lines of history intermixed."],"default":"date","markdownDescription":"Specifies the order of commits on the Git Graph view. See [git log](https://git-scm.com/docs/git-log#_commit_ordering) for more information on each order option.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.repository.commits.order","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.repository.commits.order#`"},"git-graph.dateFormat":{"type":"string","enum":["Date & Time","Date Only","ISO Date & Time","ISO Date Only","Relative"],"enumDescriptions":["Show the date and time, for example \"24 Mar 2019 21:34\"","Show the date only, for example \"24 Mar 2019\"","Show the ISO date and time, for example \"2019-03-24 21:34\"","Show the ISO date only, for example \"2019-03-24\"","Show relative times, for example \"5 minutes ago\""],"default":"Date & Time","description":"Specifies the date format to be used in the \"Date\" column on the Git Graph View.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.date.format","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.date.format#`"},"git-graph.dateType":{"type":"string","enum":["Author Date","Commit Date"],"enumDescriptions":["Use the author date of a commit","Use the committer date of a commit"],"default":"Author Date","description":"Specifies the date type to be displayed in the \"Date\" column on the Git Graph View.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.date.type","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.date.type#`"},"git-graph.defaultFileViewType":{"type":"string","enum":["File Tree","File List"],"enumDescriptions":["Display files in a tree structure","Display files in a list (useful for repositories with deep folder structures)"],"default":"File Tree","description":"Sets the default type of File View used in the Commit Details / Comparison Views. This can be overridden per repository using the controls on the right side of the Commit Details / Comparison Views.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.commitDetailsView.fileView.type","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.commitDetailsView.fileView.type#`"},"git-graph.fetchAndPrune":{"type":"boolean","default":false,"description":"Before fetching from remote(s) using the Fetch button on the Git Graph View Control Bar, remove any remote-tracking references that no longer exist on the remote(s).","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.repository.fetchAndPrune","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.repository.fetchAndPrune#`"},"git-graph.fetchAvatars":{"type":"boolean","default":false,"description":"Fetch avatars of commit authors and committers. By enabling this setting, you consent to commit author and committer email addresses being sent GitHub, GitLab or Gravatar, depending on the repositories remote origin.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.repository.commits.fetchAvatars","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.repository.commits.fetchAvatars#`"},"git-graph.graphColours":{"type":"array","items":{"type":"string","description":"Colour (HEX or RGB)","pattern":"^\\s*(#[0-9a-fA-F]{6}|#[0-9a-fA-F]{8}|rgb[a]?\\s*\\(\\d{1,3},\\s*\\d{1,3},\\s*\\d{1,3}\\))\\s*$"},"default":["#0085d9","#d9008f","#00d90a","#d98500","#a300d9","#ff0000","#00d9cc","#e138e8","#85d900","#dc5b23","#6f24d6","#ffcc00"],"description":"Specifies the colours used on the graph.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.graph.colours","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.graph.colours#`"},"git-graph.graphStyle":{"type":"string","enum":["rounded","angular"],"enumDescriptions":["Use smooth curves when transitioning between branches on the graph","Use angular lines when transitioning between branches on the graph"],"default":"rounded","description":"Specifies the style of the graph.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.graph.style","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.graph.style#`"},"git-graph.includeCommitsMentionedByReflogs":{"type":"boolean","default":false,"description":"Include commits only mentioned by reflogs in the Git Graph View (only applies when showing all branches). This can be overridden per repository in the Git Graph View's Repository Settings Widget.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.repository.includeCommitsMentionedByReflogs","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.repository.includeCommitsMentionedByReflogs#`"},"git-graph.initialLoadCommits":{"type":"number","default":300,"description":"Specifies the number of commits to initially load.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.repository.commits.initialLoad","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.repository.commits.initialLoad#`"},"git-graph.loadMoreCommits":{"type":"number","default":100,"description":"Specifies the number of additional commits to load when the \"Load More Commits\" button is pressed, or more commits are automatically loaded.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.repository.commits.loadMore","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.repository.commits.loadMore#`"},"git-graph.loadMoreCommitsAutomatically":{"type":"boolean","default":true,"description":"When the view has been scrolled to the bottom, automatically load more commits if they exist (instead of having to press the \"Load More Commits\" button).","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.repository.commits.loadMoreAutomatically","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.repository.commits.loadMoreAutomatically#`"},"git-graph.muteCommitsThatAreNotAncestorsOfHead":{"type":"boolean","default":false,"description":"Display commits that aren't ancestors of the checked-out branch / commit with a muted text color. Muting will only occur if the commit referenced by HEAD is within the loaded commits on the Git Graph View.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.repository.commits.mute.commitsThatAreNotAncestorsOfHead","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.repository.commits.mute.commitsThatAreNotAncestorsOfHead#`"},"git-graph.muteMergeCommits":{"type":"boolean","default":true,"description":"Display merge commits with a muted text color.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.repository.commits.mute.mergeCommits","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.repository.commits.mute.mergeCommits#`"},"git-graph.onlyFollowFirstParent":{"type":"boolean","default":false,"markdownDescription":"Only follow the first parent of commits when discovering the commits to load in the Git Graph View. See [--first-parent](https://git-scm.com/docs/git-log#Documentation/git-log.txt---first-parent) to find out more about this setting.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.repository.onlyFollowFirstParent","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.repository.onlyFollowFirstParent#`"},"git-graph.openDiffTabLocation":{"type":"string","enum":["Active","Beside","One","Two","Three","Four","Five","Six","Seven","Eight","Nine"],"enumDescriptions":["Open the Visual Studio Code Diff View in the Active Editor Group.","Open the Visual Studio Code Diff View beside the Active Editor Group.","Open the Visual Studio Code Diff View in the First Editor Group.","Open the Visual Studio Code Diff View in the Second Editor Group.","Open the Visual Studio Code Diff View in the Third Editor Group.","Open the Visual Studio Code Diff View in the Fourth Editor Group.","Open the Visual Studio Code Diff View in the Fifth Editor Group.","Open the Visual Studio Code Diff View in the Sixth Editor Group.","Open the Visual Studio Code Diff View in the Seventh Editor Group.","Open the Visual Studio Code Diff View in the Eighth Editor Group.","Open the Visual Studio Code Diff View in the Ninth Editor Group."],"default":"Active","description":"Specifies which Editor Group the Visual Studio Code Diff View is opened in.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.openNewTabEditorGroup","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.openNewTabEditorGroup#`"},"git-graph.openRepoToHead":{"type":"boolean","default":false,"description":"When opening or switching repositories in the Git Graph View, automatically scroll the view to be centered on the commit referenced by HEAD. This will only occur if the commit referenced by HEAD is within the loaded commits on the Git Graph View.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.repository.onLoad.scrollToHead","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.repository.onLoad.scrollToHead#`"},"git-graph.referenceLabelAlignment":{"type":"string","enum":["Normal","Branches (on the left) & Tags (on the right)","Branches (aligned to the graph) & Tags (on the right)"],"enumDescriptions":["Show branch & tag labels on the left of the commit message in the 'Description' column.","Show branch labels on the left of the commit message in the 'Description' column, and tag labels on the right.","Show branch labels aligned to the graph in the 'Graph' column, and tag labels on the right in the 'Description' column."],"default":"Normal","description":"Specifies how branch and tag reference labels are aligned for each commit.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.referenceLabels.alignment","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.referenceLabels.alignment#`"},"git-graph.showCommitsOnlyReferencedByTags":{"type":"boolean","default":true,"description":"Show commits that are only referenced by tags in Git Graph.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.repository.showCommitsOnlyReferencedByTags","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.repository.showCommitsOnlyReferencedByTags#`"},"git-graph.showCurrentBranchByDefault":{"type":"boolean","default":false,"description":"Show the current branch by default when Git Graph is opened. Default: false (show all branches)","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.repository.onLoad.showCheckedOutBranch","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.repository.onLoad.showCheckedOutBranch#`"},"git-graph.showSignatureStatus":{"type":"boolean","default":false,"description":"Show the commit's signature status to the right of the Committer in the Commit Details View (only for signed commits). Hovering over the signature icon displays a tooltip with the signature details. Requires Git (>= 2.4.0) & GPG (or equivalent) to be installed on the same machine that is running Visual Studio Code.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.repository.commits.showSignatureStatus","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.repository.commits.showSignatureStatus#`"},"git-graph.showTags":{"type":"boolean","default":true,"description":"Show Tags in Git Graph by default. This can be overridden per repository in the Git Graph View's Repository Settings Widget.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.repository.showTags","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.repository.showTags#`"},"git-graph.showUncommittedChanges":{"type":"boolean","default":true,"description":"Show uncommitted changes. If you work on large repositories, disabling this setting can reduce the load time of the Git Graph View.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.repository.showUncommittedChanges","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.repository.showUncommittedChanges#`"},"git-graph.showUntrackedFiles":{"type":"boolean","default":true,"description":"Show untracked files when viewing the uncommitted changes. If you work on large repositories, disabling this setting can reduce the load time of the Git Graph View.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.repository.showUntrackedFiles","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.repository.showUntrackedFiles#`"},"git-graph.useMailmap":{"type":"boolean","default":false,"markdownDescription":"Respect [.mailmap](https://git-scm.com/docs/git-check-mailmap#_mapping_authors) files when displaying author & committer names and email addresses.","deprecationMessage":"Depreciated: This setting has been renamed to git-graph.repository.useMailmap","markdownDeprecationMessage":"Depreciated: This setting has been renamed to `#git-graph.repository.useMailmap#`"}}},"menus":{"commandPalette":[{"command":"git-graph.openFile","when":"isInDiffEditor && resourceScheme == git-graph && git-graph:codiconsSupported"}],"editor/title":[{"command":"git-graph.openFile","group":"navigation","when":"isInDiffEditor && resourceScheme == git-graph && git-graph:codiconsSupported"}],"scm/title":[{"when":"scmProvider == git && config.git-graph.sourceCodeProviderIntegrationLocation == 'Inline'","command":"git-graph.view","group":"navigation"},{"when":"scmProvider == git && config.git-graph.sourceCodeProviderIntegrationLocation == 'More Actions'","command":"git-graph.view","group":"inline"}]}},"scripts":{"vscode:prepublish":"npm run compile","vscode:uninstall":"node ./out/life-cycle/uninstall.js","clean":"node ./.vscode/clean.js","compile":"npm run lint && npm run clean && npm run compile-src && npm run compile-web","compile-src":"tsc -p ./src && node ./.vscode/package-src.js","compile-web":"tsc -p ./web && node ./.vscode/package-web.js","compile-web-debug":"tsc -p ./web && node ./.vscode/package-web.js debug","lint":"eslint -c .eslintrc.json --max-warnings 0 --ext .ts ./src ./tests ./web","package":"vsce package","package-and-install":"npm run package && node ./.vscode/install-package.js","test":"jest --verbose","test-and-report-coverage":"jest --verbose --coverage"},"dependencies":{"iconv-lite":"0.5.0"},"devDependencies":{"@types/jest":"26.0.19","@types/node":"8.10.62","@types/vscode":"1.38.0","@typescript-eslint/eslint-plugin":"4.10.0","@typescript-eslint/parser":"4.10.0","eslint":"7.15.0","jest":"26.6.3","ts-jest":"26.4.4","typescript":"4.0.2","uglify-js":"3.10.0"}},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/mhutchie.git-graph-1.30.0-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"438221f8-1107-4ccd-a6fe-f3b7fe0856b7","publisherId":"996496dc-099f-469d-b89c-0d7713179365","publisherDisplayName":"mhutchie","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691834563802,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"eamodio.gitlens","uuid":"4de763bd-505d-4978-9575-2b7696ecf94e"},"manifest":{"name":"gitlens","displayName":"GitLens — Git supercharged","description":"Supercharge Git within VS Code — Visualize code authorship at a glance via Git blame annotations and CodeLens, seamlessly navigate and explore Git repositories, gain valuable insights via rich visualizations and powerful comparison commands, and so much more","version":"14.2.1","engines":{"vscode":"^1.78.0"},"license":"SEE LICENSE IN LICENSE","publisher":"eamodio","author":{"name":"Eric Amodio","email":"eamodio@gmail.com"},"homepage":"https://gitkraken.com/gitlens","bugs":{"url":"https://github.com/gitkraken/vscode-gitlens/issues"},"repository":{"type":"git","url":"https://github.com/gitkraken/vscode-gitlens.git"},"main":"./dist/gitlens.js","browser":"./dist/browser/gitlens.js","icon":"images/gitlens-icon.png","preview":false,"badges":[{"url":"https://img.shields.io/badge/gitkraken--community-gitlens-blue.svg?logo=slack&labelColor=555555","href":"https://slack.gitkraken.com/","description":"Join us in the #gitlens channel"}],"categories":["Other","SCM Providers"],"galleryBanner":{"color":"#8647ae","theme":"dark"},"keywords":["gitlens","git","blame","log","annotation","multi-root ready"],"activationEvents":["onAuthenticationRequest:gitlens-gitkraken","onFileSystem:gitlens","onWebviewPanel:gitlens.welcome","onWebviewPanel:gitlens.settings","onWebviewPanel:gitlens.graph","onWebviewPanel:gitlens.focus","onStartupFinished"],"capabilities":{"virtualWorkspaces":true,"untrustedWorkspaces":{"supported":"limited"}},"contributes":{"configuration":[{"id":"current-line-blame","title":"Inline Blame","order":10,"properties":{"gitlens.currentLine.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to provide an inline blame annotation for the current line, by default. Use the `Toggle Line Blame Annotations` command (`gitlens.toggleLineBlame`) to toggle the annotations on and off for the current window","scope":"window","order":10},"gitlens.currentLine.pullRequests.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to provide information about the Pull Request (if any) that introduced the commit in the inline blame annotation. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":20},"gitlens.currentLine.format":{"type":"string","default":"${author, }${agoOrDate}${' via 'pullRequest}${ • message|50?}","markdownDescription":"Specifies the format of the inline blame annotation. See [_Commit Tokens_](https://github.com/gitkraken/vscode-gitlens/wiki/Custom-Formatting#commit-tokens) in the GitLens docs. Date formatting is controlled by the `#gitlens.currentLine.dateFormat#` setting","scope":"window","order":30},"gitlens.currentLine.uncommittedChangesFormat":{"type":"string","default":null,"markdownDescription":"Specifies the uncommitted changes format of the inline blame annotation. See [_Commit Tokens_](https://github.com/gitkraken/vscode-gitlens/wiki/Custom-Formatting#commit-tokens) in the GitLens docs. Date formatting is controlled by the `#gitlens.currentLine.dateFormat#` setting.\n\n**NOTE**: Setting this to an empty string will disable inline blame annotations for uncommitted changes.","scope":"window","order":31},"gitlens.currentLine.scrollable":{"type":"boolean","default":true,"markdownDescription":"Specifies whether the inline blame annotation can be scrolled into view when it is outside the viewport. **NOTE**: Setting this to `false` will inhibit the hovers from showing over the annotation; Set `#gitlens.hovers.currentLine.over#` to `line` to enable the hovers to show anywhere over the line.","scope":"window","order":40},"gitlens.currentLine.dateFormat":{"type":["string","null"],"default":null,"markdownDescription":"Specifies how to format absolute dates (e.g. using the `${date}` token) for the cinline blame annotation. See the [Moment.js docs](https://momentjs.com/docs/#/displaying/format/) for supported formats","scope":"window","order":50}}},{"id":"git-code-lens","title":"Git CodeLens","order":11,"properties":{"gitlens.codeLens.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to provide any Git CodeLens, by default. Use the `Toggle Git CodeLens` command (`gitlens.toggleCodeLens`) to toggle the Git CodeLens on and off for the current window","scope":"window","order":10},"gitlens.codeLens.authors.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to provide an _authors_ CodeLens, showing number of authors of the file or code block and the most prominent author (if there is more than one)","scope":"window","order":20},"gitlens.codeLens.authors.command":{"type":["boolean","string"],"enum":[false,"gitlens.toggleFileBlame","gitlens.toggleFileHeatmap","gitlens.toggleFileChanges","gitlens.toggleFileChangesOnly","gitlens.diffWithPrevious","gitlens.revealCommitInView","gitlens.showCommitsInView","gitlens.showQuickCommitDetails","gitlens.showQuickCommitFileDetails","gitlens.showQuickFileHistory","gitlens.showQuickRepoHistory","gitlens.openCommitOnRemote","gitlens.copyRemoteCommitUrl","gitlens.openFileOnRemote","gitlens.copyRemoteFileUrl"],"enumDescriptions":["Disables click interaction","Toggles file blame","Toggles file heatmap","Toggles file changes since before the commit","Toggles file changes from the commit","Compares the current committed file with the previous commit","Reveals the commit in the Side Bar","Searches for commits within the range","Shows a commit details quick pick menu","Shows a commit file details quick pick menu","Shows a file history quick pick menu","Shows a branch history quick pick menu","Opens the commit on the remote service (when available)","Copies the remote commit URL to the clipboard (when available)","Opens the file revision on the remote service (when available)","Copies the remote file URL to the clipboard (when available)"],"default":"gitlens.toggleFileBlame","markdownDescription":"Specifies the command to be executed when an _authors_ CodeLens is clicked","scope":"window","order":21},"gitlens.codeLens.recentChange.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to provide a _recent change_ CodeLens, showing the author and date of the most recent commit for the file or code block","scope":"window","order":30},"gitlens.codeLens.recentChange.command":{"type":["boolean","string"],"enum":[false,"gitlens.toggleFileBlame","gitlens.toggleFileHeatmap","gitlens.toggleFileChanges","gitlens.toggleFileChangesOnly","gitlens.diffWithPrevious","gitlens.revealCommitInView","gitlens.showCommitsInView","gitlens.showQuickCommitDetails","gitlens.showQuickCommitFileDetails","gitlens.showQuickFileHistory","gitlens.showQuickRepoHistory","gitlens.openCommitOnRemote","gitlens.copyRemoteCommitUrl","gitlens.openFileOnRemote","gitlens.copyRemoteFileUrl"],"enumDescriptions":["Disables click interaction","Toggles file blame","Toggles file heatmap","Toggles file changes since before the commit","Toggles file changes from the commit","Compares the current committed file with the previous commit","Reveals the commit in the Side Bar","Shows the commit details","Shows a commit details quick pick menu","Shows a commit file details quick pick menu","Shows a file history quick pick menu","Shows a branch history quick pick menu","Opens the commit on the remote service (when available)","Copies the remote commit URL to the clipboard (when available)","Opens the file revision on the remote service (when available)","Copies the remote file URL to the clipboard (when available)"],"default":"gitlens.showQuickCommitFileDetails","markdownDescription":"Specifies the command to be executed when a _recent change_ CodeLens is clicked","scope":"window","order":31},"gitlens.codeLens.scopes":{"type":"array","default":["document","containers"],"items":{"type":"string","enum":["document","containers","blocks"],"enumDescriptions":["Adds CodeLens at the top of the document","Adds CodeLens at the start of container-like symbols (modules, classes, interfaces, etc)","Adds CodeLens at the start of block-like symbols (functions, methods, etc) lines"]},"minItems":0,"maxItems":3,"uniqueItems":true,"markdownDescription":"Specifies where Git CodeLens will be shown in the document","scope":"language-overridable","order":40},"gitlens.codeLens.symbolScopes":{"type":"array","items":{"type":"string"},"uniqueItems":true,"markdownDescription":"Specifies a set of document symbols where Git CodeLens will or will not be shown in the document. Prefix with `!` to avoid providing a Git CodeLens for the symbol. Must be a member of `SymbolKind`","scope":"language-overridable","order":50},"gitlens.codeLens.includeSingleLineSymbols":{"type":"boolean","default":false,"markdownDescription":"Specifies whether to provide any Git CodeLens on symbols that span only a single line","scope":"window","order":60},"gitlens.strings.codeLens.unsavedChanges.recentChangeAndAuthors":{"type":"string","default":"$(ellipsis)","markdownDescription":"Specifies the string to be shown in place of both the _recent change_ and _authors_ CodeLens when there are unsaved changes","scope":"window","order":70},"gitlens.strings.codeLens.unsavedChanges.recentChangeOnly":{"type":"string","default":"$(ellipsis)","markdownDescription":"Specifies the string to be shown in place of the _recent change_ CodeLens when there are unsaved changes","scope":"window","order":71},"gitlens.strings.codeLens.unsavedChanges.authorsOnly":{"type":"string","default":"$(ellipsis)","markdownDescription":"Specifies the string to be shown in place of the _authors_ CodeLens when there are unsaved changes","scope":"window","order":72},"gitlens.codeLens.dateFormat":{"type":["string","null"],"default":null,"markdownDescription":"Specifies how to format absolute dates in the Git CodeLens. See the [Moment.js docs](https://momentjs.com/docs/#/displaying/format/) for supported formats","scope":"window","order":73},"gitlens.codeLens.scopesByLanguage":{"deprecationMessage":"Deprecated. Use per-language `gitlens.codeLens.scopes` and `gitlens.codeLens.symbolScopes` settings instead","markdownDeprecationMessage":"Deprecated. Use the per-language `#gitlens.codeLens.scopes#` and `#gitlens.codeLens.symbolScopes#` settings instead"}}},{"id":"status-bar-blame","title":"Status Bar Blame","order":12,"properties":{"gitlens.statusBar.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to provide blame information in the status bar","scope":"window","order":10},"gitlens.statusBar.pullRequests.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to provide information about the Pull Request (if any) that introduced the commit in the status bar. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":20},"gitlens.statusBar.format":{"type":"string","default":"${author}, ${agoOrDate}${' via 'pullRequest}","markdownDescription":"Specifies the format of the blame information in the status bar. See [_Commit Tokens_](https://github.com/gitkraken/vscode-gitlens/wiki/Custom-Formatting#commit-tokens) in the GitLens docs. Date formatting is controlled by the `#gitlens.statusBar.dateFormat#` setting","scope":"window","order":30},"gitlens.statusBar.alignment":{"type":"string","default":"right","enum":["left","right"],"enumDescriptions":["Aligns to the left","Aligns to the right"],"markdownDescription":"Specifies the blame alignment in the status bar","scope":"window","order":40},"gitlens.statusBar.command":{"type":"string","default":"gitlens.showQuickCommitDetails","enum":["gitlens.toggleFileBlame","gitlens.toggleFileHeatmap","gitlens.toggleFileChanges","gitlens.toggleFileChangesOnly","gitlens.toggleCodeLens","gitlens.diffWithPrevious","gitlens.diffWithWorking","gitlens.revealCommitInView","gitlens.showCommitsInView","gitlens.showQuickCommitDetails","gitlens.showQuickCommitFileDetails","gitlens.showQuickFileHistory","gitlens.showQuickRepoHistory","gitlens.openCommitOnRemote","gitlens.copyRemoteCommitUrl","gitlens.openFileOnRemote","gitlens.copyRemoteFileUrl"],"enumDescriptions":["Toggles file blame","Toggles file heatmap","Toggles file changes since before the commit","Toggles file changes from the commit","Toggles Git CodeLens","Compares the current line commit with the previous","Compares the current line commit with the working tree","Reveals the commit in the Side Bar","Shows the commit details","Shows a commit details quick pick menu","Shows a commit file details quick pick menu","Shows a file history quick pick menu","Shows a branch history quick pick menu","Opens the commit on the remote service (when available)","Copies the remote commit URL to the clipboard (when available)","Opens the file revision on the remote service (when available)","Copies the remote file URL to the clipboard (when available)"],"markdownDescription":"Specifies the command to be executed when the blame status bar item is clicked","scope":"window","order":50},"gitlens.statusBar.tooltipFormat":{"type":"string","default":"${avatar} &nbsp;__${author}__, ${ago}${' via 'pullRequest} &nbsp; _(${date})_ \n\n${message}${\n\n---\n\nfootnotes}\n\n${commands}","editPresentation":"multilineText","markdownDescription":"Specifies the format (in markdown) of hover shown over the blame information in the status bar. See [_Commit Tokens_](https://github.com/gitkraken/vscode-gitlens/wiki/Custom-Formatting#commit-tokens) in the GitLens docs","scope":"window","order":60},"gitlens.statusBar.reduceFlicker":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to avoid clearing the previous blame information when changing lines to reduce status bar \"flashing\"","scope":"window","order":70},"gitlens.statusBar.dateFormat":{"type":["string","null"],"default":null,"markdownDescription":"Specifies how to format absolute dates (e.g. using the `${date}` token) in the blame information in the status bar. See the [Moment.js docs](https://momentjs.com/docs/#/displaying/format/) for supported formats","scope":"window","order":80}}},{"id":"hovers","title":"Hovers","order":13,"properties":{"gitlens.hovers.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to provide any hovers","scope":"window","order":10},"gitlens.hovers.avatars":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show avatar images in hovers","scope":"window","order":20},"gitlens.hovers.avatarSize":{"type":"number","default":32,"markdownDescription":"Specifies the size of the avatar images in hovers","scope":"window","order":21},"gitlens.hovers.pullRequests.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to provide information about the Pull Request (if any) that introduced the commit in the hovers. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":30},"gitlens.hovers.autolinks.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to automatically link external resources in commit messages","scope":"window","order":31},"gitlens.hovers.autolinks.enhanced":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to lookup additional details about automatically link external resources in commit messages. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":32},"gitlens.hovers.currentLine.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to provide any hovers for the current line","scope":"window","order":40},"gitlens.hovers.currentLine.over":{"type":"string","default":"annotation","enum":["annotation","line"],"enumDescriptions":["Only shown when hovering over the line annotation","Shown when hovering anywhere over the line"],"markdownDescription":"Specifies when to trigger hovers for the current line","scope":"window","order":41},"gitlens.hovers.currentLine.details":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to provide a _commit details_ hover for the current line","scope":"window","order":42},"gitlens.hovers.currentLine.changes":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to provide a _changes (diff)_ hover for the current line","scope":"window","order":43},"gitlens.hovers.annotations.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to provide any hovers when showing blame annotations","scope":"window","order":50},"gitlens.hovers.annotations.over":{"type":"string","default":"line","enum":["annotation","line"],"enumDescriptions":["Only shown when hovering over the line annotation","Shown when hovering anywhere over the line"],"markdownDescription":"Specifies when to trigger hovers when showing blame annotations","scope":"window","order":51},"gitlens.hovers.annotations.details":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to provide a _commit details_ hover for all lines when showing blame annotations","scope":"window","order":52},"gitlens.hovers.annotations.changes":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to provide a _changes (diff)_ hover for all lines when showing blame annotations","scope":"window","order":53},"gitlens.hovers.detailsMarkdownFormat":{"type":"string","default":"${avatar} &nbsp;__${author}__, ${ago}${' via 'pullRequest} &nbsp; _(${date})_ \n\n${message}${\n\n---\n\nfootnotes}\n\n${commands}","editPresentation":"multilineText","markdownDescription":"Specifies the format (in markdown) of the _commit details_ hover. See [_Commit Tokens_](https://github.com/gitkraken/vscode-gitlens/wiki/Custom-Formatting#commit-tokens) in the GitLens docs","scope":"window","order":60},"gitlens.hovers.changesDiff":{"type":"string","default":"line","enum":["line","hunk"],"enumDescriptions":["Shows only the changes to the line","Shows the set of related changes"],"markdownDescription":"Specifies whether to show just the changes to the line or the set of related changes in the _changes (diff)_ hover","scope":"window","order":70}}},{"id":"views","title":"Views","order":20,"properties":{"gitlens.views.defaultItemLimit":{"type":"number","default":10,"markdownDescription":"Specifies the default number of items to show in a view list. Use 0 to specify no limit","scope":"window","order":10},"gitlens.views.pageItemLimit":{"type":"number","default":40,"markdownDescription":"Specifies the number of items to show in a each page when paginating a view list. Use 0 to specify no limit","scope":"window","order":11},"gitlens.views.showRelativeDateMarkers":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show relative date markers (_Less than a week ago_, _Over a week ago_, _Over a month ago_, etc) on revision (commit) histories in the views","scope":"window","order":20},"gitlens.views.formats.commits.label":{"type":"string","default":"${❰ tips ❱➤ }${message}","markdownDescription":"Specifies the format of commits in the views. See [_Commit Tokens_](https://github.com/gitkraken/vscode-gitlens/wiki/Custom-Formatting#commit-tokens) in the GitLens docs","scope":"window","order":30},"gitlens.views.formats.commits.description":{"type":"string","default":"${author, }${agoOrDate}","markdownDescription":"Specifies the description format of commits in the views. See [_Commit Tokens_](https://github.com/gitkraken/vscode-gitlens/wiki/Custom-Formatting#commit-tokens) in the GitLens docs","scope":"window","order":31},"gitlens.views.formats.commits.tooltip":{"type":"string","default":"${link}${' via 'pullRequest}${'&nbsp;&nbsp;•&nbsp;&nbsp;'changesDetail}${'&nbsp;&nbsp;&nbsp;&nbsp;'tips}\n\n${avatar} &nbsp;__${author}__, ${ago} &nbsp; _(${date})_ \n\n${message}${\n\n---\n\nfootnotes}","markdownDescription":"Specifies the tooltip format (in markdown) of commits in the views. See [_Commit Tokens_](https://github.com/eamodio/vscode-gitlens/wiki/Custom-Formatting#commit-tokens) in the GitLens docs","scope":"window","order":32},"gitlens.views.formats.commits.tooltipWithStatus":{"type":"string","default":"${link}${' via 'pullRequest}&nbsp;&nbsp;•&nbsp;&nbsp;{{slot-status}}${'&nbsp;&nbsp;•&nbsp;&nbsp;'changesDetail}${'&nbsp;&nbsp;&nbsp;&nbsp;'tips}\n\n${avatar} &nbsp;__${author}__, ${ago} &nbsp; _(${date})_ \n\n${message}${\n\n---\n\nfootnotes}","markdownDescription":"Specifies the tooltip format (in markdown) of \"file\" commits in the views. See [_Commit Tokens_](https://github.com/eamodio/vscode-gitlens/wiki/Custom-Formatting#commit-tokens) in the GitLens docs","scope":"window","order":32},"gitlens.views.formats.files.label":{"type":"string","default":"${working }${file}","markdownDescription":"Specifies the format of a file in the views. See [_File Tokens_](https://github.com/gitkraken/vscode-gitlens/wiki/Custom-Formatting#file-tokens) in the GitLens docs","scope":"window","order":40},"gitlens.views.formats.files.description":{"type":"string","default":"${directory}${ ← originalPath}","markdownDescription":"Specifies the description format of a file in the views. See [_File Tokens_](https://github.com/gitkraken/vscode-gitlens/wiki/Custom-Formatting#file-tokens) in the GitLens docs","scope":"window","order":41},"gitlens.views.formats.stashes.label":{"type":"string","default":"${message}","markdownDescription":"Specifies the format of stashes in the views. See [_Commit Tokens_](https://github.com/gitkraken/vscode-gitlens/wiki/Custom-Formatting#commit-tokens) in the GitLens docs","scope":"window","order":50},"gitlens.views.formats.stashes.description":{"type":"string","default":"${stashOnRef, }${agoOrDate}","markdownDescription":"Specifies the description format of stashes in the views. See [_Commit Tokens_](https://github.com/gitkraken/vscode-gitlens/wiki/Custom-Formatting#commit-tokens) in the GitLens docs","scope":"window","order":51},"gitlens.views.experimental.multiSelect.enabled":{"type":"boolean","default":false,"markdownDescription":"Specifies whether to enable experimental multi-select support in the views.\n**NOTE**: Requires a restart to take effect.","scope":"window","order":60},"gitlens.views.commitFileFormat":{"deprecationMessage":"Deprecated. Use `gitlens.views.formats.files.label` instead","markdownDeprecationMessage":"Deprecated. Use `#gitlens.views.formats.files.label#` instead"},"gitlens.views.commitFileDescriptionFormat":{"deprecationMessage":"Deprecated. Use `gitlens.views.formats.files.description` instead","markdownDeprecationMessage":"Deprecated. Use `#gitlens.views.formats.files.description#` instead"},"gitlens.views.commitFormat":{"deprecationMessage":"Deprecated. Use `gitlens.views.formats.commits.label` instead","markdownDeprecationMessage":"Deprecated. Use `#gitlens.views.commits.files.label#` instead"},"gitlens.views.commitDescriptionFormat":{"deprecationMessage":"Deprecated. Use `gitlens.views.formats.commits.description` instead","markdownDeprecationMessage":"Deprecated. Use `#gitlens.views.formats.commits.description#` instead"},"gitlens.views.stashFileFormat":{"deprecationMessage":"Deprecated. Use `gitlens.views.formats.files.label` instead","markdownDeprecationMessage":"Deprecated. Use `#gitlens.views.formats.files.label#` instead"},"gitlens.views.stashFileDescriptionFormat":{"deprecationMessage":"Deprecated. Use `gitlens.views.formats.files.description` instead","markdownDeprecationMessage":"Deprecated. Use `#gitlens.views.formats.files.description#` instead"},"gitlens.views.stashFormat":{"deprecationMessage":"Deprecated. Use `gitlens.views.formats.stashes.label` instead","markdownDeprecationMessage":"Deprecated. Use `#gitlens.views.stashes.files.label#` instead"},"gitlens.views.stashDescriptionFormat":{"deprecationMessage":"Deprecated. Use `gitlens.views.formats.stashes.description` instead","markdownDeprecationMessage":"Deprecated. Use `#gitlens.views.formats.stashes.description#` instead"},"gitlens.views.statusFileFormat":{"deprecationMessage":"Deprecated. Use `gitlens.views.formats.files.label` instead","markdownDeprecationMessage":"Deprecated. Use `#gitlens.views.formats.files.label#` instead"},"gitlens.views.statusFileDescriptionFormat":{"deprecationMessage":"Deprecated. Use `gitlens.views.formats.files.description` instead","markdownDeprecationMessage":"Deprecated. Use `#gitlens.views.formats.files.description#` instead"}}},{"id":"commits-view","title":"Commits View","order":21,"properties":{"gitlens.views.commits.showBranchComparison":{"type":["boolean","string"],"enum":[false,"branch","working"],"enumDescriptions":["Hides the branch comparison","Compares the current branch with a user-selected reference","Compares the working tree with a user-selected reference"],"default":"working","markdownDescription":"Specifies whether to show a comparison of the current branch or the working tree with a user-selected reference (branch, tag. etc) in the _Commits_ view","scope":"window","order":10},"gitlens.views.commits.pullRequests.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to query for pull requests associated with the current branch and commits in the _Commits_ view. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":21},"gitlens.views.commits.pullRequests.showForBranches":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show pull requests (if any) associated with the current branch in the _Commits_ view. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":21},"gitlens.views.commits.pullRequests.showForCommits":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show pull requests (if any) associated with commits in the _Commits_ view. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":22},"gitlens.views.commits.files.layout":{"type":"string","default":"auto","enum":["auto","list","tree"],"enumDescriptions":["Automatically switches between displaying files as a `tree` or `list` based on the `#gitlens.views.commits.files.threshold#` value and the number of files at each nesting level","Displays files as a list","Displays files as a tree"],"markdownDescription":"Specifies how the _Commits_ view will display files","scope":"window","order":30},"gitlens.views.commits.files.threshold":{"type":"number","default":5,"markdownDescription":"Specifies when to switch between displaying files as a `tree` or `list` based on the number of files in a nesting level in the _Commits_ view. Only applies when `#gitlens.views.commits.files.layout#` is set to `auto`","scope":"window","order":31},"gitlens.views.commits.files.compact":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to compact (flatten) unnecessary file nesting in the _Commits_ view. Only applies when `#gitlens.views.commits.files.layout#` is set to `tree` or `auto`","scope":"window","order":32},"gitlens.views.commits.files.icon":{"type":"string","default":"type","enum":["status","type"],"enumDescriptions":["Shows the file's status as the icon","Shows the file's type (theme icon) as the icon"],"markdownDescription":"Specifies how the _Commits_ view will display file icons","scope":"window","order":33},"gitlens.views.commits.avatars":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show avatar images instead of commit (or status) icons in the _Commits_ view","scope":"window","order":40},"gitlens.views.commits.reveal":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to reveal commits in the _Commits_ view, otherwise they revealed in the _Repositories_ view","scope":"window","order":50}}},{"id":"commit-details-view","title":"Commit Details View","order":22,"properties":{"gitlens.views.commitDetails.autolinks.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to automatically link external resources in commit messages","scope":"window","order":31},"gitlens.views.commitDetails.autolinks.enhanced":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to lookup additional details about automatically link external resources in commit messages. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":32},"gitlens.views.commitDetails.pullRequests.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to query for associated pull requests. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":21},"gitlens.views.commitDetails.files.layout":{"type":"string","default":"auto","enum":["auto","list","tree"],"enumDescriptions":["Automatically switches between displaying files as a `tree` or `list` based on the `#gitlens.views.commitDetails.files.threshold#` value and the number of files at each nesting level","Displays files as a list","Displays files as a tree"],"markdownDescription":"Specifies how the _Commit Details_ view will display files","scope":"window","order":30},"gitlens.views.commitDetails.files.threshold":{"type":"number","default":5,"markdownDescription":"Specifies when to switch between displaying files as a `tree` or `list` based on the number of files in a nesting level in the _Commit Details_ view. Only applies when `#gitlens.views.commitDetails.files.layout#` is set to `auto`","scope":"window","order":31},"gitlens.views.commitDetails.files.compact":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to compact (flatten) unnecessary file nesting in the _Commit Details_ view. Only applies when `#gitlens.views.commitDetails.files.layout#` is set to `tree` or `auto`","scope":"window","order":32},"gitlens.views.commitDetails.files.icon":{"type":"string","default":"type","enum":["status","type"],"enumDescriptions":["Shows the file's status as the icon","Shows the file's type (theme icon) as the icon"],"markdownDescription":"Specifies how the _Commit Details_ view will display file icons","scope":"window","order":33},"gitlens.views.commitDetails.avatars":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show avatar images instead of commit (or status) icons in the _Commit Details_ view","scope":"window","order":40}}},{"id":"repositories-view","title":"Repositories View","order":23,"properties":{"gitlens.views.repositories.showBranchComparison":{"type":["boolean","string"],"enum":[false,"branch","working"],"enumDescriptions":["Hides the branch comparison","Compares the current branch with a user-selected reference","Compares the working tree with a user-selected reference"],"default":"working","markdownDescription":"Specifies whether to show a comparison of the current branch or the working tree with a user-selected reference (branch, tag. etc) in the _Repositories_ view","scope":"window","order":10},"gitlens.views.repositories.showUpstreamStatus":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show the upstream status of the current branch for each repository in the _Repositories_ view","scope":"window","order":11},"gitlens.views.repositories.includeWorkingTree":{"type":"boolean","default":false,"markdownDescription":"Specifies whether to include working tree file status for each repository in the _Repositories_ view","scope":"window","order":12},"gitlens.views.repositories.pullRequests.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to query for pull requests associated with branches and commits in the _Repositories_ view. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":20},"gitlens.views.repositories.pullRequests.showForBranches":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show pull requests (if any) associated with branches in the _Repositories_ view. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":21},"gitlens.views.repositories.pullRequests.showForCommits":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show pull requests (if any) associated with commits in the _Repositories_ view. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":22},"gitlens.views.repositories.showCommits":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show the commits on the current branch for each repository in the _Repositories_ view","scope":"window","order":30},"gitlens.views.repositories.showBranches":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show the branches for each repository in the _Repositories_ view","scope":"window","order":31},"gitlens.views.repositories.showRemotes":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show the remotes for each repository in the _Repositories_ view","scope":"window","order":32},"gitlens.views.repositories.showStashes":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show the stashes for each repository in the _Repositories_ view","scope":"window","order":33},"gitlens.views.repositories.showTags":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show the tags for each repository in the _Repositories_ view","scope":"window","order":34},"gitlens.views.repositories.showContributors":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show the contributors for each repository in the _Repositories_ view","scope":"window","order":35},"gitlens.views.repositories.showWorktrees":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show the worktrees for each repository in the _Repositories_ view","scope":"window","order":36},"gitlens.views.repositories.showIncomingActivity":{"type":"boolean","default":false,"markdownDescription":"Specifies whether to show the experimental incoming activity for each repository in the _Repositories_ view","scope":"window","order":37},"gitlens.views.repositories.autoRefresh":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to automatically refresh the _Repositories_ view when the repository or the file system changes","scope":"window","order":40},"gitlens.views.repositories.autoReveal":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to automatically reveal repositories in the _Repositories_ view when opening files","scope":"window","order":50},"gitlens.views.repositories.avatars":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show avatar images instead of commit (or status) icons in the _Repositories_ view","scope":"window","order":60},"gitlens.views.repositories.branches.layout":{"type":"string","default":"tree","enum":["list","tree"],"enumDescriptions":["Displays branches as a list","Displays branches as a tree when branch names contain slashes `/`"],"markdownDescription":"Specifies how the _Repositories_ view will display branches","scope":"window","order":70},"gitlens.views.repositories.files.layout":{"type":"string","default":"auto","enum":["auto","list","tree"],"enumDescriptions":["Automatically switches between displaying files as a `tree` or `list` based on the `#gitlens.views.repositories.files.threshold#` value and the number of files at each nesting level","Displays files as a list","Displays files as a tree"],"markdownDescription":"Specifies how the _Repositories_ view will display files","scope":"window","order":80},"gitlens.views.repositories.files.threshold":{"type":"number","default":5,"markdownDescription":"Specifies when to switch between displaying files as a `tree` or `list` based on the number of files in a nesting level in the _Repositories_ view. Only applies when `#gitlens.views.repositories.files.layout#` is set to `auto`","scope":"window","order":81},"gitlens.views.repositories.files.compact":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to compact (flatten) unnecessary file nesting in the _Repositories_ view. Only applies when `#gitlens.views.repositories.files.layout#` is set to `tree` or `auto`","scope":"window","order":82},"gitlens.views.repositories.files.icon":{"type":"string","default":"type","enum":["status","type"],"enumDescriptions":["Shows the file's status as the icon","Shows the file's type (theme icon) as the icon"],"markdownDescription":"Specifies how the _Repositories_ view will display file icons","scope":"window","order":83},"gitlens.views.repositories.compact":{"type":"boolean","default":false,"markdownDescription":"Specifies whether to show the _Repositories_ view in a compact display density","scope":"window","order":90},"gitlens.views.repositories.branches.showBranchComparison":{"type":["boolean","string"],"enum":[false,"branch"],"enumDescriptions":["Hides the branch comparison","Compares the branch with a user-selected reference"],"default":"branch","markdownDescription":"Specifies whether to show a comparison of the branch with a user-selected reference (branch, tag. etc) under each branch in the _Repositories_ view","scope":"window","order":100},"gitlens.views.repositories.enabled":{"deprecationMessage":"Deprecated. This setting is no longer used","markdownDeprecationMessage":"Deprecated. This setting is no longer used"}}},{"id":"file-history-view","title":"File History View","order":24,"properties":{"gitlens.views.fileHistory.avatars":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show avatar images instead of status icons in the _File History_ view","scope":"window","order":20},"gitlens.advanced.fileHistoryFollowsRenames":{"type":"boolean","default":false,"markdownDescription":"Specifies whether file histories will follow renames — will affect how merge commits are shown in histories","scope":"window","order":100},"gitlens.advanced.fileHistoryShowAllBranches":{"type":"boolean","default":false,"markdownDescription":"Specifies whether file histories will show commits from all branches","scope":"window","order":101}}},{"id":"line-history-view","title":"Line History View","order":25,"properties":{"gitlens.views.lineHistory.avatars":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show avatar images instead of status icons in the _Line History_ view","scope":"window","order":10},"gitlens.views.lineHistory.enabled":{"deprecationMessage":"Deprecated. This setting is no longer used","markdownDeprecationMessage":"Deprecated. This setting is no longer used"}}},{"id":"branches-view","title":"Branches View","order":26,"properties":{"gitlens.views.branches.showBranchComparison":{"type":["boolean","string"],"enum":[false,"branch"],"enumDescriptions":["Hides the branch comparison","Compares the branch with a user-selected reference"],"default":"branch","markdownDescription":"Specifies whether to show a comparison of the branch with a user-selected reference (branch, tag. etc) in the _Branches_ view","scope":"window","order":10},"gitlens.views.branches.pullRequests.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to query for pull requests associated with each branch and commits in the _Branches_ view. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":20},"gitlens.views.branches.pullRequests.showForBranches":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show pull requests (if any) associated with each branch in the _Branches_ view. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":21},"gitlens.views.branches.pullRequests.showForCommits":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show pull requests (if any) associated with commits in the _Branches_ view. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":22},"gitlens.views.branches.branches.layout":{"type":"string","default":"tree","enum":["list","tree"],"enumDescriptions":["Displays branches as a list","Displays branches as a tree when branch names contain slashes `/`"],"markdownDescription":"Specifies how the _Branches_ view will display branches","scope":"window","order":30},"gitlens.sortBranchesBy":{"type":"string","default":"date:desc","enum":["date:desc","date:asc","name:asc","name:desc"],"enumDescriptions":["Sorts branches by the most recent commit date in descending order","Sorts branches by the most recent commit date in ascending order","Sorts branches by name in ascending order","Sorts branches by name in descending order"],"markdownDescription":"Specifies how branches are sorted in quick pick menus and views","scope":"window","order":40},"gitlens.views.branches.files.layout":{"type":"string","default":"auto","enum":["auto","list","tree"],"enumDescriptions":["Automatically switches between displaying files as a `tree` or `list` based on the `#gitlens.views.branches.files.threshold#` value and the number of files at each nesting level","Displays files as a list","Displays files as a tree"],"markdownDescription":"Specifies how the _Branches_ view will display files","scope":"window","order":50},"gitlens.views.branches.files.threshold":{"type":"number","default":5,"markdownDescription":"Specifies when to switch between displaying files as a `tree` or `list` based on the number of files in a nesting level in the _Branches_ view. Only applies when `#gitlens.views.branches.files.layout#` is set to `auto`","scope":"window","order":51},"gitlens.views.branches.files.compact":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to compact (flatten) unnecessary file nesting in the _Branches_ view. Only applies when `#gitlens.views.branches.files.layout#` is set to `tree` or `auto`","scope":"window","order":52},"gitlens.views.branches.files.icon":{"type":"string","default":"type","enum":["status","type"],"enumDescriptions":["Shows the file's status as the icon","Shows the file's type (theme icon) as the icon"],"markdownDescription":"Specifies how the _Branches_ view will display file icons","scope":"window","order":53},"gitlens.views.branches.avatars":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show avatar images instead of commit (or status) icons in the _Branches_ view","scope":"window","order":60},"gitlens.views.branches.reveal":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to reveal branches in the _Branches_ view, otherwise they revealed in the _Repositories_ view","scope":"window","order":70}}},{"id":"remotes-view","title":"Remotes View","order":27,"properties":{"gitlens.views.remotes.pullRequests.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to query for pull requests associated with each branch and commits in the _Remotes_ view. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":10},"gitlens.views.remotes.pullRequests.showForBranches":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show pull requests (if any) associated with each branch in the _Remotes_ view. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":11},"gitlens.views.remotes.pullRequests.showForCommits":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show pull requests (if any) associated with commits in the _Remotes_ view. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":12},"gitlens.views.remotes.branches.layout":{"type":"string","default":"tree","enum":["list","tree"],"enumDescriptions":["Displays branches as a list","Displays branches as a tree when branch names contain slashes `/`"],"markdownDescription":"Specifies how the _Remotes_ view will display branches","scope":"window","order":20},"gitlens.views.remotes.files.layout":{"type":"string","default":"auto","enum":["auto","list","tree"],"enumDescriptions":["Automatically switches between displaying files as a `tree` or `list` based on the `#gitlens.views.remotes.files.threshold#` value and the number of files at each nesting level","Displays files as a list","Displays files as a tree"],"markdownDescription":"Specifies how the _Remotes_ view will display files","scope":"window","order":30},"gitlens.views.remotes.files.threshold":{"type":"number","default":5,"markdownDescription":"Specifies when to switch between displaying files as a `tree` or `list` based on the number of files in a nesting level in the _Remotes_ view. Only applies when `#gitlens.views.remotes.files.layout#` is set to `auto`","scope":"window","order":31},"gitlens.views.remotes.files.compact":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to compact (flatten) unnecessary file nesting in the _Remotes_ view. Only applies when `#gitlens.views.remotes.files.layout#` is set to `tree` or `auto`","scope":"window","order":32},"gitlens.views.remotes.files.icon":{"type":"string","default":"type","enum":["status","type"],"enumDescriptions":["Shows the file's status as the icon","Shows the file's type (theme icon) as the icon"],"markdownDescription":"Specifies how the _Remotes_ view will display file icons","scope":"window","order":33},"gitlens.views.remotes.avatars":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show avatar images instead of commit (or status) icons in the _Remotes_ view","scope":"window","order":40},"gitlens.views.remotes.reveal":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to reveal remotes in the _Remotes_ view, otherwise they revealed in the _Repositories_ view","scope":"window","order":50}}},{"id":"stashes-view","title":"Stashes View","order":28,"properties":{"gitlens.views.stashes.files.layout":{"type":"string","default":"auto","enum":["auto","list","tree"],"enumDescriptions":["Automatically switches between displaying files as a `tree` or `list` based on the `#gitlens.views.stashes.files.threshold#` value and the number of files at each nesting level","Displays files as a list","Displays files as a tree"],"markdownDescription":"Specifies how the _Stashes_ view will display files","scope":"window","order":10},"gitlens.views.stashes.files.threshold":{"type":"number","default":5,"markdownDescription":"Specifies when to switch between displaying files as a `tree` or `list` based on the number of files in a nesting level in the _Stashes_ view. Only applies when `#gitlens.views.stashes.files.layout#` is set to `auto`","scope":"window","order":11},"gitlens.views.stashes.files.compact":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to compact (flatten) unnecessary file nesting in the _Stashes_ view. Only applies when `#gitlens.views.stashes.files.layout#` is set to `tree` or `auto`","scope":"window","order":12},"gitlens.views.stashes.files.icon":{"type":"string","default":"type","enum":["status","type"],"enumDescriptions":["Shows the file's status as the icon","Shows the file's type (theme icon) as the icon"],"markdownDescription":"Specifies how the _Stashes_ view will display file icons","scope":"window","order":13},"gitlens.views.stashes.reveal":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to reveal stashes in the _Stashes_ view, otherwise they revealed in the _Repositories_ view","scope":"window","order":20}}},{"id":"tags-view","title":"Tags View","order":29,"properties":{"gitlens.views.tags.branches.layout":{"type":"string","default":"tree","enum":["list","tree"],"enumDescriptions":["Displays tags as a list","Displays tags as a tree when tags names contain slashes `/`"],"markdownDescription":"Specifies how the _Tags_ view will display tags","scope":"window","order":10},"gitlens.sortTagsBy":{"type":"string","default":"date:desc","enum":["date:desc","date:asc","name:asc","name:desc"],"enumDescriptions":["Sorts tags by date in descending order","Sorts tags by date in ascending order","Sorts tags by name in ascending order","Sorts tags by name in descending order"],"markdownDescription":"Specifies how tags are sorted in quick pick menus and views","scope":"window","order":20},"gitlens.views.tags.files.layout":{"type":"string","default":"auto","enum":["auto","list","tree"],"enumDescriptions":["Automatically switches between displaying files as a `tree` or `list` based on the `#gitlens.views.tags.files.threshold#` value and the number of files at each nesting level","Displays files as a list","Displays files as a tree"],"markdownDescription":"Specifies how the _Tags_ view will display files","scope":"window","order":30},"gitlens.views.tags.files.threshold":{"type":"number","default":5,"markdownDescription":"Specifies when to switch between displaying files as a `tree` or `list` based on the number of files in a nesting level in the _Tags_ view. Only applies when `#gitlens.views.tags.files.layout#` is set to `auto`","scope":"window","order":31},"gitlens.views.tags.files.compact":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to compact (flatten) unnecessary file nesting in the _Tags_ view. Only applies when `#gitlens.views.tags.files.layout#` is set to `tree` or `auto`","scope":"window","order":32},"gitlens.views.tags.files.icon":{"type":"string","default":"type","enum":["status","type"],"enumDescriptions":["Shows the file's status as the icon","Shows the file's type (theme icon) as the icon"],"markdownDescription":"Specifies how the _Tags_ view will display file icons","scope":"window","order":33},"gitlens.views.tags.avatars":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show avatar images instead of commit (or status) icons in the _Tags_ view","scope":"window","order":40},"gitlens.views.tags.reveal":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to reveal tags in the _Tags_ view, otherwise they revealed in the _Repositories_ view","scope":"window","order":50}}},{"id":"worktrees-view","title":"Worktrees View","order":30,"properties":{"gitlens.worktrees.promptForLocation":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to prompt for a path when creating new worktrees","scope":"resource","order":10},"gitlens.worktrees.defaultLocation":{"type":"string","default":null,"markdownDescription":"Specifies the default path in which new worktrees will be created","scope":"resource","order":11},"gitlens.worktrees.openAfterCreate":{"type":"string","default":"prompt","enum":["always","alwaysNewWindow","onlyWhenEmpty","never","prompt"],"enumDescriptions":["Always open the new worktree in the current window","Always open the new worktree in a new window","Only open the new worktree in the current window when no folder is opened","Never open the new worktree","Always prompt to open the new worktree"],"markdownDescription":"Specifies how and when to open a worktree after it is created","scope":"resource","order":12},"gitlens.views.worktrees.showBranchComparison":{"type":["boolean","string"],"enum":[false,"branch"],"enumDescriptions":["Hides the branch comparison","Compares the worktree branch with a user-selected reference"],"default":"working","markdownDescription":"Specifies whether to show a comparison of the worktree branch with a user-selected reference (branch, tag. etc) in the _Worktrees_ view","scope":"window","order":20},"gitlens.views.worktrees.pullRequests.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to query for pull requests associated with the worktree branch and commits in the _Worktrees_ view. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":30},"gitlens.views.worktrees.pullRequests.showForBranches":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show pull requests (if any) associated with the worktree branch in the _Worktrees_ view. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":31},"gitlens.views.worktrees.pullRequests.showForCommits":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show pull requests (if any) associated with commits in the _Worktrees_ view. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":32},"gitlens.views.worktrees.files.layout":{"type":"string","default":"auto","enum":["auto","list","tree"],"enumDescriptions":["Automatically switches between displaying files as a `tree` or `list` based on the `#gitlens.views.worktrees.files.threshold#` value and the number of files at each nesting level","Displays files as a list","Displays files as a tree"],"markdownDescription":"Specifies how the _Worktrees_ view will display files","scope":"window","order":40},"gitlens.views.worktrees.files.threshold":{"type":"number","default":5,"markdownDescription":"Specifies when to switch between displaying files as a `tree` or `list` based on the number of files in a nesting level in the _Worktrees_ view. Only applies when `#gitlens.views.worktrees.files.layout#` is set to `auto`","scope":"window","order":41},"gitlens.views.worktrees.files.compact":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to compact (flatten) unnecessary file nesting in the _Worktrees_ view. Only applies when `#gitlens.views.worktrees.files.layout#` is set to `tree` or `auto`","scope":"window","order":42},"gitlens.views.worktrees.files.icon":{"type":"string","default":"type","enum":["status","type"],"enumDescriptions":["Shows the file's status as the icon","Shows the file's type (theme icon) as the icon"],"markdownDescription":"Specifies how the _Worktrees_ view will display file icons","scope":"window","order":43},"gitlens.views.worktrees.avatars":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show avatar images instead of commit (or status) icons in the _Worktrees_ view","scope":"window","order":50},"gitlens.views.worktrees.reveal":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to reveal worktrees in the _Worktrees_ view, otherwise they revealed in the _Repositories_ view","scope":"window","order":60}}},{"id":"contributors-view","title":"Contributors View","order":31,"properties":{"gitlens.views.contributors.showAllBranches":{"type":"boolean","default":false,"markdownDescription":"Specifies whether to show commits from all branches in the _Contributors_ view","scope":"window","order":10},"gitlens.views.contributors.showStatistics":{"type":"boolean","default":false,"markdownDescription":"Specifies whether to show contributor statistics in the _Contributors_ view. This can take a while to compute depending on the repository size","scope":"window","order":20},"gitlens.views.contributors.pullRequests.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to query for pull requests associated with branches and commits in the _Contributors_ view. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":30},"gitlens.views.contributors.pullRequests.showForCommits":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show pull requests (if any) associated with commits in the _Contributors_ view. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":31},"gitlens.sortContributorsBy":{"type":"string","default":"count:desc","enum":["count:desc","count:asc","date:desc","date:asc","name:asc","name:desc"],"enumDescriptions":["Sorts contributors by commit count in descending order","Sorts contributors by commit count in ascending order","Sorts contributors by the most recent commit date in descending order","Sorts contributors by the most recent commit date in ascending order","Sorts contributors by name in ascending order","Sorts contributors by name in descending order"],"markdownDescription":"Specifies how contributors are sorted in quick pick menus and views","scope":"window","order":40},"gitlens.views.contributors.files.layout":{"type":"string","default":"auto","enum":["auto","list","tree"],"enumDescriptions":["Automatically switches between displaying files as a `tree` or `list` based on the `#gitlens.views.contributors.files.threshold#` value and the number of files at each nesting level","Displays files as a list","Displays files as a tree"],"markdownDescription":"Specifies how the _Contributors_ view will display files","scope":"window","order":50},"gitlens.views.contributors.files.threshold":{"type":"number","default":5,"markdownDescription":"Specifies when to switch between displaying files as a `tree` or `list` based on the number of files in a nesting level in the _Contributors_ view. Only applies when `#gitlens.views.contributors.files.layout#` is set to `auto`","scope":"window","order":51},"gitlens.views.contributors.files.compact":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to compact (flatten) unnecessary file nesting in the _Contributors_ view. Only applies when `#gitlens.views.contributors.files.layout#` is set to `tree` or `auto`","scope":"window","order":52},"gitlens.views.contributors.files.icon":{"type":"string","default":"type","enum":["status","type"],"enumDescriptions":["Shows the file's status as the icon","Shows the file's type (theme icon) as the icon"],"markdownDescription":"Specifies how the _Contributors_ view will display file icons","scope":"window","order":53},"gitlens.views.contributors.avatars":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show avatar images instead of commit (or status) icons in the _Contributors_ view","scope":"window","order":60},"gitlens.views.contributors.reveal":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to reveal contributors in the _Contributors_ view, otherwise they revealed in the _Repositories_ view","scope":"window","order":20}}},{"id":"search-compare-view","title":"Search & Compare View","order":32,"properties":{"gitlens.views.searchAndCompare.pullRequests.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to query for pull requests associated with commits in the _Search & Compare_ view. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":10},"gitlens.views.searchAndCompare.pullRequests.showForCommits":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show pull requests (if any) associated with commits in the _Search & Compare_ view. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":11},"gitlens.views.searchAndCompare.files.layout":{"type":"string","default":"auto","enum":["auto","list","tree"],"enumDescriptions":["Automatically switches between displaying files as a `tree` or `list` based on the `#gitlens.views.searchAndCompare.files.threshold#` value and the number of files at each nesting level","Displays files as a list","Displays files as a tree"],"markdownDescription":"Specifies how the _Search & Compare_ view will display files","scope":"window","order":20},"gitlens.views.searchAndCompare.files.threshold":{"type":"number","default":5,"markdownDescription":"Specifies when to switch between displaying files as a `tree` or `list` based on the number of files in a nesting level in the _Search & Compare_ view. Only applies when `#gitlens.views.searchAndCompare.files.layout#` is set to `auto`","scope":"window","order":21},"gitlens.views.searchAndCompare.files.compact":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to compact (flatten) unnecessary file nesting in the _Search & Compare_ view. Only applies when `#gitlens.views.searchAndCompare.files.layout#` is set to `tree` or `auto`","scope":"window","order":22},"gitlens.views.searchAndCompare.files.icon":{"type":"string","default":"type","enum":["status","type"],"enumDescriptions":["Shows the file's status as the icon","Shows the file's type (theme icon) as the icon"],"markdownDescription":"Specifies how the _Search & Compare_ view will display file icons","scope":"window","order":33},"gitlens.views.searchAndCompare.avatars":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show avatar images instead of commit (or status) icons in the _Search & Compare_ view","scope":"window","order":30}}},{"id":"file-blame","title":"File Blame","order":100,"properties":{"gitlens.blame.toggleMode":{"type":"string","default":"file","enum":["file","window"],"enumDescriptions":["Toggles each file individually","Toggles the window, i.e. all files at once"],"markdownDescription":"Specifies how the file blame annotations will be toggled","scope":"window","order":10},"gitlens.blame.format":{"type":"string","default":"${message|50?} ${agoOrDate|14-}","markdownDescription":"Specifies the format of the file blame annotations. See [_Commit Tokens_](https://github.com/gitkraken/vscode-gitlens/wiki/Custom-Formatting#commit-tokens) in the GitLens docs. Date formatting is controlled by the `#gitlens.blame.dateFormat#` setting","scope":"window","order":20},"gitlens.blame.heatmap.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to provide a heatmap indicator in the file blame annotations","scope":"window","order":30},"gitlens.blame.heatmap.location":{"type":"string","default":"right","enum":["left","right"],"enumDescriptions":["Adds a heatmap indicator on the left edge of the file blame annotations","Adds a heatmap indicator on the right edge of the file blame annotations"],"markdownDescription":"Specifies where the heatmap indicators will be shown in the file blame annotations","scope":"window","order":31},"gitlens.blame.avatars":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show avatar images in the file blame annotations","scope":"window","order":40},"gitlens.blame.compact":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to compact (deduplicate) matching adjacent file blame annotations","scope":"window","order":50},"gitlens.blame.highlight.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to highlight lines associated with the current line","scope":"window","order":60},"gitlens.blame.highlight.locations":{"type":"array","default":["gutter","line","overview"],"items":{"type":"string","enum":["gutter","line","overview"],"enumDescriptions":["Adds an indicator to the gutter","Adds a full-line highlight background color","Adds an indicator to the scroll bar"]},"minItems":1,"maxItems":3,"uniqueItems":true,"markdownDescription":"Specifies where the associated line highlights will be shown","scope":"window","order":61},"gitlens.blame.separateLines":{"type":"boolean","default":true,"markdownDescription":"Specifies whether file blame annotations will be separated by a small gap","scope":"window","order":70},"gitlens.blame.dateFormat":{"type":["string","null"],"default":null,"markdownDescription":"Specifies how to format absolute dates (e.g. using the `${date}` token) in file blame annotations. See the [Moment.js docs](https://momentjs.com/docs/#/displaying/format/) for supported formats","scope":"window","order":80}}},{"id":"file-changes","title":"File Changes","order":101,"properties":{"gitlens.changes.toggleMode":{"type":"string","default":"file","enum":["file","window"],"enumDescriptions":["Toggles each file individually","Toggles the window, i.e. all files at once"],"markdownDescription":"Specifies how the file changes annotations will be toggled","scope":"window","order":10},"gitlens.changes.locations":{"type":"array","default":["gutter","line","overview"],"items":{"type":"string","enum":["gutter","line","overview"],"enumDescriptions":["Adds an indicator to the gutter","Adds a full-line highlight background color","Adds an indicator to the scroll bar"]},"minItems":1,"maxItems":3,"uniqueItems":true,"markdownDescription":"Specifies where the indicators of the file changes annotations will be shown","scope":"window","order":20}}},{"id":"file-heatmap","title":"File Heatmap","order":102,"properties":{"gitlens.heatmap.toggleMode":{"type":"string","default":"file","enum":["file","window"],"enumDescriptions":["Toggles each file individually","Toggles the window, i.e. all files at once"],"markdownDescription":"Specifies how the file heatmap annotations will be toggled","scope":"window","order":10},"gitlens.heatmap.locations":{"type":"array","default":["gutter","line","overview"],"items":{"type":"string","enum":["gutter","line","overview"],"enumDescriptions":["Adds an indicator to the gutter","Adds a full-line highlight background color","Adds an indicator to the scroll bar"]},"minItems":1,"maxItems":3,"uniqueItems":true,"markdownDescription":"Specifies where the indicators of the file heatmap annotations will be shown","scope":"window","order":20},"gitlens.heatmap.fadeLines":{"type":"boolean","default":true,"markdownDescription":"Specifies the whether to fade out older lines","scope":"window","order":21},"gitlens.heatmap.ageThreshold":{"type":"number","default":90,"markdownDescription":"Specifies the age of the most recent change (in days) after which the file heatmap annotations will be cold rather than hot (i.e. will use `#gitlens.heatmap.coldColor#` instead of `#gitlens.heatmap.hotColor#`)","scope":"window","order":30},"gitlens.heatmap.coldColor":{"type":"string","default":"#0a60f6","markdownDescription":"Specifies the base color of the file heatmap annotations when the most recent change is older (cold) than the `#gitlens.heatmap.ageThreshold#` value","scope":"window","order":40},"gitlens.heatmap.hotColor":{"type":"string","default":"#f66a0a","markdownDescription":"Specifies the base color of the file heatmap annotations when the most recent change is newer (hot) than the `#gitlens.heatmap.ageThreshold#` value","scope":"window","order":50}}},{"id":"graph","title":"Commit Graph","order":105,"properties":{"gitlens.graph.defaultItemLimit":{"type":"number","default":500,"markdownDescription":"Specifies the default number of items to show in the _Commit Graph_. Use 0 to specify no limit","scope":"window","order":10},"gitlens.graph.pageItemLimit":{"type":"number","default":200,"markdownDescription":"Specifies the number of additional items to fetch when paginating in the _Commit Graph_. Use 0 to specify no limit","scope":"window","order":11},"gitlens.graph.searchItemLimit":{"type":"number","default":100,"markdownDescription":"Specifies the number of results to gather when searching in the _Commit Graph_. Use 0 to specify no limit","scope":"window","order":12},"gitlens.graph.scrollMarkers.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show markers on the scrollbar in the _Commit Graph_","scope":"window","order":13},"gitlens.graph.scrollMarkers.additionalTypes":{"type":"array","default":["localBranches","stashes"],"items":{"type":"string","enum":["localBranches","remoteBranches","stashes","tags"],"enumDescriptions":["Marks the location of local branches","Marks the location of remote branches","Marks the location of stashes","Marks the location of tags"]},"minItems":0,"maxItems":4,"uniqueItems":true,"markdownDescription":"Specifies additional markers to show on the scrollbar in the _Commit Graph_","scope":"window","order":14},"gitlens.graph.scrollRowPadding":{"type":"number","default":0,"markdownDescription":"Specifies the number of rows from the edge at which the graph will scroll when using keyboard or search to change the selected row","scope":"window","order":14},"gitlens.graph.showDetailsView":{"type":["boolean","string"],"default":"selection","enum":[false,"open","selection"],"enumDescriptions":["Never shows the _Commit Details_ view automatically","Shows the _Commit Details_ view automatically only when opening the _Commit Graph_","Shows the _Commit Details_ view automatically when selection changes in the _Commit Graph_"],"markdownDescription":"Specifies when to show the _Commit Details_ view for the selected row in the _Commit Graph_","scope":"window","order":20},"gitlens.graph.showGhostRefsOnRowHover":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show a ghost branch / tag when hovering over or selecting a row in the _Commit Graph_","scope":"window","order":21},"gitlens.graph.highlightRowsOnRefHover":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to highlight rows associated with the branch / tag when hovering over it in the _Commit Graph_","scope":"window","order":22},"gitlens.graph.dimMergeCommits":{"type":"boolean","default":false,"markdownDescription":"Specifies whether to dim (deemphasize) merge commit rows in the _Commit Graph_","scope":"window","order":23},"gitlens.graph.showRemoteNames":{"type":"boolean","default":false,"markdownDescription":"Specifies whether to show remote names on remote branches in the _Commit Graph_","scope":"window","order":24},"gitlens.graph.avatars":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show avatar images instead of author initials and remote icons in the _Commit Graph_","scope":"window","order":25},"gitlens.graph.showUpstreamStatus":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show a local branch's upstream status in the _Commit Graph_","scope":"window","order":26},"gitlens.graph.pullRequests.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show associated pull requests on remote branches in the _Commit Graph_. Requires a connection to a supported remote service (e.g. GitHub)","scope":"window","order":27},"gitlens.graph.commitOrdering":{"type":"string","default":"date","enum":["date","author-date","topo"],"enumDescriptions":["Shows commits in reverse chronological order of the commit timestamp","Shows commits in reverse chronological order of the author timestamp","Shows commits in reverse chronological order of the commit timestamp, but avoids intermixing multiple lines of history"],"markdownDescription":"Specifies the order by which commits will be shown on the _Commit Graph_","scope":"window","order":30},"gitlens.graph.dateStyle":{"type":["string","null"],"default":"relative","enum":["relative","absolute"],"enumDescriptions":["e.g. 1 day ago","e.g. July 25th, 2018 7:18pm"],"markdownDescription":"Specifies how dates will be displayed in the _Commit Graph_","scope":"window","order":40},"gitlens.graph.dateFormat":{"type":["string","null"],"default":null,"markdownDescription":"Specifies how absolute dates will be formatted in the _Commit Graph_. See the [Moment.js docs](https://momentjs.com/docs/#/displaying/format/) for supported formats","scope":"window","order":41},"gitlens.graph.statusBar.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show the _Commit Graph_ in the status bar","scope":"window","order":50},"gitlens.graph.layout":{"type":"string","default":"panel","enum":["editor","panel"],"enumDescriptions":["Shows the Commit Graph in an editor tab","Shows the Commit Graph in the bottom panel"],"markdownDescription":"Specifies the layout of the _Commit Graph_","scope":"window","order":99},"gitlens.graph.minimap.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show a minimap of commit activity above the _Commit Graph_","scope":"window","order":100},"gitlens.graph.minimap.dataType":{"type":"string","default":"commits","enum":["commits","lines"],"enumDescriptions":["Shows the number of commits per day in the minimap","Shows the number of lines changed per day in the minimap"],"markdownDescription":"Specifies the data to show on the minimap in the _Commit Graph_","scope":"window","order":101},"gitlens.graph.minimap.additionalTypes":{"type":"array","default":["localBranches","stashes"],"items":{"type":"string","enum":["localBranches","remoteBranches","stashes","tags"],"enumDescriptions":["Marks the location of local branches","Marks the location of remote branches","Marks the location of stashes","Marks the location of tags"]},"minItems":0,"maxItems":4,"uniqueItems":true,"markdownDescription":"Specifies additional markers to show on the minimap in the _Commit Graph_","scope":"window","order":102}}},{"id":"visual-history","title":"Visual File History","order":106,"properties":{"gitlens.visualHistory.queryLimit":{"type":"number","default":20,"markdownDescription":"Specifies the limit on the how many commits can be queried for statistics in the Visual File History, because of rate limits. Only applies to virtual workspaces.","scope":"window"}}},{"id":"rebase-editor","title":"Interactive Rebase Editor","order":107,"properties":{"gitlens.rebaseEditor.ordering":{"type":"string","default":"desc","enum":["asc","desc"],"enumDescriptions":["Shows oldest commit first","Shows newest commit first"],"markdownDescription":"Specifies how Git commits are displayed in the _Interactive Rebase Editor_","scope":"window","order":10},"gitlens.rebaseEditor.showDetailsView":{"type":["boolean","string"],"default":"selection","enum":[false,"open","selection"],"enumDescriptions":["Never shows the _Commit Details_ view automatically","Shows the _Commit Details_ view automatically only when opening the _Interactive Rebase Editor_","Shows the _Commit Details_ view automatically when selection changes in the _Interactive Rebase Editor_"],"markdownDescription":"Specifies when to show the _Commit Details_ view for the selected row in the _Interactive Rebase Editor_","scope":"window","order":20}}},{"id":"git-command-palette","title":"Git Command Palette","order":110,"properties":{"gitlens.gitCommands.sortBy":{"type":"string","default":"usage","enum":["name","usage"],"enumDescriptions":["Sorts commands by name","Sorts commands by last used date"],"markdownDescription":"Specifies how Git commands are sorted in the _Git Command Palette_","scope":"window","order":10},"gitlens.gitCommands.skipConfirmations":{"type":"array","default":["fetch:command","stash-push:command","switch:command"],"items":{"type":"string","enum":["branch-create:command","branch-create:menu","co-authors:command","co-authors:menu","fetch:command","fetch:menu","pull:command","pull:menu","push:command","push:menu","stash-apply:command","stash-apply:menu","stash-pop:command","stash-pop:menu","stash-push:command","stash-push:menu","switch:command","switch:menu","tag-create:command","tag-create:menu"],"enumDescriptions":["Skips branch create confirmations when run from a command, e.g. a view action","Skips branch create confirmations when run from the Git Command Palette","Skips co-author confirmations when run from a command, e.g. a view action","Skips co-author confirmations when run from the Git Command Palette","Skips fetch confirmations when run from a command, e.g. a view action","Skips fetch confirmations when run from the Git Command Palette","Skips pull confirmations when run from a command, e.g. a view action","Skips pull confirmations when run from the Git Command Palette","Skips push confirmations when run from a command, e.g. a view action","Skips push confirmations when run from the Git Command Palette","Skips stash apply confirmations when run from a command, e.g. a view action","Skips stash apply confirmations when run from the Git Command Palette","Skips stash pop confirmations when run from a command, e.g. a view action","Skips stash pop confirmations when run from the Git Command Palette","Skips stash push confirmations when run from a command, e.g. a view action","Skips stash push confirmations when run from the Git Command Palette","Skips switch confirmations when run from a command, e.g. a view action","Skips switch confirmations when run from the Git Command Palette","Skips tag create confirmations when run from a command, e.g. a view action","Skips tag create confirmations when run from the Git Command Palette"]},"minItems":0,"maxItems":14,"uniqueItems":true,"markdownDescription":"Specifies which (and when) Git commands will skip the confirmation step, using the format: `git-command-name:(menu|command)`","scope":"window","order":20},"gitlens.gitCommands.closeOnFocusOut":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to dismiss the _Git Command Palette_ when focus is lost (if not, press `ESC` to dismiss)","scope":"window","order":30},"gitlens.gitCommands.search.showResultsInSideBar":{"type":["boolean","null"],"default":null,"markdownDescription":"Specifies whether to show the commit search results directly in the quick pick menu, in the Side Bar, or will be based on the context","scope":"window","order":40},"gitlens.gitCommands.search.matchAll":{"type":"boolean","default":false,"markdownDescription":"Specifies whether to match all or any commit message search patterns","scope":"window","order":50},"gitlens.gitCommands.search.matchCase":{"type":"boolean","default":false,"markdownDescription":"Specifies whether to match commit search patterns with or without regard to casing","scope":"window","order":51},"gitlens.gitCommands.search.matchRegex":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to match commit search patterns using regular expressions","scope":"window","order":52},"gitlens.gitCommands.search.showResultsInView":{"deprecationMessage":"Deprecated. This setting has been renamed to gitlens.gitCommands.search.showResultsInSideBar","markdownDeprecationMessage":"Deprecated. This setting has been renamed to `#gitlens.gitCommands.search.showResultsInSideBar#`"}}},{"id":"integrations","title":"Integrations","order":111,"properties":{"gitlens.autolinks":{"type":["array","null"],"default":null,"items":{"type":"object","required":["prefix","url"],"properties":{"prefix":{"type":"string","description":"Specifies the short prefix to use to generate autolinks for the external resource"},"title":{"type":["string","null"],"default":null,"description":"Specifies an optional title for the generated autolink. Use `<num>` as the variable for the reference number"},"url":{"type":"string","description":"Specifies the URL of the external resource you want to link to. Use `<num>` as the variable for the reference number"},"alphanumeric":{"type":"boolean","description":"Specifies whether alphanumeric characters should be allowed in `<num>`","default":false},"ignoreCase":{"type":"boolean","description":"Specifies whether case should be ignored when matching the prefix","default":false}},"additionalProperties":false},"uniqueItems":true,"markdownDescription":"Specifies autolinks to external resources in commit messages. Use `<num>` as the variable for the reference number","scope":"window","order":10},"gitlens.integrations.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to enable rich integrations with any supported remote services","scope":"window","order":20},"gitlens.remotes":{"type":["array","null"],"default":null,"items":{"type":"object","required":["type"],"oneOf":[{"required":["domain"]},{"required":["regex"]}],"properties":{"type":{"type":"string","enum":["Custom","AzureDevOps","Bitbucket","BitbucketServer","Gerrit","GoogleSource","Gitea","GitHub","GitLab"],"description":"Specifies the type of the custom remote service"},"domain":{"type":"string","description":"Specifies the domain name used to match this custom configuration to a Git remote"},"regex":{"type":"string","description":"Specifies a regular expression used to match this custom configuration to a Git remote and capture the \"domain name\" and \"path\""},"name":{"type":"string","description":"Specifies an optional friendly name for the custom remote service"},"protocol":{"type":"string","default":"https","description":"Specifies an optional URL protocol for the custom remote service"},"ignoreSSLErrors":{"type":"boolean","default":false,"description":"Specifies whether to ignore invalid SSL certificate errors when connecting to the remote service"},"urls":{"type":"object","required":["repository","branches","branch","commit","file","fileInCommit","fileInBranch","fileLine","fileRange"],"properties":{"repository":{"type":"string","markdownDescription":"Specifies the format of a repository URL for the custom remote service\n\nAvailable tokens\\\n`${repo}` &mdash; repository path"},"branches":{"type":"string","markdownDescription":"Specifies the format of a branches URL for the custom remote service\n\nAvailable tokens\\\n`${repo}` &mdash; repository path\\\n`${branch}` &mdash; branch"},"branch":{"type":"string","markdownDescription":"Specifies the format of a branch URL for the custom remote service\n\nAvailable tokens\\\n`${repo}` &mdash; repository path\\\n`${branch}` &mdash; branch"},"commit":{"type":"string","markdownDescription":"Specifies the format of a commit URL for the custom remote service\n\nAvailable tokens\\\n`${repo}` &mdash; repository path\\\n`${id}` &mdash; commit SHA"},"file":{"type":"string","markdownDescription":"Specifies the format of a file URL for the custom remote service\n\nAvailable tokens\\\n`${repo}` &mdash; repository path\\\n`${file}` &mdash; file name\\\n`${line}` &mdash; formatted line information"},"fileInBranch":{"type":"string","markdownDescription":"Specifies the format of a branch file URL for the custom remote service\n\nAvailable tokens\\\n`${repo}` &mdash; repository path\\\n`${file}` &mdash; file name\\\n`${branch}` &mdash; branch\\\n`${line}` &mdash; formatted line information"},"fileInCommit":{"type":"string","markdownDescription":"Specifies the format of a commit file URL for the custom remote service\n\nAvailable tokens\\\n`${repo}` &mdash; repository path\\\n`${file}` &mdash; file name\\\n`${id}` &mdash; commit SHA\\\n`${line}` &mdash; formatted line information"},"fileLine":{"type":"string","markdownDescription":"Specifies the format of a line in a file URL for the custom remote service\n\nAvailable tokens\\\n`${line}` &mdash; line"},"fileRange":{"type":"string","markdownDescription":"Specifies the format of a range in a file URL for the custom remote service\n\nAvailable tokens\\\n`${start}` &mdash; starting line\\\n`${end}` &mdash; ending line"}},"additionalProperties":false}}},"uniqueItems":true,"markdownDescription":"Specifies custom remote services to be matched with Git remotes to detect custom domains for built-in remote services or provide support for custom remote services","scope":"resource","order":30},"gitlens.partners":{"type":["object","null"],"additionalProperties":{"type":"object","properties":{"enabled":{"type":"boolean","default":true,"description":"Specifies whether the partner integration should be shown"}},"additionalProperties":true,"description":"Specifies the configuration of a partner integration"},"default":null,"description":"Specifies the configuration of a partner integration","scope":"window","order":40},"gitlens.liveshare.allowGuestAccess":{"type":"boolean","default":true,"description":"Specifies whether to allow guest access to GitLens features when using Visual Studio Live Share","scope":"window","order":50}}},{"id":"terminal","title":"Terminal","order":112,"properties":{"gitlens.terminalLinks.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to enable terminal links &mdash; autolinks in the integrated terminal to quickly jump to more details for commits, branches, tags, and more","scope":"window","order":10},"gitlens.terminalLinks.showDetailsView":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show the _Commit Details_ view when clicking on a commit link in the integrated terminal","scope":"window","order":20},"gitlens.terminal.overrideGitEditor":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to use VS Code as Git's `core.editor` for Gitlens terminal commands","scope":"window","order":100}}},{"id":"ai","title":"AI","order":113,"properties":{"gitlens.experimental.generateCommitMessagePrompt":{"type":"string","default":"Commit messages must have a short description that is less than 50 chars followed by a newline and a more detailed description.\n- Write concisely using an informal tone and avoid specific names from the code","markdownDescription":"Specifies the prompt to use to tell OpenAI how to structure or format the generated commit message","scope":"window","order":1},"gitlens.ai.experimental.provider":{"type":"string","default":"openai","enum":["openai","anthropic"],"enumDescriptions":["OpenAI","Anthropic"],"markdownDescription":"Specifies the AI provider to use for GitLens' experimental AI features","scope":"window","order":100},"gitlens.ai.experimental.openai.model":{"type":"string","default":"gpt-3.5-turbo","enum":["gpt-3.5-turbo","gpt-3.5-turbo-16k","gpt-3.5-turbo-0301","gpt-3.5-turbo-0613","gpt-4","gpt-4-0314","gpt-4-0613","gpt-4-32k","gpt-4-32k-0314","gpt-4-32k-0613"],"enumDescriptions":["GPT 3.5 Turbo","GPT 3.5 Turbo 16k","GPT 3.5 Turbo (March 1)","GPT 3.5 Turbo (June 13)","GPT 4","GPT 4 (March 14)","GPT 4 (June 13)","GPT 4 32k","GPT 4 32k (March 14)","GPT 4 32k (June 13)"],"markdownDescription":"Specifies the OpenAI model to use for GitLens' experimental AI features","scope":"window","order":101},"gitlens.ai.experimental.openai.url":{"type":["string","null"],"default":null,"markdownDescription":"Specifies a custom URL to use for access to an OpenAI model via Azure. Azure URLs should be in the following format: https://{your-resource-name}.openai.azure.com/openai/deployments/{deployment-id}/chat/completions?api-version={api-version}","scope":"window","order":102},"gitlens.ai.experimental.anthropic.model":{"type":"string","default":"claude-v1","enum":["claude-v1","claude-v1-100k","claude-instant-v1","claude-instant-v1-100k","claude-2"],"enumDescriptions":["Claude v1","Claude v1 100k","Claude Instant v1","Claude Instant v1 100k","Claude 2"],"markdownDescription":"Specifies the Anthropic model to use for GitLens' experimental AI features","scope":"window","order":102}}},{"id":"date-times","title":"Date & Times","order":120,"properties":{"gitlens.defaultDateStyle":{"type":"string","default":"relative","enum":["relative","absolute"],"enumDescriptions":["e.g. 1 day ago","e.g. July 25th, 2018 7:18pm"],"markdownDescription":"Specifies how dates will be displayed by default","scope":"window","order":10},"gitlens.defaultDateFormat":{"type":["string","null"],"default":null,"markdownDescription":"Specifies how absolute dates will be formatted by default. See the [Moment.js docs](https://momentjs.com/docs/#/displaying/format/) for supported formats","scope":"window","order":20},"gitlens.defaultDateLocale":{"type":["string","null"],"default":null,"markdownDescription":"Specifies the locale, a [BCP 47 language tag](https://en.wikipedia.org/wiki/IETF_language_tag#List_of_major_primary_language_subtags), to use for date formatting, defaults to the VS Code locale. Use `system` to follow the current system locale, or choose a specific locale, e.g `en-US` — US English, `en-GB` — British English, `de-DE` — German, 'ja-JP = Japanese, etc.","scope":"window","order":21},"gitlens.defaultDateShortFormat":{"type":["string","null"],"default":null,"markdownDescription":"Specifies how short absolute dates will be formatted by default. See the [Moment.js docs](https://momentjs.com/docs/#/displaying/format/) for supported formats","scope":"window","order":22},"gitlens.defaultTimeFormat":{"type":["string","null"],"default":null,"markdownDescription":"Specifies how times will be formatted by default. See the [Moment.js docs](https://momentjs.com/docs/#/displaying/format/) for supported formats","scope":"window","order":30},"gitlens.defaultDateSource":{"type":"string","default":"authored","enum":["authored","committed"],"enumDescriptions":["Uses the date when the changes were authored (i.e. originally written)","Uses the date when the changes were committed"],"markdownDescription":"Specifies whether commit dates should use the authored or committed date","scope":"window","order":40}}},{"id":"menus-toolbars","title":"Menus & Toolbars","order":121,"properties":{"gitlens.menus":{"anyOf":[{"enum":[false]},{"type":"object","properties":{"editor":{"anyOf":[{"enum":[false]},{"type":"object","properties":{"blame":{"type":"boolean"},"clipboard":{"type":"boolean"},"compare":{"type":"boolean"},"history":{"type":"boolean"},"remote":{"type":"boolean"}}}]},"editorGroup":{"anyOf":[{"enum":[false]},{"type":"object","properties":{"blame":{"type":"boolean"},"compare":{"type":"boolean"}}}]},"editorGutter":{"anyOf":[{"enum":[false]},{"type":"object","properties":{"compare":{"type":"boolean"},"remote":{"type":"boolean"},"share":{"type":"boolean"}}}]},"editorTab":{"anyOf":[{"enum":[false]},{"type":"object","properties":{"clipboard":{"type":"boolean"},"compare":{"type":"boolean"},"history":{"type":"boolean"},"remote":{"type":"boolean"}}}]},"explorer":{"anyOf":[{"enum":[false]},{"type":"object","properties":{"clipboard":{"type":"boolean"},"compare":{"type":"boolean"},"history":{"type":"boolean"},"remote":{"type":"boolean"}}}]},"ghpr":{"anyOf":[{"enum":[false]},{"type":"object","properties":{"worktree":{"type":"boolean"}}}]},"scm":{"anyOf":[{"enum":[false]},{"type":"object","properties":{"graph":{"type":"boolean"}}}]},"scmRepositoryInline":{"anyOf":[{"enum":[false]},{"type":"object","properties":{"graph":{"type":"boolean"}}}]},"scmRepository":{"anyOf":[{"enum":[false]},{"type":"object","properties":{"authors":{"type":"boolean"},"generateCommitMessage":{"type":"boolean"},"graph":{"type":"boolean"}}}]},"scmGroupInline":{"anyOf":[{"enum":[false]},{"type":"object","properties":{"stash":{"type":"boolean"}}}]},"scmGroup":{"anyOf":[{"enum":[false]},{"type":"object","properties":{"compare":{"type":"boolean"},"openClose":{"type":"boolean"},"stash":{"type":"boolean"}}}]},"scmItemInline":{"anyOf":[{"enum":[false]},{"type":"object","properties":{"stash":{"type":"boolean"}}}]},"scmItem":{"anyOf":[{"enum":[false]},{"type":"object","properties":{"clipboard":{"type":"boolean"},"compare":{"type":"boolean"},"history":{"type":"boolean"},"remote":{"type":"boolean"},"share":{"type":"boolean"},"stash":{"type":"boolean"}}}]}},"additionalProperties":false}],"default":{"editor":{"blame":true,"clipboard":true,"compare":true,"history":true,"remote":true},"editorGroup":{"blame":true,"compare":true},"editorGutter":{"compare":true,"remote":true,"share":true},"editorTab":{"clipboard":true,"compare":true,"history":true,"remote":true},"explorer":{"clipboard":true,"compare":true,"history":true,"remote":true},"ghpr":{"worktree":true},"scm":{"graph":true},"scmRepositoryInline":{"graph":true},"scmRepository":{"authors":true,"generateCommitMessage":true,"graph":false},"scmGroupInline":{"stash":true},"scmGroup":{"compare":true,"openClose":true,"stash":true},"scmItemInline":{"stash":false},"scmItem":{"clipboard":true,"compare":true,"history":true,"remote":true,"share":true,"stash":true}},"markdownDescription":"Specifies which commands will be added to which menus","scope":"window","order":10}}},{"id":"keyboard","title":"Keyboard Shortcuts","order":122,"properties":{"gitlens.keymap":{"type":"string","default":"chorded","enum":["alternate","chorded","none"],"enumDescriptions":["Adds an alternate set of shortcut keys that start with `Alt` (⌥ on macOS)","Adds a chorded set of shortcut keys that start with `Ctrl+Alt+G` (`⌥⌘G` on macOS)","No shortcut keys will be added"],"markdownDescription":"Specifies the keymap to use for GitLens shortcut keys","scope":"window","order":10}}},{"id":"modes","title":"Modes","order":123,"properties":{"gitlens.mode.statusBar.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to provide the active GitLens mode in the status bar","scope":"window","order":10},"gitlens.mode.statusBar.alignment":{"type":"string","default":"right","enum":["left","right"],"enumDescriptions":["Aligns to the left","Aligns to the right"],"markdownDescription":"Specifies the active GitLens mode alignment in the status bar","scope":"window","order":11},"gitlens.mode.active":{"type":"string","markdownDescription":"Specifies the active GitLens mode, if any","scope":"window","order":20},"gitlens.modes":{"type":"object","properties":{"zen":{"type":"object","properties":{"name":{"type":"string","description":"Specifies the friendly name of this user-defined mode"},"statusBarItemName":{"type":"string","description":"Specifies the name shown in the status bar when this user-defined mode is active"},"description":{"type":"string","description":"Specifies the description of this user-defined mode"},"codeLens":{"type":"boolean","description":"Specifies whether to show any Git CodeLens when this user-defined mode is active"},"currentLine":{"type":"boolean","description":"Specifies whether to show an inline blame annotation for the current line when this user-defined mode is active"},"hovers":{"type":"boolean","description":"Specifies whether to show any hovers when this user-defined mode is active"},"statusBar":{"type":"boolean","description":"Specifies whether to show blame information in the status bar when this user-defined mode is active"}}},"review":{"type":"object","properties":{"name":{"type":"string","description":"Specifies the friendly name of this user-defined mode"},"statusBarItemName":{"type":"string","description":"Specifies the name shown in the status bar when this user-defined mode is active"},"description":{"type":"string","description":"Specifies the description of this user-defined mode"},"codeLens":{"type":"boolean","description":"Specifies whether to show any Git CodeLens when this user-defined mode is active"},"currentLine":{"type":"boolean","description":"Specifies whether to show an inline blame annotation for the current line when this user-defined mode is active"},"hovers":{"type":"boolean","description":"Specifies whether to show any hovers when this user-defined mode is active"},"statusBar":{"type":"boolean","description":"Specifies whether to show blame information in the status bar when this user-defined mode is active"}}}},"additionalProperties":{"type":"object","required":["name"],"properties":{"name":{"type":"string","description":"Specifies the friendly name of this user-defined mode"},"statusBarItemName":{"type":"string","description":"Specifies the name shown in the status bar when this user-defined mode is active"},"description":{"type":"string","description":"Specifies the description of this user-defined mode"},"annotations":{"type":"string","enum":["blame","changes","heatmap"],"enumDescriptions":["Shows the file blame annotations","Shows the file changes annotations","Shows the file heatmap annotations"],"description":"Specifies which (if any) file annotations will be shown when this user-defined mode is active"},"codeLens":{"type":"boolean","description":"Specifies whether to show any Git CodeLens when this user-defined mode is active"},"currentLine":{"type":"boolean","description":"Specifies whether to show an inline blame annotation for the current line when this user-defined mode is active"},"hovers":{"type":"boolean","description":"Specifies whether to show any hovers when this user-defined mode is active"},"statusBar":{"type":"boolean","description":"Specifies whether to show blame information in the status bar when this user-defined mode is active"}}},"default":{"zen":{"name":"Zen","statusBarItemName":"Zen","description":"for a zen-like experience, disables many visual features","codeLens":false,"currentLine":false,"hovers":false,"statusBar":false},"review":{"name":"Review","statusBarItemName":"Reviewing","description":"for reviewing code, enables many visual features","codeLens":true,"currentLine":true,"hovers":true}},"markdownDescription":"Specifies the user-defined GitLens modes","scope":"window","order":30}}},{"id":"advanced","title":"Advanced","order":1000,"properties":{"gitlens.detectNestedRepositories":{"type":"boolean","default":false,"markdownDescription":"Specifies whether to attempt to detect nested repositories when opening files","scope":"resource","order":0},"gitlens.telemetry.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to allow GitLens to send product usage telemetry.\n\n_**Note:** For GitLens to send any telemetry BOTH this setting and VS Code telemetry must be enabled. If either one is disabled no telemetry will be sent._","scope":"window","order":1},"gitlens.advanced.messages":{"type":"object","default":{"suppressCommitHasNoPreviousCommitWarning":false,"suppressCommitNotFoundWarning":false,"suppressCreatePullRequestPrompt":false,"suppressDebugLoggingWarning":false,"suppressFileNotUnderSourceControlWarning":false,"suppressGitDisabledWarning":false,"suppressGitMissingWarning":false,"suppressGitVersionWarning":false,"suppressLineUncommittedWarning":false,"suppressNoRepositoryWarning":false,"suppressRebaseSwitchToTextWarning":false,"suppressIntegrationDisconnectedTooManyFailedRequestsWarning":false,"suppressIntegrationRequestFailed500Warning":false,"suppressIntegrationRequestTimedOutWarning":false},"properties":{"suppressCommitHasNoPreviousCommitWarning":{"type":"boolean","default":false,"description":"Commit Has No Previous Commit Warning"},"suppressCommitNotFoundWarning":{"type":"boolean","default":false,"description":"Commit Not Found Warning"},"suppressCreatePullRequestPrompt":{"type":"boolean","default":false,"description":"Create Pull Request Prompt"},"suppressDebugLoggingWarning":{"type":"boolean","default":false,"description":"Debug Logging Warning"},"suppressFileNotUnderSourceControlWarning":{"type":"boolean","default":false,"description":"File Not Under Source Control Warning"},"suppressGitDisabledWarning":{"type":"boolean","default":false,"description":"Git Disabled Warning"},"suppressGitMissingWarning":{"type":"boolean","default":false,"description":"Git Missing Warning"},"suppressGitVersionWarning":{"type":"boolean","default":false,"description":"Git Version Warning"},"suppressLineUncommittedWarning":{"type":"boolean","default":false,"description":"Line Uncommitted Warning"},"suppressNoRepositoryWarning":{"type":"boolean","default":false,"description":"No Repository Warning"},"suppressRebaseSwitchToTextWarning":{"type":"boolean","default":false,"description":"Rebase Switch To Text Warning"},"suppressIntegrationDisconnectedTooManyFailedRequestsWarning":{"type":"boolean","default":false,"description":"Integration Disconnected; Too Many Failed Requests Warning"},"suppressIntegrationRequestFailed500Warning":{"type":"boolean","default":false,"description":"Integration Request Failed (500 status code) Warning"},"suppressIntegrationRequestTimedOutWarning":{"type":"boolean","default":false,"description":"Integration Request Timed Out Warning"}},"additionalProperties":false,"markdownDescription":"Specifies which messages should be suppressed","scope":"window","order":5},"gitlens.advanced.repositorySearchDepth":{"type":"number","default":null,"markdownDescription":"Specifies how many folders deep to search for repositories. Defaults to `#git.repositoryScanMaxDepth#`","scope":"resource","order":10},"gitlens.advanced.abbreviatedShaLength":{"type":"number","default":7,"markdownDescription":"Specifies the length of abbreviated commit SHAs","scope":"window","order":20},"gitlens.advanced.abbreviateShaOnCopy":{"type":"boolean","default":false,"markdownDescription":"Specifies whether to copy full or abbreviated commit SHAs to the clipboard. Abbreviates to the length of `#gitlens.advanced.abbreviatedShaLength#`.","scope":"window","order":21},"gitlens.advanced.commitOrdering":{"type":["string","null"],"default":null,"enum":[null,"date","author-date","topo"],"enumDescriptions":["Shows commits in reverse chronological order","Shows commits in reverse chronological order of the commit timestamp","Shows commits in reverse chronological order of the author timestamp","Shows commits in reverse chronological order of the commit timestamp, but avoids intermixing multiple lines of history"],"markdownDescription":"Specifies the order by which commits will be shown. If unspecified, commits will be shown in reverse chronological order","scope":"window","order":30},"gitlens.blame.ignoreWhitespace":{"type":"boolean","default":false,"markdownDescription":"Specifies whether to ignore whitespace when comparing revisions during blame operations","scope":"resource","order":40},"gitlens.advanced.blame.customArguments":{"type":["array","null"],"default":null,"items":{"type":"string"},"markdownDescription":"Specifies additional arguments to pass to the `git blame` command","scope":"resource","order":41},"gitlens.advanced.blame.delayAfterEdit":{"type":"number","default":5000,"markdownDescription":"Specifies the time (in milliseconds) to wait before re-blaming an unsaved document after an edit. Use 0 to specify an infinite wait","scope":"window","order":42},"gitlens.advanced.blame.sizeThresholdAfterEdit":{"type":"number","default":5000,"markdownDescription":"Specifies the maximum document size (in lines) allowed to be re-blamed after an edit while still unsaved. Use 0 to specify no maximum","scope":"window","order":43},"gitlens.advanced.similarityThreshold":{"type":["number","null"],"default":null,"markdownDescription":"Specifies the amount (percent) of similarity a deleted and added file pair must have to be considered a rename","scope":"window","order":50},"gitlens.advanced.externalDiffTool":{"type":["string","null"],"default":null,"markdownDescription":"Specifies an optional external diff tool to use when comparing files. Must be a configured [Git difftool](https://git-scm.com/docs/git-config#Documentation/git-config.txt-difftool).","scope":"window","order":60},"gitlens.advanced.externalDirectoryDiffTool":{"type":["string","null"],"default":null,"markdownDescription":"Specifies an optional external diff tool to use when comparing directories. Must be a configured [Git difftool](https://git-scm.com/docs/git-config#Documentation/git-config.txt-difftool).","scope":"window","order":61},"gitlens.advanced.quickPick.closeOnFocusOut":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to dismiss quick pick menus when focus is lost (if not, press `ESC` to dismiss)","scope":"window","order":70},"gitlens.advanced.maxListItems":{"type":"number","default":200,"markdownDescription":"Specifies the maximum number of items to show in a list. Use 0 to specify no maximum","scope":"window","order":80},"gitlens.advanced.maxSearchItems":{"type":"number","default":200,"markdownDescription":"Specifies the maximum number of items to show in a search. Use 0 to specify no maximum","scope":"window","order":81},"gitlens.advanced.caching.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether git output will be cached — changing the default is not recommended","scope":"window","order":90},"gitlens.debug":{"type":"boolean","default":false,"markdownDescription":"Specifies debug mode","scope":"window","order":100},"gitlens.deepLinks.schemeOverride":{"type":["boolean","string"],"default":false,"markdownDescription":"Specifies whether to override the default deep link scheme (vscode://) with the environment value or a specified value","scope":"window","order":110},"gitlens.experimental.nativeGit":{"type":"boolean","default":false,"markdownDescription":"(Experimental) Specifies whether to use Git directly for fetch/push/pull operation instead of relying on VS Code's built-in Git implementation","scope":"window","order":120},"gitlens.advanced.useSymmetricDifferenceNotation":{"deprecationMessage":"Deprecated. This setting is no longer used","markdownDescription":"Deprecated. This setting is no longer used"}}},{"id":"general","title":"General","order":0,"properties":{"gitlens.showWelcomeOnInstall":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show the Welcome experience on first install","scope":"window","order":10},"gitlens.showWhatsNewAfterUpgrades":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to show the What's New notification after upgrading to new feature releases","scope":"window","order":20},"gitlens.outputLevel":{"type":"string","default":"errors","enum":["silent","errors","verbose","debug"],"enumDescriptions":["Logs nothing","Logs only errors","Logs all errors, warnings, and messages","Logs all errors, warnings, and messages with extra context useful for debugging"],"markdownDescription":"Specifies how much (if any) output will be sent to the GitLens output channel","scope":"window","order":30},"gitlens.defaultGravatarsStyle":{"type":"string","default":"robohash","enum":["identicon","mp","monsterid","retro","robohash","wavatar"],"enumDescriptions":["A geometric pattern","A simple, cartoon-style silhouetted outline of a person (does not vary by email hash)","A monster with different colors, faces, etc","8-bit arcade-style pixelated faces","A robot with different colors, faces, etc","A face with differing features and backgrounds"],"markdownDescription":"Specifies the style of the gravatar default (fallback) images","scope":"window","order":40},"gitlens.fileAnnotations.command":{"type":["string","null"],"default":null,"enum":[null,"blame","heatmap","changes"],"enumDescriptions":["Shows a menu to choose which file annotations to toggle","Toggles file blame annotations","Toggles file heatmap annotations","Toggles file changes annotations"],"markdownDescription":"Specifies whether the file annotations button in the editor title shows a menu or immediately toggles the specified file annotations","scope":"window","order":50},"gitlens.proxy":{"type":["object","null"],"default":null,"items":{"type":"object","required":["url","strictSSL"],"properties":{"url":{"type":["string","null"],"default":null,"description":"Specifies the URL of the proxy server to use"},"strictSSL":{"type":"boolean","description":"Specifies whether the proxy server certificate should be verified against the list of supplied CAs","default":true}},"additionalProperties":false},"uniqueItems":true,"description":"Specifies the proxy configuration to use. If not specified, the proxy configuration will be determined based on VS Code or OS settings","scope":"window","order":55},"gitlens.plusFeatures.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to hide or show features that require a trial or paid plan and are not accessible given the opened repositories and current trial or plan","scope":"window","order":60},"gitlens.virtualRepositories.enabled":{"type":"boolean","default":true,"markdownDescription":"Specifies whether to enable virtual repositories support","scope":"window","order":70},"gitlens.insiders":{"deprecationMessage":"Deprecated. Use the pre-release edition of GitLens instead","markdownDeprecationMessage":"Deprecated. Use the pre-release of GitLens instead"}}}],"configurationDefaults":{"[ansible][azure-pipelines][css][dockerfile][dockercompose][html][json][jsonc][less][postcss][scss][stylus][vue][yaml]":{"gitlens.codeLens.scopes":["document"]},"[python]":{"gitlens.codeLens.symbolScopes":["!Module"]}},"colors":[{"id":"gitlens.gutterBackgroundColor","description":"Specifies the background color of the file blame annotations","defaults":{"dark":"#FFFFFF13","light":"#0000000C","highContrast":"#FFFFFF13"}},{"id":"gitlens.gutterForegroundColor","description":"Specifies the foreground color of the file blame annotations","defaults":{"dark":"#BEBEBE","light":"#747474","highContrast":"#BEBEBE"}},{"id":"gitlens.gutterUncommittedForegroundColor","description":"Specifies the foreground color of an uncommitted line in the file blame annotations","defaults":{"dark":"#00BCF299","light":"#00BCF299","highContrast":"#00BCF2FF"}},{"id":"gitlens.trailingLineBackgroundColor","description":"Specifies the background color of the inline blame annotation for the current line","defaults":{"dark":"#00000000","light":"#00000000","highContrast":"#00000000"}},{"id":"gitlens.trailingLineForegroundColor","description":"Specifies the foreground color of the inline blame annotation for the current line","defaults":{"dark":"#99999959","light":"#99999959","highContrast":"#99999999"}},{"id":"gitlens.lineHighlightBackgroundColor","description":"Specifies the background color of the associated line highlights in blame annotations","defaults":{"dark":"#00BCF233","light":"#00BCF233","highContrast":"#00BCF233"}},{"id":"gitlens.lineHighlightOverviewRulerColor","description":"Specifies the scroll bar color of the associated line highlights in blame annotations","defaults":{"dark":"#00BCF299","light":"#00BCF299","highContrast":"#00BCF299"}},{"id":"gitlens.openAutolinkedIssueIconColor","defaults":{"dark":"#3fb950","light":"#1a7f37","highContrast":"#68ff79"},"description":"Specifies the icon color of open issues in the GitLens views"},{"id":"gitlens.closedAutolinkedIssueIconColor","defaults":{"dark":"#a371f7","light":"#8250df","highContrast":"#8945ff"},"description":"Specifies the icon color of closed issues in the GitLens views"},{"id":"gitlens.closedPullRequestIconColor","description":"Specifies the icon color of closed pull requests in the GitLens views","defaults":{"dark":"#f85149","light":"#cf222e","highContrast":"#ff544b"}},{"id":"gitlens.openPullRequestIconColor","description":"Specifies the icon color of open pull requests in the GitLens views","defaults":{"dark":"#3fb950","light":"#1a7f37","highContrast":"#68ff79"}},{"id":"gitlens.mergedPullRequestIconColor","description":"Specifies the icon color of merged pull requests in the GitLens views","defaults":{"dark":"#a371f7","light":"#8250df","highContrast":"#8945ff"}},{"id":"gitlens.unpublishedChangesIconColor","description":"Specifies the icon color of unpublished changes in the GitLens views","defaults":{"dark":"#35b15e","light":"#35b15e","highContrast":"#4dff88"}},{"id":"gitlens.unpublishedCommitIconColor","description":"Specifies the icon color of unpublished commits in the GitLens views","defaults":{"dark":"#35b15e","light":"#35b15e","highContrast":"#4dff88"}},{"id":"gitlens.unpulledChangesIconColor","description":"Specifies the icon color of unpulled changes in the GitLens views","defaults":{"dark":"#b15e35","light":"#b15e35","highContrast":"#ff874c"}},{"id":"gitlens.decorations.addedForegroundColor","description":"Specifies the decoration foreground color of added files","defaults":{"light":"gitDecoration.addedResourceForeground","dark":"gitDecoration.addedResourceForeground","highContrast":"gitDecoration.addedResourceForeground"}},{"id":"gitlens.decorations.copiedForegroundColor","description":"Specifies the decoration foreground color of copied files","defaults":{"light":"gitDecoration.renamedResourceForeground","dark":"gitDecoration.renamedResourceForeground","highContrast":"gitDecoration.renamedResourceForeground"}},{"id":"gitlens.decorations.deletedForegroundColor","description":"Specifies the decoration foreground color of deleted files","defaults":{"light":"gitDecoration.deletedResourceForeground","dark":"gitDecoration.deletedResourceForeground","highContrast":"gitDecoration.deletedResourceForeground"}},{"id":"gitlens.decorations.ignoredForegroundColor","description":"Specifies the decoration foreground color of ignored files","defaults":{"light":"gitDecoration.ignoredResourceForeground","dark":"gitDecoration.ignoredResourceForeground","highContrast":"gitDecoration.ignoredResourceForeground"}},{"id":"gitlens.decorations.modifiedForegroundColor","description":"Specifies the decoration foreground color of modified files","defaults":{"light":"gitDecoration.modifiedResourceForeground","dark":"gitDecoration.modifiedResourceForeground","highContrast":"gitDecoration.modifiedResourceForeground"}},{"id":"gitlens.decorations.untrackedForegroundColor","description":"Specifies the decoration foreground color of untracked files","defaults":{"light":"gitDecoration.untrackedResourceForeground","dark":"gitDecoration.untrackedResourceForeground","highContrast":"gitDecoration.untrackedResourceForeground"}},{"id":"gitlens.decorations.renamedForegroundColor","description":"Specifies the decoration foreground color of renamed files","defaults":{"light":"gitDecoration.renamedResourceForeground","dark":"gitDecoration.renamedResourceForeground","highContrast":"gitDecoration.renamedResourceForeground"}},{"id":"gitlens.decorations.branchAheadForegroundColor","description":"Specifies the decoration foreground color of branches that are ahead of their upstream","defaults":{"dark":"#35b15e","light":"#35b15e","highContrast":"#4dff88"}},{"id":"gitlens.decorations.branchBehindForegroundColor","description":"Specifies the decoration foreground color of branches that are behind their upstream","defaults":{"dark":"#b15e35","light":"#b15e35","highContrast":"#ff874c"}},{"id":"gitlens.decorations.branchDivergedForegroundColor","description":"Specifies the decoration foreground color of branches that are both ahead and behind their upstream","defaults":{"dark":"#D8AF1B","light":"#D8AF1B","highContrast":"#D8AF1B"}},{"id":"gitlens.decorations.branchUpToDateForegroundColor","description":"Specifies the decoration foreground color of branches that are up to date with their upstream","defaults":{"dark":"sideBar.foreground","light":"sideBar.foreground","highContrast":"sideBar.foreground"}},{"id":"gitlens.decorations.branchUnpublishedForegroundColor","description":"Specifies the decoration foreground color of branches that are not yet published to an upstream","defaults":{"dark":"#35b15e","light":"#35b15e","highContrast":"#4dff88"}},{"id":"gitlens.decorations.branchMissingUpstreamForegroundColor","description":"Specifies the decoration foreground color of branches that have a missing upstream","defaults":{"light":"#ad0707","dark":"#c74e39","highContrast":"#c74e39"}},{"id":"gitlens.decorations.workspaceRepoMissingForegroundColor","description":"Specifies the decoration foreground color of workspace repos which are missing a local path","defaults":{"dark":"#909090","light":"#949494","highContrast":"#d3d3d3"}},{"id":"gitlens.decorations.workspaceCurrentForegroundColor","description":"Specifies the decoration foreground color of workspaces which are currently open as a Code Workspace file","defaults":{"dark":"#35b15e","light":"#35b15e","highContrast":"#4dff88"}},{"id":"gitlens.decorations.workspaceRepoOpenForegroundColor","description":"Specifies the decoration foreground color of workspace repos which are open in the current workspace","defaults":{"dark":"#35b15e","light":"#35b15e","highContrast":"#4dff88"}},{"id":"gitlens.decorations.worktreeHasUncommittedChangesForegroundColor","description":"Specifies the decoration foreground color for worktrees that have uncommitted changes","defaults":{"light":"#895503","dark":"#E2C08D","highContrast":"#E2C08D"}},{"id":"gitlens.decorations.worktreeMissingForegroundColor","description":"Specifies the decoration foreground color for worktrees cannot be found on disk","defaults":{"light":"#ad0707","dark":"#c74e39","highContrast":"#c74e39"}},{"id":"gitlens.graphLane1Color","description":"Specifies the color for the first commit lane of the _Commit Graph_ visualization","defaults":{"light":"#15a0bf","dark":"#15a0bf","highContrast":"#15a0bf"}},{"id":"gitlens.graphLane2Color","description":"Specifies the color for the second commit lane of the _Commit Graph_ visualization","defaults":{"light":"#0669f7","dark":"#0669f7","highContrast":"#0669f7"}},{"id":"gitlens.graphLane3Color","description":"Specifies the color for the third commit lane of the _Commit Graph_ visualization","defaults":{"light":"#8e00c2","dark":"#8e00c2","highContrast":"#8e00c2"}},{"id":"gitlens.graphLane4Color","description":"Specifies the color for the fourth commit lane of the _Commit Graph_ visualization","defaults":{"light":"#c517b6","dark":"#c517b6","highContrast":"#c517b6"}},{"id":"gitlens.graphLane5Color","description":"Specifies the color for the fifth commit lane of the _Commit Graph_ visualization","defaults":{"light":"#d90171","dark":"#d90171","highContrast":"#d90171"}},{"id":"gitlens.graphLane6Color","description":"Specifies the color for the sixth commit lane of the _Commit Graph_ visualization","defaults":{"light":"#cd0101","dark":"#cd0101","highContrast":"#cd0101"}},{"id":"gitlens.graphLane7Color","description":"Specifies the color for the seventh commit lane of the _Commit Graph_ visualization","defaults":{"light":"#f25d2e","dark":"#f25d2e","highContrast":"#f25d2e"}},{"id":"gitlens.graphLane8Color","description":"Specifies the color for the eighth commit lane of the _Commit Graph_ visualization","defaults":{"light":"#f2ca33","dark":"#f2ca33","highContrast":"#f2ca33"}},{"id":"gitlens.graphLane9Color","description":"Specifies the color for the ninth commit lane of the _Commit Graph_ visualization","defaults":{"light":"#7bd938","dark":"#7bd938","highContrast":"#7bd938"}},{"id":"gitlens.graphLane10Color","description":"Specifies the color for the tenth commit lane of the _Commit Graph_ visualization","defaults":{"light":"#2ece9d","dark":"#2ece9d","highContrast":"#2ece9d"}},{"id":"gitlens.graphChangesColumnAddedColor","description":"Specifies the color for denoting lines added in the _Changes_ column on the _Commit Graph_","defaults":{"light":"#2da44e","highContrastLight":"#2da44e","dark":"#347d39","highContrast":"#347d39"}},{"id":"gitlens.graphChangesColumnDeletedColor","description":"Specifies the color for denoting lines deleted in the _Changes_ column on the _Commit Graph_","defaults":{"light":"#cf222e","highContrastLight":"#cf222e","dark":"#c93c37","highContrast":"#c93c37"}},{"id":"gitlens.graphMinimapMarkerHeadColor","description":"Specifies the color marking HEAD on the minimap of the _Commit Graph_","defaults":{"light":"#04c814","highContrastLight":"#04c814","dark":"#05e617","highContrast":"#05e617"}},{"id":"gitlens.graphScrollMarkerHeadColor","description":"Specifies the color marking HEAD on the scrollbar of the _Commit Graph_","defaults":{"light":"#04c814","highContrastLight":"#04c814","dark":"#05e617","highContrast":"#05e617"}},{"id":"gitlens.graphMinimapMarkerUpstreamColor","description":"Specifies the color marking HEAD's upstream on the minimap of the _Commit Graph_","defaults":{"light":"#8cd993","highContrastLight":"#8cd993","dark":"#09ae17","highContrast":"#09ae17"}},{"id":"gitlens.graphScrollMarkerUpstreamColor","description":"Specifies the color marking HEAD's upstream on the scrollbar of the _Commit Graph_","defaults":{"light":"#8cd993","highContrastLight":"#8cd993","dark":"#09ae17","highContrast":"#09ae17"}},{"id":"gitlens.graphMinimapMarkerHighlightsColor","description":"Specifies the color marking highlights (matches) on the minimap of the _Commit Graph_","defaults":{"light":"#f5cc00","highContrastLight":"#f5cc00","dark":"#fbff0a","highContrast":"#fbff0a"}},{"id":"gitlens.graphScrollMarkerHighlightsColor","description":"Specifies the color marking highlights (matches) on the scrollbar of the _Commit Graph_","defaults":{"light":"#f5cc00","highContrastLight":"#f5cc00","dark":"#fbff0a","highContrast":"#fbff0a"}},{"id":"gitlens.graphMinimapMarkerLocalBranchesColor","description":"Specifies the color marking local branches on the minimap of the _Commit Graph_","defaults":{"light":"#3095e8","highContrastLight":"#3095e8","dark":"#3087cf","highContrast":"#3087cf"}},{"id":"gitlens.graphScrollMarkerLocalBranchesColor","description":"Specifies the color marking local branches on the scrollbar of the _Commit Graph_","defaults":{"light":"#3095e8","highContrastLight":"#3095e8","dark":"#3087cf","highContrast":"#3087cf"}},{"id":"gitlens.graphMinimapMarkerRemoteBranchesColor","description":"Specifies the color marking remote branches on the minimap of the _Commit Graph_","defaults":{"light":"#67ace4","highContrastLight":"#67ace4","dark":"#2b5e88","highContrast":"#2b5e88"}},{"id":"gitlens.graphScrollMarkerRemoteBranchesColor","description":"Specifies the color marking remote branches on the scrollbar of the _Commit Graph_","defaults":{"light":"#67ace4","highContrastLight":"#67ace4","dark":"#2b5e88","highContrast":"#2b5e88"}},{"id":"gitlens.graphMinimapMarkerStashesColor","description":"Specifies the color marking stashes on the minimap of the _Commit Graph_","defaults":{"light":"#e467e4","highContrastLight":"#e467e4","dark":"#b34db3","highContrast":"#b34db3"}},{"id":"gitlens.graphScrollMarkerStashesColor","description":"Specifies the color marking stashes on the scrollbar of the _Commit Graph_","defaults":{"light":"#e467e4","highContrastLight":"#e467e4","dark":"#b34db3","highContrast":"#b34db3"}},{"id":"gitlens.graphMinimapMarkerTagsColor","description":"Specifies the color marking tags on the minimap of the _Commit Graph_","defaults":{"light":"#d2a379","highContrastLight":"#d2a379","dark":"#6b562e","highContrast":"#6b562e"}},{"id":"gitlens.graphScrollMarkerTagsColor","description":"Specifies the color marking tags on the scrollbar of the _Commit Graph_","defaults":{"light":"#d2a379","highContrastLight":"#d2a379","dark":"#6b562e","highContrast":"#6b562e"}}],"commands":[{"command":"gitlens.generateCommitMessage","title":"Generate Commit Message (Experimental)...","category":"GitLens"},{"command":"gitlens.resetOpenAIKey","title":"Reset Stored OpenAI Key","category":"GitLens"},{"command":"gitlens.plus.loginOrSignUp","title":"Sign In to GitKraken...","category":"GitLens"},{"command":"gitlens.plus.logout","title":"Sign Out of GitKraken","category":"GitLens"},{"command":"gitlens.plus.startPreviewTrial","title":"Preview Pro","category":"GitLens"},{"command":"gitlens.plus.manage","title":"Manage Your Account...","category":"GitLens"},{"command":"gitlens.plus.purchase","title":"Upgrade to Pro...","category":"GitLens"},{"command":"gitlens.plus.hide","title":"Hide Pro Features","category":"GitLens"},{"command":"gitlens.plus.restore","title":"Restore Pro Features","category":"GitLens"},{"command":"gitlens.plus.reset","title":"Reset","category":"GitLens"},{"command":"gitlens.plus.resetRepositoryAccess","title":"Reset Repository Access Cache","category":"GitLens"},{"command":"gitlens.plus.refreshRepositoryAccess","title":"Refresh Repository Access","category":"GitLens"},{"command":"gitlens.getStarted","title":"Get Started","category":"GitLens"},{"command":"gitlens.showBranchesView","title":"Show Branches View","category":"GitLens"},{"command":"gitlens.showCommitDetailsView","title":"Show Commit Details View","category":"GitLens"},{"command":"gitlens.showCommitsView","title":"Show Commits View","category":"GitLens"},{"command":"gitlens.showContributorsView","title":"Show Contributors View","category":"GitLens"},{"command":"gitlens.showFileHistoryView","title":"Show File History View","category":"GitLens"},{"command":"gitlens.showFocusPage","title":"Show Focus View","category":"GitLens","icon":"$(layers)"},{"command":"gitlens.showGraph","title":"Show Commit Graph","category":"GitLens","icon":"$(gitlens-graph)"},{"command":"gitlens.showGraphPage","title":"Show Commit Graph","category":"GitLens","icon":"$(gitlens-graph)"},{"command":"gitlens.showGraphView","title":"Show Commit Graph View","category":"GitLens","icon":"$(gitlens-graph)"},{"command":"gitlens.toggleGraph","title":"Toggle Commit Graph","category":"GitLens","icon":"$(gitlens-graph)"},{"command":"gitlens.toggleMaximizedGraph","title":"Toggle Maximized Commit Graph","category":"GitLens","icon":"$(gitlens-graph)"},{"command":"gitlens.showHomeView","title":"Show Home View","category":"GitLens"},{"command":"gitlens.showAccountView","title":"Show Account View","category":"GitLens"},{"command":"gitlens.showInCommitGraph","title":"Open in Commit Graph","category":"GitLens","icon":"$(gitlens-graph)"},{"command":"gitlens.showLineHistoryView","title":"Show Line History View","category":"GitLens"},{"command":"gitlens.showRemotesView","title":"Show Remotes View","category":"GitLens"},{"command":"gitlens.showRepositoriesView","title":"Show Repositories View","category":"GitLens"},{"command":"gitlens.showSearchAndCompareView","title":"Show Search And Compare Commits View","category":"GitLens"},{"command":"gitlens.showSettingsPage","title":"Open Settings","category":"GitLens","icon":"$(gear)"},{"command":"gitlens.showSettingsPage#views","title":"Open Settings","category":"GitLens","icon":"$(gear)"},{"command":"gitlens.showSettingsPage#autolinks","title":"Configure Autolinks","category":"GitLens","icon":"$(gear)"},{"command":"gitlens.showSettingsPage#branches-view","title":"Open View Settings","category":"GitLens","icon":"$(gear)"},{"command":"gitlens.showSettingsPage#commits-view","title":"Open View Settings","category":"GitLens","icon":"$(gear)"},{"command":"gitlens.showSettingsPage#contributors-view","title":"Open View Settings","category":"GitLens","icon":"$(gear)"},{"command":"gitlens.showSettingsPage#file-history-view","title":"Open View Settings","category":"GitLens","icon":"$(gear)"},{"command":"gitlens.showSettingsPage#line-history-view","title":"Open View Settings","category":"GitLens","icon":"$(gear)"},{"command":"gitlens.showSettingsPage#remotes-view","title":"Open View Settings","category":"GitLens","icon":"$(gear)"},{"command":"gitlens.showSettingsPage#repositories-view","title":"Open View Settings","category":"GitLens","icon":"$(gear)"},{"command":"gitlens.showSettingsPage#search-compare-view","title":"Open View Settings","category":"GitLens","icon":"$(gear)"},{"command":"gitlens.showSettingsPage#stashes-view","title":"Open View Settings","category":"GitLens","icon":"$(gear)"},{"command":"gitlens.showSettingsPage#tags-view","title":"Open View Settings","category":"GitLens","icon":"$(gear)"},{"command":"gitlens.showSettingsPage#worktrees-view","title":"Open View Settings","category":"GitLens","icon":"$(gear)"},{"command":"gitlens.showSettingsPage#commit-graph","title":"Open Commit Graph Settings","category":"GitLens","icon":"$(gear)"},{"command":"gitlens.showTimelinePage","title":"Open Visual File History","category":"GitLens","icon":"$(graph-scatter)"},{"command":"gitlens.showStashesView","title":"Show Stashes View","category":"GitLens"},{"command":"gitlens.showTagsView","title":"Show Tags View","category":"GitLens"},{"command":"gitlens.showTimelineView","title":"Show Visual File History View","category":"GitLens"},{"command":"gitlens.showWelcomePage","title":"Welcome","category":"GitLens"},{"command":"gitlens.showWorktreesView","title":"Show Worktrees View","category":"GitLens"},{"command":"gitlens.showWorkspacesView","title":"Show GitKraken Workspaces View","category":"GitLens"},{"command":"gitlens.compareWith","title":"Compare References...","category":"GitLens","icon":"$(compare-changes)"},{"command":"gitlens.compareHeadWith","title":"Compare HEAD with...","category":"GitLens","icon":"$(compare-changes)"},{"command":"gitlens.compareWorkingWith","title":"Compare Working Tree with...","category":"GitLens","icon":"$(compare-changes)"},{"command":"gitlens.diffDirectory","title":"Open Directory Compare (difftool) with...","category":"GitLens"},{"command":"gitlens.diffDirectoryWithHead","title":"Open Directory Compare (difftool)","category":"GitLens"},{"command":"gitlens.diffWithNext","title":"Open Changes with Next Revision","category":"GitLens","icon":"$(gitlens-next-commit)","enablement":"gitlens:activeFileStatus =~ /revision/"},{"command":"gitlens.diffWithNextInDiffLeft","title":"Open Changes with Next Revision","category":"GitLens","icon":"$(gitlens-next-commit)","enablement":"gitlens:activeFileStatus =~ /revision/"},{"command":"gitlens.diffWithNextInDiffRight","title":"Open Changes with Next Revision","category":"GitLens","icon":"$(gitlens-next-commit)","enablement":"gitlens:activeFileStatus =~ /revision/"},{"command":"gitlens.diffWithPrevious","title":"Open Changes with Previous Revision","category":"GitLens","icon":"$(gitlens-prev-commit)"},{"command":"gitlens.diffWithPreviousInDiffLeft","title":"Open Changes with Previous Revision","category":"GitLens","icon":"$(gitlens-prev-commit)"},{"command":"gitlens.diffWithPreviousInDiffRight","title":"Open Changes with Previous Revision","category":"GitLens","icon":"$(gitlens-prev-commit)"},{"command":"gitlens.diffLineWithPrevious","title":"Open Line Changes with Previous Revision","category":"GitLens"},{"command":"gitlens.diffWithRevision","title":"Open Changes with Revision...","category":"GitLens","icon":"$(gitlens-prev-commit-menu)"},{"command":"gitlens.diffWithRevisionFrom","title":"Open Changes with Branch or Tag...","category":"GitLens"},{"command":"gitlens.diffWithWorking","title":"Open Changes with Working File","category":"GitLens","icon":"$(gitlens-compare-ref-working)"},{"command":"gitlens.diffWithWorkingInDiffLeft","title":"Open Changes with Working File","category":"GitLens","icon":"$(gitlens-compare-ref-working)"},{"command":"gitlens.diffWithWorkingInDiffRight","title":"Open Changes with Working File","category":"GitLens","icon":"$(gitlens-compare-ref-working)"},{"command":"gitlens.diffLineWithWorking","title":"Open Line Changes with Working File","category":"GitLens"},{"command":"gitlens.disableRebaseEditor","title":"Disable Interactive Rebase Editor","category":"GitLens"},{"command":"gitlens.enableRebaseEditor","title":"Enable Interactive Rebase Editor","category":"GitLens"},{"command":"gitlens.toggleFileBlame","title":"Toggle File Blame","category":"GitLens","icon":{"dark":"images/dark/icon-git.svg","light":"images/light/icon-git.svg"}},{"command":"gitlens.toggleFileBlameInDiffLeft","title":"Toggle File Blame","category":"GitLens","icon":{"dark":"images/dark/icon-git.svg","light":"images/light/icon-git.svg"}},{"command":"gitlens.toggleFileBlameInDiffRight","title":"Toggle File Blame","category":"GitLens","icon":{"dark":"images/dark/icon-git.svg","light":"images/light/icon-git.svg"}},{"command":"gitlens.clearFileAnnotations","title":"Clear File Annotations","category":"GitLens","icon":{"dark":"images/dark/icon-git-orange.svg","light":"images/light/icon-git-orange.svg"}},{"command":"gitlens.computingFileAnnotations","title":"Computing File Annotations...","category":"GitLens","icon":{"dark":"images/dark/icon-git-progress.svg","light":"images/light/icon-git-progress.svg"}},{"command":"gitlens.toggleFileHeatmap","title":"Toggle File Heatmap","category":"GitLens","icon":{"dark":"images/dark/icon-git.svg","light":"images/light/icon-git.svg"}},{"command":"gitlens.toggleFileHeatmapInDiffLeft","title":"Toggle File Heatmap","category":"GitLens","icon":{"dark":"images/dark/icon-git.svg","light":"images/light/icon-git.svg"}},{"command":"gitlens.toggleFileHeatmapInDiffRight","title":"Toggle File Heatmap","category":"GitLens","icon":{"dark":"images/dark/icon-git.svg","light":"images/light/icon-git.svg"}},{"command":"gitlens.toggleFileChanges","title":"Toggle File Changes","category":"GitLens","icon":{"dark":"images/dark/icon-git.svg","light":"images/light/icon-git.svg"}},{"command":"gitlens.toggleFileChangesOnly","title":"Toggle File Changes","category":"GitLens","icon":{"dark":"images/dark/icon-git.svg","light":"images/light/icon-git.svg"}},{"command":"gitlens.toggleLineBlame","title":"Toggle Line Blame","category":"GitLens"},{"command":"gitlens.toggleCodeLens","title":"Toggle Git CodeLens","category":"GitLens"},{"command":"gitlens.gitCommands","title":"Git Command Palette","category":"GitLens"},{"command":"gitlens.gitCommands.branch","title":"Git Branch...","category":"GitLens"},{"command":"gitlens.gitCommands.cherryPick","title":"Git Cherry Pick...","category":"GitLens"},{"command":"gitlens.gitCommands.merge","title":"Git Merge...","category":"GitLens"},{"command":"gitlens.gitCommands.rebase","title":"Git Rebase...","category":"GitLens"},{"command":"gitlens.gitCommands.reset","title":"Git Reset...","category":"GitLens"},{"command":"gitlens.gitCommands.revert","title":"Git Revert...","category":"GitLens"},{"command":"gitlens.gitCommands.switch","title":"Git Switch...","category":"GitLens"},{"command":"gitlens.gitCommands.tag","title":"Git Tag...","category":"GitLens"},{"command":"gitlens.gitCommands.worktree","title":"Git Worktree...","category":"GitLens"},{"command":"gitlens.gitCommands.worktree.open","title":"Open Git Worktree...","category":"GitLens"},{"command":"gitlens.switchAIModel","title":"Switch AI Model","category":"GitLens"},{"command":"gitlens.switchMode","title":"Switch Mode","category":"GitLens"},{"command":"gitlens.toggleReviewMode","title":"Toggle Review Mode","category":"GitLens"},{"command":"gitlens.toggleZenMode","title":"Toggle Zen Mode","category":"GitLens"},{"command":"gitlens.resetViewsLayout","title":"Reset Views Layout","category":"GitLens"},{"command":"gitlens.showCommitSearch","title":"Search Commits","category":"GitLens","icon":"$(search)"},{"command":"gitlens.showLastQuickPick","title":"Show Last Opened Quick Pick","category":"GitLens"},{"command":"gitlens.revealCommitInView","title":"Reveal Commit in Side Bar","category":"GitLens"},{"command":"gitlens.showCommitInView","title":"Open Commit Details","category":"GitLens","icon":"$(eye)"},{"command":"gitlens.showLineCommitInView","title":"Open Line Commit Details","category":"GitLens","icon":"$(eye)"},{"command":"gitlens.showInDetailsView","title":"Open Details","category":"GitLens","icon":"$(eye)"},{"command":"gitlens.showCommitsInView","title":"Search for Commits within Selection","category":"GitLens"},{"command":"gitlens.showFileHistoryInView","title":"Open File History","category":"GitLens"},{"command":"gitlens.openFileHistory","title":"Open File History","category":"GitLens"},{"command":"gitlens.openFolderHistory","title":"Open Folder History","category":"GitLens"},{"command":"gitlens.showQuickCommitDetails","title":"Quick Show Commit","category":"GitLens"},{"command":"gitlens.showQuickCommitFileDetails","title":"Quick Show Line Commit","category":"GitLens"},{"command":"gitlens.showQuickRevisionDetails","title":"Show Revision Commit","category":"GitLens","icon":"$(gitlens-commit-horizontal)","enablement":"gitlens:activeFileStatus =~ /revision/ && resourceScheme != git"},{"command":"gitlens.showQuickRevisionDetailsInDiffLeft","title":"Show Revision Commit","category":"GitLens","icon":"$(gitlens-commit-horizontal)","enablement":"gitlens:activeFileStatus =~ /revision/ && resourceScheme != git"},{"command":"gitlens.showQuickRevisionDetailsInDiffRight","title":"Show Revision Commit","category":"GitLens","icon":"$(gitlens-commit-horizontal)","enablement":"gitlens:activeFileStatus =~ /revision/ && resourceScheme != git"},{"command":"gitlens.showQuickFileHistory","title":"Show File History","category":"GitLens"},{"command":"gitlens.quickOpenFileHistory","title":"Quick Open File History","category":"GitLens"},{"command":"gitlens.showQuickBranchHistory","title":"Show Branch History","category":"GitLens"},{"command":"gitlens.showQuickRepoHistory","title":"Show Current Branch History","category":"GitLens"},{"command":"gitlens.showQuickRepoStatus","title":"Show Repository Status","category":"GitLens"},{"command":"gitlens.showQuickStashList","title":"Show Stashes","category":"GitLens"},{"command":"gitlens.addAuthors","title":"Add Co-authors","category":"GitLens","icon":"$(person-add)"},{"command":"gitlens.connectRemoteProvider","title":"Connect to Remote","category":"GitLens","icon":"$(plug)"},{"command":"gitlens.disconnectRemoteProvider","title":"Disconnect from Remote","category":"GitLens","icon":"$(gitlens-unplug)"},{"command":"gitlens.copyCurrentBranch","title":"Copy Current Branch Name","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.copyMessageToClipboard","title":"Copy Message","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.copyShaToClipboard","title":"Copy SHA","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.copyRelativePathToClipboard","title":"Copy Relative Path","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.closeUnchangedFiles","title":"Close Unchanged Files","category":"GitLens"},{"command":"gitlens.openChangedFiles","title":"Open Changed Files","category":"GitLens"},{"command":"gitlens.openOnlyChangedFiles","title":"Open Changed & Close Unchanged Files","category":"GitLens"},{"command":"gitlens.openBranchesOnRemote","title":"Open Branches on Remote","category":"GitLens","icon":"$(globe)"},{"command":"gitlens.copyDeepLinkToBranch","title":"Copy Link to Branch","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.copyDeepLinkToCommit","title":"Copy Link to Commit","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.copyDeepLinkToComparison","title":"Copy Link to Comparison","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.copyDeepLinkToRepo","title":"Copy Link to Repository","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.copyDeepLinkToTag","title":"Copy Link to Tag","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.copyRemoteBranchesUrl","title":"Copy Remote Branches URL","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.openBranchOnRemote","title":"Open Branch on Remote","category":"GitLens","icon":"$(globe)"},{"command":"gitlens.openCurrentBranchOnRemote","title":"Open Current Branch on Remote","category":"GitLens","icon":"$(globe)"},{"command":"gitlens.copyRemoteBranchUrl","title":"Copy Remote Branch URL","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.openCommitOnRemote","title":"Open Commit on Remote","category":"GitLens","icon":"$(globe)"},{"command":"gitlens.copyRemoteCommitUrl","title":"Copy Remote Commit URL","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.openComparisonOnRemote","title":"Open Comparison on Remote","category":"GitLens","icon":"$(globe)"},{"command":"gitlens.copyRemoteComparisonUrl","title":"Copy Remote Comparison URL","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.openFileFromRemote","title":"Open File from Remote","category":"GitLens"},{"command":"gitlens.openFileOnRemote","title":"Open File on Remote","category":"GitLens","icon":"$(globe)"},{"command":"gitlens.copyRemoteFileUrlToClipboard","title":"Copy Remote File URL","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.copyRemoteFileUrlWithoutRange","title":"Copy Remote File URL","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.openFileOnRemoteFrom","title":"Open File on Remote From...","category":"GitLens","icon":"$(globe)"},{"command":"gitlens.copyRemoteFileUrlFrom","title":"Copy Remote File URL From...","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.openBlamePriorToChange","title":"Open Blame Prior to Change","icon":"$(versions)","category":"GitLens"},{"command":"gitlens.openFileRevision","title":"Open File at Revision...","icon":"$(gitlens-open-revision)","category":"GitLens"},{"command":"gitlens.openFileRevisionFrom","title":"Open File at Revision from...","icon":"$(gitlens-open-revision)","category":"GitLens"},{"command":"gitlens.openAutolinkUrl","title":"Open Autolink URL","category":"GitLens","icon":"$(globe)"},{"command":"gitlens.copyAutolinkUrl","title":"Copy Autolink URL","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.openIssueOnRemote","title":"Open Issue on Remote","category":"GitLens","icon":"$(globe)"},{"command":"gitlens.copyRemoteIssueUrl","title":"Copy Issue URL","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.openPullRequestOnRemote","title":"Open Pull Request on Remote","category":"GitLens","icon":"$(globe)"},{"command":"gitlens.copyRemotePullRequestUrl","title":"Copy Pull Request URL","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.openAssociatedPullRequestOnRemote","title":"Open Associated Pull Request","category":"GitLens","icon":"$(git-pull-request)"},{"command":"gitlens.openRepoOnRemote","title":"Open Repository on Remote","category":"GitLens","icon":"$(globe)"},{"command":"gitlens.copyRemoteRepositoryUrl","title":"Copy Remote Repository URL","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.openRevisionFile","title":"Open File at Revision","category":"GitLens","icon":"$(gitlens-open-revision)","enablement":"gitlens:activeFileStatus =~ /revision/ && resourceScheme != git"},{"command":"gitlens.openRevisionFileInDiffLeft","title":"Open File at Revision","category":"GitLens","icon":"$(gitlens-open-revision)","enablement":"gitlens:activeFileStatus =~ /revision/ && resourceScheme != git"},{"command":"gitlens.openRevisionFileInDiffRight","title":"Open File at Revision","category":"GitLens","icon":"$(gitlens-open-revision)","enablement":"gitlens:activeFileStatus =~ /revision/ && resourceScheme != git"},{"command":"gitlens.openWorkingFile","title":"Open File","category":"GitLens","icon":"$(go-to-file)"},{"command":"gitlens.openWorkingFileInDiffLeft","title":"Open File","category":"GitLens","icon":"$(go-to-file)"},{"command":"gitlens.openWorkingFileInDiffRight","title":"Open File","category":"GitLens","icon":"$(go-to-file)"},{"command":"gitlens.stashApply","title":"Apply Stash","category":"GitLens","icon":"$(gitlens-stash-pop)","enablement":"!operationInProgress"},{"command":"gitlens.views.stash.delete","title":"Drop Stash...","category":"GitLens","icon":"$(trash)","enablement":"!operationInProgress"},{"command":"gitlens.views.stash.rename","title":"Rename Stash...","category":"GitLens","icon":"$(edit)","enablement":"!operationInProgress"},{"command":"gitlens.stashSave","title":"Stash All Changes","category":"GitLens","icon":"$(gitlens-stash-save)","enablement":"!operationInProgress"},{"command":"gitlens.stashSaveFiles","title":"Stash Changes","category":"GitLens","icon":"$(gitlens-stash-save)","enablement":"!operationInProgress"},{"command":"gitlens.externalDiff","title":"Open Changes (difftool)","category":"GitLens"},{"command":"gitlens.externalDiffAll","title":"Open All Changes (difftool)","category":"GitLens"},{"command":"gitlens.resetAvatarCache","title":"Reset Avatar Cache","category":"GitLens"},{"command":"gitlens.resetSuppressedWarnings","title":"Reset Suppressed Warnings","category":"GitLens"},{"command":"gitlens.resetTrackedUsage","title":"Reset Tracked Usage","category":"GitLens"},{"command":"gitlens.inviteToLiveShare","title":"Invite to Live Share","category":"GitLens","icon":"$(live-share)"},{"command":"gitlens.browseRepoAtRevision","title":"Browse Repository from Revision","category":"GitLens","icon":"$(folder-opened)","enablement":"gitlens:activeFileStatus =~ /revision/ && resourceScheme != git"},{"command":"gitlens.browseRepoAtRevisionInNewWindow","title":"Browse Repository from Revision in New Window","category":"GitLens","icon":"$(folder-opened)","enablement":"gitlens:activeFileStatus =~ /revision/ && resourceScheme != git"},{"command":"gitlens.browseRepoBeforeRevision","title":"Browse Repository from Before Revision","category":"GitLens","icon":"$(folder-opened)","enablement":"gitlens:activeFileStatus =~ /revision/ && resourceScheme != git"},{"command":"gitlens.browseRepoBeforeRevisionInNewWindow","title":"Browse Repository from Before Revision in New Window","category":"GitLens","icon":"$(folder-opened)","enablement":"gitlens:activeFileStatus =~ /revision/ && resourceScheme != git"},{"command":"gitlens.views.browseRepoAtRevision","title":"Repository from Here","category":"GitLens","icon":"$(folder-opened)"},{"command":"gitlens.views.browseRepoAtRevisionInNewWindow","title":"Repository from Here in New Window","category":"GitLens","icon":"$(folder-opened)"},{"command":"gitlens.views.browseRepoBeforeRevision","title":"Repository from Before Here","category":"GitLens","icon":"$(folder-opened)"},{"command":"gitlens.views.browseRepoBeforeRevisionInNewWindow","title":"Repository from Before Here in New Window","category":"GitLens","icon":"$(folder-opened)"},{"command":"gitlens.fetchRepositories","title":"Fetch","category":"GitLens","icon":"$(sync)","enablement":"!operationInProgress"},{"command":"gitlens.pullRepositories","title":"Pull","category":"GitLens","icon":"$(arrow-down)","enablement":"!operationInProgress"},{"command":"gitlens.pushRepositories","title":"Push","category":"GitLens","icon":"$(arrow-up)","enablement":"!operationInProgress"},{"command":"gitlens.views.addRemote","title":"Add Remote","category":"GitLens","icon":"$(add)","enablement":"!operationInProgress"},{"command":"gitlens.views.highlightChanges","title":"Highlight All Changes Since Before this Commit","category":"GitLens"},{"command":"gitlens.views.highlightRevisionChanges","title":"Highlight Changes from this Commit","category":"GitLens"},{"command":"gitlens.views.restore","title":"Restore (Checkout)","category":"GitLens","icon":"$(gitlens-switch)"},{"command":"gitlens.views.switchToAnotherBranch","title":"Switch to Another Branch...","category":"GitLens","icon":"$(gitlens-switch)","enablement":"!operationInProgress"},{"command":"gitlens.views.switchToBranch","title":"Switch to Branch...","category":"GitLens","icon":"$(gitlens-switch)","enablement":"!operationInProgress"},{"command":"gitlens.views.switchToCommit","title":"Switch to Commit...","category":"GitLens","icon":"$(gitlens-switch)","enablement":"!operationInProgress"},{"command":"gitlens.views.switchToTag","title":"Switch to Tag...","category":"GitLens","icon":"$(gitlens-switch)","enablement":"!operationInProgress"},{"command":"gitlens.views.copy","title":"Copy","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.views.pruneRemote","title":"Prune","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.views.fetch","title":"Fetch","category":"GitLens","icon":"$(sync)","enablement":"!operationInProgress"},{"command":"gitlens.views.publishBranch","title":"Publish Branch","category":"GitLens","icon":"$(cloud-upload)","enablement":"!operationInProgress"},{"command":"gitlens.views.publishRepository","title":"Publish Repository","category":"GitLens","icon":"$(cloud-upload)","enablement":"!operationInProgress"},{"command":"gitlens.views.pull","title":"Pull","category":"GitLens","icon":"$(arrow-down)","enablement":"!operationInProgress"},{"command":"gitlens.views.push","title":"Push","category":"GitLens","icon":"$(arrow-up)","enablement":"!operationInProgress"},{"command":"gitlens.views.pushWithForce","title":"Push (force)","category":"GitLens","icon":"$(gitlens-arrow-up-force)","enablement":"!operationInProgress"},{"command":"gitlens.views.openInTerminal","title":"Open in Terminal","category":"GitLens"},{"command":"gitlens.views.setAsDefault","title":"Set as Default","category":"GitLens"},{"command":"gitlens.views.unsetAsDefault","title":"Unset as Default","category":"GitLens"},{"command":"gitlens.views.stageDirectory","title":"Stage All Changes","category":"GitLens","icon":"$(add)","enablement":"!operationInProgress"},{"command":"gitlens.views.stageFile","title":"Stage Changes","category":"GitLens","icon":"$(add)","enablement":"!operationInProgress"},{"command":"gitlens.views.unstageDirectory","title":"Unstage All Changes","category":"GitLens","icon":"$(remove)","enablement":"!operationInProgress"},{"command":"gitlens.views.unstageFile","title":"Unstage Changes","category":"GitLens","icon":"$(remove)","enablement":"!operationInProgress"},{"command":"gitlens.views.star","title":"Add to Favorites","category":"GitLens","icon":"$(star-empty)"},{"command":"gitlens.views.unstar","title":"Remove from Favorites","category":"GitLens","icon":"$(star-full)"},{"command":"gitlens.views.openDirectoryDiff","title":"Open Directory Compare","category":"GitLens"},{"command":"gitlens.views.openDirectoryDiffWithWorking","title":"Open Directory Compare with Working Tree","category":"GitLens"},{"command":"gitlens.views.openChanges","title":"Open Changes","category":"GitLens","icon":"$(compare-changes)"},{"command":"gitlens.views.openChangesWithWorking","title":"Open Changes with Working File","category":"GitLens","icon":"$(gitlens-compare-ref-working)"},{"command":"gitlens.views.openPreviousChangesWithWorking","title":"Open Previous Changes with Working File","category":"GitLens"},{"command":"gitlens.views.openFile","title":"Open File","category":"GitLens","icon":"$(go-to-file)"},{"command":"gitlens.views.openFileRevision","title":"Open File at Revision","category":"GitLens","icon":"$(gitlens-open-revision)"},{"command":"gitlens.views.openChangedFiles","title":"Open Files","category":"GitLens"},{"command":"gitlens.views.openChangedFileDiffs","title":"Open All Changes","category":"GitLens"},{"command":"gitlens.views.openChangedFileDiffsWithWorking","title":"Open All Changes with Working Tree","category":"GitLens"},{"command":"gitlens.views.openChangedFileRevisions","title":"Open Files at Revision","category":"GitLens"},{"command":"gitlens.views.openOnlyChangedFiles","title":"Open Changed & Close Unchanged Files","category":"GitLens"},{"command":"gitlens.views.applyChanges","title":"Apply Changes","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.views.closeRepository","title":"Close Repository","category":"GitLens"},{"command":"gitlens.views.compareAncestryWithWorking","title":"Compare Ancestry with Working Tree","category":"GitLens"},{"command":"gitlens.views.compareWithHead","title":"Compare with HEAD","category":"GitLens","icon":"$(compare-changes)"},{"command":"gitlens.views.compareWithUpstream","title":"Compare with Upstream","category":"GitLens"},{"command":"gitlens.views.compareWithSelected","title":"Compare with Selected","category":"GitLens"},{"command":"gitlens.views.selectForCompare","title":"Select for Compare","category":"GitLens"},{"command":"gitlens.views.compareFileWithSelected","title":"Compare with Selected","category":"GitLens"},{"command":"gitlens.views.selectFileForCompare","title":"Select for Compare","category":"GitLens"},{"command":"gitlens.views.compareWithWorking","title":"Compare with Working Tree","category":"GitLens","icon":"$(gitlens-compare-ref-working)"},{"command":"gitlens.views.addAuthors","title":"Add Co-authors","category":"GitLens","icon":"$(person-add)"},{"command":"gitlens.views.addAuthor","title":"Add as Co-author","category":"GitLens","icon":"$(person-add)"},{"command":"gitlens.views.title.applyStash","title":"Apply a Stash...","category":"GitLens","icon":"$(gitlens-stash-pop)","enablement":"!operationInProgress"},{"command":"gitlens.views.createWorktree","title":"Create Worktree...","category":"GitLens","icon":"$(add)","enablement":"!operationInProgress"},{"command":"gitlens.ghpr.views.openOrCreateWorktree","title":"Open Worktree for Pull Request via GitLens...","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.views.title.createWorktree","title":"Create Worktree...","category":"GitLens","icon":"$(add)","enablement":"!operationInProgress"},{"command":"gitlens.views.deleteWorktree","title":"Delete Worktree...","category":"GitLens","icon":"$(trash)","enablement":"!operationInProgress"},{"command":"gitlens.views.openWorktree","title":"Open Worktree","category":"GitLens","icon":"$(window)"},{"command":"gitlens.views.openWorktreeInNewWindow","title":"Open Worktree in New Window","category":"GitLens","icon":"$(empty-window)"},{"command":"gitlens.views.revealRepositoryInExplorer","title":"Reveal in File Explorer","category":"GitLens"},{"command":"gitlens.views.revealWorktreeInExplorer","title":"Reveal in File Explorer","category":"GitLens"},{"command":"gitlens.views.cherryPick","title":"Cherry Pick Commit...","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.views.createBranch","title":"Create Branch...","category":"GitLens","icon":"$(add)","enablement":"!operationInProgress"},{"command":"gitlens.views.title.createBranch","title":"Create Branch...","category":"GitLens","icon":"$(add)","enablement":"!operationInProgress"},{"command":"gitlens.views.deleteBranch","title":"Delete Branch...","category":"GitLens","icon":"$(trash)","enablement":"!operationInProgress"},{"command":"gitlens.views.renameBranch","title":"Rename Branch...","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.views.createTag","title":"Create Tag...","category":"GitLens","icon":"$(add)","enablement":"!operationInProgress"},{"command":"gitlens.views.title.createTag","title":"Create Tag...","category":"GitLens","icon":"$(add)","enablement":"!operationInProgress"},{"command":"gitlens.views.deleteTag","title":"Delete Tag...","category":"GitLens","icon":"$(trash)","enablement":"!operationInProgress"},{"command":"gitlens.views.mergeBranchInto","title":"Merge Branch into Current Branch...","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.views.pushToCommit","title":"Push to Commit...","category":"GitLens","icon":"$(arrow-up)","enablement":"!operationInProgress"},{"command":"gitlens.views.rebaseOntoBranch","title":"Rebase Current Branch onto Branch...","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.views.rebaseOntoCommit","title":"Rebase Current Branch onto Commit...","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.views.rebaseOntoUpstream","title":"Rebase Current Branch onto Upstream...","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.views.removeRemote","title":"Remove Remote...","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.views.resetCommit","title":"Reset Current Branch to Previous Commit...","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.views.resetToCommit","title":"Reset Current Branch to Commit...","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.views.resetToTip","title":"Reset Current Branch to Tip...","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.views.revert","title":"Revert Commit...","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.views.undoCommit","title":"Undo Commit","category":"GitLens","icon":"$(discard)","enablement":"!operationInProgress"},{"command":"gitlens.views.setBranchComparisonToWorking","title":"Toggle Compare with: Branch","category":"GitLens","icon":"$(compare-changes)"},{"command":"gitlens.views.setBranchComparisonToBranch","title":"Toggle Compare with: Working Tree","category":"GitLens","icon":"$(compare-changes)"},{"command":"gitlens.views.createPullRequest","title":"Create Pull Request...","category":"GitLens","icon":"$(git-pull-request-create)"},{"command":"gitlens.views.openPullRequest","title":"Open Pull Request","category":"GitLens","icon":"$(git-pull-request)"},{"command":"gitlens.views.clearNode","title":"Clear","category":"GitLens","icon":"$(close)"},{"command":"gitlens.views.dismissNode","title":"Dismiss","category":"GitLens","icon":"$(close)"},{"command":"gitlens.views.editNode","title":"Edit...","category":"GitLens","icon":"$(edit)"},{"command":"gitlens.views.expandNode","title":"Expand","category":"GitLens"},{"command":"gitlens.views.refreshNode","title":"Refresh","category":"GitLens","icon":"$(refresh)"},{"command":"gitlens.views.loadMoreChildren","title":"Load More","category":"GitLens"},{"command":"gitlens.views.loadAllChildren","title":"Load All","category":"GitLens","icon":"$(gitlens-expand)"},{"command":"gitlens.views.setShowRelativeDateMarkersOn","title":"Show Date Markers","category":"GitLens"},{"command":"gitlens.views.setShowRelativeDateMarkersOff","title":"Hide Date Markers","category":"GitLens"},{"command":"gitlens.views.branches.copy","title":"Copy","category":"GitLens"},{"command":"gitlens.views.branches.refresh","title":"Refresh","category":"GitLens","icon":"$(refresh)"},{"command":"gitlens.views.branches.setLayoutToList","title":"Toggle View: Tree","category":"GitLens","icon":"$(list-tree)"},{"command":"gitlens.views.branches.setLayoutToTree","title":"Toggle View: List","category":"GitLens","icon":"$(list-flat)"},{"command":"gitlens.views.branches.setFilesLayoutToAuto","title":"Toggle Files View: Tree","category":"GitLens","icon":"$(list-tree)"},{"command":"gitlens.views.branches.setFilesLayoutToList","title":"Toggle Files View: Auto","category":"GitLens","icon":"$(gitlens-list-auto)"},{"command":"gitlens.views.branches.setFilesLayoutToTree","title":"Toggle Files View: List","category":"GitLens","icon":"$(list-flat)"},{"command":"gitlens.views.branches.setShowAvatarsOn","title":"Show Avatars","category":"GitLens"},{"command":"gitlens.views.branches.setShowAvatarsOff","title":"Hide Avatars","category":"GitLens"},{"command":"gitlens.views.branches.setShowBranchComparisonOn","title":"Show Branch Comparisons","category":"GitLens"},{"command":"gitlens.views.branches.setShowBranchComparisonOff","title":"Hide Branch Comparisons","category":"GitLens"},{"command":"gitlens.views.branches.setShowBranchPullRequestOn","title":"Show Branch Pull Requests","category":"GitLens"},{"command":"gitlens.views.branches.setShowBranchPullRequestOff","title":"Hide Branch Pull Requests","category":"GitLens"},{"command":"gitlens.views.commitDetails.refresh","title":"Refresh","category":"GitLens","icon":"$(refresh)"},{"command":"gitlens.views.commits.copy","title":"Copy","category":"GitLens"},{"command":"gitlens.views.commits.refresh","title":"Refresh","category":"GitLens","icon":"$(refresh)"},{"command":"gitlens.views.commits.setFilesLayoutToAuto","title":"Toggle Files View: Tree","category":"GitLens","icon":"$(list-tree)"},{"command":"gitlens.views.commits.setFilesLayoutToList","title":"Toggle Files View: Auto","category":"GitLens","icon":"$(gitlens-list-auto)"},{"command":"gitlens.views.commits.setFilesLayoutToTree","title":"Toggle Files View: List","category":"GitLens","icon":"$(list-flat)"},{"command":"gitlens.views.commits.setMyCommitsOnlyOn","title":"Toggle Filter: All Commits","category":"GitLens","icon":"$(filter)"},{"command":"gitlens.views.commits.setMyCommitsOnlyOff","title":"Toggle Filter: Only My Commits","category":"GitLens","icon":"$(filter-filled)"},{"command":"gitlens.views.commits.setShowAvatarsOn","title":"Show Avatars","category":"GitLens"},{"command":"gitlens.views.commits.setShowAvatarsOff","title":"Hide Avatars","category":"GitLens"},{"command":"gitlens.views.commits.setShowBranchComparisonOn","title":"Show Branch Comparison","category":"GitLens"},{"command":"gitlens.views.commits.setShowBranchComparisonOff","title":"Hide Branch Comparison","category":"GitLens"},{"command":"gitlens.views.commits.setShowBranchPullRequestOn","title":"Show Current Branch Pull Request","category":"GitLens"},{"command":"gitlens.views.commits.setShowBranchPullRequestOff","title":"Hide Current Branch Pull Request","category":"GitLens"},{"command":"gitlens.views.contributors.copy","title":"Copy","category":"GitLens"},{"command":"gitlens.views.contributors.refresh","title":"Refresh","category":"GitLens","icon":"$(refresh)"},{"command":"gitlens.views.contributors.setFilesLayoutToAuto","title":"Toggle Files View: Tree","category":"GitLens","icon":"$(list-tree)"},{"command":"gitlens.views.contributors.setFilesLayoutToList","title":"Toggle Files View: Auto","category":"GitLens","icon":"$(gitlens-list-auto)"},{"command":"gitlens.views.contributors.setFilesLayoutToTree","title":"Toggle Files View: List","category":"GitLens","icon":"$(list-flat)"},{"command":"gitlens.views.contributors.setShowAllBranchesOn","title":"Toggle Filter: Only Current Branch","category":"GitLens"},{"command":"gitlens.views.contributors.setShowAllBranchesOff","title":"Toggle Filter: All Branches","category":"GitLens"},{"command":"gitlens.views.contributors.setShowAvatarsOn","title":"Show Avatars","category":"GitLens"},{"command":"gitlens.views.contributors.setShowAvatarsOff","title":"Hide Avatars","category":"GitLens"},{"command":"gitlens.views.contributors.setShowStatisticsOn","title":"Show Statistics","category":"GitLens"},{"command":"gitlens.views.contributors.setShowStatisticsOff","title":"Hide Statistics","category":"GitLens"},{"command":"gitlens.views.fileHistory.changeBase","title":"Change Base...","category":"GitLens","icon":"$(history)"},{"command":"gitlens.views.fileHistory.copy","title":"Copy","category":"GitLens"},{"command":"gitlens.views.fileHistory.refresh","title":"Refresh","category":"GitLens","icon":"$(refresh)"},{"command":"gitlens.views.fileHistory.setCursorFollowingOn","title":"Toggle History by: File","category":"GitLens","icon":"$(file)","enablement":"gitlens:views:fileHistory:editorFollowing"},{"command":"gitlens.views.fileHistory.setCursorFollowingOff","title":"Toggle History by: Selected Line(s)","category":"GitLens","icon":"$(list-selection)","enablement":"gitlens:views:fileHistory:editorFollowing || gitlens:views:fileHistory:cursorFollowing"},{"command":"gitlens.views.fileHistory.setEditorFollowingOn","title":"Unpin the Current History","category":"GitLens","icon":"$(pinned)"},{"command":"gitlens.views.fileHistory.setEditorFollowingOff","title":"Pin the Current History","category":"GitLens","icon":"$(pin)"},{"command":"gitlens.views.fileHistory.setRenameFollowingOn","title":"Toggle Follow Renames: Off","category":"GitLens","enablement":"!config.gitlens.advanced.fileHistoryShowAllBranches"},{"command":"gitlens.views.fileHistory.setRenameFollowingOff","title":"Toggle Follow Renames: On","category":"GitLens","enablement":"!config.gitlens.advanced.fileHistoryShowAllBranches"},{"command":"gitlens.views.fileHistory.setShowAllBranchesOn","title":"Toggle Filter: Only Current Branch","category":"GitLens"},{"command":"gitlens.views.fileHistory.setShowAllBranchesOff","title":"Toggle Filter: All Branches","category":"GitLens"},{"command":"gitlens.views.fileHistory.setShowAvatarsOn","title":"Show Avatars","category":"GitLens"},{"command":"gitlens.views.fileHistory.setShowAvatarsOff","title":"Hide Avatars","category":"GitLens"},{"command":"gitlens.views.graphDetails.refresh","title":"Refresh","category":"GitLens","icon":"$(refresh)"},{"command":"gitlens.views.home.refresh","title":"Refresh","category":"GitLens","icon":"$(refresh)"},{"command":"gitlens.views.account.refresh","title":"Refresh","category":"GitLens","icon":"$(refresh)"},{"command":"gitlens.views.lineHistory.changeBase","title":"Change Base...","category":"GitLens","icon":"$(history)"},{"command":"gitlens.views.lineHistory.copy","title":"Copy","category":"GitLens"},{"command":"gitlens.views.lineHistory.refresh","title":"Refresh","category":"GitLens","icon":"$(refresh)"},{"command":"gitlens.views.lineHistory.setEditorFollowingOn","title":"Unpin the Current History","category":"GitLens","icon":"$(pinned)"},{"command":"gitlens.views.lineHistory.setEditorFollowingOff","title":"Pin the Current History","category":"GitLens","icon":"$(pin)"},{"command":"gitlens.views.lineHistory.setShowAvatarsOn","title":"Show Avatars","category":"GitLens"},{"command":"gitlens.views.lineHistory.setShowAvatarsOff","title":"Hide Avatars","category":"GitLens"},{"command":"gitlens.views.remotes.copy","title":"Copy","category":"GitLens"},{"command":"gitlens.views.remotes.refresh","title":"Refresh","category":"GitLens","icon":"$(refresh)"},{"command":"gitlens.views.remotes.setLayoutToList","title":"Toggle View: Tree","category":"GitLens","icon":"$(list-tree)"},{"command":"gitlens.views.remotes.setLayoutToTree","title":"Toggle View: List","category":"GitLens","icon":"$(list-flat)"},{"command":"gitlens.views.remotes.setFilesLayoutToAuto","title":"Toggle Files View: Tree","category":"GitLens","icon":"$(list-tree)"},{"command":"gitlens.views.remotes.setFilesLayoutToList","title":"Toggle Files View: Auto","category":"GitLens","icon":"$(gitlens-list-auto)"},{"command":"gitlens.views.remotes.setFilesLayoutToTree","title":"Toggle Files View: List","category":"GitLens","icon":"$(list-flat)"},{"command":"gitlens.views.remotes.setShowAvatarsOn","title":"Show Avatars","category":"GitLens"},{"command":"gitlens.views.remotes.setShowAvatarsOff","title":"Hide Avatars","category":"GitLens"},{"command":"gitlens.views.remotes.setShowBranchPullRequestOn","title":"Show Branch Pull Requests","category":"GitLens"},{"command":"gitlens.views.remotes.setShowBranchPullRequestOff","title":"Hide Branch Pull Requests","category":"GitLens"},{"command":"gitlens.views.repositories.copy","title":"Copy","category":"GitLens"},{"command":"gitlens.views.repositories.refresh","title":"Refresh","category":"GitLens","icon":"$(refresh)"},{"command":"gitlens.views.repositories.setAutoRefreshToOn","title":"Enable Automatic Refresh","category":"GitLens"},{"command":"gitlens.views.repositories.setAutoRefreshToOff","title":"Disable Automatic Refresh","category":"GitLens"},{"command":"gitlens.views.repositories.setBranchesLayoutToList","title":"Toggle Branches View: Tree","category":"GitLens","icon":"$(list-tree)"},{"command":"gitlens.views.repositories.setBranchesLayoutToTree","title":"Toggle Branches View: List","category":"GitLens","icon":"$(list-flat)"},{"command":"gitlens.views.repositories.setFilesLayoutToAuto","title":"Toggle Files View: Tree","category":"GitLens","icon":"$(list-tree)"},{"command":"gitlens.views.repositories.setFilesLayoutToList","title":"Toggle Files View: Auto","category":"GitLens","icon":"$(gitlens-list-auto)"},{"command":"gitlens.views.repositories.setFilesLayoutToTree","title":"Toggle Files View: List","category":"GitLens","icon":"$(list-flat)"},{"command":"gitlens.views.repositories.setShowAvatarsOn","title":"Show Avatars","category":"GitLens"},{"command":"gitlens.views.repositories.setShowAvatarsOff","title":"Hide Avatars","category":"GitLens"},{"command":"gitlens.views.repositories.setShowBranchComparisonOn","title":"Show Branch Comparison","category":"GitLens"},{"command":"gitlens.views.repositories.setShowBranchComparisonOff","title":"Hide Branch Comparison","category":"GitLens"},{"command":"gitlens.views.repositories.setBranchesShowBranchComparisonOn","title":"Show Branch Comparisons","category":"GitLens"},{"command":"gitlens.views.repositories.setBranchesShowBranchComparisonOff","title":"Hide Branch Comparisons","category":"GitLens"},{"command":"gitlens.views.repositories.setShowBranchesOn","title":"Show Branches","category":"GitLens"},{"command":"gitlens.views.repositories.setShowBranchesOff","title":"Hide Branches","category":"GitLens"},{"command":"gitlens.views.repositories.setShowCommitsOn","title":"Show Commits","category":"GitLens"},{"command":"gitlens.views.repositories.setShowCommitsOff","title":"Hide Commits","category":"GitLens"},{"command":"gitlens.views.repositories.setShowContributorsOn","title":"Show Contributors","category":"GitLens"},{"command":"gitlens.views.repositories.setShowContributorsOff","title":"Hide Contributors","category":"GitLens"},{"command":"gitlens.views.repositories.setShowRemotesOn","title":"Show Remotes","category":"GitLens"},{"command":"gitlens.views.repositories.setShowRemotesOff","title":"Hide Remotes","category":"GitLens"},{"command":"gitlens.views.repositories.setShowStashesOn","title":"Show Stashes","category":"GitLens"},{"command":"gitlens.views.repositories.setShowStashesOff","title":"Hide Stashes","category":"GitLens"},{"command":"gitlens.views.repositories.setShowTagsOn","title":"Show Tags","category":"GitLens"},{"command":"gitlens.views.repositories.setShowTagsOff","title":"Hide Tags","category":"GitLens"},{"command":"gitlens.views.repositories.setShowWorktreesOn","title":"Show Worktrees","category":"GitLens"},{"command":"gitlens.views.repositories.setShowWorktreesOff","title":"Hide Worktrees","category":"GitLens"},{"command":"gitlens.views.repositories.setShowUpstreamStatusOn","title":"Show Current Branch Status","category":"GitLens"},{"command":"gitlens.views.repositories.setShowUpstreamStatusOff","title":"Hide Current Branch Status","category":"GitLens"},{"command":"gitlens.views.repositories.setShowSectionOff","title":"Hide","category":"GitLens"},{"command":"gitlens.views.searchAndCompare.clear","title":"Clear Results","category":"GitLens","icon":"$(clear-all)"},{"command":"gitlens.views.searchAndCompare.copy","title":"Copy","category":"GitLens"},{"command":"gitlens.views.searchAndCompare.pin","title":"Pin","category":"GitLens","icon":"$(pin)"},{"command":"gitlens.views.searchAndCompare.unpin","title":"Unpin","category":"GitLens","icon":"$(pinned)"},{"command":"gitlens.views.searchAndCompare.refresh","title":"Refresh","category":"GitLens","icon":"$(refresh)"},{"command":"gitlens.views.searchAndCompare.searchCommits","title":"Search Commits...","category":"GitLens","icon":"$(search)"},{"command":"gitlens.views.searchAndCompare.selectForCompare","title":"Compare References...","category":"GitLens","icon":"$(compare-changes)"},{"command":"gitlens.views.searchAndCompare.setFilesLayoutToAuto","title":"Toggle Files View: Tree","category":"GitLens","icon":"$(list-tree)"},{"command":"gitlens.views.searchAndCompare.setFilesLayoutToList","title":"Toggle Files View: Auto","category":"GitLens","icon":"$(gitlens-list-auto)"},{"command":"gitlens.views.searchAndCompare.setFilesLayoutToTree","title":"Toggle Files View: List","category":"GitLens","icon":"$(list-flat)"},{"command":"gitlens.views.searchAndCompare.setKeepResultsToOn","title":"Keep Results","category":"GitLens","icon":"$(unlock)"},{"command":"gitlens.views.searchAndCompare.setKeepResultsToOff","title":"Keep Results","category":"GitLens","icon":"$(lock)"},{"command":"gitlens.views.searchAndCompare.setShowAvatarsOn","title":"Show Avatars","category":"GitLens"},{"command":"gitlens.views.searchAndCompare.setShowAvatarsOff","title":"Hide Avatars","category":"GitLens"},{"command":"gitlens.views.searchAndCompare.swapComparison","title":"Swap Comparison","category":"GitLens","icon":"$(arrow-swap)","enablement":"viewItem =~ /gitlens:compare:results(?!:)\\b(?!.*?\\b\\+working\\b)/"},{"command":"gitlens.views.searchAndCompare.setFilesFilterOnLeft","title":"Show Left-side Files Only","category":"GitLens","enablement":"viewItem =~ /gitlens:results:files\\b(?!.*?\\b\\+filtered~left\\b)/"},{"command":"gitlens.views.searchAndCompare.setFilesFilterOnRight","title":"Show Right-side Files Only","category":"GitLens","enablement":"viewItem =~ /gitlens:results:files\\b(?!.*?\\b\\+filtered~right\\b)/"},{"command":"gitlens.views.searchAndCompare.setFilesFilterOff","title":"Clear Filter","category":"GitLens"},{"command":"gitlens.views.stashes.copy","title":"Copy","category":"GitLens"},{"command":"gitlens.views.stashes.refresh","title":"Refresh","category":"GitLens","icon":"$(refresh)"},{"command":"gitlens.views.stashes.setFilesLayoutToAuto","title":"Toggle Files View: Tree","category":"GitLens","icon":"$(list-tree)"},{"command":"gitlens.views.stashes.setFilesLayoutToList","title":"Toggle Files View: Auto","category":"GitLens","icon":"$(gitlens-list-auto)"},{"command":"gitlens.views.stashes.setFilesLayoutToTree","title":"Toggle Files View: List","category":"GitLens","icon":"$(list-flat)"},{"command":"gitlens.views.tags.copy","title":"Copy","category":"GitLens"},{"command":"gitlens.views.tags.refresh","title":"Refresh","category":"GitLens","icon":"$(refresh)"},{"command":"gitlens.views.tags.setLayoutToList","title":"Toggle View: Tree","category":"GitLens","icon":"$(list-tree)"},{"command":"gitlens.views.tags.setLayoutToTree","title":"Toggle View: List","category":"GitLens","icon":"$(list-flat)"},{"command":"gitlens.views.tags.setFilesLayoutToAuto","title":"Toggle Files View: Tree","category":"GitLens","icon":"$(list-tree)"},{"command":"gitlens.views.tags.setFilesLayoutToList","title":"Toggle Files View: Auto","category":"GitLens","icon":"$(gitlens-list-auto)"},{"command":"gitlens.views.tags.setFilesLayoutToTree","title":"Toggle Files View: List","category":"GitLens","icon":"$(list-flat)"},{"command":"gitlens.views.tags.setShowAvatarsOn","title":"Show Avatars","category":"GitLens"},{"command":"gitlens.views.tags.setShowAvatarsOff","title":"Hide Avatars","category":"GitLens"},{"command":"gitlens.views.timeline.refresh","title":"Refresh","category":"GitLens","icon":"$(refresh)"},{"command":"gitlens.views.workspaces.addRepos","title":"Add Repositories...","category":"GitLens","icon":"$(add)"},{"command":"gitlens.views.workspaces.addReposFromLinked","title":"Add Repositories from Linked Workspace...","category":"GitLens"},{"command":"gitlens.views.workspaces.info","title":"Learn more about GitKraken Workspaces...","category":"GitLens","icon":"$(info)"},{"command":"gitlens.views.workspaces.convert","title":"Convert to Cloud Workspace...","category":"GitLens","icon":"$(cloud-upload)"},{"command":"gitlens.views.workspaces.create","title":"Create Cloud Workspace...","category":"GitLens","icon":"$(add)"},{"command":"gitlens.views.workspaces.delete","title":"Delete Workspace...","category":"GitLens","icon":"$(trash)"},{"command":"gitlens.views.workspaces.locateAllRepos","title":"Locate Repositories...","category":"GitLens","icon":"$(location)"},{"command":"gitlens.views.workspaces.createLocal","title":"Create VS Code Workspace...","category":"GitLens","icon":"$(empty-window)"},{"command":"gitlens.views.workspaces.openLocal","title":"Open VS Code Workspace in Current Window...","category":"GitLens","icon":"$(window)"},{"command":"gitlens.views.workspaces.openLocalNewWindow","title":"Open VS Code Workspace in New Window...","category":"GitLens","icon":"$(window)"},{"command":"gitlens.views.workspaces.changeAutoAddSetting","title":"Change Linked Workspace Auto-Add Behavior...","category":"GitLens"},{"command":"gitlens.views.workspaces.repo.locate","title":"Locate Repository...","category":"GitLens","icon":"$(location)"},{"command":"gitlens.views.workspaces.repo.open","title":"Open Repository","category":"GitLens","icon":"$(window)"},{"command":"gitlens.views.workspaces.repo.openInNewWindow","title":"Open Repository in New Window","category":"GitLens","icon":"$(empty-window)"},{"command":"gitlens.views.workspaces.repo.addToWindow","title":"Add Repository to VS Code Workspace","category":"GitLens"},{"command":"gitlens.views.workspaces.repo.remove","title":"Remove from Workspace...","category":"GitLens","icon":"$(trash)"},{"command":"gitlens.views.workspaces.copy","title":"Copy","category":"GitLens"},{"command":"gitlens.views.workspaces.refresh","title":"Refresh","category":"GitLens","icon":"$(refresh)"},{"command":"gitlens.views.worktrees.copy","title":"Copy","category":"GitLens"},{"command":"gitlens.views.worktrees.refresh","title":"Refresh","category":"GitLens","icon":"$(refresh)"},{"command":"gitlens.views.worktrees.setFilesLayoutToAuto","title":"Toggle Files View: Tree","category":"GitLens","icon":"$(list-tree)"},{"command":"gitlens.views.worktrees.setFilesLayoutToList","title":"Toggle Files View: Auto","category":"GitLens","icon":"$(gitlens-list-auto)"},{"command":"gitlens.views.worktrees.setFilesLayoutToTree","title":"Toggle Files View: List","category":"GitLens","icon":"$(list-flat)"},{"command":"gitlens.views.worktrees.setShowAvatarsOn","title":"Show Avatars","category":"GitLens"},{"command":"gitlens.views.worktrees.setShowAvatarsOff","title":"Hide Avatars","category":"GitLens"},{"command":"gitlens.views.worktrees.setShowBranchComparisonOn","title":"Show Branch Comparison","category":"GitLens"},{"command":"gitlens.views.worktrees.setShowBranchComparisonOff","title":"Hide Branch Comparison","category":"GitLens"},{"command":"gitlens.views.worktrees.setShowBranchPullRequestOn","title":"Show Branch Pull Requests","category":"GitLens"},{"command":"gitlens.views.worktrees.setShowBranchPullRequestOff","title":"Hide Branch Pull Requests","category":"GitLens"},{"command":"gitlens.enableDebugLogging","title":"Enable Debug Logging","category":"GitLens"},{"command":"gitlens.disableDebugLogging","title":"Disable Debug Logging","category":"GitLens"},{"command":"gitlens.focus.refresh","title":"Refresh","category":"GitLens","icon":"$(refresh)"},{"command":"gitlens.graph.switchToEditorLayout","title":"Switch Commit Graph to Editor Layout","category":"GitLens"},{"command":"gitlens.graph.switchToPanelLayout","title":"Switch Commit Graph to Panel Layout","category":"GitLens"},{"command":"gitlens.graph.push","title":"Push","category":"GitLens","icon":"$(arrow-up)","enablement":"!operationInProgress"},{"command":"gitlens.graph.pull","title":"Pull","category":"GitLens","icon":"$(arrow-down)","enablement":"!operationInProgress"},{"command":"gitlens.graph.fetch","title":"Fetch","category":"GitLens","icon":"$(sync)","enablement":"!operationInProgress"},{"command":"gitlens.graph.switchToAnotherBranch","title":"Switch to Another Branch...","category":"GitLens","icon":"$(gitlens-switch)","enablement":"!operationInProgress"},{"command":"gitlens.graph.refresh","title":"Refresh","category":"GitLens","icon":"$(refresh)"},{"command":"gitlens.graph.copyDeepLinkToBranch","title":"Copy Link to Branch","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.graph.copyDeepLinkToCommit","title":"Copy Link to Commit","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.graph.copyDeepLinkToRepo","title":"Copy Link to Repository","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.graph.copyDeepLinkToTag","title":"Copy Link to Tag","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.graph.copyRemoteBranchUrl","title":"Copy Remote Branch URL","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.graph.createBranch","title":"Create Branch...","category":"GitLens","icon":"$(add)","enablement":"!operationInProgress"},{"command":"gitlens.graph.deleteBranch","title":"Delete Branch...","category":"GitLens","icon":"$(trash)","enablement":"!operationInProgress"},{"command":"gitlens.graph.openBranchOnRemote","title":"Open Branch on Remote","category":"GitLens","icon":"$(globe)"},{"command":"gitlens.graph.mergeBranchInto","title":"Merge Branch into Current Branch...","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.graph.publishBranch","title":"Publish Branch","category":"GitLens","icon":"$(cloud-upload)","enablement":"!operationInProgress"},{"command":"gitlens.graph.rebaseOntoBranch","title":"Rebase Current Branch onto Branch...","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.graph.rebaseOntoUpstream","title":"Rebase Current Branch onto Upstream...","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.graph.renameBranch","title":"Rename Branch...","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.graph.switchToBranch","title":"Switch to Branch...","category":"GitLens","icon":"$(gitlens-switch)","enablement":"!operationInProgress"},{"command":"gitlens.graph.hideLocalBranch","title":"Hide Local Branch","category":"GitLens"},{"command":"gitlens.graph.hideRemoteBranch","title":"Hide Remote Branch","category":"GitLens"},{"command":"gitlens.graph.hideRemote","title":"Hide Remote","category":"GitLens"},{"command":"gitlens.graph.hideTag","title":"Hide Tag","category":"GitLens"},{"command":"gitlens.graph.hideRefGroup","title":"Hide","category":"GitLens"},{"command":"gitlens.graph.cherryPick","title":"Cherry Pick Commit...","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.graph.copyMessage","title":"Copy Message","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.graph.copySha","title":"Copy SHA","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.graph.copyRemoteCommitUrl","title":"Copy Remote Commit URL","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.graph.showInDetailsView","title":"Open Details","category":"GitLens","icon":"$(eye)"},{"command":"gitlens.graph.openSCM","title":"Open Source Control","category":"GitLens"},{"command":"gitlens.graph.openCommitOnRemote","title":"Open Commit on Remote","category":"GitLens","icon":"$(globe)"},{"command":"gitlens.graph.rebaseOntoCommit","title":"Rebase Current Branch onto Commit...","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.graph.resetCommit","title":"Reset Current Branch to Previous Commit...","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.graph.resetToCommit","title":"Reset Current Branch to Commit...","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.graph.resetToTip","title":"Reset Current Branch to Tip...","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.graph.revert","title":"Revert Commit...","category":"GitLens","enablement":"!operationInProgress"},{"command":"gitlens.graph.switchToCommit","title":"Switch to Commit...","category":"GitLens","icon":"$(gitlens-switch)","enablement":"!operationInProgress"},{"command":"gitlens.graph.undoCommit","title":"Undo Commit","category":"GitLens","icon":"$(discard)","enablement":"!operationInProgress"},{"command":"gitlens.graph.saveStash","title":"Stash All Changes","category":"GitLens","icon":"$(gitlens-stash-save)","enablement":"!operationInProgress"},{"command":"gitlens.graph.applyStash","title":"Apply Stash","category":"GitLens","icon":"$(gitlens-stash-pop)","enablement":"!operationInProgress"},{"command":"gitlens.graph.stash.delete","title":"Drop Stash...","category":"GitLens","icon":"$(trash)","enablement":"!operationInProgress"},{"command":"gitlens.graph.stash.rename","title":"Rename Stash...","category":"GitLens","icon":"$(edit)","enablement":"!operationInProgress"},{"command":"gitlens.graph.createTag","title":"Create Tag...","category":"GitLens","icon":"$(add)","enablement":"!operationInProgress"},{"command":"gitlens.graph.deleteTag","title":"Delete Tag...","category":"GitLens","icon":"$(trash)","enablement":"!operationInProgress"},{"command":"gitlens.graph.switchToTag","title":"Switch to Tag...","category":"GitLens","icon":"$(gitlens-switch)","enablement":"!operationInProgress"},{"command":"gitlens.graph.createWorktree","title":"Create Worktree...","category":"GitLens","icon":"$(add)","enablement":"!operationInProgress"},{"command":"gitlens.graph.createPullRequest","title":"Create Pull Request...","category":"GitLens","icon":"$(git-pull-request-create)"},{"command":"gitlens.graph.openPullRequestOnRemote","title":"Open Pull Request on Remote","category":"GitLens","icon":"$(globe)"},{"command":"gitlens.graph.compareAncestryWithWorking","title":"Compare Ancestry with Working Tree","category":"GitLens"},{"command":"gitlens.graph.compareWithHead","title":"Compare with HEAD","category":"GitLens","icon":"$(compare-changes)"},{"command":"gitlens.graph.compareWithUpstream","title":"Compare with Upstream","category":"GitLens"},{"command":"gitlens.graph.compareWithWorking","title":"Compare with Working Tree","category":"GitLens","icon":"$(gitlens-compare-ref-working)"},{"command":"gitlens.graph.openChangedFiles","title":"Open Files","category":"GitLens"},{"command":"gitlens.graph.openChangedFileDiffs","title":"Open All Changes","category":"GitLens"},{"command":"gitlens.graph.openChangedFileDiffsWithWorking","title":"Open All Changes with Working Tree","category":"GitLens"},{"command":"gitlens.graph.openChangedFileRevisions","title":"Open Files at Revision","category":"GitLens"},{"command":"gitlens.graph.openOnlyChangedFiles","title":"Open Changed & Close Unchanged Files","category":"GitLens"},{"command":"gitlens.graph.addAuthor","title":"Add as Co-author","category":"GitLens","icon":"$(person-add)"},{"command":"gitlens.graph.copy","title":"Copy","category":"GitLens","icon":"$(copy)"},{"command":"gitlens.graph.columnAuthorOn","title":"Show Author Column","category":"GitLens"},{"command":"gitlens.graph.columnAuthorOff","title":"Hide Author Column","category":"GitLens","enablement":"webviewItemValue =~ /\\bcolumns:canHide\\b/"},{"command":"gitlens.graph.columnDateTimeOn","title":"Show Date Column","category":"GitLens"},{"command":"gitlens.graph.columnDateTimeOff","title":"Hide Date Column","category":"GitLens","enablement":"webviewItemValue =~ /\\bcolumns:canHide\\b/"},{"command":"gitlens.graph.columnShaOn","title":"Show SHA Column","category":"GitLens"},{"command":"gitlens.graph.columnShaOff","title":"Hide SHA Column","category":"GitLens","enablement":"webviewItemValue =~ /\\bcolumns:canHide\\b/"},{"command":"gitlens.graph.columnChangesOn","title":"Show Changes Column","category":"GitLens"},{"command":"gitlens.graph.columnChangesOff","title":"Hide Changes Column","category":"GitLens","enablement":"webviewItemValue =~ /\\bcolumns:canHide\\b/"},{"command":"gitlens.graph.columnGraphOn","title":"Show Graph Column","category":"GitLens"},{"command":"gitlens.graph.columnGraphOff","title":"Hide Graph Column","category":"GitLens","enablement":"webviewItemValue =~ /\\bcolumns:canHide\\b/"},{"command":"gitlens.graph.columnMessageOn","title":"Show Commit Message Column","category":"GitLens"},{"command":"gitlens.graph.columnMessageOff","title":"Hide Commit Message Column","category":"GitLens","enablement":"webviewItemValue =~ /\\bcolumns:canHide\\b/"},{"command":"gitlens.graph.columnRefOn","title":"Show Branch / Tag Column","category":"GitLens"},{"command":"gitlens.graph.columnRefOff","title":"Hide Branch / Tag Column","category":"GitLens","enablement":"webviewItemValue =~ /\\bcolumns:canHide\\b/"},{"command":"gitlens.graph.columnGraphCompact","title":"Use Compact Graph Column","category":"GitLens"},{"command":"gitlens.graph.columnGraphDefault","title":"Use Expanded Graph Column","category":"GitLens"},{"command":"gitlens.graph.resetColumnsDefault","title":"Reset Columns to Default Layout","category":"GitLens"},{"command":"gitlens.graph.resetColumnsCompact","title":"Reset Columns to Compact Layout","category":"GitLens"},{"command":"gitlens.graph.scrollMarkerLocalBranchOn","title":"Show Local Branch Markers","category":"GitLens"},{"command":"gitlens.graph.scrollMarkerLocalBranchOff","title":"Hide Local Branch Markers","category":"GitLens"},{"command":"gitlens.graph.scrollMarkerRemoteBranchOn","title":"Show Remote Branch Markers","category":"GitLens"},{"command":"gitlens.graph.scrollMarkerRemoteBranchOff","title":"Hide Remote Branch Markers","category":"GitLens"},{"command":"gitlens.graph.scrollMarkerStashOn","title":"Show Stash Markers","category":"GitLens"},{"command":"gitlens.graph.scrollMarkerStashOff","title":"Hide Stash Markers","category":"GitLens"},{"command":"gitlens.graph.scrollMarkerTagOn","title":"Show Tag Markers","category":"GitLens"},{"command":"gitlens.graph.scrollMarkerTagOff","title":"Hide Tag Markers","category":"GitLens"},{"command":"gitlens.timeline.refresh","title":"Refresh","category":"GitLens","icon":"$(refresh)"}],"icons":{"gitlens-commit-horizontal":{"description":"commit-horizontal icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f101"}},"gitlens-graph":{"description":"graph icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f102"}},"gitlens-next-commit":{"description":"next-commit icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f103"}},"gitlens-prev-commit-menu":{"description":"prev-commit-menu icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f104"}},"gitlens-prev-commit":{"description":"prev-commit icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f105"}},"gitlens-compare-ref-working":{"description":"compare-ref-working icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f106"}},"gitlens-branches-view":{"description":"branches-view icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f107"}},"gitlens-commit-view":{"description":"commit-view icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f108"}},"gitlens-commits-view":{"description":"commits-view icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f109"}},"gitlens-compare-view":{"description":"compare-view icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f10a"}},"gitlens-contributors-view":{"description":"contributors-view icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f10b"}},"gitlens-history-view":{"description":"history-view icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f10c"}},"gitlens-history":{"description":"history icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f10c"}},"gitlens-remotes-view":{"description":"remotes-view icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f10d"}},"gitlens-repositories-view":{"description":"repositories-view icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f10e"}},"gitlens-search-view":{"description":"search-view icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f10f"}},"gitlens-stashes-view":{"description":"stashes-view icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f110"}},"gitlens-stashes":{"description":"stashes icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f110"}},"gitlens-tags-view":{"description":"tags-view icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f111"}},"gitlens-worktrees-view":{"description":"worktrees-view icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f112"}},"gitlens-gitlens":{"description":"gitlens icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f113"}},"gitlens-stash-pop":{"description":"stash-pop icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f114"}},"gitlens-stash-save":{"description":"stash-save icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f115"}},"gitlens-unplug":{"description":"unplug icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f116"}},"gitlens-open-revision":{"description":"open-revision icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f117"}},"gitlens-switch":{"description":"switch icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f118"}},"gitlens-expand":{"description":"expand icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f119"}},"gitlens-list-auto":{"description":"list-auto icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f11a"}},"gitlens-arrow-up-force":{"description":"arrow-up-force icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f11b"}},"gitlens-pinned-filled":{"description":"pinned-filled icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f11c"}},"gitlens-clock":{"description":"clock icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f11d"}},"gitlens-provider-azdo":{"description":"provider-azdo icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f11e"}},"gitlens-provider-bitbucket":{"description":"provider-bitbucket icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f11f"}},"gitlens-provider-gerrit":{"description":"provider-gerrit icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f120"}},"gitlens-provider-gitea":{"description":"provider-gitea icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f121"}},"gitlens-provider-github":{"description":"provider-github icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f122"}},"gitlens-provider-gitlab":{"description":"provider-gitlab icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f123"}},"gitlens-gitlens-inspect":{"description":"gitlens-inspect icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f124"}},"gitlens-workspaces-view":{"description":"workspaces-view icon","default":{"fontPath":"dist/glicons.woff2","fontCharacter":"\\f125"}}},"menus":{"commandPalette":[{"command":"gitlens.plus.loginOrSignUp","when":"!gitlens:plus"},{"command":"gitlens.plus.logout","when":"true"},{"command":"gitlens.plus.startPreviewTrial","when":"!gitlens:plus"},{"command":"gitlens.plus.manage","when":"gitlens:plus"},{"command":"gitlens.plus.hide","when":"config.gitlens.plusFeatures.enabled"},{"command":"gitlens.plus.restore","when":"!config.gitlens.plusFeatures.enabled"},{"command":"gitlens.plus.reset","when":"gitlens:debugging"},{"command":"gitlens.plus.resetRepositoryAccess","when":"gitlens:enabled"},{"command":"gitlens.plus.refreshRepositoryAccess","when":"gitlens:enabled"},{"command":"gitlens.timeline.refresh","when":"false"},{"command":"gitlens.showBranchesView","when":"gitlens:enabled"},{"command":"gitlens.showCommitDetailsView","when":"gitlens:enabled"},{"command":"gitlens.showCommitsView","when":"gitlens:enabled"},{"command":"gitlens.showContributorsView","when":"gitlens:enabled"},{"command":"gitlens.showFileHistoryView","when":"gitlens:enabled"},{"command":"gitlens.showFocusPage","when":"gitlens:enabled"},{"command":"gitlens.showGraph","when":"false"},{"command":"gitlens.showGraphPage","when":"gitlens:enabled && config.gitlens.graph.layout == editor"},{"command":"gitlens.showGraphView","when":"gitlens:enabled && config.gitlens.graph.layout == panel"},{"command":"gitlens.toggleGraph","when":"gitlens:enabled && config.gitlens.graph.layout == panel"},{"command":"gitlens.toggleMaximizedGraph","when":"gitlens:enabled && config.gitlens.graph.layout == panel"},{"command":"gitlens.showHomeView","when":"gitlens:enabled"},{"command":"gitlens.showAccountView","when":"gitlens:enabled"},{"command":"gitlens.showInCommitGraph","when":"false"},{"command":"gitlens.showLineHistoryView","when":"gitlens:enabled && !gitlens:hasVirtualFolders"},{"command":"gitlens.showRemotesView","when":"gitlens:enabled"},{"command":"gitlens.showRepositoriesView","when":"gitlens:enabled && !gitlens:hasVirtualFolders"},{"command":"gitlens.showSearchAndCompareView","when":"gitlens:enabled"},{"command":"gitlens.showSettingsPage#views","when":"false"},{"command":"gitlens.showSettingsPage#branches-view","when":"false"},{"command":"gitlens.showSettingsPage#commits-view","when":"false"},{"command":"gitlens.showSettingsPage#contributors-view","when":"false"},{"command":"gitlens.showSettingsPage#file-history-view","when":"false"},{"command":"gitlens.showSettingsPage#line-history-view","when":"false"},{"command":"gitlens.showSettingsPage#remotes-view","when":"false"},{"command":"gitlens.showSettingsPage#repositories-view","when":"false"},{"command":"gitlens.showSettingsPage#search-compare-view","when":"false"},{"command":"gitlens.showSettingsPage#stashes-view","when":"false"},{"command":"gitlens.showSettingsPage#tags-view","when":"false"},{"command":"gitlens.showSettingsPage#worktrees-view","when":"false"},{"command":"gitlens.showSettingsPage#commit-graph","when":"false"},{"command":"gitlens.showStashesView","when":"gitlens:enabled && !gitlens:hasVirtualFolders"},{"command":"gitlens.showTagsView","when":"gitlens:enabled"},{"command":"gitlens.showTimelinePage","when":"gitlens:enabled && gitlens:activeFileStatus =~ /tracked/"},{"command":"gitlens.showTimelineView","when":"gitlens:enabled"},{"command":"gitlens.showWorktreesView","when":"gitlens:enabled && !gitlens:hasVirtualFolders"},{"command":"gitlens.showWorkspacesView","when":"gitlens:enabled && !gitlens:hasVirtualFolders"},{"command":"gitlens.compareWith","when":"gitlens:enabled && !gitlens:hasVirtualFolders"},{"command":"gitlens.compareHeadWith","when":"gitlens:enabled && !gitlens:hasVirtualFolders"},{"command":"gitlens.compareWorkingWith","when":"gitlens:enabled && !gitlens:hasVirtualFolders"},{"command":"gitlens.diffDirectory","when":"gitlens:enabled && !gitlens:hasVirtualFolders"},{"command":"gitlens.diffDirectoryWithHead","when":"gitlens:enabled && !gitlens:hasVirtualFolders"},{"command":"gitlens.diffWithRevisionFrom","when":"gitlens:activeFileStatus =~ /tracked/"},{"command":"gitlens.diffWithNext","when":"gitlens:activeFileStatus =~ /revision/ && !isInDiffEditor"},{"command":"gitlens.diffWithNextInDiffLeft","when":"gitlens:activeFileStatus =~ /revision/ && isInDiffEditor && !isInDiffRightEditor"},{"command":"gitlens.diffWithNextInDiffRight","when":"gitlens:activeFileStatus =~ /revision/ && isInDiffRightEditor"},{"command":"gitlens.diffWithPrevious","when":"gitlens:activeFileStatus =~ /tracked/ && !isInDiffEditor"},{"command":"gitlens.diffWithPreviousInDiffLeft","when":"gitlens:activeFileStatus =~ /tracked/ && isInDiffEditor && !isInDiffRightEditor"},{"command":"gitlens.diffWithPreviousInDiffRight","when":"gitlens:activeFileStatus =~ /tracked/ && isInDiffRightEditor"},{"command":"gitlens.diffLineWithPrevious","when":"gitlens:activeFileStatus =~ /blameable/"},{"command":"gitlens.diffWithRevision","when":"gitlens:activeFileStatus =~ /tracked/"},{"command":"gitlens.diffWithWorking","when":"gitlens:activeFileStatus =~ /revision/"},{"command":"gitlens.diffWithWorkingInDiffLeft","when":"false"},{"command":"gitlens.diffWithWorkingInDiffRight","when":"false"},{"command":"gitlens.diffLineWithWorking","when":"gitlens:activeFileStatus =~ /blameable/"},{"command":"gitlens.disableRebaseEditor","when":"gitlens:enabled"},{"command":"gitlens.enableRebaseEditor","when":"gitlens:enabled"},{"command":"gitlens.externalDiff","when":"!gitlens:hasVirtualFolders && gitlens:activeFileStatus =~ /tracked/"},{"command":"gitlens.externalDiffAll","when":"gitlens:enabled && !gitlens:hasVirtualFolders"},{"command":"gitlens.toggleFileBlame","when":"gitlens:activeFileStatus =~ /blameable/"},{"command":"gitlens.toggleFileBlameInDiffLeft","when":"false"},{"command":"gitlens.toggleFileBlameInDiffRight","when":"false"},{"command":"gitlens.clearFileAnnotations","when":"gitlens:activeFileStatus =~ /blameable/ && gitlens:annotationStatus == computed"},{"command":"gitlens.computingFileAnnotations","when":"false"},{"command":"gitlens.toggleFileHeatmap","when":"gitlens:activeFileStatus =~ /blameable/"},{"command":"gitlens.toggleFileHeatmapInDiffLeft","when":"false"},{"command":"gitlens.toggleFileHeatmapInDiffRight","when":"false"},{"command":"gitlens.toggleFileChanges","when":"gitlens:activeFileStatus =~ /blameable/ && !gitlens:hasVirtualFolders"},{"command":"gitlens.toggleFileChangesOnly","when":"false"},{"command":"gitlens.toggleLineBlame","when":"!gitlens:disabled"},{"command":"gitlens.toggleCodeLens","when":"!gitlens:disabled && !gitlens:disabledToggleCodeLens"},{"command":"gitlens.gitCommands","when":"!gitlens:disabled"},{"command":"gitlens.gitCommands.branch","when":"!gitlens:disabled && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders"},{"command":"gitlens.gitCommands.cherryPick","when":"!gitlens:disabled && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders"},{"command":"gitlens.gitCommands.merge","when":"!gitlens:disabled && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders"},{"command":"gitlens.gitCommands.rebase","when":"!gitlens:disabled && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders"},{"command":"gitlens.gitCommands.reset","when":"!gitlens:disabled && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders"},{"command":"gitlens.gitCommands.revert","when":"!gitlens:disabled && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders"},{"command":"gitlens.gitCommands.switch","when":"!gitlens:disabled && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders"},{"command":"gitlens.gitCommands.tag","when":"!gitlens:disabled && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders"},{"command":"gitlens.gitCommands.worktree","when":"!gitlens:disabled && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders"},{"command":"gitlens.gitCommands.worktree.open","when":"!gitlens:disabled && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders"},{"command":"gitlens.switchAIModel","when":"gitlens:enabled"},{"command":"gitlens.switchMode","when":"gitlens:enabled"},{"command":"gitlens.toggleReviewMode","when":"gitlens:enabled"},{"command":"gitlens.toggleZenMode","when":"gitlens:enabled"},{"command":"gitlens.showCommitSearch","when":"gitlens:enabled"},{"command":"gitlens.showLastQuickPick","when":"gitlens:enabled"},{"command":"gitlens.revealCommitInView","when":"gitlens:activeFileStatus =~ /blameable/"},{"command":"gitlens.showCommitInView","when":"gitlens:activeFileStatus =~ /blameable/"},{"command":"gitlens.showInDetailsView","when":"false"},{"command":"gitlens.showCommitsInView","when":"gitlens:activeFileStatus =~ /blameable/"},{"command":"gitlens.showFileHistoryInView","when":"false"},{"command":"gitlens.openFileHistory","when":"gitlens:activeFileStatus =~ /tracked/"},{"command":"gitlens.openFolderHistory","when":"false"},{"command":"gitlens.showQuickCommitDetails","when":"false"},{"command":"gitlens.showLineCommitInView","when":"gitlens:activeFileStatus =~ /blameable/"},{"command":"gitlens.showQuickCommitFileDetails","when":"gitlens:activeFileStatus =~ /blameable/"},{"command":"gitlens.showQuickRevisionDetails","when":"gitlens:activeFileStatus =~ /revision/"},{"command":"gitlens.showQuickRevisionDetailsInDiffLeft","when":"false"},{"command":"gitlens.showQuickRevisionDetailsInDiffRight","when":"false"},{"command":"gitlens.showQuickFileHistory","when":"gitlens:activeFileStatus =~ /tracked/"},{"command":"gitlens.quickOpenFileHistory","when":"gitlens:activeFileStatus =~ /tracked/"},{"command":"gitlens.showQuickBranchHistory","when":"gitlens:enabled"},{"command":"gitlens.showQuickRepoHistory","when":"gitlens:enabled"},{"command":"gitlens.showQuickRepoStatus","when":"gitlens:enabled"},{"command":"gitlens.showQuickStashList","when":"gitlens:enabled"},{"command":"gitlens.addAuthors","when":"gitlens:enabled && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders"},{"command":"gitlens.connectRemoteProvider","when":"config.gitlens.integrations.enabled && gitlens:hasRichRemotes && !gitlens:hasConnectedRemotes"},{"command":"gitlens.disconnectRemoteProvider","when":"config.gitlens.integrations.enabled && gitlens:hasRichRemotes && gitlens:hasConnectedRemotes"},{"command":"gitlens.copyCurrentBranch","when":"gitlens:enabled"},{"command":"gitlens.copyMessageToClipboard","when":"gitlens:activeFileStatus =~ /blameable/"},{"command":"gitlens.copyShaToClipboard","when":"gitlens:activeFileStatus =~ /blameable/"},{"command":"gitlens.copyRelativePathToClipboard","when":"gitlens:enabled"},{"command":"gitlens.closeUnchangedFiles","when":"gitlens:enabled"},{"command":"gitlens.openChangedFiles","when":"gitlens:enabled"},{"command":"gitlens.openOnlyChangedFiles","when":"gitlens:enabled"},{"command":"gitlens.openBranchesOnRemote","when":"gitlens:hasRemotes"},{"command":"gitlens.copyRemoteBranchesUrl","when":"false"},{"command":"gitlens.openBranchOnRemote","when":"gitlens:hasRemotes"},{"command":"gitlens.openCurrentBranchOnRemote","when":"gitlens:hasRemotes"},{"command":"gitlens.copyDeepLinkToBranch","when":"false"},{"command":"gitlens.copyDeepLinkToCommit","when":"false"},{"command":"gitlens.copyDeepLinkToComparison","when":"false"},{"command":"gitlens.copyDeepLinkToRepo","when":"gitlens:enabled"},{"command":"gitlens.copyDeepLinkToTag","when":"false"},{"command":"gitlens.copyRemoteBranchUrl","when":"false"},{"command":"gitlens.openCommitOnRemote","when":"gitlens:activeFileStatus =~ /blameable/ && gitlens:activeFileStatus =~ /remotes/"},{"command":"gitlens.copyRemoteCommitUrl","when":"gitlens:activeFileStatus =~ /tracked/ && gitlens:activeFileStatus =~ /remotes/"},{"command":"gitlens.openComparisonOnRemote","when":"false"},{"command":"gitlens.copyRemoteComparisonUrl","when":"false"},{"command":"gitlens.openAutolinkUrl","when":"false"},{"command":"gitlens.copyAutolinkUrl","when":"false"},{"command":"gitlens.openIssueOnRemote","when":"false"},{"command":"gitlens.copyRemoteIssueUrl","when":"false"},{"command":"gitlens.openPullRequestOnRemote","when":"false"},{"command":"gitlens.copyRemotePullRequestUrl","when":"false"},{"command":"gitlens.openAssociatedPullRequestOnRemote","when":"gitlens:hasRemotes"},{"command":"gitlens.openFileFromRemote","when":"gitlens:enabled"},{"command":"gitlens.openFileOnRemote","when":"gitlens:activeFileStatus =~ /tracked/ && gitlens:activeFileStatus =~ /remotes/"},{"command":"gitlens.copyRemoteFileUrlToClipboard","when":"gitlens:activeFileStatus =~ /tracked/ && gitlens:activeFileStatus =~ /remotes/"},{"command":"gitlens.copyRemoteFileUrlWithoutRange","when":"false"},{"command":"gitlens.openFileOnRemoteFrom","when":"gitlens:activeFileStatus =~ /tracked/ && gitlens:activeFileStatus =~ /remotes/"},{"command":"gitlens.copyRemoteFileUrlFrom","when":"gitlens:activeFileStatus =~ /tracked/ && gitlens:activeFileStatus =~ /remotes/"},{"command":"gitlens.openBlamePriorToChange","when":"gitlens:activeFileStatus =~ /tracked/"},{"command":"gitlens.openFileRevision","when":"gitlens:activeFileStatus =~ /tracked/"},{"command":"gitlens.openFileRevisionFrom","when":"gitlens:activeFileStatus =~ /tracked/"},{"command":"gitlens.openRepoOnRemote","when":"gitlens:hasRemotes"},{"command":"gitlens.copyRemoteRepositoryUrl","when":"false"},{"command":"gitlens.openRevisionFile","when":"gitlens:activeFileStatus =~ /revision/ && isInDiffEditor"},{"command":"gitlens.openRevisionFileInDiffLeft","when":"false"},{"command":"gitlens.openRevisionFileInDiffRight","when":"false"},{"command":"gitlens.openWorkingFile","when":"gitlens:activeFileStatus =~ /revision/"},{"command":"gitlens.openWorkingFileInDiffLeft","when":"false"},{"command":"gitlens.openWorkingFileInDiffRight","when":"false"},{"command":"gitlens.stashApply","when":"gitlens:enabled && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders"},{"command":"gitlens.views.stash.delete","when":"false"},{"command":"gitlens.views.stash.rename","when":"false"},{"command":"gitlens.stashSave","when":"gitlens:enabled && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders"},{"command":"gitlens.stashSaveFiles","when":"false"},{"command":"gitlens.resetAvatarCache","when":"gitlens:enabled"},{"command":"gitlens.resetSuppressedWarnings","when":"gitlens:enabled"},{"command":"gitlens.resetTrackedUsage","when":"gitlens:enabled"},{"command":"gitlens.inviteToLiveShare","when":"false"},{"command":"gitlens.browseRepoAtRevision","when":"!gitlens:hasVirtualFolders && gitlens:activeFileStatus =~ /revision/"},{"command":"gitlens.browseRepoAtRevisionInNewWindow","when":"!gitlens:hasVirtualFolders && gitlens:activeFileStatus =~ /revision/"},{"command":"gitlens.browseRepoBeforeRevision","when":"!gitlens:hasVirtualFolders && gitlens:activeFileStatus =~ /revision/"},{"command":"gitlens.browseRepoBeforeRevisionInNewWindow","when":"!gitlens:hasVirtualFolders && gitlens:activeFileStatus =~ /revision/"},{"command":"gitlens.views.browseRepoAtRevision","when":"false"},{"command":"gitlens.views.browseRepoAtRevisionInNewWindow","when":"false"},{"command":"gitlens.views.browseRepoBeforeRevision","when":"false"},{"command":"gitlens.views.browseRepoBeforeRevisionInNewWindow","when":"false"},{"command":"gitlens.fetchRepositories","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders"},{"command":"gitlens.pullRepositories","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders"},{"command":"gitlens.pushRepositories","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders"},{"command":"gitlens.views.addRemote","when":"false"},{"command":"gitlens.views.highlightChanges","when":"false"},{"command":"gitlens.views.highlightRevisionChanges","when":"false"},{"command":"gitlens.views.restore","when":"false"},{"command":"gitlens.views.switchToAnotherBranch","when":"false"},{"command":"gitlens.views.switchToBranch","when":"false"},{"command":"gitlens.views.switchToCommit","when":"false"},{"command":"gitlens.views.switchToTag","when":"false"},{"command":"gitlens.views.copy","when":"false"},{"command":"gitlens.views.pruneRemote","when":"false"},{"command":"gitlens.views.fetch","when":"false"},{"command":"gitlens.views.publishBranch","when":"false"},{"command":"gitlens.views.publishRepository","when":"false"},{"command":"gitlens.views.pull","when":"false"},{"command":"gitlens.views.push","when":"false"},{"command":"gitlens.views.pushWithForce","when":"false"},{"command":"gitlens.views.openInTerminal","when":"false"},{"command":"gitlens.views.setAsDefault","when":"false"},{"command":"gitlens.views.unsetAsDefault","when":"false"},{"command":"gitlens.views.stageDirectory","when":"false"},{"command":"gitlens.views.stageFile","when":"false"},{"command":"gitlens.views.unstageDirectory","when":"false"},{"command":"gitlens.views.unstageFile","when":"false"},{"command":"gitlens.views.star","when":"false"},{"command":"gitlens.views.unstar","when":"false"},{"command":"gitlens.views.openChanges","when":"false"},{"command":"gitlens.views.openDirectoryDiff","when":"false"},{"command":"gitlens.views.openDirectoryDiffWithWorking","when":"false"},{"command":"gitlens.views.openChangesWithWorking","when":"false"},{"command":"gitlens.views.openPreviousChangesWithWorking","when":"false"},{"command":"gitlens.views.openFile","when":"false"},{"command":"gitlens.views.openFileRevision","when":"false"},{"command":"gitlens.views.openChangedFiles","when":"false"},{"command":"gitlens.views.openChangedFileDiffs","when":"false"},{"command":"gitlens.views.openChangedFileDiffsWithWorking","when":"false"},{"command":"gitlens.views.openChangedFileRevisions","when":"false"},{"command":"gitlens.views.openOnlyChangedFiles","when":"false"},{"command":"gitlens.views.applyChanges","when":"false"},{"command":"gitlens.views.closeRepository","when":"false"},{"command":"gitlens.views.compareAncestryWithWorking","when":"false"},{"command":"gitlens.views.compareWithHead","when":"false"},{"command":"gitlens.views.compareWithUpstream","when":"false"},{"command":"gitlens.views.compareWithSelected","when":"false"},{"command":"gitlens.views.selectForCompare","when":"false"},{"command":"gitlens.views.compareFileWithSelected","when":"false"},{"command":"gitlens.views.selectFileForCompare","when":"false"},{"command":"gitlens.views.compareWithWorking","when":"false"},{"command":"gitlens.views.addAuthors","when":"false"},{"command":"gitlens.views.addAuthor","when":"false"},{"command":"gitlens.views.title.applyStash","when":"false"},{"command":"gitlens.views.createWorktree","when":"false"},{"command":"gitlens.ghpr.views.openOrCreateWorktree","when":"false"},{"command":"gitlens.views.title.createWorktree","when":"false"},{"command":"gitlens.views.deleteWorktree","when":"false"},{"command":"gitlens.views.openWorktree","when":"false"},{"command":"gitlens.views.openWorktreeInNewWindow","when":"false"},{"command":"gitlens.views.revealRepositoryInExplorer","when":"false"},{"command":"gitlens.views.revealWorktreeInExplorer","when":"false"},{"command":"gitlens.views.createBranch","when":"false"},{"command":"gitlens.views.title.createBranch","when":"false"},{"command":"gitlens.views.deleteBranch","when":"false"},{"command":"gitlens.views.renameBranch","when":"false"},{"command":"gitlens.views.cherryPick","when":"false"},{"command":"gitlens.views.mergeBranchInto","when":"false"},{"command":"gitlens.views.pushToCommit","when":"false"},{"command":"gitlens.views.rebaseOntoBranch","when":"false"},{"command":"gitlens.views.rebaseOntoCommit","when":"false"},{"command":"gitlens.views.rebaseOntoUpstream","when":"false"},{"command":"gitlens.views.resetCommit","when":"false"},{"command":"gitlens.views.resetToCommit","when":"false"},{"command":"gitlens.views.resetToTip","when":"false"},{"command":"gitlens.views.revert","when":"false"},{"command":"gitlens.views.undoCommit","when":"false"},{"command":"gitlens.views.removeRemote","when":"false"},{"command":"gitlens.views.createTag","when":"false"},{"command":"gitlens.views.title.createTag","when":"false"},{"command":"gitlens.views.deleteTag","when":"false"},{"command":"gitlens.views.setBranchComparisonToWorking","when":"false"},{"command":"gitlens.views.setBranchComparisonToBranch","when":"false"},{"command":"gitlens.views.createPullRequest","when":"false"},{"command":"gitlens.views.openPullRequest","when":"false"},{"command":"gitlens.views.clearNode","when":"false"},{"command":"gitlens.views.dismissNode","when":"false"},{"command":"gitlens.views.editNode","when":"false"},{"command":"gitlens.views.expandNode","when":"false"},{"command":"gitlens.views.refreshNode","when":"false"},{"command":"gitlens.views.loadMoreChildren","when":"false"},{"command":"gitlens.views.loadAllChildren","when":"false"},{"command":"gitlens.views.setShowRelativeDateMarkersOn","when":"false"},{"command":"gitlens.views.setShowRelativeDateMarkersOff","when":"false"},{"command":"gitlens.views.branches.copy","when":"false"},{"command":"gitlens.views.branches.refresh","when":"false"},{"command":"gitlens.views.branches.setLayoutToList","when":"false"},{"command":"gitlens.views.branches.setLayoutToTree","when":"false"},{"command":"gitlens.views.branches.setFilesLayoutToAuto","when":"false"},{"command":"gitlens.views.branches.setFilesLayoutToList","when":"false"},{"command":"gitlens.views.branches.setFilesLayoutToTree","when":"false"},{"command":"gitlens.views.branches.setShowAvatarsOn","when":"false"},{"command":"gitlens.views.branches.setShowAvatarsOff","when":"false"},{"command":"gitlens.views.branches.setShowBranchComparisonOn","when":"false"},{"command":"gitlens.views.branches.setShowBranchComparisonOff","when":"false"},{"command":"gitlens.views.branches.setShowBranchPullRequestOn","when":"false"},{"command":"gitlens.views.branches.setShowBranchPullRequestOff","when":"false"},{"command":"gitlens.views.commitDetails.refresh","when":"false"},{"command":"gitlens.views.commits.copy","when":"false"},{"command":"gitlens.views.commits.refresh","when":"false"},{"command":"gitlens.views.commits.setFilesLayoutToAuto","when":"false"},{"command":"gitlens.views.commits.setFilesLayoutToList","when":"false"},{"command":"gitlens.views.commits.setFilesLayoutToTree","when":"false"},{"command":"gitlens.views.commits.setMyCommitsOnlyOn","when":"false"},{"command":"gitlens.views.commits.setMyCommitsOnlyOff","when":"false"},{"command":"gitlens.views.commits.setShowAvatarsOn","when":"false"},{"command":"gitlens.views.commits.setShowAvatarsOff","when":"false"},{"command":"gitlens.views.commits.setShowBranchComparisonOn","when":"false"},{"command":"gitlens.views.commits.setShowBranchComparisonOff","when":"false"},{"command":"gitlens.views.commits.setShowBranchPullRequestOn","when":"false"},{"command":"gitlens.views.commits.setShowBranchPullRequestOff","when":"false"},{"command":"gitlens.views.contributors.copy","when":"false"},{"command":"gitlens.views.contributors.refresh","when":"false"},{"command":"gitlens.views.contributors.setFilesLayoutToAuto","when":"false"},{"command":"gitlens.views.contributors.setFilesLayoutToList","when":"false"},{"command":"gitlens.views.contributors.setFilesLayoutToTree","when":"false"},{"command":"gitlens.views.contributors.setShowAllBranchesOn","when":"false"},{"command":"gitlens.views.contributors.setShowAllBranchesOff","when":"false"},{"command":"gitlens.views.contributors.setShowAvatarsOn","when":"false"},{"command":"gitlens.views.contributors.setShowAvatarsOff","when":"false"},{"command":"gitlens.views.contributors.setShowStatisticsOn","when":"false"},{"command":"gitlens.views.contributors.setShowStatisticsOff","when":"false"},{"command":"gitlens.views.fileHistory.changeBase","when":"false"},{"command":"gitlens.views.fileHistory.copy","when":"false"},{"command":"gitlens.views.fileHistory.refresh","when":"false"},{"command":"gitlens.views.fileHistory.setCursorFollowingOn","when":"false"},{"command":"gitlens.views.fileHistory.setCursorFollowingOff","when":"false"},{"command":"gitlens.views.fileHistory.setEditorFollowingOn","when":"false"},{"command":"gitlens.views.fileHistory.setEditorFollowingOff","when":"false"},{"command":"gitlens.views.fileHistory.setRenameFollowingOn","when":"false"},{"command":"gitlens.views.fileHistory.setRenameFollowingOff","when":"false"},{"command":"gitlens.views.fileHistory.setShowAllBranchesOn","when":"false"},{"command":"gitlens.views.fileHistory.setShowAllBranchesOff","when":"false"},{"command":"gitlens.views.fileHistory.setShowAvatarsOn","when":"false"},{"command":"gitlens.views.fileHistory.setShowAvatarsOff","when":"false"},{"command":"gitlens.views.graphDetails.refresh","when":"false"},{"command":"gitlens.views.home.refresh","when":"false"},{"command":"gitlens.views.account.refresh","when":"false"},{"command":"gitlens.views.lineHistory.changeBase","when":"false"},{"command":"gitlens.views.lineHistory.copy","when":"false"},{"command":"gitlens.views.lineHistory.refresh","when":"false"},{"command":"gitlens.views.lineHistory.setEditorFollowingOn","when":"false"},{"command":"gitlens.views.lineHistory.setEditorFollowingOff","when":"false"},{"command":"gitlens.views.lineHistory.setShowAvatarsOn","when":"false"},{"command":"gitlens.views.lineHistory.setShowAvatarsOff","when":"false"},{"command":"gitlens.views.remotes.copy","when":"false"},{"command":"gitlens.views.remotes.refresh","when":"false"},{"command":"gitlens.views.remotes.setLayoutToList","when":"false"},{"command":"gitlens.views.remotes.setLayoutToTree","when":"false"},{"command":"gitlens.views.remotes.setFilesLayoutToAuto","when":"false"},{"command":"gitlens.views.remotes.setFilesLayoutToList","when":"false"},{"command":"gitlens.views.remotes.setFilesLayoutToTree","when":"false"},{"command":"gitlens.views.remotes.setShowAvatarsOn","when":"false"},{"command":"gitlens.views.remotes.setShowAvatarsOff","when":"false"},{"command":"gitlens.views.remotes.setShowBranchPullRequestOn","when":"false"},{"command":"gitlens.views.remotes.setShowBranchPullRequestOff","when":"false"},{"command":"gitlens.views.repositories.copy","when":"false"},{"command":"gitlens.views.repositories.refresh","when":"false"},{"command":"gitlens.views.repositories.setAutoRefreshToOn","when":"false"},{"command":"gitlens.views.repositories.setAutoRefreshToOff","when":"false"},{"command":"gitlens.views.repositories.setBranchesLayoutToList","when":"false"},{"command":"gitlens.views.repositories.setBranchesLayoutToTree","when":"false"},{"command":"gitlens.views.repositories.setFilesLayoutToAuto","when":"false"},{"command":"gitlens.views.repositories.setFilesLayoutToList","when":"false"},{"command":"gitlens.views.repositories.setFilesLayoutToTree","when":"false"},{"command":"gitlens.views.repositories.setShowAvatarsOn","when":"false"},{"command":"gitlens.views.repositories.setShowAvatarsOff","when":"false"},{"command":"gitlens.views.repositories.setShowBranchComparisonOn","when":"false"},{"command":"gitlens.views.repositories.setShowBranchComparisonOff","when":"false"},{"command":"gitlens.views.repositories.setBranchesShowBranchComparisonOn","when":"false"},{"command":"gitlens.views.repositories.setBranchesShowBranchComparisonOff","when":"false"},{"command":"gitlens.views.repositories.setShowBranchesOn","when":"false"},{"command":"gitlens.views.repositories.setShowBranchesOff","when":"false"},{"command":"gitlens.views.repositories.setShowCommitsOn","when":"false"},{"command":"gitlens.views.repositories.setShowCommitsOff","when":"false"},{"command":"gitlens.views.repositories.setShowContributorsOn","when":"false"},{"command":"gitlens.views.repositories.setShowContributorsOff","when":"false"},{"command":"gitlens.views.repositories.setShowRemotesOn","when":"false"},{"command":"gitlens.views.repositories.setShowRemotesOff","when":"false"},{"command":"gitlens.views.repositories.setShowStashesOn","when":"false"},{"command":"gitlens.views.repositories.setShowStashesOff","when":"false"},{"command":"gitlens.views.repositories.setShowTagsOn","when":"false"},{"command":"gitlens.views.repositories.setShowTagsOff","when":"false"},{"command":"gitlens.views.repositories.setShowWorktreesOn","when":"false"},{"command":"gitlens.views.repositories.setShowWorktreesOff","when":"false"},{"command":"gitlens.views.repositories.setShowUpstreamStatusOn","when":"false"},{"command":"gitlens.views.repositories.setShowUpstreamStatusOff","when":"false"},{"command":"gitlens.views.repositories.setShowSectionOff","when":"false"},{"command":"gitlens.views.searchAndCompare.clear","when":"false"},{"command":"gitlens.views.searchAndCompare.copy","when":"false"},{"command":"gitlens.views.searchAndCompare.pin","when":"false"},{"command":"gitlens.views.searchAndCompare.unpin","when":"false"},{"command":"gitlens.views.searchAndCompare.refresh","when":"false"},{"command":"gitlens.views.searchAndCompare.searchCommits","when":"false"},{"command":"gitlens.views.searchAndCompare.selectForCompare","when":"false"},{"command":"gitlens.views.searchAndCompare.setFilesLayoutToAuto","when":"false"},{"command":"gitlens.views.searchAndCompare.setFilesLayoutToList","when":"false"},{"command":"gitlens.views.searchAndCompare.setFilesLayoutToTree","when":"false"},{"command":"gitlens.views.searchAndCompare.setKeepResultsToOn","when":"false"},{"command":"gitlens.views.searchAndCompare.setKeepResultsToOff","when":"false"},{"command":"gitlens.views.searchAndCompare.setShowAvatarsOn","when":"false"},{"command":"gitlens.views.searchAndCompare.setShowAvatarsOff","when":"false"},{"command":"gitlens.views.searchAndCompare.swapComparison","when":"false"},{"command":"gitlens.views.searchAndCompare.setFilesFilterOnLeft","when":"false"},{"command":"gitlens.views.searchAndCompare.setFilesFilterOnRight","when":"false"},{"command":"gitlens.views.searchAndCompare.setFilesFilterOff","when":"false"},{"command":"gitlens.views.stashes.copy","when":"false"},{"command":"gitlens.views.stashes.refresh","when":"false"},{"command":"gitlens.views.stashes.setFilesLayoutToAuto","when":"false"},{"command":"gitlens.views.stashes.setFilesLayoutToList","when":"false"},{"command":"gitlens.views.stashes.setFilesLayoutToTree","when":"false"},{"command":"gitlens.views.tags.copy","when":"false"},{"command":"gitlens.views.tags.refresh","when":"false"},{"command":"gitlens.views.tags.setLayoutToList","when":"false"},{"command":"gitlens.views.tags.setLayoutToTree","when":"false"},{"command":"gitlens.views.tags.setFilesLayoutToAuto","when":"false"},{"command":"gitlens.views.tags.setFilesLayoutToList","when":"false"},{"command":"gitlens.views.tags.setFilesLayoutToTree","when":"false"},{"command":"gitlens.views.tags.setShowAvatarsOn","when":"false"},{"command":"gitlens.views.tags.setShowAvatarsOff","when":"false"},{"command":"gitlens.views.timeline.refresh","when":"false"},{"command":"gitlens.views.workspaces.info","when":"false"},{"command":"gitlens.views.workspaces.convert","when":"false"},{"command":"gitlens.views.workspaces.create","when":"gitlens:plus"},{"command":"gitlens.views.workspaces.delete","when":"false"},{"command":"gitlens.views.workspaces.addRepos","when":"false"},{"command":"gitlens.views.workspaces.addReposFromLinked","when":"false"},{"command":"gitlens.views.workspaces.repo.locate","when":"false"},{"command":"gitlens.views.workspaces.locateAllRepos","when":"false"},{"command":"gitlens.views.workspaces.createLocal","when":"false"},{"command":"gitlens.views.workspaces.openLocal","when":"false"},{"command":"gitlens.views.workspaces.openLocalNewWindow","when":"false"},{"command":"gitlens.views.workspaces.changeAutoAddSetting","when":"false"},{"command":"gitlens.views.workspaces.repo.openInNewWindow","when":"false"},{"command":"gitlens.views.workspaces.repo.open","when":"false"},{"command":"gitlens.views.workspaces.repo.addToWindow","when":"false"},{"command":"gitlens.views.workspaces.repo.remove","when":"false"},{"command":"gitlens.views.workspaces.copy","when":"false"},{"command":"gitlens.views.workspaces.refresh","when":"false"},{"command":"gitlens.views.worktrees.copy","when":"false"},{"command":"gitlens.views.worktrees.refresh","when":"false"},{"command":"gitlens.views.worktrees.setFilesLayoutToAuto","when":"false"},{"command":"gitlens.views.worktrees.setFilesLayoutToList","when":"false"},{"command":"gitlens.views.worktrees.setFilesLayoutToTree","when":"false"},{"command":"gitlens.views.worktrees.setShowAvatarsOn","when":"false"},{"command":"gitlens.views.worktrees.setShowAvatarsOff","when":"false"},{"command":"gitlens.views.worktrees.setShowBranchComparisonOn","when":"false"},{"command":"gitlens.views.worktrees.setShowBranchComparisonOff","when":"false"},{"command":"gitlens.views.worktrees.setShowBranchPullRequestOn","when":"false"},{"command":"gitlens.views.worktrees.setShowBranchPullRequestOff","when":"false"},{"command":"gitlens.graph.switchToEditorLayout","when":"gitlens:enabled && config.gitlens.graph.layout != editor"},{"command":"gitlens.graph.switchToPanelLayout","when":"gitlens:enabled && config.gitlens.graph.layout != panel"},{"command":"gitlens.graph.push","when":"false"},{"command":"gitlens.graph.pull","when":"false"},{"command":"gitlens.graph.fetch","when":"false"},{"command":"gitlens.graph.switchToAnotherBranch","when":"false"},{"command":"gitlens.graph.refresh","when":"false"},{"command":"gitlens.graph.copyDeepLinkToBranch","when":"false"},{"command":"gitlens.graph.copyDeepLinkToCommit","when":"false"},{"command":"gitlens.graph.copyDeepLinkToRepo","when":"false"},{"command":"gitlens.graph.copyDeepLinkToTag","when":"false"},{"command":"gitlens.focus.refresh","when":"false"},{"command":"gitlens.graph.copyRemoteBranchUrl","when":"false"},{"command":"gitlens.graph.createBranch","when":"false"},{"command":"gitlens.graph.deleteBranch","when":"false"},{"command":"gitlens.graph.openBranchOnRemote","when":"false"},{"command":"gitlens.graph.mergeBranchInto","when":"false"},{"command":"gitlens.graph.publishBranch","when":"false"},{"command":"gitlens.graph.rebaseOntoBranch","when":"false"},{"command":"gitlens.graph.rebaseOntoUpstream","when":"false"},{"command":"gitlens.graph.renameBranch","when":"false"},{"command":"gitlens.graph.switchToBranch","when":"false"},{"command":"gitlens.graph.hideLocalBranch","when":"false"},{"command":"gitlens.graph.hideRemoteBranch","when":"false"},{"command":"gitlens.graph.hideRemote","when":"false"},{"command":"gitlens.graph.hideTag","when":"false"},{"command":"gitlens.graph.hideRefGroup","when":"false"},{"command":"gitlens.graph.cherryPick","when":"false"},{"command":"gitlens.graph.copyMessage","when":"false"},{"command":"gitlens.graph.copySha","when":"false"},{"command":"gitlens.graph.copyRemoteCommitUrl","when":"false"},{"command":"gitlens.graph.showInDetailsView","when":"false"},{"command":"gitlens.graph.openCommitOnRemote","when":"false"},{"command":"gitlens.graph.rebaseOntoCommit","when":"false"},{"command":"gitlens.graph.resetCommit","when":"false"},{"command":"gitlens.graph.resetToCommit","when":"false"},{"command":"gitlens.graph.resetToTip","when":"false"},{"command":"gitlens.graph.revert","when":"false"},{"command":"gitlens.graph.switchToCommit","when":"false"},{"command":"gitlens.graph.undoCommit","when":"false"},{"command":"gitlens.graph.saveStash","when":"false"},{"command":"gitlens.graph.applyStash","when":"false"},{"command":"gitlens.graph.stash.delete","when":"false"},{"command":"gitlens.graph.stash.rename","when":"false"},{"command":"gitlens.graph.createTag","when":"false"},{"command":"gitlens.graph.deleteTag","when":"false"},{"command":"gitlens.graph.switchToTag","when":"false"},{"command":"gitlens.graph.createWorktree","when":"false"},{"command":"gitlens.graph.createPullRequest","when":"false"},{"command":"gitlens.graph.openPullRequestOnRemote","when":"false"},{"command":"gitlens.graph.compareAncestryWithWorking","when":"false"},{"command":"gitlens.graph.compareWithHead","when":"false"},{"command":"gitlens.graph.compareWithUpstream","when":"false"},{"command":"gitlens.graph.compareWithWorking","when":"false"},{"command":"gitlens.graph.openChangedFiles","when":"false"},{"command":"gitlens.graph.openChangedFileDiffs","when":"false"},{"command":"gitlens.graph.openChangedFileDiffsWithWorking","when":"false"},{"command":"gitlens.graph.openChangedFileRevisions","when":"false"},{"command":"gitlens.graph.openOnlyChangedFiles","when":"false"},{"command":"gitlens.graph.addAuthor","when":"false"},{"command":"gitlens.graph.copy","when":"false"},{"command":"gitlens.graph.columnAuthorOn","when":"false"},{"command":"gitlens.graph.columnAuthorOff","when":"false"},{"command":"gitlens.graph.columnDateTimeOn","when":"false"},{"command":"gitlens.graph.columnDateTimeOff","when":"false"},{"command":"gitlens.graph.columnShaOn","when":"false"},{"command":"gitlens.graph.columnShaOff","when":"false"},{"command":"gitlens.graph.columnGraphCompact","when":"false"},{"command":"gitlens.graph.columnGraphDefault","when":"false"},{"command":"gitlens.graph.columnChangesOn","when":"false"},{"command":"gitlens.graph.columnChangesOff","when":"false"},{"command":"gitlens.graph.columnGraphOn","when":"false"},{"command":"gitlens.graph.columnGraphOff","when":"false"},{"command":"gitlens.graph.columnMessageOn","when":"false"},{"command":"gitlens.graph.columnMessageOff","when":"false"},{"command":"gitlens.graph.columnRefOn","when":"false"},{"command":"gitlens.graph.columnRefOff","when":"false"},{"command":"gitlens.graph.resetColumnsDefault","when":"false"},{"command":"gitlens.graph.resetColumnsCompact","when":"false"},{"command":"gitlens.graph.scrollMarkerLocalBranchOn","when":"false"},{"command":"gitlens.graph.scrollMarkerLocalBranchOff","when":"false"},{"command":"gitlens.graph.scrollMarkerRemoteBranchOn","when":"false"},{"command":"gitlens.graph.scrollMarkerRemoteBranchOff","when":"false"},{"command":"gitlens.graph.scrollMarkerStashOn","when":"false"},{"command":"gitlens.graph.scrollMarkerStashOff","when":"false"},{"command":"gitlens.graph.scrollMarkerTagOn","when":"false"},{"command":"gitlens.graph.scrollMarkerTagOff","when":"false"},{"command":"gitlens.enableDebugLogging","when":"config.gitlens.outputLevel != debug"},{"command":"gitlens.disableDebugLogging","when":"config.gitlens.outputLevel != errors"},{"command":"gitlens.generateCommitMessage","when":"gitlens:enabled && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders"},{"command":"gitlens.resetOpenAIKey","when":"gitlens:enabled"}],"editor/context":[{"command":"gitlens.openWorkingFile","when":"editorTextFocus && config.gitlens.menus.editor.compare && resourceScheme == gitlens","group":"1_z_gitlens@0"},{"submenu":"gitlens/editor/context/changes","when":"editorTextFocus && config.gitlens.menus.editor.compare && isFileSystemResource && resourceScheme =~ /^(?!output$|vscode-(?!remote|vfs$)).*$/","group":"1_z_gitlens_open@1"},{"submenu":"gitlens/editor/context/openOn","when":"editorTextFocus && gitlens:activeFileStatus =~ /remotes/ && config.gitlens.menus.editor.remote && isFileSystemResource && resourceScheme =~ /^(?!output$|vscode-(?!remote|vfs$)).*$/","group":"1_z_gitlens_open@2"},{"submenu":"gitlens/editor/annotations","when":"editorTextFocus && gitlens:activeFileStatus =~ /blameable/ && config.gitlens.menus.editor.blame && isFileSystemResource && resourceScheme =~ /^(?!output$|vscode-(?!remote|vfs$)).*$/","group":"1_z_gitlens_open_file@1"},{"submenu":"gitlens/editor/history","when":"gitlens:activeFileStatus =~ /tracked/ && config.gitlens.menus.editor.history && isFileSystemResource && resourceScheme =~ /^(?!output$|vscode-(?!remote|vfs$)).*$/","group":"1_z_gitlens_open_file@2"}],"editor/context/copy":[{"command":"gitlens.copyRelativePathToClipboard","when":"editorTextFocus && gitlens:activeFileStatus =~ /blameable/ && config.gitlens.menus.editor.clipboard && isFileSystemResource && resourceScheme =~ /^(?!output$|vscode-(?!remote|vfs$)).*$/","group":"1_gitlens@1"},{"command":"gitlens.copyRemoteFileUrlToClipboard","when":"editorTextFocus && gitlens:activeFileStatus =~ /blameable/ && config.gitlens.menus.editor.clipboard && isFileSystemResource && resourceScheme =~ /^(?!output$|vscode-(?!remote|vfs$)).*$/","group":"1_gitlens_remote@1"},{"command":"gitlens.copyRemoteFileUrlFrom","when":"editorTextFocus && gitlens:activeFileStatus =~ /blameable/ && config.gitlens.menus.editor.clipboard && isFileSystemResource && resourceScheme =~ /^(?!output$|vscode-(?!remote|vfs$)).*$/","group":"1_gitlens_remote@2"},{"command":"gitlens.copyRemoteCommitUrl","when":"editorTextFocus && gitlens:activeFileStatus =~ /blameable/ && config.gitlens.menus.editor.clipboard && isFileSystemResource && resourceScheme =~ /^(?!output$|vscode-(?!remote|vfs$)).*$/","group":"1_gitlens_remote@3"},{"command":"gitlens.copyShaToClipboard","when":"editorTextFocus && gitlens:activeFileStatus =~ /blameable/ && config.gitlens.menus.editor.clipboard && isFileSystemResource && resourceScheme =~ /^(?!output$|vscode-(?!remote|vfs$)).*$/","group":"3_gitlens@1"},{"command":"gitlens.copyMessageToClipboard","when":"editorTextFocus && gitlens:activeFileStatus =~ /blameable/ && config.gitlens.menus.editor.clipboard && isFileSystemResource && resourceScheme =~ /^(?!output$|vscode-(?!remote|vfs$)).*$/","group":"3_gitlens@2"}],"editor/lineNumber/context":[{"submenu":"gitlens/editor/lineNumber/context/share","when":"gitlens:hasRemotes && config.gitlens.menus.editorGutter.share && isFileSystemResource && resourceScheme =~ /^(?!output$|vscode-(?!remote|vfs$)).*$/","group":"2_gitlens@2"},{"submenu":"gitlens/editor/lineNumber/context/changes","when":"config.gitlens.menus.editorGutter.compare && isFileSystemResource && resourceScheme =~ /^(?!output$|vscode-(?!remote|vfs$)).*$/","group":"3_gitlens@1"},{"submenu":"gitlens/editor/lineNumber/context/openOn","when":"gitlens:hasRemotes && config.gitlens.menus.editorGutter.remote && isFileSystemResource && resourceScheme =~ /^(?!output$|vscode-(?!remote|vfs$)).*$/","group":"3_gitlens@2"}],"editor/title":[{"command":"gitlens.diffWithWorking","when":"gitlens:activeFileStatus =~ /revision/ && resourceScheme =~ /^(?!(file|git)$).*$/ && !isInDiffEditor","group":"navigation@-99"},{"command":"gitlens.diffWithWorkingInDiffLeft","when":"gitlens:activeFileStatus =~ /revision/ && resourceScheme =~ /^(?!(file|git)$).*$/ && isInDiffEditor && !isInDiffRightEditor","group":"navigation@-99"},{"command":"gitlens.diffWithWorkingInDiffRight","when":"gitlens:activeFileStatus =~ /revision/ && resourceScheme =~ /^(?!(file|git)$).*$/ && isInDiffRightEditor","group":"navigation@-99"},{"command":"gitlens.openWorkingFile","when":"gitlens:activeFileStatus =~ /revision/ && resourceScheme == git && !isInDiffEditor","group":"navigation@-98"},{"command":"gitlens.openWorkingFile","when":"gitlens:activeFileStatus =~ /revision/ && resourceScheme =~ /^(?!(file|git)$).*$/ && !isInDiffEditor","group":"navigation@-98"},{"command":"gitlens.openWorkingFileInDiffLeft","when":"gitlens:activeFileStatus =~ /revision/ && resourceScheme =~ /^(?!(file|git)$).*$/ && isInDiffEditor && !isInDiffRightEditor","group":"navigation@-98"},{"command":"gitlens.openWorkingFileInDiffRight","when":"gitlens:activeFileStatus =~ /revision/ && resourceScheme =~ /^(?!(file|git)$).*$/ && isInDiffRightEditor","group":"navigation@-98"},{"command":"gitlens.openRevisionFileInDiffLeft","when":"gitlens:activeFileStatus =~ /revision/ && resourceScheme =~ /^(?!(file|git)$).*$/ && isInDiffEditor && !isInDiffRightEditor","group":"navigation@-97"},{"command":"gitlens.openRevisionFileInDiffRight","when":"gitlens:activeFileStatus =~ /revision/ && resourceScheme =~ /^(?!(file|git)$).*$/ && isInDiffRightEditor","group":"navigation@-97"},{"command":"gitlens.diffWithPrevious","alt":"gitlens.diffWithRevision","when":"gitlens:activeFileStatus =~ /tracked/ && config.gitlens.menus.editorGroup.compare && !isInDiffEditor","group":"navigation@97"},{"command":"gitlens.diffWithPreviousInDiffLeft","alt":"gitlens.diffWithRevision","when":"gitlens:activeFileStatus =~ /tracked/ && config.gitlens.menus.editorGroup.compare && isInDiffEditor && !isInDiffRightEditor","group":"navigation@97"},{"command":"gitlens.diffWithPreviousInDiffRight","alt":"gitlens.diffWithRevision","when":"gitlens:activeFileStatus =~ /tracked/ && config.gitlens.menus.editorGroup.compare && isInDiffRightEditor","group":"navigation@97"},{"command":"gitlens.showQuickRevisionDetails","when":"gitlens:activeFileStatus =~ /tracked/ && config.gitlens.menus.editorGroup.compare && !isInDiffEditor","group":"navigation@98"},{"command":"gitlens.showQuickRevisionDetailsInDiffLeft","when":"gitlens:activeFileStatus =~ /tracked/ && config.gitlens.menus.editorGroup.compare && isInDiffEditor && !isInDiffRightEditor","group":"navigation@98"},{"command":"gitlens.showQuickRevisionDetailsInDiffRight","when":"gitlens:activeFileStatus =~ /tracked/ && config.gitlens.menus.editorGroup.compare && isInDiffRightEditor","group":"navigation@98"},{"command":"gitlens.diffWithNext","when":"gitlens:activeFileStatus =~ /tracked/ && config.gitlens.menus.editorGroup.compare && !isInDiffEditor","group":"navigation@99"},{"command":"gitlens.diffWithNextInDiffLeft","when":"gitlens:activeFileStatus =~ /tracked/ && config.gitlens.menus.editorGroup.compare && isInDiffEditor && !isInDiffRightEditor","group":"navigation@99"},{"command":"gitlens.diffWithNextInDiffRight","when":"gitlens:activeFileStatus =~ /tracked/ && config.gitlens.menus.editorGroup.compare && isInDiffRightEditor","group":"navigation@99"},{"command":"gitlens.toggleFileBlame","when":"config.gitlens.fileAnnotations.command == blame && gitlens:activeFileStatus =~ /blameable/ && !gitlens:annotationStatus && config.gitlens.menus.editorGroup.blame","group":"navigation@100","alt":"gitlens.toggleFileHeatmap"},{"command":"gitlens.toggleFileHeatmap","when":"config.gitlens.fileAnnotations.command == heatmap && gitlens:activeFileStatus =~ /blameable/ && !gitlens:annotationStatus && config.gitlens.menus.editorGroup.blame","group":"navigation@100","alt":"gitlens.toggleFileBlame"},{"command":"gitlens.toggleFileChanges","when":"config.gitlens.fileAnnotations.command == changes && gitlens:activeFileStatus =~ /blameable/ && !gitlens:hasVirtualFolders && !gitlens:annotationStatus && config.gitlens.menus.editorGroup.blame","group":"navigation@100","alt":"gitlens.toggleFileBlame"},{"submenu":"gitlens/editor/annotations","when":"!config.gitlens.fileAnnotations.command && gitlens:activeFileStatus =~ /blameable/ && !gitlens:annotationStatus && config.gitlens.menus.editorGroup.blame","group":"navigation@100"},{"command":"gitlens.computingFileAnnotations","when":"gitlens:activeFileStatus =~ /blameable/ && gitlens:annotationStatus == computing && config.gitlens.menus.editorGroup.blame","group":"navigation@100"},{"command":"gitlens.clearFileAnnotations","when":"gitlens:activeFileStatus =~ /blameable/ && gitlens:annotationStatus == computed && config.gitlens.menus.editorGroup.blame","group":"navigation@100"},{"command":"gitlens.timeline.refresh","when":"gitlens:webview:timeline:active","group":"navigation@-99"},{"command":"gitlens.graph.push","when":"gitlens:webview:graph:active && gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders","group":"navigation@-103"},{"command":"gitlens.graph.pull","when":"gitlens:webview:graph:active && gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders","group":"navigation@-102"},{"command":"gitlens.graph.fetch","when":"gitlens:webview:graph:active && gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders","group":"navigation@-101"},{"command":"gitlens.graph.switchToAnotherBranch","when":"gitlens:webview:graph:active && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders","group":"navigation@-100"},{"command":"gitlens.graph.refresh","when":"gitlens:webview:graph:active","group":"navigation@-99"},{"submenu":"gitlens/graph/configuration","when":"gitlens:webview:graph:active","group":"navigation@-98"},{"command":"gitlens.focus.refresh","when":"gitlens:webview:focus:active","group":"navigation@-98"}],"editor/title/context":[{"command":"gitlens.copyRemoteFileUrlWithoutRange","when":"gitlens:enabled && gitlens:hasRemotes && config.gitlens.menus.editorTab.clipboard && isFileSystemResource && resourceScheme =~ /^(?!output$|vscode-(?!remote|vfs$)).*$/","group":"1_cutcopypaste@100"},{"command":"gitlens.copyRemoteFileUrlFrom","when":"gitlens:enabled && gitlens:hasRemotes && config.gitlens.menus.editorTab.clipboard && isFileSystemResource && resourceScheme =~ /^(?!output$|vscode-(?!remote|vfs$)).*$/","group":"1_cutcopypaste@101"},{"command":"gitlens.openWorkingFile","when":"resourceScheme == gitlens && isFileSystemResource && resourceScheme =~ /^(?!output$|vscode-(?!remote|vfs$)).*$/","group":"2_a_gitlens@0"},{"submenu":"gitlens/editor/changes","when":"gitlens:enabled && config.gitlens.menus.editorTab.compare && isFileSystemResource && resourceScheme =~ /^(?!output$|vscode-(?!remote|vfs$)).*$/","group":"2_a_gitlens_open@1"},{"submenu":"gitlens/editor/openOn","when":"gitlens:enabled && gitlens:hasRemotes && config.gitlens.menus.editorTab.remote && isFileSystemResource && resourceScheme =~ /^(?!output$|vscode-(?!remote|vfs$)).*$/","group":"2_a_gitlens_open@2"},{"submenu":"gitlens/editor/history","when":"gitlens:enabled && config.gitlens.menus.editorTab.history && isFileSystemResource && resourceScheme =~ /^(?!output$|vscode-(?!remote|vfs$)).*$/","group":"2_a_gitlens_open_file@1"}],"explorer/context":[{"submenu":"gitlens/explorer/changes","when":"!explorerResourceIsRoot && !explorerResourceIsFolder && gitlens:enabled && config.gitlens.menus.explorer.compare","group":"4_t_gitlens@0"},{"submenu":"gitlens/explorer/openOn","when":"!explorerResourceIsRoot && gitlens:enabled && gitlens:hasRemotes && config.gitlens.menus.explorer.remote","group":"4_t_gitlens@1"},{"submenu":"gitlens/explorer/history","when":"gitlens:enabled && config.gitlens.menus.explorer.history","group":"4_timeline@0"},{"command":"gitlens.copyRemoteFileUrlWithoutRange","when":"!explorerResourceIsRoot && gitlens:enabled && gitlens:hasRemotes && config.gitlens.menus.explorer.clipboard","group":"6_copypath@100"},{"command":"gitlens.copyRemoteFileUrlFrom","when":"!explorerResourceIsRoot && gitlens:enabled && gitlens:hasRemotes && config.gitlens.menus.explorer.clipboard","group":"6_copypath@101"}],"extension/context":[{"command":"gitlens.getStarted","when":"extension =~ /^eamodio.gitlens?$/ && extensionStatus == installed","group":"9_gitlens@1"},{"command":"gitlens.showWelcomePage","when":"extension =~ /^eamodio.gitlens?$/ && extensionStatus == installed","group":"9_gitlens@2"},{"command":"gitlens.showSettingsPage","when":"extension =~ /^eamodio.gitlens?$/ && extensionStatus == installed","group":"9_gitlens@3"}],"git.commit":[{"command":"gitlens.addAuthors","when":"gitlens:enabled && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && config.gitlens.menus.scmRepository.authors","group":"4_gitlens@1"},{"command":"gitlens.generateCommitMessage","when":"gitlens:enabled && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && config.gitlens.menus.scmRepository.generateCommitMessage","group":"4_gitlens@2"}],"menuBar/edit/copy":[{"command":"gitlens.copyRemoteFileUrlToClipboard","when":"gitlens:activeFileStatus =~ /blameable/ && config.gitlens.menus.editor.clipboard","group":"1_gitlens@1"},{"command":"gitlens.copyRemoteFileUrlFrom","when":"gitlens:activeFileStatus =~ /blameable/ && config.gitlens.menus.editor.clipboard","group":"1_gitlens@2"}],"scm/sourceControl":[{"command":"gitlens.showGraph","when":"gitlens:enabled && config.gitlens.menus.scm.graph && gitlens:plus:enabled && scmProvider == git && scmProviderRootUri not in gitlens:plus:disallowedRepos","group":"6_gitlens@1"}],"scm/title":[{"command":"gitlens.showGraph","when":"gitlens:enabled && config.gitlens.menus.scmRepositoryInline.graph && gitlens:plus:enabled && scmProvider == git && scmProviderRootUri not in gitlens:plus:disallowedRepos","group":"navigation@-1000"},{"command":"gitlens.addAuthors","when":"gitlens:enabled && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && scmProvider == git && config.gitlens.menus.scmRepository.authors","group":"2_z_gitlens@1"},{"command":"gitlens.generateCommitMessage","when":"gitlens:enabled && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && scmProvider == git && config.gitlens.menus.scmRepository.generateCommitMessage","group":"2_z_gitlens@2"},{"command":"gitlens.showGraph","when":"gitlens:enabled && config.gitlens.menus.scmRepository.graph && gitlens:plus:enabled && scmProvider == git && scmProviderRootUri not in gitlens:plus:disallowedRepos","group":"2_z_gitlens@3"}],"scm/resourceGroup/context":[{"command":"gitlens.stashSave","when":"gitlens:enabled && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && scmProvider == git && scmResourceGroup =~ /^(workingTree|index)$/ && config.gitlens.menus.scmGroupInline.stash","group":"inline@-1"},{"command":"gitlens.stashSave","when":"gitlens:enabled && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && scmProvider == git && scmResourceGroup =~ /^(workingTree|index)$/ && config.gitlens.menus.scmGroup.stash","group":"1_modification@100"},{"submenu":"gitlens/scm/resourceGroup/changes","when":"gitlens:enabled && scmProvider == git && scmResourceGroup =~ /^(workingTree|index)$/ && config.gitlens.menus.scmGroup.compare","group":"2_gitlens@1"},{"command":"gitlens.openChangedFiles","when":"gitlens:enabled && scmProvider == git && scmResourceGroup =~ /^(workingTree|index)$/ && config.gitlens.menus.scmGroup.openClose","group":"3_gitlens@1"},{"command":"gitlens.closeUnchangedFiles","when":"gitlens:enabled && scmProvider == git && scmResourceGroup =~ /^(workingTree|index)$/ && config.gitlens.menus.scmGroup.openClose","group":"3_gitlens@2"},{"command":"gitlens.openOnlyChangedFiles","when":"gitlens:enabled && scmProvider == git && scmResourceGroup =~ /^(workingTree|index)$/ && config.gitlens.menus.scmGroup.openClose","group":"3_gitlens@2"}],"scm/resourceState/context":[{"command":"gitlens.stashSaveFiles","when":"gitlens:enabled && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && scmProvider == git && scmResourceGroup =~ /^(workingTree|index)$/ && config.gitlens.menus.scmItemInline.stash","group":"inline@1"},{"submenu":"gitlens/scm/resourceState/changes","when":"gitlens:enabled && scmProvider == git && scmResourceGroup =~ /^(workingTree|index|merge)$/ && config.gitlens.menus.scmItem.compare","group":"navigation"},{"submenu":"gitlens/scm/resourceState/openOn","when":"gitlens:enabled && gitlens:hasRemotes && scmProvider == git && scmResourceGroup =~ /^(workingTree|index|merge)$/ && config.gitlens.menus.scmItem.remote","group":"navigation"},{"submenu":"gitlens/scm/resourceState/history","when":"gitlens:enabled && scmProvider == git && scmResourceGroup =~ /^(workingTree|index|merge)$/ && config.gitlens.menus.scmItem.history","group":"1_a_gitlens@2"},{"command":"gitlens.stashSaveFiles","when":"gitlens:enabled && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && scmProvider == git && scmResourceGroup =~ /^(workingTree|index)$/ && config.gitlens.menus.scmItem.stash","group":"1_modification@2"},{"submenu":"gitlens/share","when":"gitlens:enabled && scmProvider == git && scmResourceGroup =~ /^(workingTree|index|merge)$/ && config.gitlens.menus.scmItem.share","group":"7_a_gitlens_share@1"},{"command":"gitlens.copyRelativePathToClipboard","when":"gitlens:enabled && gitlens:hasRemotes && scmProvider == git && scmResourceGroup =~ /^(workingTree|index|merge)$/ && config.gitlens.menus.scmItem.clipboard","group":"7_cutcopypaste@98"}],"timeline/item/context":[{"command":"gitlens.openCommitOnRemote","when":"false && gitlens:enabled && gitlens:hasRemotes && timelineItem =~ /git:file:commit\\b/","group":"inline@99","alt":"gitlens.copyRemoteCommitUrl"}],"view/title":[{"command":"gitlens.views.switchToAnotherBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && view =~ /^gitlens\\.views\\.branches/","group":"navigation@10"},{"command":"gitlens.views.title.createBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && view =~ /gitlens\\.views\\.branches\\b/","group":"navigation@11"},{"command":"gitlens.views.branches.setLayoutToList","when":"view =~ /gitlens\\.views\\.branches/ && config.gitlens.views.branches.branches.layout == tree","group":"navigation@50"},{"command":"gitlens.views.branches.setLayoutToTree","when":"view =~ /gitlens\\.views\\.branches/ && config.gitlens.views.branches.branches.layout == list","group":"navigation@50"},{"command":"gitlens.views.branches.refresh","when":"view =~ /^gitlens\\.views\\.branches/","group":"navigation@99"},{"command":"gitlens.views.branches.setFilesLayoutToAuto","when":"view =~ /^gitlens\\.views\\.branches/ && config.gitlens.views.branches.files.layout == tree","group":"3_gitlens@0"},{"command":"gitlens.views.branches.setFilesLayoutToList","when":"view =~ /^gitlens\\.views\\.branches/ && config.gitlens.views.branches.files.layout == auto","group":"3_gitlens@0"},{"command":"gitlens.views.branches.setFilesLayoutToTree","when":"view =~ /^gitlens\\.views\\.branches/ && config.gitlens.views.branches.files.layout == list","group":"3_gitlens@0"},{"command":"gitlens.views.branches.setShowAvatarsOn","when":"view =~ /^gitlens\\.views\\.branches/ && !config.gitlens.views.branches.avatars","group":"5_gitlens@0"},{"command":"gitlens.views.branches.setShowAvatarsOff","when":"view =~ /^gitlens\\.views\\.branches/ && config.gitlens.views.branches.avatars","group":"5_gitlens@0"},{"command":"gitlens.views.branches.setShowBranchComparisonOn","when":"view =~ /^gitlens\\.views\\.branches/ && !config.gitlens.views.branches.showBranchComparison","group":"5_gitlens@1"},{"command":"gitlens.views.branches.setShowBranchComparisonOff","when":"view =~ /^gitlens\\.views\\.branches/ && config.gitlens.views.branches.showBranchComparison","group":"5_gitlens@1"},{"command":"gitlens.views.branches.setShowBranchPullRequestOn","when":"view =~ /^gitlens\\.views\\.branches/ && !config.gitlens.views.branches.pullRequests.enabled && !config.gitlens.views.branches.pullRequests.showForBranches","group":"5_gitlens@2"},{"command":"gitlens.views.branches.setShowBranchPullRequestOff","when":"view =~ /^gitlens\\.views\\.branches/ && config.gitlens.views.branches.pullRequests.enabled && config.gitlens.views.branches.pullRequests.showForBranches","group":"5_gitlens@2"},{"command":"gitlens.pushRepositories","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && view =~ /^gitlens\\.views\\.commits/","group":"navigation@1"},{"command":"gitlens.pullRepositories","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && view =~ /^gitlens\\.views\\.commits/","group":"navigation@2"},{"command":"gitlens.fetchRepositories","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && view =~ /^gitlens\\.views\\.commits/","group":"navigation@3"},{"command":"gitlens.views.switchToAnotherBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && view =~ /^gitlens\\.views\\.commits/","group":"navigation@10"},{"command":"gitlens.showGraph","when":"view =~ /^gitlens\\.views\\.commits/ && gitlens:plus:enabled","group":"navigation@11"},{"command":"gitlens.views.commitDetails.refresh","when":"view =~ /^gitlens\\.views\\.commitDetails/","group":"navigation@99"},{"command":"gitlens.views.commits.setMyCommitsOnlyOff","when":"view =~ /^gitlens\\.views\\.commits/ && gitlens:views:commits:myCommitsOnly","group":"navigation@50"},{"command":"gitlens.views.commits.refresh","when":"view =~ /^gitlens\\.views\\.commits/","group":"navigation@99"},{"command":"gitlens.views.commits.setMyCommitsOnlyOn","when":"view =~ /^gitlens\\.views\\.commits/ && !gitlens:views:commits:myCommitsOnly","group":"3_gitlens@0"},{"command":"gitlens.views.commits.setMyCommitsOnlyOff","when":"view =~ /^gitlens\\.views\\.commits/ && gitlens:views:commits:myCommitsOnly","group":"3_gitlens@0"},{"command":"gitlens.views.commits.setFilesLayoutToAuto","when":"view =~ /^gitlens\\.views\\.commits/ && config.gitlens.views.commits.files.layout == tree","group":"3_gitlens@1"},{"command":"gitlens.views.commits.setFilesLayoutToList","when":"view =~ /^gitlens\\.views\\.commits/ && config.gitlens.views.commits.files.layout == auto","group":"3_gitlens@1"},{"command":"gitlens.views.commits.setFilesLayoutToTree","when":"view =~ /^gitlens\\.views\\.commits/ && config.gitlens.views.commits.files.layout == list","group":"3_gitlens@1"},{"command":"gitlens.views.commits.setShowAvatarsOn","when":"view =~ /^gitlens\\.views\\.commits/ && !config.gitlens.views.commits.avatars","group":"5_gitlens@0"},{"command":"gitlens.views.commits.setShowAvatarsOff","when":"view =~ /^gitlens\\.views\\.commits/ && config.gitlens.views.commits.avatars","group":"5_gitlens@0"},{"command":"gitlens.views.commits.setShowBranchComparisonOn","when":"view =~ /^gitlens\\.views\\.commits/ && !config.gitlens.views.commits.showBranchComparison","group":"5_gitlens@1"},{"command":"gitlens.views.commits.setShowBranchComparisonOff","when":"view =~ /^gitlens\\.views\\.commits/ && config.gitlens.views.commits.showBranchComparison","group":"5_gitlens@1"},{"command":"gitlens.views.commits.setShowBranchPullRequestOn","when":"view =~ /^gitlens\\.views\\.commits/ && !config.gitlens.views.commits.pullRequests.enabled && !config.gitlens.views.commits.pullRequests.showForBranches","group":"5_gitlens@2"},{"command":"gitlens.views.commits.setShowBranchPullRequestOff","when":"view =~ /^gitlens\\.views\\.commits/ && config.gitlens.views.commits.pullRequests.enabled && config.gitlens.views.commits.pullRequests.showForBranches","group":"5_gitlens@2"},{"command":"gitlens.showGraph","when":"view =~ /^gitlens\\.views\\.commits/ && gitlens:plus:enabled","group":"8_gitlens_toggles@0"},{"command":"gitlens.showRepositoriesView","when":"!gitlens:hasVirtualFolders && view =~ /^gitlens\\.views\\.commits/","group":"8_gitlens_toggles@1"},{"command":"gitlens.views.addAuthors","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && view =~ /^gitlens\\.views\\.contributors/","group":"navigation@10"},{"command":"gitlens.views.contributors.refresh","when":"view =~ /^gitlens\\.views\\.contributors/","group":"navigation@99"},{"command":"gitlens.views.contributors.setShowAllBranchesOn","when":"view =~ /^gitlens\\.views\\.contributors/ && !config.gitlens.views.contributors.showAllBranches","group":"3_gitlens@0"},{"command":"gitlens.views.contributors.setShowAllBranchesOff","when":"view =~ /^gitlens\\.views\\.contributors/ && config.gitlens.views.contributors.showAllBranches","group":"3_gitlens@0"},{"command":"gitlens.views.contributors.setFilesLayoutToAuto","when":"view =~ /^gitlens\\.views\\.contributors/ && config.gitlens.views.contributors.files.layout == tree","group":"3_gitlens@1"},{"command":"gitlens.views.contributors.setFilesLayoutToList","when":"view =~ /^gitlens\\.views\\.contributors/ && config.gitlens.views.contributors.files.layout == auto","group":"3_gitlens@1"},{"command":"gitlens.views.contributors.setFilesLayoutToTree","when":"view =~ /^gitlens\\.views\\.contributors/ && config.gitlens.views.contributors.files.layout == list","group":"3_gitlens@1"},{"command":"gitlens.views.contributors.setShowAvatarsOn","when":"view =~ /^gitlens\\.views\\.contributors/ && !config.gitlens.views.contributors.avatars","group":"5_gitlens@0"},{"command":"gitlens.views.contributors.setShowAvatarsOff","when":"view =~ /^gitlens\\.views\\.contributors/ && config.gitlens.views.contributors.avatars","group":"5_gitlens@0"},{"command":"gitlens.views.contributors.setShowStatisticsOn","when":"view =~ /^gitlens\\.views\\.contributors/ && !config.gitlens.views.contributors.showStatistics","group":"5_gitlens@1"},{"command":"gitlens.views.contributors.setShowStatisticsOff","when":"view =~ /^gitlens\\.views\\.contributors/ && config.gitlens.views.contributors.showStatistics","group":"5_gitlens@1"},{"command":"gitlens.views.fileHistory.setEditorFollowingOn","when":"view =~ /^gitlens\\.views\\.fileHistory/ && gitlens:views:fileHistory:canPin && !gitlens:views:fileHistory:editorFollowing","group":"navigation@10"},{"command":"gitlens.views.fileHistory.setEditorFollowingOff","when":"view =~ /^gitlens\\.views\\.fileHistory/ && gitlens:views:fileHistory:canPin && gitlens:views:fileHistory:editorFollowing","group":"navigation@10"},{"command":"gitlens.views.fileHistory.setCursorFollowingOn","when":"!gitlens:hasVirtualFolders && view =~ /^gitlens\\.views\\.fileHistory/ && !gitlens:views:fileHistory:cursorFollowing","group":"navigation@11"},{"command":"gitlens.views.fileHistory.setCursorFollowingOff","when":"!gitlens:hasVirtualFolders && view =~ /^gitlens\\.views\\.fileHistory/ && gitlens:views:fileHistory:cursorFollowing","group":"navigation@11"},{"command":"gitlens.views.fileHistory.refresh","when":"view =~ /^gitlens\\.views\\.fileHistory/","group":"navigation@99"},{"command":"gitlens.views.fileHistory.changeBase","when":"view =~ /^gitlens\\.views\\.fileHistory/","group":"1_gitlens@0"},{"command":"gitlens.views.fileHistory.setRenameFollowingOn","when":"view =~ /^gitlens\\.views\\.fileHistory/ && !gitlens:views:fileHistory:cursorFollowing && config.gitlens.advanced.fileHistoryShowAllBranches","group":"3_gitlens@1"},{"command":"gitlens.views.fileHistory.setRenameFollowingOn","when":"view =~ /^gitlens\\.views\\.fileHistory/ && !gitlens:views:fileHistory:cursorFollowing && !config.gitlens.advanced.fileHistoryShowAllBranches && !config.gitlens.advanced.fileHistoryFollowsRenames","group":"3_gitlens@1"},{"command":"gitlens.views.fileHistory.setRenameFollowingOff","when":"view =~ /^gitlens\\.views\\.fileHistory/ && !gitlens:views:fileHistory:cursorFollowing && !config.gitlens.advanced.fileHistoryShowAllBranches && config.gitlens.advanced.fileHistoryFollowsRenames","group":"3_gitlens@1"},{"command":"gitlens.views.fileHistory.setShowAllBranchesOn","when":"view =~ /^gitlens\\.views\\.fileHistory/ && !gitlens:views:fileHistory:cursorFollowing && !config.gitlens.advanced.fileHistoryShowAllBranches","group":"3_gitlens@2"},{"command":"gitlens.views.fileHistory.setShowAllBranchesOff","when":"view =~ /^gitlens\\.views\\.fileHistory/ && !gitlens:views:fileHistory:cursorFollowing && config.gitlens.advanced.fileHistoryShowAllBranches","group":"3_gitlens@2"},{"command":"gitlens.views.fileHistory.setShowAvatarsOn","when":"view =~ /^gitlens\\.views\\.fileHistory/ && !config.gitlens.views.fileHistory.avatars","group":"5_gitlens@0"},{"command":"gitlens.views.fileHistory.setShowAvatarsOff","when":"view =~ /^gitlens\\.views\\.fileHistory/ && config.gitlens.views.fileHistory.avatars","group":"5_gitlens@0"},{"command":"gitlens.views.graphDetails.refresh","when":"view =~ /^gitlens\\.views\\.graphDetails/","group":"navigation@99"},{"command":"gitlens.views.home.refresh","when":"view =~ /^gitlens\\.views\\.home/","group":"navigation@99"},{"command":"gitlens.views.account.refresh","when":"view =~ /^gitlens\\.views\\.account/","group":"navigation@99"},{"command":"gitlens.showLineHistoryView","when":"!gitlens:hasVirtualFolders && view =~ /^gitlens\\.views\\.fileHistory/","group":"8_gitlens_toggles@0"},{"command":"gitlens.views.lineHistory.setEditorFollowingOn","when":"view =~ /^gitlens\\.views\\.lineHistory/ && !gitlens:views:lineHistory:editorFollowing","group":"navigation@10"},{"command":"gitlens.views.lineHistory.setEditorFollowingOff","when":"view =~ /^gitlens\\.views\\.lineHistory/ && gitlens:views:lineHistory:editorFollowing","group":"navigation@10"},{"command":"gitlens.views.lineHistory.refresh","when":"view =~ /^gitlens\\.views\\.lineHistory/","group":"navigation@99"},{"command":"gitlens.views.lineHistory.changeBase","when":"view =~ /^gitlens\\.views\\.lineHistory/","group":"1_gitlens@0"},{"command":"gitlens.views.lineHistory.setShowAvatarsOn","when":"view =~ /^gitlens\\.views\\.lineHistory/ && !config.gitlens.views.lineHistory.avatars","group":"5_gitlens@0"},{"command":"gitlens.views.lineHistory.setShowAvatarsOff","when":"view =~ /^gitlens\\.views\\.lineHistory/ && config.gitlens.views.lineHistory.avatars","group":"5_gitlens@0"},{"command":"gitlens.views.addRemote","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && view =~ /gitlens\\.views\\.remotes/","group":"navigation@1"},{"command":"gitlens.views.remotes.setLayoutToList","when":"view =~ /gitlens\\.views\\.remotes/ && config.gitlens.views.remotes.branches.layout == tree","group":"navigation@50"},{"command":"gitlens.views.remotes.setLayoutToTree","when":"view =~ /gitlens\\.views\\.remotes/ && config.gitlens.views.remotes.branches.layout == list","group":"navigation@50"},{"command":"gitlens.views.remotes.refresh","when":"view =~ /^gitlens\\.views\\.remotes/","group":"navigation@99"},{"command":"gitlens.views.remotes.setFilesLayoutToAuto","when":"view =~ /^gitlens\\.views\\.remotes/ && config.gitlens.views.remotes.files.layout == tree","group":"3_gitlens@0"},{"command":"gitlens.views.remotes.setFilesLayoutToList","when":"view =~ /^gitlens\\.views\\.remotes/ && config.gitlens.views.remotes.files.layout == auto","group":"3_gitlens@0"},{"command":"gitlens.views.remotes.setFilesLayoutToTree","when":"view =~ /^gitlens\\.views\\.remotes/ && config.gitlens.views.remotes.files.layout == list","group":"3_gitlens@0"},{"command":"gitlens.views.remotes.setShowAvatarsOn","when":"view =~ /^gitlens\\.views\\.remotes/ && !config.gitlens.views.remotes.avatars","group":"5_gitlens@0"},{"command":"gitlens.views.remotes.setShowAvatarsOff","when":"view =~ /^gitlens\\.views\\.remotes/ && config.gitlens.views.remotes.avatars","group":"5_gitlens@0"},{"command":"gitlens.views.remotes.setShowBranchPullRequestOn","when":"view =~ /^gitlens\\.views\\.remotes/ && !config.gitlens.views.remotes.pullRequests.enabled && !config.gitlens.views.remotes.pullRequests.showForBranches","group":"5_gitlens@2"},{"command":"gitlens.views.remotes.setShowBranchPullRequestOff","when":"view =~ /^gitlens\\.views\\.remotes/ && config.gitlens.views.remotes.pullRequests.enabled && config.gitlens.views.remotes.pullRequests.showForBranches","group":"5_gitlens@2"},{"command":"gitlens.pushRepositories","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && view =~ /^gitlens\\.views\\.repositories/","group":"navigation@1"},{"command":"gitlens.pullRepositories","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && view =~ /^gitlens\\.views\\.repositories/","group":"navigation@2"},{"command":"gitlens.fetchRepositories","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && view =~ /^gitlens\\.views\\.repositories/","group":"navigation@3"},{"command":"gitlens.views.repositories.refresh","when":"view =~ /^gitlens\\.views\\.repositories/","group":"navigation@99"},{"command":"gitlens.views.repositories.setAutoRefreshToOn","when":"view =~ /^gitlens\\.views\\.repositories/ && config.gitlens.views.repositories.autoRefresh && !gitlens:views:repositories:autoRefresh","group":"2_gitlens@0"},{"command":"gitlens.views.repositories.setAutoRefreshToOff","when":"view =~ /^gitlens\\.views\\.repositories/ && config.gitlens.views.repositories.autoRefresh && gitlens:views:repositories:autoRefresh","group":"2_gitlens@0"},{"command":"gitlens.views.repositories.setFilesLayoutToAuto","when":"view =~ /^gitlens\\.views\\.repositories/ && config.gitlens.views.repositories.files.layout == tree","group":"3_gitlens@0"},{"command":"gitlens.views.repositories.setFilesLayoutToList","when":"view =~ /^gitlens\\.views\\.repositories/ && config.gitlens.views.repositories.files.layout == auto","group":"3_gitlens@0"},{"command":"gitlens.views.repositories.setFilesLayoutToTree","when":"view =~ /^gitlens\\.views\\.repositories/ && config.gitlens.views.repositories.files.layout == list","group":"3_gitlens@0"},{"submenu":"gitlens/view/repositories/sections","when":"view =~ /^gitlens\\.views\\.repositories/","group":"4_gitlens@1"},{"command":"gitlens.views.repositories.setShowAvatarsOn","when":"view =~ /^gitlens\\.views\\.repositories/ && !config.gitlens.views.repositories.avatars","group":"5_gitlens@0"},{"command":"gitlens.views.repositories.setShowAvatarsOff","when":"view =~ /^gitlens\\.views\\.repositories/ && config.gitlens.views.repositories.avatars","group":"5_gitlens@0"},{"submenu":"gitlens/view/searchAndCompare/new","when":"view =~ /^gitlens\\.views\\.searchAndCompare\\b/","group":"navigation@10"},{"command":"gitlens.views.searchAndCompare.setKeepResultsToOn","when":"view =~ /^gitlens\\.views\\.searchAndCompare\\b/ && !gitlens:views:searchAndCompare:keepResults","group":"navigation@12"},{"command":"gitlens.views.searchAndCompare.setKeepResultsToOff","when":"view =~ /^gitlens\\.views\\.searchAndCompare\\b/ && gitlens:views:searchAndCompare:keepResults","group":"navigation@13"},{"command":"gitlens.views.searchAndCompare.clear","when":"view =~ /^gitlens\\.views\\.searchAndCompare\\b/","group":"navigation@98"},{"command":"gitlens.views.searchAndCompare.refresh","when":"view =~ /^gitlens\\.views\\.searchAndCompare\\b/","group":"navigation@99"},{"command":"gitlens.views.searchAndCompare.setFilesLayoutToAuto","when":"view =~ /^gitlens\\.views\\.searchAndCompare\\b/ && config.gitlens.views.searchAndCompare.files.layout == tree","group":"3_gitlens@0"},{"command":"gitlens.views.searchAndCompare.setFilesLayoutToList","when":"view =~ /^gitlens\\.views\\.searchAndCompare\\b/ && config.gitlens.views.searchAndCompare.files.layout == auto","group":"3_gitlens@0"},{"command":"gitlens.views.searchAndCompare.setFilesLayoutToTree","when":"view =~ /^gitlens\\.views\\.searchAndCompare\\b/ && config.gitlens.views.searchAndCompare.files.layout == list","group":"3_gitlens@0"},{"command":"gitlens.views.searchAndCompare.setShowAvatarsOn","when":"view =~ /^gitlens\\.views\\.searchAndCompare\\b/ && !config.gitlens.views.searchAndCompare.avatars","group":"5_gitlens@0"},{"command":"gitlens.views.searchAndCompare.setShowAvatarsOff","when":"view =~ /^gitlens\\.views\\.searchAndCompare\\b/ && config.gitlens.views.searchAndCompare.avatars","group":"5_gitlens@0"},{"command":"gitlens.stashSave","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && view =~ /^gitlens\\.views\\.stashes/","group":"navigation@10"},{"command":"gitlens.views.title.applyStash","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && view =~ /^gitlens\\.views\\.stashes/","group":"navigation@11"},{"command":"gitlens.views.stashes.setFilesLayoutToAuto","when":"view =~ /^gitlens\\.views\\.stashes/ && config.gitlens.views.stashes.files.layout == tree","group":"3_gitlens@0"},{"command":"gitlens.views.stashes.setFilesLayoutToList","when":"view =~ /^gitlens\\.views\\.stashes/ && config.gitlens.views.stashes.files.layout == auto","group":"3_gitlens@0"},{"command":"gitlens.views.stashes.setFilesLayoutToTree","when":"view =~ /^gitlens\\.views\\.stashes/ && config.gitlens.views.stashes.files.layout == list","group":"3_gitlens@0"},{"command":"gitlens.views.stashes.refresh","when":"view =~ /^gitlens\\.views\\.stashes/","group":"navigation@99"},{"command":"gitlens.views.title.createTag","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && view =~ /gitlens\\.views\\.tags\\b/","group":"navigation@10"},{"command":"gitlens.views.tags.setLayoutToList","when":"view =~ /gitlens\\.views\\.tags/ && config.gitlens.views.tags.branches.layout == tree","group":"navigation@50"},{"command":"gitlens.views.tags.setLayoutToTree","when":"view =~ /gitlens\\.views\\.tags/ && config.gitlens.views.tags.branches.layout == list","group":"navigation@50"},{"command":"gitlens.views.tags.refresh","when":"view =~ /^gitlens\\.views\\.tags/","group":"navigation@99"},{"command":"gitlens.views.tags.setFilesLayoutToAuto","when":"view =~ /^gitlens\\.views\\.tags/ && config.gitlens.views.tags.files.layout == tree","group":"3_gitlens@0"},{"command":"gitlens.views.tags.setFilesLayoutToList","when":"view =~ /^gitlens\\.views\\.tags/ && config.gitlens.views.tags.files.layout == auto","group":"3_gitlens@0"},{"command":"gitlens.views.tags.setFilesLayoutToTree","when":"view =~ /^gitlens\\.views\\.tags/ && config.gitlens.views.tags.files.layout == list","group":"3_gitlens@0"},{"command":"gitlens.views.tags.setShowAvatarsOn","when":"view =~ /^gitlens\\.views\\.tags/ && !config.gitlens.views.tags.avatars","group":"5_gitlens@0"},{"command":"gitlens.views.tags.setShowAvatarsOff","when":"view =~ /^gitlens\\.views\\.tags/ && config.gitlens.views.tags.avatars","group":"5_gitlens@0"},{"command":"gitlens.views.timeline.refresh","when":"view =~ /^gitlens\\.views\\.timeline/","group":"navigation@99"},{"command":"gitlens.views.workspaces.info","when":"view =~ /^gitlens\\.views\\.workspaces/","group":"8_info@1"},{"command":"gitlens.views.workspaces.create","when":"view =~ /^gitlens\\.views\\.workspaces/ && gitlens:plus","group":"navigation@1"},{"command":"gitlens.views.workspaces.refresh","when":"view =~ /^gitlens\\.views\\.workspaces/","group":"navigation@99"},{"command":"gitlens.views.title.createWorktree","when":"view =~ /^gitlens\\.views\\.worktrees/","group":"navigation@10"},{"command":"gitlens.views.worktrees.setFilesLayoutToList","when":"view =~ /^gitlens\\.views\\.worktrees/","group":"navigation@10"},{"command":"gitlens.views.worktrees.refresh","when":"view =~ /^gitlens\\.views\\.worktrees/","group":"navigation@99"},{"command":"gitlens.views.worktrees.setFilesLayoutToAuto","when":"view =~ /^gitlens\\.views\\.worktrees/ && config.gitlens.views.worktrees.files.layout == tree","group":"3_gitlens@1"},{"command":"gitlens.views.worktrees.setFilesLayoutToList","when":"view =~ /^gitlens\\.views\\.worktrees/ && config.gitlens.views.worktrees.files.layout == auto","group":"3_gitlens@1"},{"command":"gitlens.views.worktrees.setFilesLayoutToTree","when":"view =~ /^gitlens\\.views\\.worktrees/ && config.gitlens.views.worktrees.files.layout == list","group":"3_gitlens@1"},{"command":"gitlens.views.worktrees.setShowAvatarsOn","when":"view =~ /^gitlens\\.views\\.worktrees/ && !config.gitlens.views.worktrees.avatars","group":"5_gitlens@0"},{"command":"gitlens.views.worktrees.setShowAvatarsOff","when":"view =~ /^gitlens\\.views\\.worktrees/ && config.gitlens.views.worktrees.avatars","group":"5_gitlens@0"},{"command":"gitlens.views.worktrees.setShowBranchComparisonOn","when":"view =~ /^gitlens\\.views\\.worktrees/ && !config.gitlens.views.worktrees.showBranchComparison","group":"5_gitlens@1"},{"command":"gitlens.views.worktrees.setShowBranchComparisonOff","when":"view =~ /^gitlens\\.views\\.worktrees/ && config.gitlens.views.worktrees.showBranchComparison","group":"5_gitlens@1"},{"command":"gitlens.views.worktrees.setShowBranchPullRequestOn","when":"view =~ /^gitlens\\.views\\.worktrees/ && !config.gitlens.views.worktrees.pullRequests.enabled && !config.gitlens.views.worktrees.pullRequests.showForBranches","group":"5_gitlens@2"},{"command":"gitlens.views.worktrees.setShowBranchPullRequestOff","when":"view =~ /^gitlens\\.views\\.worktrees/ && config.gitlens.views.worktrees.pullRequests.enabled && config.gitlens.views.worktrees.pullRequests.showForBranches","group":"5_gitlens@2"},{"command":"gitlens.views.setShowRelativeDateMarkersOn","when":"view =~ /^gitlens\\.views\\.(branches|commits|fileHistory|lineHistory|remotes|repositories|tags|worktrees)/ && !config.gitlens.views.showRelativeDateMarkers","group":"5_gitlens@3"},{"command":"gitlens.views.setShowRelativeDateMarkersOff","when":"view =~ /^gitlens\\.views\\.(branches|commits|fileHistory|lineHistory|remotes|repositories|tags|worktrees)/ && config.gitlens.views.showRelativeDateMarkers","group":"5_gitlens@3"},{"command":"gitlens.graph.refresh","when":"view =~ /^gitlens\\.views\\.graph\\b/","group":"navigation@-99"},{"submenu":"gitlens/graph/configuration","when":"view =~ /^gitlens\\.views\\.graph\\b/","group":"navigation@-98"},{"command":"gitlens.showSettingsPage#branches-view","when":"view =~ /^gitlens\\.views\\.branches/","group":"9_gitlens@1"},{"command":"gitlens.showSettingsPage#commits-view","when":"view =~ /^gitlens\\.views\\.commits/","group":"9_gitlens@1"},{"command":"gitlens.showSettingsPage#contributors-view","when":"view =~ /^gitlens\\.views\\.contributors/","group":"9_gitlens@1"},{"command":"gitlens.showSettingsPage#file-history-view","when":"view =~ /^gitlens\\.views\\.fileHistory/","group":"9_gitlens@1"},{"command":"gitlens.showSettingsPage#line-history-view","when":"view =~ /^gitlens\\.views\\.lineHistory/","group":"9_gitlens@1"},{"command":"gitlens.showSettingsPage#remotes-view","when":"view =~ /^gitlens\\.views\\.remotes/","group":"9_gitlens@1"},{"command":"gitlens.showSettingsPage#repositories-view","when":"view =~ /^gitlens\\.views\\.repositories/","group":"9_gitlens@1"},{"command":"gitlens.showSettingsPage#search-compare-view","when":"view =~ /^gitlens\\.views\\.searchAndCompare\\b/","group":"9_gitlens@1"},{"command":"gitlens.showSettingsPage#stashes-view","when":"view =~ /^gitlens\\.views\\.stashes/","group":"9_gitlens@1"},{"command":"gitlens.showSettingsPage#tags-view","when":"view =~ /^gitlens\\.views\\.tags/","group":"9_gitlens@1"},{"command":"gitlens.showSettingsPage#worktrees-view","when":"view =~ /^gitlens\\.views\\.worktrees/","group":"9_gitlens@1"}],"view/item/context":[{"command":"gitlens.plus.loginOrSignUp","when":"viewItem == gitlens:message:signin","group":"inline@1"},{"command":"gitlens.views.workspaces.convert","when":"viewItem =~ /gitlens:repositories\\b(?=.*?\\b\\+workspaces\\b)/ && gitlens:plus","group":"inline@1"},{"command":"gitlens.views.workspaces.convert","when":"viewItem =~ /gitlens:repositories\\b(?=.*?\\b\\+workspaces\\b)/ && gitlens:plus","group":"1_gitlens_actions@1"},{"command":"gitlens.views.workspaces.addRepos","when":"viewItem =~ /gitlens:workspace\\b(?=.*?\\b\\+cloud\\b)/","group":"inline@1"},{"command":"gitlens.views.workspaces.locateAllRepos","when":"viewItem =~ /gitlens:workspace\\b(?=.*?\\b\\+cloud\\b)(?!.*?\\b\\+empty\\b)/","group":"inline@2"},{"command":"gitlens.views.workspaces.createLocal","when":"viewItem =~ /gitlens:workspace\\b(?=.*?\\b\\+(cloud|local)\\b)(?!.*?\\b\\+current\\b)(?!.*?\\b\\+hasPath\\b)(?!.*?\\b\\+empty\\b)/","group":"inline@3"},{"command":"gitlens.views.workspaces.openLocalNewWindow","when":"viewItem =~ /gitlens:workspace\\b(?=.*?\\b\\+(cloud|local)\\b)(?!.*?\\b\\+current\\b)(?=.*?\\b\\+hasPath\\b)/","group":"inline@3","alt":"gitlens.views.workspaces.openLocal"},{"command":"gitlens.views.workspaces.addRepos","when":"viewItem =~ /gitlens:workspace\\b(?=.*?\\b\\+cloud\\b)/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.workspaces.locateAllRepos","when":"viewItem =~ /gitlens:workspace\\b(?=.*?\\b\\+cloud\\b)(?!.*?\\b\\+empty\\b)/","group":"1_gitlens_actions@2"},{"command":"gitlens.views.workspaces.addReposFromLinked","when":"viewItem =~ /gitlens:repositories\\b(?=.*?\\b\\+linked\\b)(?=.*?\\b\\+current\\b)/","group":"1_gitlens_actions@3"},{"command":"gitlens.views.workspaces.createLocal","when":"viewItem =~ /gitlens:workspace\\b(?=.*?\\b\\+(cloud|local)\\b)(?!.*?\\b\\+empty\\b)/","group":"2_gitlens_quickopen@3"},{"command":"gitlens.views.workspaces.openLocal","when":"viewItem =~ /gitlens:workspace\\b(?=.*?\\b\\+(cloud|local)\\b)(?!.*?\\b\\+current\\b)(?=.*?\\b\\+hasPath\\b)/","group":"2_gitlens_quickopen@4"},{"command":"gitlens.views.workspaces.openLocalNewWindow","when":"viewItem =~ /gitlens:workspace\\b(?=.*?\\b\\+(cloud|local)\\b)(?!.*?\\b\\+current\\b)(?=.*?\\b\\+hasPath\\b)/","group":"2_gitlens_quickopen@5"},{"command":"gitlens.views.workspaces.changeAutoAddSetting","when":"viewItem =~ /(gitlens:workspace\\b(?=.*?\\b\\+(cloud|local)\\b)(?=.*?\\b\\+current\\b)(?=.*?\\b\\+hasPath\\b)|gitlens:repositories\\b(?=.*?\\b\\+linked\\b))/","group":"2_gitlens_quickopen@6"},{"command":"gitlens.views.workspaces.delete","when":"viewItem =~ /gitlens:workspace\\b(?=.*?\\b\\+cloud\\b)/","group":"6_gitlens_actions@1"},{"command":"gitlens.views.switchToAnotherBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:branches\\b(?!.*?\\b\\+closed\\b)/","group":"inline@10"},{"command":"gitlens.views.createBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:branches\\b(?!.*?\\b\\+closed\\b)/","group":"inline@11"},{"command":"gitlens.views.repositories.setBranchesLayoutToList","when":"viewItem =~ /gitlens:branches\\b/ && config.gitlens.views.repositories.branches.layout == tree","group":"inline@50"},{"command":"gitlens.views.repositories.setBranchesLayoutToTree","when":"viewItem =~ /gitlens:branches\\b/ && config.gitlens.views.repositories.branches.layout == list","group":"inline@50"},{"command":"gitlens.openBranchesOnRemote","when":"viewItem =~ /gitlens:branches\\b(?=.*?\\b\\+remotes\\b)/","group":"inline@98","alt":"gitlens.copyRemoteBranchesUrl"},{"command":"gitlens.views.switchToAnotherBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:branches\\b(?!.*?\\b\\+closed\\b)/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.createBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:branches\\b(?!.*?\\b\\+closed\\b)/","group":"1_gitlens_actions@2"},{"command":"gitlens.openBranchesOnRemote","when":"viewItem =~ /gitlens:branches\\b(?=.*?\\b\\+remotes\\b)/","group":"2_gitlens_quickopen@1","alt":"gitlens.copyRemoteBranchesUrl"},{"command":"gitlens.views.repositories.setBranchesShowBranchComparisonOn","when":"view =~ /^gitlens\\.views\\.repositories/ && viewItem =~ /gitlens:branches\\b/ && !config.gitlens.views.repositories.branches.showBranchComparison","group":"8_gitlens_toggles@1"},{"command":"gitlens.views.repositories.setBranchesShowBranchComparisonOff","when":"view =~ /^gitlens\\.views\\.repositories/ && viewItem =~ /gitlens:branches\\b/ && config.gitlens.views.repositories.branches.showBranchComparison","group":"8_gitlens_toggles@1"},{"command":"gitlens.views.switchToBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:branch\\b(?!.*?\\b\\+current\\b)(?!.*?\\b\\+closed\\b)/","group":"inline@7"},{"command":"gitlens.views.switchToAnotherBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:branch\\b(?=.*?\\b\\+current\\b)(?!.*?\\b\\+closed\\b)/","group":"inline@7"},{"command":"gitlens.views.publishBranch","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:branch\\b(?!.*?\\b\\+remote\\b)(?!.*?\\b\\+tracking\\b)(?!.*?\\b\\+closed\\b)/","group":"inline@8"},{"command":"gitlens.views.push","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:branch\\b(?=.*?\\b\\+ahead\\b)(?!.*?\\b\\+behind\\b)(?!.*?\\b\\+closed\\b)/","group":"inline@8"},{"command":"gitlens.views.pull","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:branch\\b(?=.*?\\b\\+behind\\b)(?!.*?\\b\\+closed\\b)/","group":"inline@8"},{"command":"gitlens.views.fetch","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:branch\\b(?=.*?\\b\\+(remote|tracking)\\b)(?!.*?\\b\\+ahead\\b)(?!.*?\\b\\+behind\\b)(?!.*?\\b\\+closed\\b)/","group":"inline@8"},{"command":"gitlens.views.createPullRequest","when":"gitlens:hasRemotes && gitlens:action:createPullRequest && viewItem =~ /gitlens:branch\\b(?=.*?\\b\\+(tracking|remote)\\b)(?!.*?\\b\\+closed\\b)/","group":"inline@9"},{"command":"gitlens.views.undoCommit","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:commit\\b(?=.*?\\b\\+HEAD\\b)/","group":"inline@95"},{"command":"gitlens.views.push","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:commit\\b(?=.*?\\b\\+current\\b)(?=.*?\\b\\+unpublished\\b)(?=.*?\\b\\+HEAD\\b)/","group":"inline@96","alt":"gitlens.views.pushWithForce"},{"command":"gitlens.views.pushToCommit","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:commit\\b(?=.*?\\b\\+current\\b)(?=.*?\\b\\+unpublished\\b)(?!.*?\\b\\+HEAD\\b)/","group":"inline@96"},{"command":"gitlens.views.compareWithHead","when":"viewItem =~ /gitlens:(branch\\b(?!.*?\\b\\+current\\b)|commit\\b|stash\\b|tag\\b)/","group":"inline@97","alt":"gitlens.views.compareWithWorking"},{"command":"gitlens.views.compareWithWorking","when":"viewItem =~ /gitlens:branch\\b(?=.*?\\b\\+current\\b)/","group":"inline@97"},{"command":"gitlens.views.star","when":"viewItem =~ /gitlens:branch\\b(?!.*?\\b\\+starred\\b)/","group":"inline@98"},{"command":"gitlens.views.unstar","when":"viewItem =~ /gitlens:branch\\b(?=.*?\\b\\+starred\\b)/","group":"inline@98"},{"command":"gitlens.openBranchOnRemote","when":"viewItem =~ /gitlens:branch\\b(?=.*?\\b\\+(tracking|remote)\\b)/","group":"inline@99","alt":"gitlens.copyRemoteBranchUrl"},{"command":"gitlens.views.switchToAnotherBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:branch\\b(?=.*?\\b\\+current\\b)(?!.*?\\b\\+closed\\b)/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.switchToBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:branch\\b(?!.*?\\b\\+current\\b)(?!.*?\\b\\+closed\\b)/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.mergeBranchInto","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:branch\\b(?!.*?\\b\\+current\\b)(?!.*?\\b\\+closed\\b)/","group":"1_gitlens_actions@3"},{"command":"gitlens.views.rebaseOntoBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:branch\\b(?!.*?\\b\\+current\\b)(?!.*?\\b\\+closed\\b)/","group":"1_gitlens_actions@4"},{"command":"gitlens.views.rebaseOntoUpstream","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:branch\\b(?=.*?\\b\\+current\\b)(?=.*?\\b\\+tracking\\b)(?!.*?\\b\\+closed\\b)/","group":"1_gitlens_actions@4"},{"command":"gitlens.views.renameBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:branch\\b(?!.*?\\b\\+closed\\b)/","group":"1_gitlens_actions@5"},{"command":"gitlens.views.deleteBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:branch\\b(?!.*?\\b\\+current\\b)(?!.*?\\b\\+closed\\b)/","group":"1_gitlens_actions@6"},{"command":"gitlens.views.createBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:branch\\b(?!.*?\\b\\+closed\\b)/","group":"1_gitlens_actions_@7"},{"command":"gitlens.views.createTag","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:branch\\b(?!.*?\\b\\+closed\\b)/","group":"1_gitlens_actions_@8"},{"command":"gitlens.views.createWorktree","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:branch\\b(?!.*?\\b\\+closed\\b)/","group":"1_gitlens_actions_@9"},{"command":"gitlens.views.createPullRequest","when":"gitlens:hasRemotes && gitlens:action:createPullRequest && viewItem =~ /gitlens:branch\\b(?=.*?\\b\\+(tracking|remote)\\b)(?!.*?\\b\\+closed\\b)/","group":"1_gitlens_actions_@10"},{"command":"gitlens.openBranchOnRemote","when":"viewItem =~ /gitlens:branch\\b(?=.*?\\b\\+(tracking|remote)\\b)/","group":"2_gitlens_quickopen@1","alt":"gitlens.copyRemoteBranchUrl"},{"command":"gitlens.views.openDirectoryDiffWithWorking","when":"!gitlens:hasVirtualFolders && viewItem =~ /gitlens:(branch|tag)\\b/","group":"3_gitlens_explore@11"},{"command":"gitlens.views.compareWithUpstream","when":"!gitlens:hasVirtualFolders && viewItem =~ /gitlens:branch\\b(?=.*?\\b\\+tracking\\b)/","group":"4_gitlens_compare@1"},{"command":"gitlens.views.compareWithHead","when":"!gitlens:hasVirtualFolders && viewItem =~ /gitlens:(branch\\b(?!.*?\\b\\+current\\b)|commit\\b|stash\\b|tag\\b)/","group":"4_gitlens_compare@2"},{"command":"gitlens.views.compareWithWorking","when":"!gitlens:hasVirtualFolders && viewItem =~ /gitlens:(branch|commit|stash|tag)\\b/","group":"4_gitlens_compare@3"},{"command":"gitlens.views.compareAncestryWithWorking","when":"!gitlens:hasVirtualFolders && viewItem =~ /gitlens:branch\\b(?!.*?\\b\\+current\\b)/","group":"4_gitlens_compare@4"},{"command":"gitlens.views.compareWithSelected","when":"!gitlens:hasVirtualFolders && viewItem =~ /gitlens:(branch|commit|stash|tag)\\b/ && gitlens:views:canCompare","group":"4_gitlens_compare@98"},{"command":"gitlens.views.selectForCompare","when":"!gitlens:hasVirtualFolders && viewItem =~ /gitlens:(branch|commit|stash|tag)\\b/","group":"4_gitlens_compare@99"},{"command":"gitlens.views.compareFileWithSelected","when":"viewItem =~ /gitlens:file\\b/ && gitlens:views:canCompare:file","group":"4_gitlens_compare@98"},{"command":"gitlens.views.selectFileForCompare","when":"viewItem =~ /gitlens:file\\b(?!.*?\\b\\+conflicted\\b)/","group":"4_gitlens_compare@99"},{"command":"gitlens.views.star","when":"viewItem =~ /gitlens:branch\\b(?!.*?\\b\\+starred\\b)/","group":"8_gitlens_actions@1"},{"command":"gitlens.views.unstar","when":"viewItem =~ /gitlens:branch\\b(?=.*?\\b\\+starred\\b)/","group":"8_gitlens_actions@1"},{"command":"gitlens.views.addAuthors","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:contributors\\b/","group":"inline@1"},{"command":"gitlens.views.addAuthors","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:contributors\\b/","group":"1_gitlens_actions@1"},{"command":"gitlens.inviteToLiveShare","when":"gitlens:vsls && gitlens:vsls != guest && viewItem =~ /gitlens:contributor\\b(?!.*?\\b\\+current\\b)/","group":"inline@1"},{"command":"gitlens.views.addAuthor","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:contributor\\b(?!.*?\\b\\+current\\b)/","group":"inline@2"},{"command":"gitlens.views.copy","when":"viewItem =~ /gitlens:contributor\\b/","group":"inline@98"},{"command":"gitlens.inviteToLiveShare","when":"gitlens:vsls && gitlens:vsls != guest && viewItem =~ /gitlens:contributor\\b(?!.*?\\b\\+current\\b)/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.addAuthor","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:contributor\\b(?!.*?\\b\\+current\\b)/","group":"1_gitlens_actions@2"},{"command":"gitlens.copyShaToClipboard","when":"viewItem =~ /gitlens:commit\\b/","group":"inline@98","alt":"gitlens.copyMessageToClipboard"},{"command":"gitlens.openCommitOnRemote","when":"viewItem =~ /gitlens:commit\\b/ && gitlens:hasRemotes","group":"inline@99","alt":"gitlens.copyRemoteCommitUrl"},{"command":"gitlens.views.cherryPick","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:commit\\b(?!.*?\\b\\+current\\b)/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.undoCommit","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:commit\\b(?=.*?\\b\\+HEAD\\b)/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.push","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:commit\\b(?=.*?\\b\\+current\\b)(?=.*?\\b\\+unpublished\\b)(?=.*?\\b\\+HEAD\\b)/","group":"1_gitlens_actions@2"},{"command":"gitlens.views.pushToCommit","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:commit\\b(?=.*?\\b\\+current\\b)(?=.*?\\b\\+unpublished\\b)(?!.*?\\b\\+HEAD\\b)/","group":"1_gitlens_actions@2"},{"command":"gitlens.views.revert","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:commit\\b(?=.*?\\b\\+current\\b)/","group":"1_gitlens_actions@3"},{"command":"gitlens.views.resetToCommit","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:commit\\b/","group":"1_gitlens_actions@4"},{"command":"gitlens.views.resetToTip","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:branch\\b/","group":"1_gitlens_actions@4"},{"command":"gitlens.views.resetCommit","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:commit\\b/","group":"1_gitlens_actions@5"},{"command":"gitlens.views.rebaseOntoCommit","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:commit\\b/","group":"1_gitlens_actions@6"},{"command":"gitlens.views.switchToCommit","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:commit\\b/","group":"1_gitlens_actions@7"},{"command":"gitlens.views.createBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:commit\\b/","group":"1_gitlens_actions_1@1"},{"command":"gitlens.views.createTag","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:commit\\b/","group":"1_gitlens_actions_1@2"},{"submenu":"gitlens/commit/changes","when":"viewItem =~ /gitlens:(commit|stash|results:files)\\b/","group":"2_gitlens_quickopen@1"},{"command":"gitlens.showInDetailsView","when":"viewItem =~ /gitlens:(commit|stash)\\b/","group":"3_gitlens_explore@0"},{"command":"gitlens.showInCommitGraph","when":"viewItem =~ /gitlens:(branch|commit|stash|tag)\\b(?!.*?\\b\\+closed\\b)/","group":"3_gitlens_explore@1"},{"command":"gitlens.revealCommitInView","when":"view =~ /gitlens\\.views\\.(?!commits|branches\\b)/ && viewItem =~ /gitlens:commit\\b/","group":"3_gitlens_explore@2"},{"command":"gitlens.openCommitOnRemote","when":"gitlens:hasRemotes && viewItem =~ /gitlens:commit\\b/","group":"3_gitlens_explore@2","alt":"gitlens.copyRemoteCommitUrl"},{"submenu":"gitlens/share","when":"viewItem =~ /gitlens:(branch|commit|compare:results(?!:)|remote|repo-folder|repository|stash|tag|file\\b(?=.*?\\b\\+committed\\b))\\b/","group":"7_gitlens_a_share@1"},{"command":"gitlens.copyRelativePathToClipboard","when":"viewItem =~ /gitlens:file\\b/","group":"7_gitlens_cutcopypaste@2"},{"command":"gitlens.copyShaToClipboard","when":"(viewItem =~ /gitlens:(commit|stash)\\b/) || (viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)/ && view =~ /gitlens\\.views\\.(file|line)History/)","group":"7_gitlens_cutcopypaste@3"},{"command":"gitlens.copyMessageToClipboard","when":"(viewItem =~ /gitlens:(commit|stash)\\b/) || (viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)/ && view =~ /gitlens\\.views\\.(file|line)History/)","group":"7_gitlens_cutcopypaste@4"},{"submenu":"gitlens/commit/copy","when":"viewItem =~ /gitlens:(branch|commit|remote|repo-folder|repository|stash|tag|file\\b(?=.*?\\b\\+committed\\b))\\b/","group":"7_gitlens_cutcopypaste@10"},{"command":"gitlens.views.openFile","when":"viewItem =~ /gitlens:(history:(file|line)|status:file)\\b/","group":"inline@1"},{"command":"gitlens.views.undoCommit","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)(?=.*?\\b\\+HEAD\\b)/","group":"inline@-2"},{"command":"gitlens.views.push","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)(?=.*?\\b\\+current\\b)(?=.*?\\b\\+unpublished\\b)(?=.*?\\b\\+HEAD\\b)/","group":"inline@-1"},{"command":"gitlens.views.pushToCommit","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)(?=.*?\\b\\+current\\b)(?=.*?\\b\\+unpublished\\b)(?!.*?\\b\\+HEAD\\b)/","group":"inline@-1"},{"command":"gitlens.views.openFile","when":"view =~ /gitlens\\.views\\.(?!(fileHistory|lineHistory)\\b)/ && viewItem =~ /gitlens:file(:results|\\b(?=.*?\\b\\+(committed|stashed)\\b))/","group":"inline@1","alt":"gitlens.views.openFileRevision"},{"command":"gitlens.views.openFileRevision","when":"view =~ /gitlens\\.views\\.(fileHistory|lineHistory)\\b/ && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+(committed|stashed)\\b)/","group":"inline@1","alt":"gitlens.views.openFile"},{"command":"gitlens.views.openChanges","when":"view =~ /gitlens\\.views\\.(?!fileHistory|lineHistory)\\b/ && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+conflicted\\b)/","group":"inline@96"},{"command":"gitlens.views.openFile","when":"view =~ /gitlens\\.views\\.(fileHistory|lineHistory)\\b/ && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+conflicted\\b)/","group":"inline@96"},{"command":"gitlens.views.openChangesWithWorking","when":"viewItem =~ /gitlens:file\\b(?!.*?\\b\\+(conflicted|unstaged)\\b)/","group":"inline@96"},{"command":"gitlens.views.stageFile","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+unstaged\\b)/","group":"inline@97"},{"command":"gitlens.views.unstageFile","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+staged\\b)/","group":"inline@97"},{"command":"gitlens.copyShaToClipboard","when":"view =~ /gitlens\\.views\\.(fileHistory|lineHistory)\\b/ && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)/","group":"inline@98","alt":"gitlens.copyMessageToClipboard"},{"command":"gitlens.openFileOnRemote","when":"viewItem =~ /gitlens:file\\b((?=.*?\\b\\+committed\\b)|:results)/ && gitlens:hasRemotes","group":"inline@99","alt":"gitlens.copyRemoteFileUrlWithoutRange"},{"command":"gitlens.views.stageFile","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+unstaged\\b)/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.unstageFile","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+staged\\b)/","group":"1_gitlens_actions@1"},{"command":"gitlens.stashSaveFiles","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+(un)?staged\\b)/","group":"1_gitlens_actions@2"},{"command":"gitlens.views.openChanges","when":"viewItem =~ /gitlens:file\\b/","group":"2_gitlens_quickopen@1"},{"submenu":"gitlens/commit/file/changes","when":"viewItem =~ /gitlens:file\\b/","group":"2_gitlens_quickopen@2"},{"command":"gitlens.views.openFile","when":"viewItem =~ /gitlens:(file|history:(file|line)|status:file)\\b/","group":"2_gitlens_quickopen_file@3"},{"command":"gitlens.views.openFileRevision","when":"viewItem =~ /gitlens:file\\b((?=.*?\\b\\+(committed|stashed)\\b)|:results)/","group":"2_gitlens_quickopen_file@4"},{"command":"gitlens.openFileOnRemote","when":"viewItem =~ /gitlens:file\\b((?=.*?\\b\\+committed\\b)|:results)/ && gitlens:hasRemotes","group":"2_gitlens_quickopen_file@5","alt":"gitlens.copyRemoteFileUrlWithoutRange"},{"submenu":"gitlens/commit/file/commit","when":"view =~ /^gitlens\\.views\\.(fileHistory|lineHistory)/ && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)/","group":"3_gitlens_explore@1"},{"submenu":"gitlens/commit/file/history","when":"viewItem =~ /gitlens:file\\b/","group":"3_gitlens_explore@2"},{"command":"gitlens.views.compareWithHead","when":"!gitlens:hasVirtualFolders && view =~ /^gitlens\\.views\\.(fileHistory|lineHistory)/ && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)/","group":"4_gitlens_compare@2"},{"command":"gitlens.views.compareWithWorking","when":"!gitlens:hasVirtualFolders && view =~ /^gitlens\\.views\\.(fileHistory|lineHistory)/ && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)/","group":"4_gitlens_compare@3"},{"command":"gitlens.views.applyChanges","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+stashed\\b)/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.restore","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+stashed\\b)/","group":"1_gitlens_actions@2"},{"command":"gitlens.views.applyChanges","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:file\\b((?=.*?\\b\\+committed\\b)|:results\\b)/","group":"8_gitlens_actions@1"},{"command":"gitlens.views.restore","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:file\\b((?=.*?\\b\\+committed\\b)|:results\\b)/","group":"8_gitlens_actions@2"},{"command":"gitlens.openFileOnRemote","when":"viewItem =~ /gitlens:(history:(file|line)|status:file)\\b/ && gitlens:hasRemotes","group":"5_gitlens_open@2","alt":"gitlens.copyRemoteFileUrlWithoutRange"},{"command":"gitlens.showSettingsPage#autolinks","when":"viewItem =~ /gitlens:autolinked:items\\b/","group":"inline@99"},{"command":"gitlens.showSettingsPage#autolinks","when":"viewItem =~ /gitlens:autolinked:items\\b/","group":"1_gitlens_actions@99"},{"command":"gitlens.openIssueOnRemote","when":"viewItem =~ /gitlens:autolinked:issue\\b/","group":"inline@99","alt":"gitlens.copyRemoteIssueUrl"},{"command":"gitlens.openIssueOnRemote","when":"viewItem =~ /gitlens:autolinked:issue\\b/","group":"1_gitlens_actions@99","alt":"gitlens.copyRemoteIssueUrl"},{"command":"gitlens.copyRemoteIssueUrl","when":"viewItem =~ /gitlens:autolinked:issue\\b/","group":"7_gitlens_cutcopypaste@1"},{"command":"gitlens.openAutolinkUrl","when":"viewItem =~ /gitlens:autolinked:item\\b/","group":"inline@99","alt":"gitlens.copyAutolinkUrl"},{"command":"gitlens.openAutolinkUrl","when":"viewItem =~ /gitlens:autolinked:item\\b/","group":"1_gitlens_actions@99","alt":"gitlens.copyAutolinkUrl"},{"command":"gitlens.copyAutolinkUrl","when":"viewItem =~ /gitlens:autolinked:item\\b/","group":"7_gitlens_cutcopypaste@1"},{"command":"gitlens.views.openPullRequest","when":"gitlens:action:openPullRequest > 1 && viewItem =~ /gitlens:pullrequest\\b/","group":"inline@1"},{"command":"gitlens.openPullRequestOnRemote","when":"viewItem =~ /gitlens:pullrequest\\b/","group":"inline@99","alt":"gitlens.copyRemotePullRequestUrl"},{"command":"gitlens.views.openPullRequest","when":"gitlens:action:openPullRequest > 1 && viewItem =~ /gitlens:pullrequest\\b/","group":"1_gitlens_actions@1"},{"command":"gitlens.openPullRequestOnRemote","when":"viewItem =~ /gitlens:pullrequest\\b/","group":"1_gitlens_actions@99","alt":"gitlens.copyRemotePullRequestUrl"},{"command":"gitlens.copyRemotePullRequestUrl","when":"viewItem =~ /gitlens:pullrequest\\b/","group":"7_gitlens_cutcopypaste@1"},{"command":"gitlens.views.addRemote","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:remotes\\b/","group":"inline@1"},{"command":"gitlens.views.repositories.setBranchesLayoutToList","when":"viewItem =~ /gitlens:remotes\\b/ && config.gitlens.views.repositories.branches.layout == tree","group":"inline@50"},{"command":"gitlens.views.repositories.setBranchesLayoutToTree","when":"viewItem =~ /gitlens:remotes\\b/ && config.gitlens.views.repositories.branches.layout == list","group":"inline@50"},{"command":"gitlens.views.addRemote","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:remotes\\b/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.fetch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:remote\\b/","group":"inline@97"},{"command":"gitlens.connectRemoteProvider","when":"config.gitlens.integrations.enabled && viewItem =~ /gitlens:remote\\b(?=.*?\\b\\+disconnected\\b)/","group":"inline@98"},{"command":"gitlens.disconnectRemoteProvider","when":"config.gitlens.integrations.enabled && viewItem =~ /gitlens:remote\\b(?=.*?\\b\\+connected\\b)/","group":"inline@98"},{"command":"gitlens.openRepoOnRemote","when":"viewItem =~ /gitlens:remote\\b/","group":"inline@99","alt":"gitlens.copyRemoteRepositoryUrl"},{"command":"gitlens.views.fetch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:remote\\b/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.pruneRemote","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:remote\\b/","group":"1_gitlens_actions@2"},{"command":"gitlens.openRepoOnRemote","when":"viewItem =~ /gitlens:remote\\b/","group":"5_gitlens_open@1","alt":"gitlens.copyRemoteRepositoryUrl"},{"command":"gitlens.openBranchesOnRemote","when":"viewItem =~ /gitlens:remote\\b/","group":"5_gitlens_open@2","alt":"gitlens.copyRemoteBranchesUrl"},{"command":"gitlens.views.removeRemote","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:remote\\b/","group":"6_gitlens_terminal@1"},{"command":"gitlens.views.setAsDefault","when":"viewItem =~ /gitlens:remote\\b(?!.*?\\b\\+default\\b)/","group":"8_gitlens_actions@1"},{"command":"gitlens.views.unsetAsDefault","when":"viewItem =~ /gitlens:remote\\b(?=.*?\\b\\+default\\b)/","group":"8_gitlens_actions@1"},{"command":"gitlens.connectRemoteProvider","when":"config.gitlens.integrations.enabled && viewItem =~ /gitlens:remote\\b(?=.*?\\b\\+disconnected\\b)/","group":"8_gitlens_actions@2"},{"command":"gitlens.disconnectRemoteProvider","when":"config.gitlens.integrations.enabled && viewItem =~ /gitlens:remote\\b(?=.*?\\b\\+connected\\b)/","group":"8_gitlens_actions@2"},{"submenu":"gitlens/commit/browse","when":"!gitlens:hasVirtualFolders && viewItem =~ /gitlens:(branch|commit|file\\b(?=.*?\\b\\+committed\\b)|stash|tag)\\b/","group":"3_gitlens_explore@10"},{"command":"gitlens.views.workspaces.repo.locate","when":"viewItem =~ /gitlens:workspaceMissingRepository\\b/","group":"inline@1"},{"command":"gitlens.views.workspaces.repo.locate","when":"viewItem =~ /gitlens:workspaceMissingRepository\\b/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.workspaces.repo.remove","when":"viewItem =~ /gitlens:workspaceMissingRepository\\b/","group":"6_gitlens_actions@1"},{"command":"gitlens.views.workspaces.repo.openInNewWindow","when":"viewItem =~ /gitlens:repository\\b(?=.*?\\b\\+workspace\\b)/","group":"inline@100","alt":"gitlens.views.workspaces.repo.open"},{"command":"gitlens.views.workspaces.repo.open","when":"viewItem =~ /gitlens:repository\\b(?=.*?\\b\\+workspace\\b)/","group":"0_1gitlens_actions@1"},{"command":"gitlens.views.workspaces.repo.openInNewWindow","when":"viewItem =~ /gitlens:repository\\b(?=.*?\\b\\+workspace\\b)/","group":"0_1gitlens_actions@2"},{"command":"gitlens.views.workspaces.repo.addToWindow","when":"viewItem =~ /gitlens:repository\\b(?=.*?\\b\\+workspace\\b)/","group":"0_1gitlens_actions@3"},{"command":"gitlens.views.revealRepositoryInExplorer","when":"viewItem =~ /gitlens:repository\\b(?=.*?\\b\\+workspace\\b)/","group":"0_2gitlens_actions@1"},{"command":"gitlens.views.workspaces.repo.locate","when":"viewItem =~ /gitlens:repository\\b(?=.*?\\b\\+workspace\\b)(?!.*?\\b\\+local\\b)/","group":"0_2gitlens_actions@2"},{"command":"gitlens.views.workspaces.repo.remove","when":"viewItem =~ /gitlens:repository\\b(?=.*?\\b\\+workspace\\b)(?!.*?\\b\\+local\\b)/","group":"0_3gitlens_actions@1"},{"command":"gitlens.views.push","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:repository\\b(?!.*?\\b\\+closed\\b)/","group":"inline@96","alt":"gitlens.views.pushWithForce"},{"command":"gitlens.views.pull","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:repository\\b(?!.*?\\b\\+closed\\b)/","group":"inline@97"},{"command":"gitlens.views.fetch","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:repository\\b(?!.*?\\b\\+closed\\b)/","group":"inline@98"},{"command":"gitlens.views.star","when":"viewItem =~ /gitlens:repository\\b(?!.*?\\b\\+(starred|workspace)\\b)/","group":"inline@99"},{"command":"gitlens.views.unstar","when":"viewItem =~ /gitlens:repository\\b(?=.*?\\b\\+starred\\b)/","group":"inline@99"},{"command":"gitlens.views.fetch","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:repository\\b(?!.*?\\b\\+closed\\b)/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.pull","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:repository\\b(?!.*?\\b\\+closed\\b)/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.push","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:repository\\b(?!.*?\\b\\+closed\\b)/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.pushWithForce","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:repository\\b(?!.*?\\b\\+closed\\b)/","group":"1_gitlens_actions@2"},{"command":"gitlens.views.openInTerminal","when":"!gitlens:hasVirtualFolders && viewItem =~ /gitlens:repository\\b/","group":"2_gitlens_quickopen@1"},{"command":"gitlens.openRepoOnRemote","when":"viewItem =~ /gitlens:repository\\b/ && gitlens:hasRemotes","group":"2_gitlens_quickopen@2","alt":"gitlens.copyRemoteRepositoryUrl"},{"command":"gitlens.views.revealRepositoryInExplorer","when":"viewItem =~ /gitlens:repository\\b(?!.*?\\b\\+workspace\\b)/","group":"2_gitlens_quickopen@2"},{"command":"gitlens.showCommitSearch","when":"viewItem =~ /gitlens:repository\\b/","group":"3_gitlens_explore@1"},{"command":"gitlens.stashSave","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:repository\\b(?!.*?\\b\\+workspace\\b)/","group":"1_gitlens_actions_1@1"},{"command":"gitlens.stashApply","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:repository\\b(?!.*?\\b\\+workspace\\b)/","group":"1_gitlens_actions_1@2"},{"command":"gitlens.views.star","when":"viewItem =~ /gitlens:repository\\b(?!.*?\\b\\+(starred|workspace)\\b)/","group":"8_gitlens_actions_@1"},{"command":"gitlens.views.unstar","when":"viewItem =~ /gitlens:repository\\b(?=.*?\\b\\+starred\\b)/","group":"8_gitlens_actions_@1"},{"command":"gitlens.views.closeRepository","when":"viewItem =~ /gitlens:repository\\b(?!.*?\\b\\+closed\\b)/","group":"8_gitlens_actions_@2"},{"command":"gitlens.views.push","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:repo-folder\\b(?=.*?\\b\\+ahead\\b)(?!.*?\\b\\+behind\\b)/","group":"inline@96","alt":"gitlens.views.pushWithForce"},{"command":"gitlens.views.pull","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:repo-folder\\b(?=.*?\\b\\+behind\\b)/","group":"inline@97"},{"command":"gitlens.views.fetch","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:repo-folder\\b(?!.*?\\b\\+ahead\\b)(?!.*?\\b\\+behind\\b)/","group":"inline@98"},{"command":"gitlens.views.star","when":"viewItem =~ /gitlens:repo-folder\\b(?!.*?\\b\\+starred\\b)/","group":"inline@99"},{"command":"gitlens.views.unstar","when":"viewItem =~ /gitlens:repo-folder\\b(?=.*?\\b\\+starred\\b)/","group":"inline@99"},{"command":"gitlens.showGraph","when":"viewItem =~ /gitlens:repo-folder\\b/ && gitlens:plus:enabled","group":"inline@100"},{"command":"gitlens.views.fetch","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:repo-folder\\b/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.pull","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:repo-folder\\b/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.push","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:repo-folder\\b/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.pushWithForce","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:repo-folder\\b/","group":"1_gitlens_actions@2"},{"command":"gitlens.views.openInTerminal","when":"!gitlens:hasVirtualFolders && viewItem =~ /gitlens:repo-folder\\b/","group":"2_gitlens_quickopen@1"},{"command":"gitlens.openRepoOnRemote","when":"viewItem =~ /gitlens:repo-folder\\b/ && gitlens:hasRemotes","group":"2_gitlens_quickopen@2","alt":"gitlens.copyRemoteRepositoryUrl"},{"command":"gitlens.showGraph","when":"viewItem =~ /gitlens:repo-folder\\b/ && gitlens:plus:enabled","group":"3_gitlens_explore@1"},{"command":"gitlens.showCommitSearch","when":"viewItem =~ /gitlens:repo-folder\\b/","group":"3_gitlens_explore@2"},{"command":"gitlens.stashSave","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:repo-folder\\b/","group":"1_gitlens_actions_1@1"},{"command":"gitlens.stashApply","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:repo-folder\\b/","group":"1_gitlens_actions_1@2"},{"command":"gitlens.views.star","when":"viewItem =~ /gitlens:repo-folder\\b(?!.*?\\b\\+starred\\b)/","group":"8_gitlens_actions_@1"},{"command":"gitlens.views.unstar","when":"viewItem =~ /gitlens:repo-folder\\b(?=.*?\\b\\+starred\\b)/","group":"8_gitlens_actions_@1"},{"command":"gitlens.views.closeRepository","when":"viewItem =~ /gitlens:repo-folder\\b/","group":"8_gitlens_actions_@2"},{"command":"gitlens.views.publishRepository","when":"!gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:status(\\-branch)?:upstream:none/","group":"inline@1"},{"command":"gitlens.views.addRemote","when":"!gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:status(\\-branch)?:upstream:none/","group":"inline@2"},{"command":"gitlens.views.publishBranch","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:status(\\-branch)?:upstream:none/","group":"inline@1"},{"command":"gitlens.views.push","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:status(\\-branch)?:upstream:ahead/","group":"inline@1","alt":"gitlens.views.pushWithForce"},{"command":"gitlens.views.pull","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:status(\\-branch)?:upstream:behind/","group":"inline@1"},{"command":"gitlens.views.fetch","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:status(\\-branch)?:upstream:(?!none)/","group":"inline@2"},{"command":"gitlens.views.createPullRequest","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && gitlens:action:createPullRequest && viewItem =~ /gitlens:status:upstream:(?!none)/","group":"inline@3"},{"command":"gitlens.openBranchOnRemote","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:status:upstream:(?!none)/","group":"inline@99","alt":"gitlens.copyRemoteBranchUrl"},{"command":"gitlens.views.push","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem == gitlens:status:upstream:ahead","group":"1_gitlens_actions@1"},{"command":"gitlens.views.pushWithForce","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem == gitlens:status:upstream:ahead","group":"1_gitlens_actions@2"},{"command":"gitlens.views.pull","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem == gitlens:status:upstream:behind","group":"1_gitlens_actions@1"},{"command":"gitlens.views.fetch","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:status:upstream:(?!none)/","group":"1_gitlens_actions@3"},{"command":"gitlens.views.createBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:status:upstream/","group":"1_gitlens_secondary_actions@1"},{"command":"gitlens.views.createTag","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:status:upstream/","group":"1_gitlens_secondary_actions@2"},{"command":"gitlens.views.createPullRequest","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && gitlens:action:createPullRequest && viewItem =~ /gitlens:status:upstream:(?!none)/","group":"1_gitlens_secondary_actions@3"},{"command":"gitlens.openBranchOnRemote","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:status:upstream:(?!none)/","group":"2_gitlens_quickopen@1","alt":"gitlens.copyRemoteBranchUrl"},{"command":"gitlens.views.dismissNode","when":"viewItem =~ /gitlens:(compare:picker|(compare|search):results(?!:)\\b(?!.*?\\b\\+pinned\\b))\\b(?!:(commits|files))/","group":"inline@99"},{"command":"gitlens.views.clearNode","when":"viewItem =~ /gitlens:compare:branch\\b(?=.*?\\b\\+comparing\\b)/","group":"inline@99"},{"command":"gitlens.views.editNode","when":"viewItem =~ /gitlens:compare:branch\\b(?=.*?\\b\\+comparing\\b)/","group":"inline@98"},{"command":"gitlens.views.setBranchComparisonToWorking","when":"viewItem =~ /gitlens:compare:branch\\b(?=.*?\\b\\+root\\b)(?=.*?\\b\\+current\\b)(?=.*?\\b\\+branch\\b)/","group":"inline@2"},{"command":"gitlens.views.setBranchComparisonToBranch","when":"viewItem =~ /gitlens:compare:branch\\b(?=.*?\\b\\+root\\b)(?=.*?\\b\\+current\\b)(?=.*?\\b\\+working\\b)/","group":"inline@2"},{"command":"gitlens.views.editNode","when":"viewItem =~ /gitlens:compare:branch\\b(?=.*?\\b\\+comparing\\b)/","group":"1_gitlens@1"},{"command":"gitlens.views.setBranchComparisonToWorking","when":"viewItem =~ /gitlens:compare:branch\\b(?=.*?\\b\\+root\\b)(?=.*?\\b\\+current\\b)(?=.*?\\b\\+branch\\b)/","group":"1_gitlens@2"},{"command":"gitlens.views.setBranchComparisonToBranch","when":"viewItem =~ /gitlens:compare:branch\\b(?=.*?\\b\\+root\\b)(?=.*?\\b\\+current\\b)(?=.*?\\b\\+working\\b)/","group":"1_gitlens@2"},{"command":"gitlens.views.branches.setShowBranchComparisonOff","when":"view =~ /gitlens\\.views\\.branches\\b/ && viewItem =~ /gitlens:compare:branch\\b/","group":"8_gitlens_toggles@1"},{"command":"gitlens.views.commits.setShowBranchComparisonOff","when":"view =~ /gitlens\\.views\\.commits\\b/ && viewItem =~ /gitlens:compare:branch\\b/","group":"8_gitlens_toggles@1"},{"command":"gitlens.views.repositories.setBranchesShowBranchComparisonOff","when":"view =~ /gitlens\\.views\\.repositories\\b/ && viewItem =~ /gitlens:compare:branch(?!.*?\\b\\+root\\b)\\b/","group":"8_gitlens_toggles@1"},{"command":"gitlens.views.repositories.setShowSectionOff","when":"view =~ /gitlens\\.views\\.repositories\\b/ && viewItem =~ /gitlens:(compare:branch(?=.*?\\b\\+root\\b)|branches|branch(?=.*?\\b\\+commits\\b)|reflog|remotes|stashes|status:upstream|tags)\\b/","group":"8_gitlens_toggles@99"},{"command":"gitlens.views.clearNode","when":"viewItem =~ /gitlens:compare:branch\\b(?=.*?\\b\\+comparing\\b)/","group":"9_gitlens@1"},{"command":"gitlens.views.searchAndCompare.swapComparison","when":"viewItem =~ /gitlens:compare:results(?!:)\\b/","group":"inline@1"},{"submenu":"gitlens/view/searchAndCompare/comparison/filter","when":"viewItem =~ /gitlens:results:files\\b(?=.*?\\b\\+filterable\\b)(?!.*?\\b\\+filtered\\b)/","group":"inline@1"},{"submenu":"gitlens/view/searchAndCompare/comparison/filtered","when":"viewItem =~ /gitlens:results:files\\b(?=.*?\\b\\+filterable\\b)(?=.*?\\b\\+filtered\\b)/","group":"inline@1"},{"command":"gitlens.views.refreshNode","when":"viewItem =~ /gitlens:compare:(branch(?=.*?\\b\\+comparing\\b)|results(?!:))\\b/","group":"inline@97"},{"command":"gitlens.views.refreshNode","when":"viewItem =~ /gitlens:search:results(?!:)\\b/","group":"inline@97"},{"command":"gitlens.views.searchAndCompare.pin","when":"viewItem =~ /gitlens:(compare|search):results(?!:)\\b(?!.*?\\b\\+pinned\\b)/","group":"inline@98"},{"command":"gitlens.views.searchAndCompare.unpin","when":"viewItem =~ /gitlens:(compare|search):results(?!:)\\b(?=.*?\\b\\+pinned\\b)/","group":"inline@98"},{"command":"gitlens.views.searchAndCompare.swapComparison","when":"viewItem =~ /gitlens:compare:results(?!:)\\b(?!.*?\\b\\+working\\b)/","group":"1_gitlens_actions@2"},{"command":"gitlens.views.openDirectoryDiff","when":"viewItem =~ /gitlens:compare:results(?!:)\\b/","group":"2_gitlens_quickopen@1"},{"command":"gitlens.views.searchAndCompare.pin","when":"viewItem =~ /gitlens:(compare|search):results(?!:)\\b(?!.*?\\b\\+pinned\\b)/","group":"8_gitlens_actions@1"},{"command":"gitlens.views.searchAndCompare.unpin","when":"viewItem =~ /gitlens:(compare|search):results(?!:)\\b(?=.*?\\b\\+pinned\\b)/","group":"8_gitlens_actions@1"},{"command":"gitlens.views.editNode","when":"viewItem =~ /gitlens:search:results(?!:)\\b/","group":"inline@1"},{"command":"gitlens.views.editNode","when":"viewItem =~ /gitlens:search:results(?!:)\\b/","group":"1_gitlens_actions@1"},{"command":"gitlens.openComparisonOnRemote","when":"viewItem =~ /gitlens:compare:results:commits\\b/","group":"inline@99","alt":"gitlens.copyRemoteComparisonUrl"},{"command":"gitlens.openComparisonOnRemote","when":"viewItem =~ /gitlens:compare:results:commits\\b/","group":"3_gitlens_explore@0","alt":"gitlens.copyRemoteComparisonUrl"},{"command":"gitlens.stashSave","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /^gitlens:(stashes|status:files)$/","group":"inline@98"},{"command":"gitlens.stashApply","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem == gitlens:stashes","group":"inline@99"},{"command":"gitlens.stashSave","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /^gitlens:(stashes|status:files)$/","group":"1_gitlens_actions@1"},{"command":"gitlens.stashApply","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem == gitlens:stashes","group":"1_gitlens_actions@2"},{"command":"gitlens.stashApply","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem == gitlens:stash","group":"inline@1"},{"command":"gitlens.views.stash.rename","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem == gitlens:stash","group":"inline@98"},{"command":"gitlens.views.stash.delete","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem == gitlens:stash","group":"inline@99"},{"command":"gitlens.stashApply","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem == gitlens:stash","group":"1_gitlens_actions@1"},{"command":"gitlens.views.stash.rename","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem == gitlens:stash","group":"1_gitlens_actions@2"},{"command":"gitlens.views.stash.delete","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem == gitlens:stash","group":"1_gitlens_actions@3"},{"command":"gitlens.views.createTag","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:tags\\b/","group":"inline@1"},{"command":"gitlens.views.createTag","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:tags\\b/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.switchToTag","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:tag\\b/","group":"inline@10"},{"command":"gitlens.views.switchToTag","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:tag\\b/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.deleteTag","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem == gitlens:tag","group":"1_gitlens_actions@2"},{"command":"gitlens.views.createBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:tag\\b/","group":"1_gitlens_actions@3"},{"command":"gitlens.views.createWorktree","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:worktrees\\b/","group":"inline@1"},{"command":"gitlens.views.createWorktree","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:worktrees\\b/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.openWorktree","when":"viewItem =~ /gitlens:worktree\\b(?!.*?\\b\\+active\\b)/","group":"inline@1","alt":"gitlens.views.openWorktreeInNewWindow"},{"command":"gitlens.views.openWorktree","when":"viewItem =~ /gitlens:worktree\\b(?=.*?\\b\\+active\\b)/ && workspaceFolderCount != 1","group":"inline@1","alt":"gitlens.views.openWorktreeInNewWindow"},{"command":"gitlens.views.openWorktree","when":"viewItem =~ /gitlens:worktree\\b(?!.*?\\b\\+active\\b)/","group":"2_gitlens_quickopen@1"},{"command":"gitlens.views.openWorktree","when":"viewItem =~ /gitlens:worktree\\b(?=.*?\\b\\+active\\b)/ && workspaceFolderCount != 1","group":"2_gitlens_quickopen@1"},{"command":"gitlens.views.openWorktreeInNewWindow","when":"viewItem =~ /gitlens:worktree\\b(?!.*?\\b\\+active\\b)/","group":"2_gitlens_quickopen@2"},{"command":"gitlens.views.openWorktreeInNewWindow","when":"viewItem =~ /gitlens:worktree\\b(?=.*?\\b\\+active\\b)/ && workspaceFolderCount != 1","group":"2_gitlens_quickopen@2"},{"command":"gitlens.views.revealWorktreeInExplorer","when":"viewItem =~ /gitlens:worktree\\b/","group":"3_gitlens@1"},{"command":"gitlens.views.deleteWorktree","when":"!gitlens:readonly && viewItem =~ /gitlens:worktree\\b(?!.*?\\b\\+(active|main)\\b)/","group":"6_gitlens_actions@1"},{"command":"gitlens.views.stageDirectory","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:folder\\b(?=.*?\\b\\+working\\b)/","group":"inline@1"},{"command":"gitlens.views.unstageDirectory","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:folder\\b(?=.*?\\b\\+working\\b)/","group":"inline@2"},{"command":"gitlens.views.stageDirectory","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:folder\\b(?=.*?\\b\\+working\\b)/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.unstageDirectory","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:folder\\b(?=.*?\\b\\+working\\b)/","group":"1_gitlens_actions@2"},{"command":"gitlens.views.copy","when":"viewItem =~ /gitlens:(?=(autolinked:issue|branch|commit|contributor|folder|history:line|pullrequest|remote|repository|repo-folder|stash|tag|workspace|worktree)\\b)/","group":"7_gitlens_cutcopypaste@1"},{"command":"gitlens.views.copy","when":"viewItem =~ /gitlens:file(?!.*?\\b\\+(staged|unstaged))\\b/","group":"7_gitlens_cutcopypaste@1"},{"command":"gitlens.views.dismissNode","when":"viewItem =~ /gitlens:(compare:picker:ref|(compare|search):results(?!:)\\b(?!.*?\\b\\+pinned\\b))\\b(?!:(commits|files))/","group":"8_gitlens_actions@98"},{"command":"gitlens.views.expandNode","when":"viewItem =~ /gitlens:(branch|compare|folder|results|search|status)\\b/","group":"9_gitlens@1"},{"command":"gitlens.views.refreshNode","when":"viewItem =~ /gitlens:(?!(file|message|date-marker)\\b)/","group":"9_gitlens@99"},{"command":"gitlens.views.loadAllChildren","when":"viewItem =~ /gitlens:pager\\b/","group":"inline@1"},{"command":"gitlens.views.loadAllChildren","when":"viewItem =~ /gitlens:pager\\b/","group":"1_gitlens_actions@1"},{"command":"gitlens.views.setShowRelativeDateMarkersOff","when":"viewItem == gitlens:date-marker && config.gitlens.views.showRelativeDateMarkers","group":"1_gitlens@0"},{"command":"gitlens.ghpr.views.openOrCreateWorktree","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && view == pr:github && viewItem =~ /pullrequest(:local)?:nonactive|description/ && config.gitlens.menus.ghpr.worktree","group":"2_gitlens@1"}],"webview/context":[{"command":"gitlens.graph.switchToAnotherBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:branch\\b(?=.*?\\b\\+current\\b)/","group":"1_gitlens_actions@1"},{"command":"gitlens.graph.switchToBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:branch\\b(?!.*?\\b\\+current\\b)/","group":"1_gitlens_actions@1"},{"command":"gitlens.graph.mergeBranchInto","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:branch\\b(?!.*?\\b\\+current\\b)/","group":"1_gitlens_actions@3"},{"command":"gitlens.graph.rebaseOntoBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:branch\\b(?!.*?\\b\\+current\\b)/","group":"1_gitlens_actions@4"},{"command":"gitlens.graph.rebaseOntoUpstream","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:branch\\b(?=.*?\\b\\+current\\b)(?=.*?\\b\\+tracking\\b)/","group":"1_gitlens_actions@4"},{"command":"gitlens.graph.renameBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:branch\\b/","group":"1_gitlens_actions@5"},{"command":"gitlens.graph.deleteBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:branch\\b(?!.*?\\b\\+current\\b)/","group":"1_gitlens_actions@6"},{"command":"gitlens.graph.createBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:branch\\b/","group":"1_gitlens_actions_@7"},{"command":"gitlens.graph.createTag","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:branch\\b/","group":"1_gitlens_actions_@8"},{"command":"gitlens.graph.createWorktree","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:branch\\b/","group":"1_gitlens_actions_@9"},{"command":"gitlens.graph.createPullRequest","when":"gitlens:hasRemotes && gitlens:action:createPullRequest && webviewItem =~ /gitlens:branch\\b(?=.*?\\b\\+(tracking|remote)\\b)/","group":"1_gitlens_actions_@10"},{"command":"gitlens.graph.hideLocalBranch","when":"webviewItem =~ /gitlens:branch\\b(?!.*?\\b\\+(current|remote)\\b)/","group":"8_gitlens_actions@11"},{"command":"gitlens.graph.hideRemote","when":"webviewItem =~ /gitlens:branch\\b(?=.*?\\b\\+remote\\b)(?!.*?\\b\\+current\\b)/","group":"8_gitlens_actions@10"},{"command":"gitlens.graph.hideRemoteBranch","when":"webviewItem =~ /gitlens:branch\\b(?=.*?\\b\\+remote\\b)(?!.*?\\b\\+current\\b)/","group":"8_gitlens_actions@11"},{"command":"gitlens.graph.hideRefGroup","when":"webviewItemGroup =~ /gitlens:refGroup\\b(?!.*?\\b\\+current\\b)/","group":"8_gitlens_actions@12"},{"command":"gitlens.graph.openBranchOnRemote","when":"gitlens:hasRemotes && webviewItem =~ /gitlens:branch\\b(?=.*?\\b\\+(tracking|remote)\\b)/","group":"2_gitlens_quickopen@1","alt":"gitlens.copyRemoteBranchUrl"},{"command":"gitlens.graph.publishBranch","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:branch\\b(?!.*?\\b\\+remote\\b)(?!.*?\\b\\+tracking\\b)/","group":"8_gitlens_actions@13"},{"command":"gitlens.graph.cherryPick","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:commit\\b(?!.*?\\b\\+current\\b)/","group":"1_gitlens_actions@1"},{"command":"gitlens.graph.undoCommit","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:commit\\b(?=.*?\\b\\+HEAD\\b)/","group":"1_gitlens_actions@1"},{"command":"gitlens.graph.revert","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:commit\\b(?=.*?\\b\\+current\\b)/","group":"1_gitlens_actions@3"},{"command":"gitlens.graph.resetToCommit","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:commit\\b/","group":"1_gitlens_actions@4"},{"command":"gitlens.graph.resetToTip","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:branch\\b/","group":"1_gitlens_actions@4"},{"command":"gitlens.graph.resetCommit","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:commit\\b/","group":"1_gitlens_actions@5"},{"command":"gitlens.graph.rebaseOntoCommit","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:commit\\b/","group":"1_gitlens_actions@6"},{"command":"gitlens.graph.switchToCommit","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:commit\\b/","group":"1_gitlens_actions@7"},{"command":"gitlens.graph.createBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:commit\\b/","group":"1_gitlens_actions_1@1"},{"command":"gitlens.graph.createTag","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:commit\\b/","group":"1_gitlens_actions_1@2"},{"submenu":"gitlens/graph/commit/changes","when":"webviewItem =~ /gitlens:(commit|stash|wip)\\b/","group":"2_gitlens_quickopen@1"},{"command":"gitlens.graph.showInDetailsView","when":"webviewItem =~ /gitlens:(commit|stash|wip)\\b/","group":"3_gitlens_explore@0"},{"command":"gitlens.graph.openSCM","when":"webviewItem == gitlens:wip","group":"3_gitlens_explore@1"},{"command":"gitlens.graph.openCommitOnRemote","when":"gitlens:hasRemotes && webviewItem =~ /gitlens:commit\\b/","group":"3_gitlens_explore@2","alt":"gitlens.copyRemoteCommitUrl"},{"submenu":"gitlens/share","when":"webviewItem =~ /gitlens:(branch|commit|compare:results(?!:)|stash|tag)\\b/","group":"7_gitlens_a_share@1"},{"command":"gitlens.graph.copySha","when":"webviewItem =~ /gitlens:(branch|commit|stash|tag)\\b/","group":"7_gitlens_cutcopypaste@2"},{"command":"gitlens.graph.copyMessage","when":"webviewItem =~ /gitlens:(branch|commit|stash|tag)\\b/","group":"7_gitlens_cutcopypaste@3"},{"command":"gitlens.graph.applyStash","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem == gitlens:stash","group":"1_gitlens_actions@1"},{"command":"gitlens.graph.stash.rename","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem == gitlens:stash","group":"1_gitlens_actions@2"},{"command":"gitlens.graph.stash.delete","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem == gitlens:stash","group":"1_gitlens_actions@3"},{"command":"gitlens.graph.saveStash","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem == gitlens:wip","group":"1_gitlens_actions@3"},{"command":"gitlens.graph.switchToTag","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:tag\\b/","group":"1_gitlens_actions@1"},{"command":"gitlens.graph.deleteTag","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem == gitlens:tag","group":"1_gitlens_actions@2"},{"command":"gitlens.graph.createBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:tag\\b/","group":"1_gitlens_actions@3"},{"command":"gitlens.graph.hideTag","when":"webviewItem =~ /gitlens:tag\\b/","group":"8_gitlens_actions@10"},{"command":"gitlens.graph.openPullRequestOnRemote","when":"webviewItem =~ /gitlens:pullrequest\\b/","group":"1_gitlens_actions@1"},{"command":"gitlens.graph.push","when":"webviewItem =~ /gitlens:upstreamStatus\\b/","group":"1_gitlens_actions@1"},{"command":"gitlens.graph.pull","when":"webviewItem =~ /gitlens:upstreamStatus\\b/","group":"1_gitlens_actions@2"},{"command":"gitlens.graph.fetch","when":"webviewItem =~ /gitlens:upstreamStatus\\b/","group":"1_gitlens_actions@3"},{"command":"gitlens.graph.compareWithUpstream","when":"!gitlens:hasVirtualFolders && webviewItem =~ /gitlens:branch\\b(?=.*?\\b\\+tracking\\b)/","group":"4_gitlens_compare@1"},{"command":"gitlens.graph.compareWithHead","when":"!gitlens:hasVirtualFolders && webviewItem =~ /gitlens:(branch\\b(?!.*?\\b\\+current\\b)|commit\\b|stash\\b|tag\\b)/","group":"4_gitlens_compare@2"},{"command":"gitlens.graph.compareWithWorking","when":"!gitlens:hasVirtualFolders && webviewItem =~ /gitlens:(branch|commit|stash|tag)\\b/","group":"4_gitlens_compare@3"},{"command":"gitlens.graph.compareAncestryWithWorking","when":"!gitlens:hasVirtualFolders && webviewItem =~ /gitlens:branch\\b(?!.*?\\b\\+current\\b)/","group":"4_gitlens_compare@4"},{"command":"gitlens.graph.addAuthor","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && webviewItem =~ /gitlens:contributor\\b(?!.*?\\b\\+current\\b)/","group":"1_gitlens_actions@2"},{"command":"gitlens.graph.copy","when":"webviewItem =~ /gitlens:(branch|commit|contributor|pullrequest|stash|tag)\\b/","group":"7_gitlens_cutcopypaste@1"},{"submenu":"gitlens/graph/markers","when":"webviewItem =~ /gitlens:graph:(columns|settings)\\b/","group":"0_markers@0"},{"command":"gitlens.graph.columnAuthorOn","when":"webviewItem =~ /gitlens:graph:(columns|settings)\\b/ && webviewItemValue =~ /\\bcolumn:author:hidden\\b/","group":"1_columns@1"},{"command":"gitlens.graph.columnAuthorOff","when":"webviewItem =~ /gitlens:graph:(columns|settings)\\b/ && webviewItemValue =~ /\\bcolumn:author:visible\\b/","group":"1_columns@1"},{"command":"gitlens.graph.columnRefOn","when":"webviewItem =~ /gitlens:graph:(columns|settings)\\b/ && webviewItemValue =~ /\\bcolumn:ref:hidden\\b/","group":"1_columns@2"},{"command":"gitlens.graph.columnRefOff","when":"webviewItem =~ /gitlens:graph:(columns|settings)\\b/ && webviewItemValue =~ /\\bcolumn:ref:visible\\b/","group":"1_columns@2"},{"command":"gitlens.graph.columnChangesOn","when":"webviewItem =~ /gitlens:graph:(columns|settings)\\b/ && webviewItemValue =~ /\\bcolumn:changes:hidden\\b/","group":"1_columns@3"},{"command":"gitlens.graph.columnChangesOff","when":"webviewItem =~ /gitlens:graph:(columns|settings)\\b/ && webviewItemValue =~ /\\bcolumn:changes:visible\\b/","group":"1_columns@3"},{"command":"gitlens.graph.columnMessageOn","when":"webviewItem =~ /gitlens:graph:(columns|settings)\\b/ && webviewItemValue =~ /\\bcolumn:message:hidden\\b/","group":"1_columns@4"},{"command":"gitlens.graph.columnMessageOff","when":"webviewItem =~ /gitlens:graph:(columns|settings)\\b/ && webviewItemValue =~ /\\bcolumn:message:visible\\b/","group":"1_columns@4"},{"command":"gitlens.graph.columnDateTimeOn","when":"webviewItem =~ /gitlens:graph:(columns|settings)\\b/ && webviewItemValue =~ /\\bcolumn:datetime:hidden\\b/","group":"1_columns@5"},{"command":"gitlens.graph.columnDateTimeOff","when":"webviewItem =~ /gitlens:graph:(columns|settings)\\b/ && webviewItemValue =~ /\\bcolumn:datetime:visible\\b/","group":"1_columns@5"},{"command":"gitlens.graph.columnGraphOn","when":"webviewItem =~ /gitlens:graph:(columns|settings)\\b/ && webviewItemValue =~ /\\bcolumn:graph:hidden\\b/","group":"1_columns@6"},{"command":"gitlens.graph.columnGraphOff","when":"webviewItem =~ /gitlens:graph:(columns|settings)\\b/ && webviewItemValue =~ /\\bcolumn:graph:visible\\b/","group":"1_columns@6"},{"command":"gitlens.graph.columnShaOn","when":"webviewItem =~ /gitlens:graph:(columns|settings)\\b/ && webviewItemValue =~ /\\bcolumn:sha:hidden\\b/","group":"1_columns@7"},{"command":"gitlens.graph.columnShaOff","when":"webviewItem =~ /gitlens:graph:(columns|settings)\\b/ && webviewItemValue =~ /\\bcolumn:sha:visible\\b/","group":"1_columns@7"},{"command":"gitlens.graph.columnGraphDefault","when":"webviewItem =~ /gitlens:graph:(columns|settings)\\b/ && webviewItemValue =~ /\\bcolumn:graph:visible[^,]*\\+compact\\b/","group":"2_columns@1"},{"command":"gitlens.graph.columnGraphCompact","when":"webviewItem =~ /gitlens:graph:(columns|settings)\\b/ && webviewItemValue =~ /\\bcolumn:graph:visible(?![^,]*\\+compact\\b)/","group":"2_columns@1"},{"command":"gitlens.graph.resetColumnsDefault","when":"webviewItem =~ /gitlens:graph:(columns|settings)\\b/","group":"3_columns@1"},{"command":"gitlens.graph.resetColumnsCompact","when":"webviewItem =~ /gitlens:graph:(columns|settings)\\b/","group":"3_columns@2"}],"gitlens/commit/browse":[{"command":"gitlens.views.browseRepoAtRevision","group":"1_gitlens@1"},{"command":"gitlens.views.browseRepoAtRevisionInNewWindow","group":"1_gitlens@3"},{"command":"gitlens.views.browseRepoBeforeRevision","group":"1_gitlens@2"},{"command":"gitlens.views.browseRepoBeforeRevisionInNewWindow","group":"1_gitlens@4"}],"gitlens/commit/copy":[{"command":"gitlens.copyShaToClipboard","when":"viewItem =~ /gitlens:(?!(commit|file|remote|repo-folder|repository|stash)\\b)/","group":"1_gitlens@2"},{"command":"gitlens.copyMessageToClipboard","when":"viewItem =~ /gitlens:(?!(commit|file|remote|repo-folder|repository|stash)\\b)/","group":"1_gitlens@3"}],"gitlens/share":[{"command":"gitlens.copyDeepLinkToBranch","when":"viewItem =~ /gitlens:branch\\b/","group":"1_gitlens@50"},{"command":"gitlens.graph.copyDeepLinkToBranch","when":"webviewItem =~ /gitlens:branch\\b/","group":"1_gitlens@50"},{"command":"gitlens.copyRemoteBranchUrl","when":"gitlens:hasRemotes && viewItem =~ /gitlens:branch\\b/","group":"2_gitlens@50"},{"command":"gitlens.graph.copyRemoteBranchUrl","when":"gitlens:hasRemotes && webviewItem =~ /gitlens:branch\\b/","group":"2_gitlens@50"},{"command":"gitlens.copyDeepLinkToCommit","when":"viewItem =~ /gitlens:(commit|file\\b(?=.*?\\b\\+committed\\b))/","group":"1_gitlens@25"},{"command":"gitlens.graph.copyDeepLinkToCommit","when":"webviewItem =~ /gitlens:commit\\b/","group":"1_gitlens@25"},{"command":"gitlens.copyDeepLinkToComparison","when":"viewItem =~ /gitlens:compare:results(?!:)\\b/","group":"1_gitlens@25"},{"command":"gitlens.copyRemoteFileUrlWithoutRange","when":"gitlens:hasRemotes && viewItem =~ /gitlens:(file\\b(?=.*?\\b\\+committed\\b)|history:(file|line)|status:file)\\b/","group":"2_gitlens@1"},{"command":"gitlens.copyRemoteFileUrlFrom","when":"gitlens:hasRemotes && viewItem =~ /gitlens:(file\\b(?=.*?\\b\\+committed\\b)|history:(file|line)|status:file)\\b/","group":"2_gitlens@2"},{"command":"gitlens.copyRemoteFileUrlWithoutRange","when":"gitlens:enabled && gitlens:hasRemotes && scmProvider == git && scmResourceGroup =~ /^(workingTree|index|merge)$/","group":"2_gitlens@1"},{"command":"gitlens.copyRemoteFileUrlFrom","when":"gitlens:enabled && gitlens:hasRemotes && scmProvider == git && scmResourceGroup =~ /^(workingTree|index|merge)$/","group":"2_gitlens@2"},{"command":"gitlens.copyRemoteCommitUrl","when":"gitlens:hasRemotes && viewItem =~ /gitlens:(commit|file\\b(?=.*?\\b\\+committed\\b))/","group":"2_gitlens@25"},{"command":"gitlens.graph.copyRemoteCommitUrl","when":"gitlens:hasRemotes && webviewItem =~ /gitlens:commit\\b/","group":"2_gitlens@25"},{"command":"gitlens.copyDeepLinkToRepo","when":"viewItem =~ /gitlens:(remote|repo-folder|repository)\\b/","group":"1_gitlens@99"},{"command":"gitlens.copyDeepLinkToTag","when":"viewItem =~ /gitlens:tag\\b/","group":"1_gitlens@50"},{"command":"gitlens.graph.copyDeepLinkToTag","when":"webviewItem =~ /gitlens:tag\\b/","group":"1_gitlens@50"},{"command":"gitlens.graph.copyDeepLinkToRepo","when":"webviewItem =~ /gitlens:branch\\b(?=.*?\\b\\+remote\\b)(?!.*?\\b\\+current\\b)/","group":"1_gitlens@99"},{"command":"gitlens.copyRemoteRepositoryUrl","when":"gitlens:hasRemotes && viewItem =~ /gitlens:(remote|repo-folder|repository)\\b/","group":"2_gitlens@99"}],"gitlens/commit/changes":[{"command":"gitlens.views.openChangedFileDiffs","group":"1_gitlens@1"},{"command":"gitlens.views.openChangedFileDiffsWithWorking","group":"1_gitlens@2"},{"command":"gitlens.views.openChangedFiles","group":"2_gitlens@1"},{"command":"gitlens.views.openChangedFileRevisions","group":"2_gitlens@2"},{"command":"gitlens.views.openOnlyChangedFiles","group":"2_gitlens@3"}],"gitlens/graph/commit/changes":[{"command":"gitlens.graph.openChangedFileDiffs","group":"1_gitlens@1"},{"command":"gitlens.graph.openChangedFileDiffsWithWorking","when":"webviewItem != gitlens:wip","group":"1_gitlens@2"},{"command":"gitlens.graph.openChangedFiles","group":"2_gitlens@1"},{"command":"gitlens.graph.openChangedFileRevisions","group":"2_gitlens@2"},{"command":"gitlens.graph.openOnlyChangedFiles","group":"2_gitlens@3"}],"gitlens/commit/file/commit":[{"command":"gitlens.showInDetailsView","when":"view =~ /gitlens\\.views\\.(fileHistory|lineHistory\\b)/ && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)/","group":"navigation@1"},{"command":"gitlens.showInCommitGraph","when":"view =~ /gitlens\\.views\\.(fileHistory|lineHistory\\b)/ && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)\\b/","group":"navigation@2"},{"command":"gitlens.openCommitOnRemote","when":"view =~ /^gitlens\\.views\\.(fileHistory|lineHistory)/ && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)/ && gitlens:hasRemotes","group":"navigation@3","alt":"gitlens.copyRemoteCommitUrl"},{"command":"gitlens.revealCommitInView","when":"view =~ /gitlens\\.views\\.(fileHistory|lineHistory\\b)/ && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)/","group":"navigation@4"},{"command":"gitlens.views.push","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)(?=.*?\\b\\+current\\b)(?=.*?\\b\\+unpublished\\b)(?=.*?\\b\\+HEAD\\b)/","group":"1_gitlens_actions@0"},{"command":"gitlens.views.pushToCommit","when":"gitlens:hasRemotes && !gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)(?=.*?\\b\\+current\\b)(?=.*?\\b\\+unpublished\\b)(?!.*?\\b\\+HEAD\\b)/","group":"1_gitlens_actions@0"},{"command":"gitlens.views.revert","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)(?=.*?\\b\\+current\\b)/","group":"1_gitlens_actions@3"},{"command":"gitlens.views.resetToCommit","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)/","group":"1_gitlens_actions@4"},{"command":"gitlens.views.resetCommit","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)/","group":"1_gitlens_actions@5"},{"command":"gitlens.views.rebaseOntoCommit","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)(?=.*?\\b\\+current\\b)/","group":"1_gitlens_actions@6"},{"command":"gitlens.views.switchToCommit","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)/","group":"1_gitlens_actions@7"},{"command":"gitlens.views.createBranch","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)/","group":"1_gitlens_secondary_actions@1"},{"command":"gitlens.views.createTag","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)/","group":"1_gitlens_secondary_actions@2"}],"gitlens/commit/file/changes":[{"command":"gitlens.views.openPreviousChangesWithWorking","when":"viewItem =~ /gitlens:file\\b(?!.*?\\b\\+(conflicted|stashed|staged|unstaged)\\b)/","group":"1_gitlens@1"},{"command":"gitlens.views.openChangesWithWorking","when":"viewItem =~ /gitlens:file\\b(?!.*?\\b\\+conflicted\\b)/","group":"1_gitlens@2"},{"command":"gitlens.diffWithRevision","group":"1_gitlens@3"},{"command":"gitlens.diffWithRevisionFrom","group":"1_gitlens@4"},{"command":"gitlens.externalDiff","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders && viewItem =~ /gitlens:file\\b(?!.*?\\b\\+conflicted\\b)/","group":"1_gitlens_@1"},{"command":"gitlens.views.highlightChanges","when":"viewItem =~ /gitlens:file\\b((?=.*?\\b\\+(committed|stashed)\\b)|:results)/","group":"2_gitlens@1"},{"command":"gitlens.views.highlightRevisionChanges","when":"viewItem =~ /gitlens:file\\b((?=.*?\\b\\+committed\\b)|:results)/","group":"2_gitlens@2"}],"gitlens/commit/file/history":[{"command":"gitlens.openFileHistory","when":"view != gitlens.views.fileHistory/","group":"1_gitlens@1"},{"command":"gitlens.showTimelinePage","group":"1_gitlens@2"},{"command":"gitlens.quickOpenFileHistory","group":"1_gitlens_quick@1"}],"gitlens/editor/annotations":[{"command":"gitlens.clearFileAnnotations","when":"gitlens:activeFileStatus =~ /blameable/ && gitlens:annotationStatus","group":"1_gitlens@1"},{"command":"gitlens.toggleFileBlame","when":"gitlens:activeFileStatus =~ /blameable/ && !isInDiffEditor","group":"2_gitlens@1"},{"command":"gitlens.toggleFileBlameInDiffLeft","when":"gitlens:activeFileStatus =~ /blameable/ && isInDiffEditor && !isInDiffRightEditor","group":"2_gitlens@1"},{"command":"gitlens.toggleFileBlameInDiffRight","when":"gitlens:activeFileStatus =~ /blameable/ && isInDiffRightEditor","group":"2_gitlens@1"},{"command":"gitlens.toggleFileHeatmap","when":"gitlens:activeFileStatus =~ /blameable/ && !isInDiffEditor","group":"2_gitlens@2"},{"command":"gitlens.toggleFileHeatmapInDiffLeft","when":"gitlens:activeFileStatus =~ /blameable/ && isInDiffEditor && !isInDiffRightEditor","group":"2_gitlens@2"},{"command":"gitlens.toggleFileHeatmapInDiffRight","when":"gitlens:activeFileStatus =~ /blameable/ && isInDiffRightEditor","group":"2_gitlens@2"},{"command":"gitlens.toggleFileChanges","when":"gitlens:activeFileStatus =~ /blameable/ && !gitlens:hasVirtualFolders","group":"2_gitlens@3"}],"gitlens/editor/context/changes":[{"command":"gitlens.diffLineWithPrevious","when":"editorTextFocus && gitlens:activeFileStatus =~ /blameable/","group":"1_gitlens@1"},{"command":"gitlens.diffLineWithWorking","when":"editorTextFocus && gitlens:activeFileStatus =~ /blameable/","group":"1_gitlens@2"},{"command":"gitlens.diffWithPrevious","group":"2_gitlens@1"},{"command":"gitlens.diffWithWorking","when":"resourceScheme == gitlens","group":"2_gitlens@2"},{"command":"gitlens.diffWithRevision","group":"2_gitlens@3"},{"command":"gitlens.diffWithRevisionFrom","group":"2_gitlens@4"},{"command":"gitlens.showLineCommitInView","group":"3_gitlens@1"},{"command":"gitlens.showQuickCommitFileDetails","group":"3_gitlens@2"},{"command":"gitlens.showQuickRevisionDetails","when":"gitlens:activeFileStatus =~ /revision/ && !isInDiffEditor","group":"3_gitlens@2"},{"command":"gitlens.showQuickRevisionDetailsInDiffLeft","when":"gitlens:activeFileStatus =~ /revision/ && isInDiffEditor && !isInDiffRightEditor","group":"3_gitlens@2"},{"command":"gitlens.showQuickRevisionDetailsInDiffRight","when":"gitlens:activeFileStatus =~ /revision/ && isInDiffRightEditor","group":"3_gitlens@2"}],"gitlens/editor/context/openOn":[{"command":"gitlens.openFileOnRemote","group":"1_gitlens@2","alt":"gitlens.copyRemoteFileUrlToClipboard"},{"command":"gitlens.openFileOnRemoteFrom","group":"1_gitlens@3","alt":"gitlens.copyRemoteFileUrlFrom"},{"command":"gitlens.openCommitOnRemote","group":"1_gitlens_commit@1","alt":"gitlens.copyRemoteCommitUrl"}],"gitlens/editor/changes":[{"command":"gitlens.diffWithPrevious","group":"1_gitlens@1"},{"command":"gitlens.diffWithWorking","when":"resourceScheme == gitlens","group":"1_gitlens@2"},{"command":"gitlens.diffWithRevision","group":"1_gitlens@3"},{"command":"gitlens.diffWithRevisionFrom","group":"1_gitlens@4"}],"gitlens/editor/history":[{"command":"gitlens.openFileHistory","group":"1_gitlens@1"},{"command":"gitlens.showTimelinePage","group":"1_gitlens@2"},{"command":"gitlens.quickOpenFileHistory","group":"1_gitlens_quick@1"}],"gitlens/editor/openOn":[{"command":"gitlens.openFileOnRemote","group":"1_gitlens@1","alt":"gitlens.copyRemoteFileUrlWithoutRange"},{"command":"gitlens.openFileOnRemoteFrom","group":"1_gitlens@2","alt":"gitlens.copyRemoteFileUrlFrom"}],"gitlens/editor/lineNumber/context/changes":[{"command":"gitlens.diffLineWithPrevious","group":"1_gitlens@1"},{"command":"gitlens.diffLineWithWorking","group":"1_gitlens@2"},{"command":"gitlens.showLineCommitInView","group":"3_gitlens@1"},{"command":"gitlens.showQuickCommitFileDetails","group":"3_gitlens@2"}],"gitlens/editor/lineNumber/context/openOn":[{"command":"gitlens.openFileOnRemote","group":"1_gitlens@2","alt":"gitlens.copyRemoteFileUrlToClipboard"},{"command":"gitlens.openFileOnRemoteFrom","group":"1_gitlens@3","alt":"gitlens.copyRemoteFileUrlFrom"},{"command":"gitlens.openCommitOnRemote","group":"1_gitlens_commit@1","alt":"gitlens.copyRemoteCommitUrl"}],"gitlens/editor/lineNumber/context/share":[{"command":"gitlens.copyRemoteFileUrlToClipboard","group":"1_gitlens@2"},{"command":"gitlens.copyRemoteFileUrlFrom","group":"1_gitlens@3"},{"command":"gitlens.copyRemoteCommitUrl","group":"1_gitlens_commit@1"}],"gitlens/explorer/changes":[{"command":"gitlens.diffWithPrevious","group":"1_gitlens@1"},{"command":"gitlens.diffWithRevision","group":"1_gitlens@2"},{"command":"gitlens.diffWithRevisionFrom","group":"1_gitlens@3"}],"gitlens/explorer/history":[{"command":"gitlens.openFileHistory","when":"!explorerResourceIsRoot && !explorerResourceIsFolder && gitlens:enabled","group":"1_gitlens@1"},{"command":"gitlens.openFolderHistory","when":"explorerResourceIsFolder && gitlens:enabled","group":"1_gitlens@1"},{"command":"gitlens.showTimelinePage","when":"!explorerResourceIsRoot && !explorerResourceIsFolder && gitlens:enabled","group":"1_gitlens@2"},{"command":"gitlens.quickOpenFileHistory","when":"!explorerResourceIsRoot && !explorerResourceIsFolder && gitlens:enabled","group":"1_gitlens_quick@1"}],"gitlens/explorer/openOn":[{"command":"gitlens.openFileOnRemote","group":"1_gitlens@1","alt":"gitlens.copyRemoteFileUrlWithoutRange"},{"command":"gitlens.openFileOnRemoteFrom","group":"1_gitlens@2","alt":"gitlens.copyRemoteFileUrlFrom"}],"gitlens/graph/configuration":[{"command":"gitlens.graph.switchToEditorLayout","group":"1_gitlens@1","when":"config.gitlens.graph.layout != editor"},{"command":"gitlens.graph.switchToPanelLayout","group":"1_gitlens@1","when":"config.gitlens.graph.layout != panel"},{"command":"gitlens.showSettingsPage#commit-graph","group":"9_gitlens@1"}],"gitlens/graph/markers":[{"command":"gitlens.graph.scrollMarkerLocalBranchOn","when":"webviewItem =~ /gitlens:graph:settings\\b/ && webviewItemValue =~ /\\bscrollMarker:localBranches:disabled\\b/","group":"4_settings@1"},{"command":"gitlens.graph.scrollMarkerLocalBranchOff","when":"webviewItem =~ /gitlens:graph:settings\\b/ && webviewItemValue =~ /\\bscrollMarker:localBranches:enabled\\b/","group":"4_settings@1"},{"command":"gitlens.graph.scrollMarkerRemoteBranchOn","when":"webviewItem =~ /gitlens:graph:settings\\b/ && webviewItemValue =~ /\\bscrollMarker:remoteBranches:disabled\\b/","group":"4_settings@2"},{"command":"gitlens.graph.scrollMarkerRemoteBranchOff","when":"webviewItem =~ /gitlens:graph:settings\\b/ && webviewItemValue =~ /\\bscrollMarker:remoteBranches:enabled\\b/","group":"4_settings@2"},{"command":"gitlens.graph.scrollMarkerStashOn","when":"webviewItem =~ /gitlens:graph:settings\\b/ && webviewItemValue =~ /\\bscrollMarker:stashes:disabled\\b/","group":"4_settings@3"},{"command":"gitlens.graph.scrollMarkerStashOff","when":"webviewItem =~ /gitlens:graph:settings\\b/ && webviewItemValue =~ /\\bscrollMarker:stashes:enabled\\b/","group":"4_settings@3"},{"command":"gitlens.graph.scrollMarkerTagOn","when":"webviewItem =~ /gitlens:graph:settings\\b/ && webviewItemValue =~ /\\bscrollMarker:tags:disabled\\b/","group":"4_settings@4"},{"command":"gitlens.graph.scrollMarkerTagOff","when":"webviewItem =~ /gitlens:graph:settings\\b/ && webviewItemValue =~ /\\bscrollMarker:tags:enabled\\b/","group":"4_settings@4"}],"gitlens/scm/resourceGroup/changes":[{"command":"gitlens.externalDiffAll","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders","group":"1_gitlens@1"},{"command":"gitlens.diffDirectoryWithHead","when":"!gitlens:hasVirtualFolders","group":"1_gitlens@2"},{"command":"gitlens.diffDirectory","when":"!gitlens:hasVirtualFolders","group":"1_gitlens@3"}],"gitlens/scm/resourceState/changes":[{"command":"gitlens.diffWithRevision","when":"!gitlens:hasVirtualFolders","group":"1_gitlens@1"},{"command":"gitlens.diffWithRevisionFrom","when":"!gitlens:hasVirtualFolders","group":"1_gitlens@2"},{"command":"gitlens.externalDiff","when":"!gitlens:readonly && !gitlens:untrusted && !gitlens:hasVirtualFolders","group":"2_gitlens@1"}],"gitlens/scm/resourceState/history":[{"command":"gitlens.openFileHistory","group":"1_gitlens@1"},{"command":"gitlens.showTimelinePage","group":"1_gitlens@2"},{"command":"gitlens.quickOpenFileHistory","group":"1_gitlens_quick@1"}],"gitlens/scm/resourceState/openOn":[{"command":"gitlens.openFileOnRemote","group":"1_gitlens@1","alt":"gitlens.copyRemoteFileUrlWithoutRange"},{"command":"gitlens.openFileOnRemoteFrom","group":"1_gitlens@2","alt":"gitlens.copyRemoteFileUrlFrom"}],"gitlens/view/repositories/sections":[{"command":"gitlens.views.repositories.setShowBranchComparisonOn","when":"!config.gitlens.views.repositories.showBranchComparison","group":"1_gitlens@0"},{"command":"gitlens.views.repositories.setShowBranchComparisonOff","when":"config.gitlens.views.repositories.showBranchComparison","group":"1_gitlens@0"},{"command":"gitlens.views.repositories.setShowUpstreamStatusOn","when":"!config.gitlens.views.repositories.showUpstreamStatus","group":"1_gitlens@1"},{"command":"gitlens.views.repositories.setShowUpstreamStatusOff","when":"config.gitlens.views.repositories.showUpstreamStatus","group":"1_gitlens@1"},{"command":"gitlens.views.repositories.setShowCommitsOn","when":"!config.gitlens.views.repositories.showCommits","group":"2_gitlens@2"},{"command":"gitlens.views.repositories.setShowCommitsOff","when":"config.gitlens.views.repositories.showCommits","group":"2_gitlens@2"},{"command":"gitlens.views.repositories.setShowBranchesOn","when":"!config.gitlens.views.repositories.showBranches","group":"2_gitlens@3"},{"command":"gitlens.views.repositories.setShowBranchesOff","when":"config.gitlens.views.repositories.showBranches","group":"2_gitlens@3"},{"command":"gitlens.views.repositories.setShowRemotesOn","when":"!config.gitlens.views.repositories.showRemotes","group":"2_gitlens@4"},{"command":"gitlens.views.repositories.setShowRemotesOff","when":"config.gitlens.views.repositories.showRemotes","group":"2_gitlens@4"},{"command":"gitlens.views.repositories.setShowStashesOn","when":"!config.gitlens.views.repositories.showStashes","group":"2_gitlens@5"},{"command":"gitlens.views.repositories.setShowStashesOff","when":"config.gitlens.views.repositories.showStashes","group":"2_gitlens@5"},{"command":"gitlens.views.repositories.setShowTagsOn","when":"!config.gitlens.views.repositories.showTags","group":"2_gitlens@6"},{"command":"gitlens.views.repositories.setShowTagsOff","when":"config.gitlens.views.repositories.showTags","group":"2_gitlens@6"},{"command":"gitlens.views.repositories.setShowWorktreesOn","when":"!config.gitlens.views.repositories.showWorktrees","group":"2_gitlens@7"},{"command":"gitlens.views.repositories.setShowWorktreesOff","when":"config.gitlens.views.repositories.showWorktrees","group":"2_gitlens@7"},{"command":"gitlens.views.repositories.setShowContributorsOn","when":"!config.gitlens.views.repositories.showContributors","group":"2_gitlens@8"},{"command":"gitlens.views.repositories.setShowContributorsOff","when":"config.gitlens.views.repositories.showContributors","group":"2_gitlens@8"}],"gitlens/view/searchAndCompare/new":[{"command":"gitlens.views.searchAndCompare.searchCommits","when":"view =~ /^gitlens\\.views\\.searchAndCompare\\b/","group":"navigation@10"},{"command":"gitlens.views.searchAndCompare.selectForCompare","when":"!gitlens:hasVirtualFolders && view =~ /^gitlens\\.views\\.searchAndCompare\\b/","group":"navigation@11"}],"gitlens/view/searchAndCompare/comparison/filter":[{"command":"gitlens.views.searchAndCompare.setFilesFilterOff","when":"viewItem =~ /gitlens:results:files\\b(?=.*?\\b\\+filtered\\b)/","group":"navigation@1"},{"command":"gitlens.views.searchAndCompare.setFilesFilterOnLeft","when1":"viewItem =~ /gitlens:results:files\\b(?!.*?\\b\\+filtered~left\\b)/","group":"navigation_1@1"},{"command":"gitlens.views.searchAndCompare.setFilesFilterOnRight","when1":"viewItem =~ /gitlens:results:files\\b(?!.*?\\b\\+filtered~right\\b)/","group":"navigation_1@2"}],"gitlens/view/searchAndCompare/comparison/filtered":[{"command":"gitlens.views.searchAndCompare.setFilesFilterOff","when":"viewItem =~ /gitlens:results:files\\b(?=.*?\\b\\+filtered\\b)/","group":"navigation@1"},{"command":"gitlens.views.searchAndCompare.setFilesFilterOnLeft","when1":"viewItem =~ /gitlens:results:files\\b(?!.*?\\b\\+filtered~left\\b)/","group":"navigation_1@1"},{"command":"gitlens.views.searchAndCompare.setFilesFilterOnRight","when1":"viewItem =~ /gitlens:results:files\\b(?!.*?\\b\\+filtered~right\\b)/","group":"navigation_1@2"}]},"submenus":[{"id":"gitlens/commit/browse","label":"Browse"},{"id":"gitlens/commit/copy","label":"Copy As"},{"id":"gitlens/commit/changes","label":"Open Changes"},{"id":"gitlens/graph/commit/changes","label":"Open Changes"},{"id":"gitlens/commit/file/commit","label":"Commit"},{"id":"gitlens/commit/file/changes","label":"Open Changes with"},{"id":"gitlens/commit/file/history","label":"File History"},{"id":"gitlens/editor/annotations","label":"File Annotations","icon":{"dark":"images/dark/icon-git.svg","light":"images/light/icon-git.svg"}},{"id":"gitlens/editor/context/changes","label":"Open Changes"},{"id":"gitlens/editor/context/openOn","label":"Open on Remote (Web)"},{"id":"gitlens/editor/changes","label":"Open Changes"},{"id":"gitlens/editor/history","label":"File History"},{"id":"gitlens/editor/openOn","label":"Open on Remote (Web)"},{"id":"gitlens/editor/lineNumber/context/changes","label":"Open Changes"},{"id":"gitlens/editor/lineNumber/context/openOn","label":"Open on Remote (Web)"},{"id":"gitlens/editor/lineNumber/context/share","label":"Share"},{"id":"gitlens/explorer/changes","label":"Open Changes"},{"id":"gitlens/explorer/history","label":"File History"},{"id":"gitlens/explorer/openOn","label":"Open on Remote (Web)"},{"id":"gitlens/graph/configuration","label":"Commit Graph Settings","icon":"$(gear)"},{"id":"gitlens/graph/markers","label":"Scroll Markers"},{"id":"gitlens/scm/resourceGroup/changes","label":"Open Changes"},{"id":"gitlens/scm/resourceState/changes","label":"Open Changes with"},{"id":"gitlens/scm/resourceState/history","label":"File History"},{"id":"gitlens/scm/resourceState/openOn","label":"Open on Remote (Web)"},{"id":"gitlens/share","label":"Share"},{"id":"gitlens/view/repositories/sections","label":"Sections"},{"id":"gitlens/view/searchAndCompare/new","label":"New Search or Compare","icon":"$(add)"},{"id":"gitlens/view/searchAndCompare/comparison/filter","label":"Filter","icon":"$(filter)"},{"id":"gitlens/view/searchAndCompare/comparison/filtered","label":"Filter","icon":"$(filter-filled)"}],"keybindings":[{"command":"gitlens.key.left","key":"left","when":"gitlens:key:left"},{"command":"gitlens.key.alt+left","key":"alt+left","when":"gitlens:key:alt+left"},{"command":"gitlens.key.ctrl+left","key":"ctrl+left","mac":"cmd+left","when":"gitlens:key:ctrl+left"},{"command":"gitlens.key.right","key":"right","when":"gitlens:key:right"},{"command":"gitlens.key.alt+right","key":"alt+right","when":"gitlens:key:alt+right"},{"command":"gitlens.key.ctrl+right","key":"ctrl+right","mac":"cmd+right","when":"gitlens:key:ctrl+right"},{"command":"gitlens.key.alt+,","key":"alt+,","when":"gitlens:key:,"},{"command":"gitlens.key.alt+.","key":"alt+.","when":"gitlens:key:."},{"command":"gitlens.key.alt+enter","key":"alt+enter","when":"gitlens:key:alt+enter"},{"command":"gitlens.key.ctrl+enter","key":"ctrl+enter","when":"gitlens:key:ctrl+enter"},{"command":"gitlens.key.escape","key":"escape","when":"gitlens:key:escape && editorTextFocus && !findWidgetVisible && !quickFixWidgetVisible && !renameInputVisible && !suggestWidgetVisible && !isInEmbeddedEditor"},{"command":"gitlens.gitCommands","key":"alt+/","when":"config.gitlens.keymap == alternate && !gitlens:disabled"},{"command":"gitlens.gitCommands","key":"ctrl+shift+g /","mac":"cmd+alt+g /","when":"config.gitlens.keymap == chorded && !gitlens:disabled"},{"command":"gitlens.toggleFileBlame","key":"alt+b","when":"config.gitlens.keymap == alternate && editorTextFocus && gitlens:activeFileStatus =~ /blameable/"},{"command":"gitlens.toggleFileBlame","key":"ctrl+shift+g b","mac":"cmd+alt+g b","when":"config.gitlens.keymap == chorded && editorTextFocus && gitlens:activeFileStatus =~ /blameable/"},{"command":"gitlens.toggleCodeLens","key":"shift+alt+b","when":"config.gitlens.keymap == alternate && editorTextFocus && !gitlens:disabled && !gitlens:disabledToggleCodeLens"},{"command":"gitlens.toggleCodeLens","key":"ctrl+shift+g shift+b","mac":"cmd+alt+g shift+b","when":"config.gitlens.keymap == chorded && editorTextFocus && !gitlens:disabled && !gitlens:disabledToggleCodeLens"},{"command":"gitlens.showQuickFileHistory","key":"alt+h","when":"config.gitlens.keymap == alternate && !gitlens:disabled"},{"command":"gitlens.showQuickFileHistory","key":"ctrl+shift+g h","mac":"cmd+alt+g h","when":"config.gitlens.keymap == chorded && !gitlens:disabled"},{"command":"gitlens.showQuickRepoHistory","key":"shift+alt+h","when":"config.gitlens.keymap == alternate && !gitlens:disabled"},{"command":"gitlens.showQuickRepoHistory","key":"ctrl+shift+g shift+h","mac":"cmd+alt+g shift+h","when":"config.gitlens.keymap == chorded && !gitlens:disabled"},{"command":"gitlens.showQuickRepoStatus","key":"alt+s","when":"config.gitlens.keymap == alternate && !gitlens:disabled"},{"command":"gitlens.showQuickRepoStatus","key":"ctrl+shift+g s","mac":"cmd+alt+g s","when":"config.gitlens.keymap == chorded && !gitlens:disabled"},{"command":"gitlens.showQuickCommitFileDetails","key":"alt+c","when":"config.gitlens.keymap == alternate && editorTextFocus && !gitlens:disabled"},{"command":"gitlens.showQuickCommitFileDetails","key":"ctrl+shift+g c","mac":"cmd+alt+g c","when":"config.gitlens.keymap == chorded && editorTextFocus && !gitlens:disabled"},{"command":"gitlens.diffWithPrevious","key":"alt+,","when":"config.gitlens.keymap == alternate && editorTextFocus && gitlens:activeFileStatus =~ /tracked/ && !isInDiffEditor"},{"command":"gitlens.diffWithPrevious","key":"ctrl+shift+g ,","mac":"cmd+alt+g ,","when":"config.gitlens.keymap == chorded && editorTextFocus && gitlens:activeFileStatus =~ /tracked/ && !isInDiffEditor"},{"command":"gitlens.diffWithPreviousInDiffLeft","key":"alt+,","when":"config.gitlens.keymap == alternate && editorTextFocus && gitlens:activeFileStatus =~ /tracked/ && isInDiffEditor && !isInDiffRightEditor"},{"command":"gitlens.diffWithPreviousInDiffLeft","key":"ctrl+shift+g ,","mac":"cmd+alt+g ,","when":"config.gitlens.keymap == chorded && editorTextFocus && gitlens:activeFileStatus =~ /tracked/ && isInDiffEditor && !isInDiffRightEditor"},{"command":"gitlens.diffWithPreviousInDiffRight","key":"alt+,","when":"config.gitlens.keymap == alternate && editorTextFocus && gitlens:activeFileStatus =~ /tracked/ && isInDiffRightEditor"},{"command":"gitlens.diffWithPreviousInDiffRight","key":"ctrl+shift+g ,","mac":"cmd+alt+g ,","when":"config.gitlens.keymap == chorded && editorTextFocus && gitlens:activeFileStatus =~ /tracked/ && isInDiffRightEditor"},{"command":"gitlens.diffWithNext","key":"alt+.","when":"config.gitlens.keymap == alternate && editorTextFocus && gitlens:activeFileStatus =~ /revision/ && !isInDiffEditor"},{"command":"gitlens.diffWithNext","key":"ctrl+shift+g .","mac":"cmd+alt+g .","when":"config.gitlens.keymap == chorded && editorTextFocus && gitlens:activeFileStatus =~ /revision/ && !isInDiffEditor"},{"command":"gitlens.diffWithNextInDiffLeft","key":"alt+.","when":"config.gitlens.keymap == alternate && editorTextFocus && gitlens:activeFileStatus =~ /revision/ && isInDiffEditor && !isInDiffRightEditor"},{"command":"gitlens.diffWithNextInDiffLeft","key":"ctrl+shift+g .","mac":"cmd+alt+g .","when":"config.gitlens.keymap == chorded && editorTextFocus && gitlens:activeFileStatus =~ /revision/ && isInDiffEditor && !isInDiffRightEditor"},{"command":"gitlens.diffWithNextInDiffRight","key":"alt+.","when":"config.gitlens.keymap == alternate && editorTextFocus && gitlens:activeFileStatus =~ /revision/ && isInDiffRightEditor"},{"command":"gitlens.diffWithNextInDiffRight","key":"ctrl+shift+g .","mac":"cmd+alt+g .","when":"config.gitlens.keymap == chorded && editorTextFocus && gitlens:activeFileStatus =~ /revision/ && isInDiffRightEditor"},{"command":"gitlens.diffWithWorking","key":"shift+alt+.","when":"config.gitlens.keymap == alternate && editorTextFocus && gitlens:activeFileStatus =~ /revision/"},{"command":"gitlens.diffWithWorking","key":"ctrl+shift+g shift+.","mac":"cmd+alt+g shift+.","when":"config.gitlens.keymap == chorded && editorTextFocus && gitlens:activeFileStatus =~ /revision/"},{"command":"gitlens.diffLineWithPrevious","key":"shift+alt+,","when":"config.gitlens.keymap == alternate && editorTextFocus && gitlens:activeFileStatus =~ /tracked/"},{"command":"gitlens.diffLineWithPrevious","key":"ctrl+shift+g shift+,","mac":"cmd+alt+g shift+,","when":"config.gitlens.keymap == chorded && editorTextFocus && gitlens:activeFileStatus =~ /tracked/"},{"command":"workbench.view.scm","key":"ctrl+shift+g g","mac":"ctrl+shift+g","when":"config.gitlens.keymap == chorded && !gitlens:disabled"},{"command":"gitlens.views.branches.copy","key":"ctrl+c","mac":"cmd+c","when":"gitlens:enabled && focusedView =~ /^gitlens\\.views\\.branches/"},{"command":"gitlens.views.commits.copy","key":"ctrl+c","mac":"cmd+c","when":"gitlens:enabled && focusedView =~ /^gitlens\\.views\\.commits/"},{"command":"gitlens.views.contributors.copy","key":"ctrl+c","mac":"cmd+c","when":"gitlens:enabled && focusedView =~ /^gitlens\\.views\\.contributors/"},{"command":"gitlens.views.fileHistory.copy","key":"ctrl+c","mac":"cmd+c","when":"gitlens:enabled && focusedView =~ /^gitlens\\.views\\.fileHistory/"},{"command":"gitlens.views.lineHistory.copy","key":"ctrl+c","mac":"cmd+c","when":"gitlens:enabled && focusedView =~ /^gitlens\\.views\\.lineHistory/"},{"command":"gitlens.views.remotes.copy","key":"ctrl+c","mac":"cmd+c","when":"gitlens:enabled && focusedView =~ /^gitlens\\.views\\.remotes/"},{"command":"gitlens.views.repositories.copy","key":"ctrl+c","mac":"cmd+c","when":"gitlens:enabled && focusedView =~ /^gitlens\\.views\\.repositories/"},{"command":"gitlens.views.stashes.copy","key":"ctrl+c","mac":"cmd+c","when":"gitlens:enabled && focusedView =~ /^gitlens\\.views\\.stashes/"},{"command":"gitlens.views.searchAndCompare.copy","key":"ctrl+c","mac":"cmd+c","when":"gitlens:enabled && focusedView =~ /^gitlens\\.views\\.searchAndCompare\\b/"},{"command":"gitlens.views.tags.copy","key":"ctrl+c","mac":"cmd+c","when":"gitlens:enabled && focusedView =~ /^gitlens\\.views\\.tags/"},{"command":"gitlens.views.worktrees.copy","key":"ctrl+c","mac":"cmd+c","when":"gitlens:enabled && focusedView =~ /^gitlens\\.views\\.worktrees/"},{"command":"gitlens.views.workspaces.copy","key":"ctrl+c","mac":"cmd+c","when":"gitlens:enabled && focusedView =~ /^gitlens\\.views\\.workspaces/"}],"customEditors":[{"viewType":"gitlens.rebase","displayName":"GitLens Interactive Rebase Editor","selector":[{"filenamePattern":"git-rebase-todo"}]}],"resourceLabelFormatters":[{"scheme":"gitlens","authority":"*","formatting":{"label":"${path} (${query.ref})","separator":"/","workspaceSuffix":"GitLens","stripPathStartingSeparator":true}}],"viewsContainers":{"activitybar":[{"id":"gitlens","title":"GitLens","icon":"$(gitlens-gitlens)"},{"id":"gitlensInspect","title":"GitLens Inspect","icon":"$(gitlens-gitlens-inspect)"}],"panel":[{"id":"gitlensPanel","title":"GitLens","icon":"$(gitlens-graph)"}]},"viewsWelcome":[{"view":"gitlens.views.searchAndCompare","contents":"Search for commits by [message](command:gitlens.views.searchAndCompare.searchCommits?%7B%22search%22%3A%7B%22query%22%3A%22message%3A%22%7D%2C%22prefillOnly%22%3Atrue%7D), [author](command:gitlens.views.searchAndCompare.searchCommits?%7B%22search%22%3A%7B%22query%22%3A%22author%3A%22%7D%2C%22prefillOnly%22%3Atrue%7D), [SHA](command:gitlens.views.searchAndCompare.searchCommits?%7B%22search%22%3A%7B%22query%22%3A%22commit%3A%22%7D%2C%22prefillOnly%22%3Atrue%7D), [file](command:gitlens.views.searchAndCompare.searchCommits?%7B%22search%22%3A%7B%22query%22%3A%22file%3A%22%7D%2C%22prefillOnly%22%3Atrue%7D), or [changes](command:gitlens.views.searchAndCompare.searchCommits?%7B%22search%22%3A%7B%22query%22%3A%22change%3A%22%7D%2C%22prefillOnly%22%3Atrue%7D)\n\n[Search Commits...](command:gitlens.views.searchAndCompare.searchCommits)","when":"!gitlens:hasVirtualFolders"},{"view":"gitlens.views.searchAndCompare","contents":"Search for commits by [message](command:gitlens.views.searchAndCompare.searchCommits?%7B%22search%22%3A%7B%22query%22%3A%22message%3A%22%7D%2C%22prefillOnly%22%3Atrue%7D), [author](command:gitlens.views.searchAndCompare.searchCommits?%7B%22search%22%3A%7B%22query%22%3A%22author%3A%22%7D%2C%22prefillOnly%22%3Atrue%7D), or [SHA](command:gitlens.views.searchAndCompare.searchCommits?%7B%22search%22%3A%7B%22query%22%3A%22commit%3A%22%7D%2C%22prefillOnly%22%3Atrue%7D)\n\n[Search Commits...](command:gitlens.views.searchAndCompare.searchCommits)","when":"gitlens:hasVirtualFolders"},{"view":"gitlens.views.searchAndCompare","contents":"Compare a <branch, tag, or ref> with another <branch, tag, or ref>\n\n[Compare References...](command:gitlens.views.searchAndCompare.selectForCompare)","when":"!gitlens:hasVirtualFolders"},{"view":"gitlens.views.workspaces","contents":"Workspaces allow you to easily group and manage multiple repositories together, accessible from anywhere, streamlining your workflow.\n\nCreate workspaces just for yourself or share (coming soon in GitLens) them with your team for faster onboarding and better collaboration."},{"view":"gitlens.views.workspaces","contents":"[Create Cloud Workspace](command:gitlens.views.workspaces.create)\n\n☁ Access is based on your plan, e.g. Free, Pro, etc","when":"gitlens:plus"},{"view":"gitlens.views.workspaces","contents":"[Start Free Pro Trial](command:gitlens.plus.loginOrSignUp)\n\nStart a free 7-day Pro trial to use GitKraken Workspaces, or [sign in](command:gitlens.plus.loginOrSignUp).\n☁ Requires an account and access is based on your plan, e.g. Free, Pro, etc","when":"!gitlens:plus"},{"view":"gitlens.views.worktrees","contents":"Worktrees help you multitask by minimizing the context switching between branches, allowing you to easily work on different branches of a repository simultaneously.\n\nYou can create multiple working trees, each of which can be opened in individual windows or all together in a single workspace.","when":"!gitlens:plus:required || gitlens:plus:state == 0"},{"view":"gitlens.views.worktrees","contents":"[Create Worktree...](command:gitlens.views.createWorktree)","when":"!gitlens:plus:required"},{"view":"gitlens.views.worktrees","contents":"You must verify your email before you can continue.\n\n[Resend verification email](command:gitlens.plus.resendVerification)\n\n[Refresh verification status](command:gitlens.plus.validate)","when":"gitlens:plus:state == -1"},{"view":"gitlens.views.worktrees","contents":"[Preview Pro](command:gitlens.plus.startPreviewTrial)\n\nPreview Pro for 3 days, or [sign in](command:gitlens.plus.loginOrSignUp) to start a full 7-day Pro trial.\n✨ A trial or paid plan is required to use this on privately hosted repos.","when":"gitlens:plus:required && gitlens:plus:state == 0"},{"view":"gitlens.views.worktrees","contents":"Your 3-day Pro preview has ended, start a free Pro trial to get an additional 7 days, or [sign in](command:gitlens.plus.loginOrSignUp).\n\n[Start Free Pro Trial](command:gitlens.plus.loginOrSignUp)\n✨ A trial or paid plan is required to use this on privately hosted repos.","when":"gitlens:plus:required && gitlens:plus:state == 2"},{"view":"gitlens.views.worktrees","contents":"Your Pro trial has ended, please upgrade to continue to use this on privately hosted repos.\n\n[Upgrade to Pro](command:gitlens.plus.purchase)\n✨ A paid plan is required to use this on privately hosted repos.","when":"gitlens:plus:required && gitlens:plus:state == 4"}],"views":{"gitlens":[{"type":"webview","id":"gitlens.views.home","name":"Home","contextualTitle":"GL","icon":"$(gitlens-gitlens)","initialSize":6,"visibility":"visible"},{"id":"gitlens.views.workspaces","name":"GitKraken Workspaces","when":"!gitlens:untrusted && !gitlens:hasVirtualFolders","contextualTitle":"GL","icon":"$(gitlens-workspaces-view)","initialSize":2,"visibility":"visible"},{"type":"webview","id":"gitlens.views.account","name":"GitKraken Account","contextualTitle":"GL","icon":"$(gitlens-gitlens)","initialSize":1,"visibility":"collapsed"}],"gitlensInspect":[{"type":"webview","id":"gitlens.views.commitDetails","name":"Commit Details","when":"!gitlens:disabled","contextualTitle":"GL","icon":"$(gitlens-commit-view)","initialSize":6,"visibility":"visible"},{"id":"gitlens.views.lineHistory","name":"Line History","when":"!gitlens:disabled && !gitlens:hasVirtualFolders","contextualTitle":"GL","icon":"$(gitlens-history-view)","initialSize":1,"visibility":"collapsed"},{"id":"gitlens.views.fileHistory","name":"File History","when":"!gitlens:disabled","contextualTitle":"GL","icon":"$(gitlens-history-view)","initialSize":2,"visibility":"visible"},{"type":"webview","id":"gitlens.views.timeline","name":"Visual File History","when":"!gitlens:disabled && gitlens:plus:enabled","contextualTitle":"GL","icon":"$(graph-scatter)","initialSize":1,"visibility":"visible"},{"id":"gitlens.views.searchAndCompare","name":"Search & Compare","when":"!gitlens:disabled","contextualTitle":"GL","icon":"$(gitlens-search-view)","initialSize":2,"visibility":"visible"}],"gitlensPanel":[{"type":"webview","id":"gitlens.views.graph","name":"Graph","when":"!gitlens:disabled && gitlens:plus:enabled && config.gitlens.graph.layout == panel","contextualTitle":"GL","icon":"$(gitlens-graph)","initialSize":4,"visibility":"visible"},{"type":"webview","id":"gitlens.views.graphDetails","name":"Graph Details","when":"!gitlens:disabled && gitlens:plus:enabled && config.gitlens.graph.layout == panel","contextualTitle":"GL","icon":"$(gitlens-commit-view)","initialSize":1,"visibility":"visible"}],"scm":[{"id":"gitlens.views.repositories","name":"Repositories","when":"!gitlens:disabled","contextualTitle":"GL","icon":"$(gitlens-repositories-view)","visibility":"hidden"},{"id":"gitlens.views.commits","name":"Commits","when":"!gitlens:disabled","contextualTitle":"GL","icon":"$(gitlens-commits-view)","visibility":"visible"},{"id":"gitlens.views.branches","name":"Branches","when":"!gitlens:disabled","contextualTitle":"GL","icon":"$(gitlens-branches-view)","visibility":"collapsed"},{"id":"gitlens.views.remotes","name":"Remotes","when":"!gitlens:disabled","contextualTitle":"GL","icon":"$(gitlens-remotes-view)","visibility":"collapsed"},{"id":"gitlens.views.stashes","name":"Stashes","when":"!gitlens:disabled && !gitlens:hasVirtualFolders","contextualTitle":"GL","icon":"$(gitlens-stashes-view)","visibility":"collapsed"},{"id":"gitlens.views.tags","name":"Tags","when":"!gitlens:disabled","contextualTitle":"GL","icon":"$(gitlens-tags-view)","visibility":"collapsed"},{"id":"gitlens.views.worktrees","name":"Worktrees","when":"!gitlens:disabled && !gitlens:hasVirtualFolders && gitlens:plus:enabled","contextualTitle":"GL","icon":"$(gitlens-worktrees-view)","visibility":"collapsed"},{"id":"gitlens.views.contributors","name":"Contributors","when":"!gitlens:disabled","contextualTitle":"GL","icon":"$(gitlens-contributors-view)","visibility":"collapsed"}]},"walkthroughs":[{"id":"gitlens.welcome","title":"Get Started with GitLens","description":"Discover and personalize features that supercharge your Git experience","steps":[{"id":"gitlens.welcome.tutorial","title":"Welcome and Tutorial","description":"Open the Welcome experience to quickly get started and discover the many powerful GitLens features.\n\n[Open Welcome](command:gitlens.showWelcomePage \"Opens GitLens Welcome\")\nOr, sit back and watch the our Getting Started video.\n\n[Watch Tutorial Video](https://www.youtube.com/watch?v=UQPb73Zz9qk \"Watch the Getting Started video\")\n💡 **Want more control?** Use the interactive [GitLens Settings](command:gitlens.showSettingsPage \"Opens GitLens Settings\") editor to customize GitLens to meet your needs.","media":{"markdown":"walkthroughs/welcome/tutorial.md"}},{"id":"gitlens.welcome.sidebars","title":"Discover the many powerful views","description":"Our views are arranged for focus and productivity, although you can easily drag them around to suit your needs.\n\n$(gitlens-gitlens-inspect)  **GitLens Inspect**\nAn x-ray or developer tools inspector into your code, focused on providing contextual information and insights to what you're actively working on.\n\n[Open GitLens Inspect](command:workbench.view.extension.gitlensInspect)\n\n$(gitlens-gitlens)  **GitLens**\nQuick access to many GitLens features. Also the home of GitKraken teams and collaboration services (e.g. GitKraken Workspaces), help, and support.\n\n[Open GitLens](command:workbench.view.extension.gitlens)\n\n$(source-control) **Source Control**\nShows additional views that are focused on exploring and managing your repositories.\n\n[Open Source Control](command:workbench.view.scm)\n\n$(layout-panel)  **(Bottom) Panel**\nConvenient and easy access to the Commit Graph with a dedicated details view.\n\n[Open Commit Graph](command:gitlens.showGraph)\n💡 Use the [Reset Views Layout](command:workbench.action.quickOpen?%22>GitLens%3A%20Reset%20Views%20Layout%22) command to quickly get back to the default layout.","media":{"markdown":"walkthroughs/welcome/side-bars.md"}},{"id":"gitlens.welcome.currentLineBlame","title":"See who made which changes at a glance","description":"**Inline blame** and status bar blame provide historical context about line changes.\n**Git CodeLens** adds contextual and actionable authorship information at the top of each file and at the beginning of each block of code.\n**Hover** over blame annotations to reveal rich details and actions.\n💡 Use the [Toggle Line Blame](command:workbench.action.quickOpen?%22>GitLens%3A%20Toggle%20Line%20Blame%22) and [Toggle Git CodeLens](command:workbench.action.quickOpen?%22>GitLens%3A%20Toggle%20Git%20CodeLens%22) commands from the Command Palette to turn the annotations on and off.","media":{"markdown":"walkthroughs/welcome/blame.md"}},{"id":"gitlens.welcome.fileAnnotations","title":"Get more context with file annotations","description":"Toggle on-demand whole file annotations to see authorship, recent changes, and a heatmap. Annotations are rendered as visual indicators directly in the editor.\n💡 **On an active file**, use the [Toggle File Blame](command:workbench.action.quickOpen?%22>GitLens%3A%20Toggle%20File%20Blame%22), [Toggle File Changes](command:workbench.action.quickOpen?%22>GitLens%3A%20Toggle%20File%20Changes%22), and [Toggle File Heatmap](command:workbench.action.quickOpen?%22>GitLens%3A%20Toggle%20File%20Heatmap%22) commands from the Command Palette to turn the annotations on and off.","media":{"markdown":"walkthroughs/welcome/file-annotations.md"}},{"id":"gitlens.welcome.revisionHistory","title":"Effortlessly navigate revision history","description":"With just a click of a button, you can navigate backwards and forwards through the history of any file.\nCompare changes over time and see the revision history of the whole file or an individual line.","media":{"markdown":"walkthroughs/welcome/revision-history.md"}},{"id":"gitlens.welcome.commitGraph","title":"Visualize with the Commit Graph ✨","description":"Easily visualize your repository and keep track of all work in progress.\nUse the rich commit search to find exactly what you're looking for. It's powerful filters allow you to search by a specific commit, message, author, a changed file or files, or even a specific code change.\n\n[Open Commit Graph](command:gitlens.showGraph)\n\n💡Quickly toggle the Graph via the [Toggle Commit Graph](command:gitlens.toggleGraph) command.\n💡Maximize the Graph via the [Toggle Maximized Commit Graph](command:gitlens.toggleMaximizedGraph) command.","media":{"altText":"Illustrations of the Commit Graph view","svg":"walkthroughs/welcome/commit-graph.svg"}},{"id":"gitlens.welcome.workspaces","title":"Work smarter with GitKraken Workspaces ☁️ and Focus ✨","description":"GitKraken Workspaces allow you to easily group and manage multiple repositories together, accessible from anywhere, streamlining your workflow.\nCreate workspaces just for yourself or share (coming soon in GitLens) them with your team for faster onboarding and better collaboration.\n\n[Open Workspaces](command:gitlens.showWorkspacesView)\n\nThe Focus view brings all of your GitHub pull requests and issues into a unified actionable view to help to you more easily juggle work in progress, pending work, reviews, and more.\nQuickly see if anything requires your attention while keeping you focused.\n\n[Open Focus](command:gitlens.showFocusPage)","media":{"altText":"Illustrations of Focus and Workspaces view","svg":"walkthroughs/welcome/workspaces-focus.svg"}},{"id":"gitlens.welcome.hostingServiceIntegrations","title":"Integrate with Git hosting services","description":"Simplify your workflow and quickly gain insights with automatic linking of issues and pull requests across multiple Git hosting services including GitHub, GitHub Enterprise ✨, GitLab, GitLab self-managed ✨, Gitea, Gerrit, Google Source, Bitbucket, Bitbucket Server, Azure DevOps, and custom servers.\n\nAll integration provide automatic linking, while rich integrations with GitHub & GitLab offer detailed hover information for autolinks, and correlations between pull requests, branches, and commits, as well as user avatars for added context.\n\n**Define your own autolinks**\nUse autolinks to linkify external references, like Jira issues or Zendesk tickets, in commit messages.\n\n[Configure Autolinks](command:gitlens.showSettingsPage?%22autolinks%22)","media":{"markdown":"walkthroughs/welcome/integrations.md"}},{"id":"gitlens.welcome.labs","title":"Experiment with GitKraken Labs $(beaker)","description":"GitKraken Labs is our incubator for experimentation and exploration with the community to gather early reactions and feedback. Below are some of our current experiments.\n**Explain Commit (AI)**\nUse the Explain panel on the [Commit Details view](command:gitlens.showCommitDetailsView) to leverage AI to help you understand the changes introduced by a commit.\n**Automatically Generate Commit Message (AI)**\nUse the [Generate Commit Message](command:workbench.action.quickOpen?%22>GitLens%3A%20Generate%20Commit%20Message%22) command from the Source Control view's context menu to automatically generate a commit message for your staged changes by leveraging AI.","media":{"markdown":"walkthroughs/welcome/labs.md"}},{"id":"gitlens.welcome.preview","title":"Previewing GitLens Pro","description":"During your preview, you have access to ✨ features on privately hosted repos. [Learn more](https://www.gitkraken.com/gitlens/plus-features)\n\n[Start Free Pro Trial](command:gitlens.plus.loginOrSignUp)\n\nStart a free Pro trial to get an additional 7 days.","media":{"markdown":"walkthroughs/welcome/preview.md"},"when":"gitlens:plus:state == 1"},{"id":"gitlens.welcome.trial","title":"Trialing GitLens Pro","description":"During your trial, you have access to ✨ features on privately hosted repos and ☁️ features based on the Pro plan. [Learn more](https://www.gitkraken.com/gitlens/plus-features)\n\n[Upgrade to Pro](command:gitlens.plus.purchase)","media":{"markdown":"walkthroughs/welcome/trial.md"},"when":"gitlens:plus:state == 3"},{"id":"gitlens.welcome.services","title":"Power-up with GitKraken Cloud Services","description":"Sign up for access to our developer productivity and collaboration services, e.g. Workspaces, or [sign in](command:gitlens.plus.loginOrSignUp).\n\n[Sign Up](command:gitlens.plus.loginOrSignUp)","media":{"markdown":"walkthroughs/welcome/services.md"},"when":"gitlens:plus:state >= 0 && gitlens:plus:state <= 2"},{"id":"gitlens.welcome.additional","title":"And More!","description":"**Rebase got you down?**\nEasily visualize and configure interactive rebase operations with the intuitive and user-friendly Interactive Rebase Editor\n\n**Trouble remembering Git commands?**\nNow you don't have to with the Git Command Palette — a guided, step-by-step experience to many common Git commands.\n\n[Open Git Command Palette](command:gitlens.gitCommands)\n\n**Terminal your jam?**\nQuickly jump to more details on commits, branches, tags, and more with autolinks in the Integrated Terminal.\n\n**Not sure what you are looking for?**\nOpen the Command Palette and explore the many available commands.\n\n[Open GitLens Commands](command:workbench.action.quickOpen?%22>GitLens%3A%22)","media":{"markdown":"walkthroughs/welcome/additional-features.md"}}]}]},"scripts":{"analyze:bundle":"webpack --mode production --env analyzeBundle","analyze:deps":"webpack --env analyzeDeps","build":"webpack --mode development","build:extension":"webpack --mode development --config-name extension:node","build:extension:browser":"webpack --mode development --config-name extension:webworker","build:webviews":"webpack --mode development --config-name webviews","build:icons":"yarn icons:svgo && yarn fantasticon && yarn icons:apply","build:tests":"tsc -p tsconfig.test.json && tsc-alias -p tsconfig.test.json","-build:tests":"webpack -c webpack.config.test.js --mode development","bundle":"webpack --mode production","bundle:extension":"webpack --mode production --config-name extension:node","clean":"npx rimraf dist out .vscode-test .vscode-test-web .eslintcache* tsconfig*.tsbuildinfo","copy:images":"webpack --config webpack.config.images.js","graph:link":"yarn link @gitkraken/gitkraken-components","graph:link:main":"pushd \"../GitKrakenComponents\" && yarn link && popd && yarn link @gitkraken/gitkraken-components","graph:unlink":"yarn unlink @gitkraken/gitkraken-components && yarn install --force","icons:apply":"node ./scripts/applyIconsContribution.js","icons:svgo":"svgo -q -f ./images/icons/ --config svgo.config.js","lint":"eslint \"src/**/*.ts?(x)\"","lint:webviews":"eslint \"src/webviews/apps/**/*.ts?(x)\" --fix","package":"vsce package --yarn","package-pre":"yarn run patch-pre && yarn run package --pre-release","patch-pre":"node ./scripts/applyPreReleasePatch.js","prep-release":"node ./scripts/prep-release.js","pretty":"prettier --config .prettierrc --log-level warn --write .","pub":"vsce publish --yarn","pub-pre":"vsce publish --yarn --pre-release","rebuild":"yarn run reset && yarn run build","reset":"yarn run clean && yarn --frozen-lockfile","test":"node ./out/test/runTest.js","watch":"webpack --watch --mode development","watch:extension":"webpack --watch --mode development --config-name extension","watch:webviews":"webpack --watch --mode development --config-name webviews","watch:tests":"concurrently \"tsc-alias -p tsconfig.test.json -w\" \"tsc -p tsconfig.test.json -w\"","-watch:tests":"webpack --watch -c webpack.config.test.js --mode development","web":"vscode-test-web --extensionDevelopmentPath=. --folder-uri=vscode-vfs://github/gitkraken/vscode-gitlens","web:serve":"node -e \"const p = require('path'); const h = require('os').homedir(); require('child_process').execSync('npx serve --cors -l 5000 --ssl-cert '+p.resolve(h, 'certs/localhost.pem')+' --ssl-key '+p.resolve(h, 'certs/localhost-key.pem'), { stdio: 'inherit' })\"","update-dts":"pushd \"src/@types\" && npx vscode-dts dev && popd","update-dts:master":"pushd \"src/@types\" && npx vscode-dts master && popd","update-emoji":"node ./scripts/generateEmojiShortcodeMap.mjs","update-licenses":"node ./scripts/generateLicenses.mjs","-pretest":"yarn run build:tests","vscode:prepublish":"yarn run bundle"},"dependencies":{"@gitkraken/gitkraken-components":"10.1.12","@gitkraken/shared-web-components":"^0.1.1-rc.6","@microsoft/fast-element":"1.12.0","@microsoft/fast-react-wrapper":"0.3.18","@octokit/core":"4.2.4","@opentelemetry/api":"1.4.1","@opentelemetry/exporter-trace-otlp-http":"0.41.2","@opentelemetry/sdk-trace-base":"1.15.2","@vscode/codicons":"0.0.33","@vscode/webview-ui-toolkit":"1.2.2","ansi-regex":"6.0.1","billboard.js":"3.9.3","https-proxy-agent":"5.0.1","iconv-lite":"0.6.3","lit":"2.8.0","node-fetch":"2.6.9","os-browserify":"0.3.0","path-browserify":"1.0.1","react":"16.8.4","react-dom":"16.8.4","sortablejs":"1.15.0"},"devDependencies":{"@types/mocha":"10.0.1","@types/node":"16.11.47","@types/react":"17.0.47","@types/react-dom":"17.0.17","@types/sortablejs":"1.15.1","@types/vscode":"1.78.1","@typescript-eslint/eslint-plugin":"6.3.0","@typescript-eslint/parser":"6.3.0","@vscode/test-electron":"2.3.4","@vscode/test-web":"0.0.44","@vscode/vsce":"2.20.1","circular-dependency-plugin":"5.2.2","clean-webpack-plugin":"4.0.0","concurrently":"8.2.0","copy-webpack-plugin":"11.0.0","csp-html-webpack-plugin":"5.1.0","css-loader":"6.8.1","css-minimizer-webpack-plugin":"5.0.1","cssnano-preset-advanced":"6.0.1","esbuild":"0.19.0","esbuild-loader":"4.0.0","esbuild-sass-plugin":"2.10.0","eslint":"8.46.0","eslint-cli":"1.1.1","eslint-config-prettier":"9.0.0","eslint-import-resolver-typescript":"3.6.0","eslint-plugin-anti-trojan-source":"1.1.1","eslint-plugin-import":"2.28.0","eslint-plugin-lit":"1.9.1","eslint-plugin-wc":"1.5.0","fantasticon":"1.2.3","fork-ts-checker-webpack-plugin":"6.5.3","glob":"10.3.3","html-loader":"4.2.0","html-webpack-plugin":"5.5.3","image-minimizer-webpack-plugin":"3.8.3","license-checker-rseidelsohn":"4.2.6","lz-string":"1.5.0","mini-css-extract-plugin":"2.7.6","mocha":"10.2.0","prettier":"3.0.1","sass":"1.65.0","sass-loader":"13.3.2","schema-utils":"4.2.0","sharp":"0.32.4","svgo":"3.0.2","terser-webpack-plugin":"5.3.9","ts-loader":"9.4.4","tsc-alias":"1.8.7","typescript":"5.2.1-rc","webpack":"5.88.2","webpack-bundle-analyzer":"4.9.0","webpack-cli":"5.1.4","webpack-node-externals":"3.0.0","webpack-require-from":"1.8.6"},"resolutions":{"iconv-lite":"0.6.3","node-fetch":"2.6.9","semver-regex":"4.0.5"}},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/eamodio.gitlens-14.2.1-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"4de763bd-505d-4978-9575-2b7696ecf94e","publisherId":"678d198b-9b2e-49d3-96ff-6d801c9575df","publisherDisplayName":"eamodio","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691834563850,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"donjayamanne.githistory","uuid":"5960f38e-0bbe-4644-8f9c-9c8824e82511"},"manifest":{"name":"githistory","displayName":"Git History","description":"View git log, file history, compare branches or commits","version":"0.6.20","publisher":"donjayamanne","author":{"name":"Don Jayamanne","email":"don.jayamanne@yahoo.com"},"license":"MIT","homepage":"https://github.com/DonJayamanne/gitHistoryVSCode/blob/main/README.md","repository":{"type":"git","url":"https://github.com/DonJayamanne/gitHistoryVSCode"},"icon":"images/icon.png","bugs":{"url":"https://github.com/DonJayamanne/gitHistoryVSCode/issues"},"galleryBanner":{"color":"#0000FF","theme":"dark"},"engines":{"vscode":"^1.76.0"},"categories":["Other"],"activationEvents":[],"main":"./dist/src/extension","contributes":{"views":{"explorer":[{"id":"commitViewProvider","name":"Commits","when":"!config.gitHistory.hideCommitViewExplorer && git.commit.view.show && git.commit.selected"},{"id":"compareCommitViewProvider","name":"Compare Commits","when":"!config.gitHistory.hideCompareCommitViewExplorer && git.commit.compare.view.show && git.commit.compare.compared"}]},"commands":[{"command":"git.commit.view.hide","title":"Hide Commit View Explorer","category":"Git","icon":"$(close)"},{"command":"git.commit.view.show","title":"Git: Show Commit View Explorer"},{"command":"git.commit.compare.view.hide","title":"Hide Commit Comparison View Explorer","category":"Git","icon":"$(close)"},{"command":"git.commit.compare.view.show","title":"Git: Show Commit Comparison View Explorer"},{"command":"git.viewLineHistory","title":"Git: View Line History"},{"command":"git.viewHistory","title":"Git: View History (git log)","icon":"$(history)"},{"command":"git.viewFileHistory","title":"Git: View File History","icon":"$(history)"},{"command":"git.commit.ViewChangeLog","title":"View Change log"},{"command":"git.commit.cherryPick","title":"Cherrypick into current branch"},{"command":"git.commit.createBranch","title":"Create a branch from this commit"},{"command":"git.commit.FileEntry.ViewFileContents","title":"View File Contents"},{"command":"git.commit.FileEntry.CompareAgainstWorkspace","title":"Compare against workspace version"},{"command":"git.commit.FileEntry.CompareAgainstPrevious","title":"Compare against previous version"},{"command":"git.commit.FileEntry.selectForComparison","title":"Select for comparison"},{"command":"git.commit.FileEntry.compare","title":"Compare against previously selected Commit"},{"command":"git.commit.compare.file.compare","title":"Compare"},{"command":"git.commit.compare.selectForComparison","title":"Select for comparison"},{"command":"git.commit.compare","title":"Compare against previously selected Commit"},{"command":"git.commit.compare.view.showFilesOnly","title":"Show files only"},{"command":"git.commit.compare.view.showFolderView","title":"Show folder view"},{"command":"git.commit.merge","title":"Merge with this commit"},{"command":"git.commit.rebase","title":"Rebase onto this commit"},{"command":"git.commit.view.showFilesOnly","title":"Show files only"},{"command":"git.commit.view.showFolderView","title":"Show folder view"}],"keybindings":[{"command":"git.viewFileHistory","key":"alt+h"}],"menus":{"commandPalette":[{"command":"git.commit.view.hide","when":"git.commit.view.show"},{"command":"git.commit.view.show","when":"!git.commit.view.show"},{"command":"git.commit.compare.view.hide","when":"git.commit.compare.view.show"},{"command":"git.commit.compare.view.show","when":"!git.commit.compare.view.show"}],"editor/title":[{"command":"git.viewFileHistory","group":"navigation","when":"config.git.enabled && !config.gitHistory.editorTitleButtonOpenRepo && resourceScheme == file && gitOpenRepositoryCount != 0 && config.gitHistory.showEditorTitleMenuBarIcons"},{"command":"git.viewHistory","group":"navigation","when":"config.git.enabled && config.gitHistory.editorTitleButtonOpenRepo && resourceScheme == file && gitOpenRepositoryCount != 0 && config.gitHistory.showEditorTitleMenuBarIcons"}],"editor/title/context":[{"command":"git.viewFileHistory","group":"git","when":"config.git.enabled && gitOpenRepositoryCount != 0 && config.gitHistory.showEditorTitleMenuBarIcons"}],"scm/title":[{"command":"git.viewHistory","group":"navigation","when":"config.git.enabled && gitOpenRepositoryCount != 0 && config.gitHistory.sourceCodeProviderIntegrationLocation == 'Inline'"},{"command":"git.viewHistory","group":"inline","when":"config.git.enabled && gitOpenRepositoryCount != 0 && config.gitHistory.sourceCodeProviderIntegrationLocation == 'More Actions'"}],"scm/resourceState/context":[{"command":"git.viewFileHistory","when":"config.git.enabled && gitOpenRepositoryCount != 0"}],"explorer/context":[{"command":"git.viewFileHistory","group":"git","when":"config.git.enabled && gitOpenRepositoryCount != 0"}],"editor/context":[{"command":"git.viewFileHistory","group":"git","when":"config.git.enabled && gitOpenRepositoryCount != 0"},{"command":"git.viewLineHistory","group":"git","when":"config.git.enabled && gitOpenRepositoryCount != 0"}],"view/item/context":[{"command":"git.viewFileHistory","when":"view == commitViewProvider && viewItem == file"},{"command":"git.viewFileHistory","when":"view == compareCommitViewProvider && viewItem == file"},{"command":"git.commit.FileEntry.ViewFileContents","when":"view == commitViewProvider && viewItem == file"},{"command":"git.commit.FileEntry.CompareAgainstWorkspace","when":"view == commitViewProvider && viewItem == file"},{"command":"git.commit.FileEntry.CompareAgainstPrevious","when":"view == commitViewProvider && viewItem == file"},{"command":"git.commit.FileEntry.selectForComparison","when":"view == commitViewProvider && viewItem == file && false"},{"command":"git.commit.FileEntry.compare","when":"view == commitViewProvider && viewItem == file && git.commit.FileEntry.selectForComparison && false"}],"view/title":[{"command":"git.commit.compare.view.hide","when":"view == compareCommitViewProvider","group":"navigation@1"},{"command":"git.commit.compare.view.hide","when":"view == compareCommitViewProvider","group":"zMoreSubMenuItems"},{"command":"git.commit.view.hide","when":"view == commitViewProvider","group":"navigation@1"},{"command":"git.commit.view.hide","when":"view == commitViewProvider","group":"zMoreSubMenuItems"},{"command":"git.commit.cherryPick","when":"view == commitViewProvider && git.commit.selected","group":"zMoreSubMenuItems"},{"command":"git.commit.createBranch","when":"view == commitViewProvider && git.commit.selected","group":"zMoreSubMenuItems"},{"command":"git.commit.merge","when":"view == commitViewProvider && git.commit.selected","group":"zMoreSubMenuItems"},{"command":"git.commit.rebase","when":"view == commitViewProvider && git.commit.selected","group":"zMoreSubMenuItems"},{"command":"git.commit.view.showFilesOnly","when":"view == commitViewProvider && git.commit.selected","group":"zMoreSubMenuItems"},{"command":"git.commit.view.showFolderView","when":"view == commitViewProvider && git.commit.selected","group":"zMoreSubMenuItems"},{"command":"git.commit.compare.view.showFilesOnly","when":"view == compareCommitViewProvider && git.commit.compare.compared","group":"zMoreSubMenuItems"},{"command":"git.commit.compare.view.showFolderView","when":"view == compareCommitViewProvider && git.commit.compare.compared","group":"zMoreSubMenuItems"}]},"configuration":{"type":"object","title":"Git History","properties":{"gitHistory.alwaysPromptRepositoryPicker":{"type":"boolean","default":false,"scope":"window","description":"Always prompt with repository picker when running Git History"},"gitHistory.includeRemoteBranches":{"type":"boolean","default":false,"scope":"resource","description":"Include remote branches when opening Git History"},"gitHistory.showFileHistorySplit":{"type":"boolean","default":true,"scope":"window","description":"Split show file history when file is active."},"gitHistory.hideCommitViewExplorer":{"type":"boolean","default":false,"scope":"window","description":"Whether to display the commit explorer view"},"gitHistory.showEditorTitleMenuBarIcons":{"type":"boolean","default":true,"scope":"window","description":"Whether to display a button in the editor title menu bar"},"gitHistory.editorTitleButtonOpenRepo":{"type":"boolean","default":false,"scope":"window","description":"Prefer to open repository (instead of file) when pressing the editor title button"},"gitHistory.pageSize":{"type":"number","default":100,"scope":"window","description":"Default number of items to be displayed in Git History Viewer"},"gitHistory.avatarCacheExpiration":{"type":"integer","default":60,"scope":"window","description":"Avatar image cache expiration (0 = cache disabled)"},"gitHistory.sideBySide":{"type":"boolean","default":false,"scope":"application","description":"Show commit details in side-by-side view"},"gitHistory.logLevel":{"type":"string","default":"Info","enum":["None","Info","Debug"],"scope":"window","description":"Output log information"},"gitHistory.sourceCodeProviderIntegrationLocation":{"type":"string","enum":["Inline","More Actions"],"enumDescriptions":["Show the 'Git: View History' action on the title of SCM Providers","Show the 'Git: View History' action in the 'More Actions...' menu on the title of SCM Providers"],"default":"Inline","description":"Specifies where the 'Git: View History' action appears on the title of SCM Providers."}}}},"scripts":{"vscode:prepublish":"npm run lint && tsc --skipLibCheck -p ./ && webpack -p --progress","test-compile":"tsc --skipLibCheck --watch -p ./","test":"jest","test-extension":"node ./dist/test/runTest.js","webpack":"webpack -p --progress --colors","webpack-dev":"webpack --progress --colors --watch","lint":"eslint 'src/**/*.ts' && eslint 'browser/src/**/*.ts*'","fix":"eslint --fix \"src/**/*.ts\" && eslint --fix \"browser/src/**/*.ts*\"","precommit":"lint-staged","storybook":"start-storybook","build-storybook":"build-storybook"},"lint-staged":{"src/**/*.ts":["eslint"],"browser/**/*.{ts,tsx}":["eslint"]},"devDependencies":{"@storybook/addon-actions":"^6.3.2","@storybook/addon-info":"^5.3.17","@storybook/addon-links":"^5.3.17","@storybook/addons":"^5.3.17","@storybook/react":"^3.4.12","@types/chai":"^4.2.9","@types/clipboard":"^2.0.1","@types/fs-extra":"^8.0.0","@types/glob":"^7.1.1","@types/gravatar":"^1.4.28","@types/jest":"^25.1.3","@types/jest-cli":"^24.3.0","@types/node":"^13.7.6","@types/node-emoji":"^1.8.1","@types/query-string":"^6.3.0","@types/react":"^16.9.23","@types/react-bootstrap":"^0.32.20","@types/react-dom":"^16.9.5","@types/react-redux":"^7.1.7","@types/react-router":"^5.1.4","@types/react-router-dom":"^5.1.3","@types/react-router-redux":"^5.0.18","@types/redux-actions":"^2.2.2","@types/vscode":"^1.46.0","@typescript-eslint/eslint-plugin":"^2.21.0","@typescript-eslint/parser":"^2.21.0","axios":"^0.21.4","babel-loader":"^8.0.6","bootstrap":"^3.4.1","chai":"^4.1.2","copy-webpack-plugin":"^6.1.1","css-loader":"^3.4.2","debounce":"^1.1.0","decache":"^4.3.0","eslint":"^6.8.0","eslint-config-prettier":"^6.10.0","eslint-plugin-prettier":"^3.1.2","extract-loader":"4.0.3","file-loader":"^5.1.0","glob":"^7.1.2","hint.css":"^2.4.1","husky":"^0.14.3","istanbul":"0.4.5","jest":"^25.1.0","jest-cli":"^25.1.0","jest-standard-reporter":"^1.0.4","lint-staged":"^10.0.8","node-emoji":"1.10.0","prettier":"^1.19.1","react":"^16.13.0","react-bootstrap":"^0.32.4","react-docgen-typescript-loader":"^3.7.1","react-dom":"^16.13.0","react-icons":"^3.9.0","react-redux":"^7.2.0","react-router":"^5.1.2","react-router-dom":"^5.1.2","react-router-redux":"^4.0.8","react-split-pane":"0.1.92","redux":"^4.0.5","redux-actions":"^2.2.1","redux-thunk":"2.3.0","remap-istanbul":"^0.13.0","simple-git":"^1.131.0","source-map-support":"^0.5.0","style-loader":"^1.1.3","ts-jest":"^26.4.0","ts-loader":"^6.2.1","ts-node":"^8.6.2","tsconfig-paths-webpack-plugin":"^3.2.0","typemoq":"^2.1.0","typescript":"^3.8.2","vscode-test":"^1.5.2","webpack":"4.41.6","webpack-cli":"^3.3.11"},"dependencies":{"event-stream":"4.0.1","fs-extra":"^8.1.0","gravatar":"^1.8.1","hash.js":"^1.1.7","iconv-lite":"^0.5.1","inversify":"^5.0.1","query-string":"^6.13.7","reflect-metadata":"^0.1.12","stack-trace":"0.0.10","tmp":"0.1.0","vscode-extension-telemetry":"^0.1.1"}},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/donjayamanne.githistory-0.6.20-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"5960f38e-0bbe-4644-8f9c-9c8824e82511","publisherId":"1ba8bd00-2ad1-4be0-a007-5b4b954c1ee7","publisherDisplayName":"donjayamanne","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691834563816,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"sugatoray.vscode-git-extension-pack","uuid":"2f9ed788-0c0f-408d-9572-693812449b4c"},"manifest":{"name":"vscode-git-extension-pack","displayName":"Git Extension Pack ⭐","description":"Popular Visual Studio Code extensions for Git","version":"1.1.1","publisher":"sugatoray","author":{"name":"Sugato Ray","email":"sugatoray.dev@gmail.com"},"license":"MIT","repository":{"type":"git","url":"https://github.com/sugatoray/vscode-git-extension-pack"},"bugs":{"url":"https://github.com/sugatoray/vscode-git-extension-pack/issues"},"icon":"icon.png","galleryBanner":{"color":"#916fdc","theme":"dark"},"engines":{"vscode":"^1.60.0"},"keywords":["git","git-commit","git-history","git-blame","gitignore"],"categories":["Extension Packs"],"extensionPack":["eamodio.gitlens","donjayamanne.githistory","mhutchie.git-graph","pomber.git-file-history","codezombiech.gitignore","waderyan.gitblame","huizhou.githd","adam-bender.commit-message-editor","vivaxy.vscode-conventional-commits","GitHub.github-vscode-theme","dzhavat.git-cheatsheet"],"scripts":{"deploy":"vsce publish --yarn"},"devDependencies":{"@types/vscode":"^1.60.0"}},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/sugatoray.vscode-git-extension-pack-1.1.1-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"2f9ed788-0c0f-408d-9572-693812449b4c","publisherId":"66e4f8a8-8bb6-42eb-b528-cf641e3b9640","publisherDisplayName":"sugatoray","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691834571718,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"arcticicestudio.nord-visual-studio-code","uuid":"6f35c257-7fd5-4bc2-9cd1-01976589c17a"},"manifest":{"name":"nord-visual-studio-code","displayName":"Nord","description":"An arctic, north-bluish clean and elegant Visual Studio Code theme.","version":"0.19.0","publisher":"arcticicestudio","author":{"name":"Arctic Ice Studio","email":"development@arcticicestudio.com","url":"https://www.arcticicestudio.com"},"homepage":"https://github.com/arcticicestudio/nord-visual-studio-code","repository":{"type":"git","url":"https://github.com/arcticicestudio/nord-visual-studio-code"},"bugs":{"url":"https://github.com/arcticicestudio/nord-visual-studio-code/issues"},"license":"MIT","engines":{"node":">=15.13","npm":">=7.7","vscode":"^1.12.0"},"galleryBanner":{"color":"#2E3440","theme":"dark"},"icon":"assets/extension-marketplace-icon.png","markdown":"github","categories":["Themes"],"keywords":["arctic","north","bluish","clean","elegant"],"badges":[{"url":"https://vsmarketplacebadge.apphb.com/version/arcticicestudio.nord-visual-studio-code.svg","href":"https://marketplace.visualstudio.com/items/arcticicestudio.nord-visual-studio-code","description":"Extension version"},{"url":"https://vsmarketplacebadge.apphb.com/installs/arcticicestudio.nord-visual-studio-code.svg","href":"https://marketplace.visualstudio.com/items/arcticicestudio.nord-visual-studio-code","description":"Extension installs"},{"url":"https://vsmarketplacebadge.apphb.com/rating/arcticicestudio.nord-visual-studio-code.svg","href":"https://marketplace.visualstudio.com/items/arcticicestudio.nord-visual-studio-code","description":"Extension Rating"}],"contributes":{"themes":[{"label":"Nord","uiTheme":"vs-dark","path":"./themes/nord-color-theme.json"}]},"scripts":{"build":"run-s clean package","clean":"del *.vsix","format":"run-s format:pretty format:fix","format:fix":"eslint --fix --ext .js,.json .","format:pretty":"prettier --write .","lint":"run-s lint:*","lint:ci:pretty":"prettier --loglevel silent --check .","lint:js":"eslint --ext .","lint:json":"eslint --ext .json .","lint:md":"remark --no-stdout . \".github/**/*.md\"","package":"vsce package","prepare:husky":"husky install","prepare":"run-s prepare:*","publish:ovsx":"ovsx publish --pat","publish:vsce":"vsce publish","publish":"run-s publish:vsce publish:ovsx"},"devDependencies":{"@arcticicestudio/eslint-config-base":">=0.11.0 <1.0.0","@arcticicestudio/remark-preset-lint":">=0.4.0 <1.0.0","@babel/eslint-parser":"^7.15.7","del-cli":"^4.0.1","eslint":"^7.32.0","eslint-config-prettier":"^8.3.0","eslint-plugin-import":"^2.24.2","eslint-plugin-jsonc":"^1.7.0","eslint-plugin-prettier":"^4.0.0","husky":"^7.0.2","lint-staged":"^11.1.2","npm-run-all":"^4.1.5","ovsx":"^0.3.0","prettier":"^2.4.1","remark-cli":"^9.0.0","vsce":"^1.100.0"}},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/arcticicestudio.nord-visual-studio-code-0.19.0-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"6f35c257-7fd5-4bc2-9cd1-01976589c17a","publisherId":"d6e09771-ef61-4944-9f28-44e338818618","publisherDisplayName":"arcticicestudio","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691835107769,"preRelease":false},"isValid":true,"validations":[]},{"type":1,"identifier":{"id":"s-nlf-fh.glassit","uuid":"7f4f553c-204c-42fe-9b4d-7a3f11f7335b"},"manifest":{"name":"glassit","displayName":"GlassIt-VSC","description":"VS Code Extension to set window to transparent on Windows and Linux platforms.","version":"0.2.3","publisher":"s-nlf-fh","license":"MIT","engines":{"vscode":"^1.40.0"},"extensionKind":["ui"],"categories":["Themes","Other"],"repository":{"type":"git","url":"https://github.com/hikarin522/GlassIt-VSC.git"},"badges":[{"url":"https://vsmarketplacebadge.apphb.com/version/s-nlf-fh.glassit.svg","description":"Latest Version","href":"https://marketplace.visualstudio.com/items?itemName=s-nlf-fh.glassit"},{"url":"https://vsmarketplacebadge.apphb.com/installs/s-nlf-fh.glassit.svg","description":"Total Downloads","href":"https://marketplace.visualstudio.com/items?itemName=s-nlf-fh.glassit"},{"url":"https://vsmarketplacebadge.apphb.com/rating/s-nlf-fh.glassit.svg","description":"Ratings","href":"https://marketplace.visualstudio.com/items?itemName=s-nlf-fh.glassit"}],"bugs":{"url":"https://github.com/hikarin522/GlassIt-VSC/issues","email":"hikarin522@outlook.jp"},"activationEvents":["*"],"main":"./extension","contributes":{"configuration":{"title":"GlassIt VSC configuration","properties":{"glassit.alpha":{"type":"integer","default":220,"description":"Transparency level [1-255]"},"glassit.step":{"type":"integer","default":5,"description":"Increment of alpha"}}},"commands":[{"command":"glassit.increase","title":"GlassIt: Increase the transparency"},{"command":"glassit.decrease","title":"GlassIt: Decrease the transparency"},{"command":"glassit.maximize","title":"GlassIt: Maximize the transparency"},{"command":"glassit.minimize","title":"GlassIt: Minimize the transparency"}],"keybindings":[{"command":"glassit.increase","key":"ctrl+alt+z"},{"command":"glassit.decrease","key":"ctrl+alt+c"},{"command":"glassit.minimize","key":"ctrl+alt+x"}]},"scripts":{},"devDependencies":{},"dependencies":{"node-powershell":"^4.0.0"}},"location":{"$mid":1,"path":"/home/brian/.vscode-oss/extensions/s-nlf-fh.glassit-0.2.3-universal","scheme":"file"},"isBuiltin":false,"targetPlatform":"universal","metadata":{"id":"7f4f553c-204c-42fe-9b4d-7a3f11f7335b","publisherId":"f39c25eb-2c51-4821-97b3-8718f85c8e5f","publisherDisplayName":"s-nlf-fh","targetPlatform":"universal","updated":false,"isPreReleaseVersion":false,"installedTimestamp":1691835134107,"preRelease":false},"isValid":true,"validations":[]}]}