You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 

2960 lines
135 KiB

{
"name": "gitlens",
"version": "7.1.0-beta",
"author": {
"name": "Eric Amodio",
"email": "eamodio@gmail.com"
},
"publisher": "eamodio",
"engines": {
"vscode": "^1.19.0"
},
"license": "SEE LICENSE IN LICENSE",
"displayName": "Git Lens \u2014 git blame annotations, code lens, and more",
"description": "Supercharge Visual Studio Code's Git capabilities \u2014 Visualize code authorship at a glance via Git blame annotations and code lens, seamlessly navigate and explore the history of a file or branch, gain valuable insights via powerful comparison commands, and so much more",
"badges": [
{
"url": "https://img.shields.io/badge/vscode--dev--community-gitlens-blue.svg?logo=slack",
"href": "https://join.slack.com/t/vscode-dev-community/shared_invite/enQtMjIxOTgxNDE3NzM0LWU5M2ZiZDU1YjBlMzdlZjA2YjBjYzRhYTM5NTgzMTAxMjdiNWU0ZmQzYWI3MWU5N2Q1YjBiYmQ4MzY0NDE1MzY",
"description": "Join us in the #gitlens channel"
}
],
"categories": [
"Other"
],
"keywords": [
"gitlens",
"git",
"blame",
"log",
"annotation",
"multi-root ready"
],
"galleryBanner": {
"color": "#8647ae",
"theme": "dark"
},
"icon": "images/gitlens-icon.png",
"preview": false,
"homepage": "https://github.com/eamodio/vscode-gitlens/blob/master/README.md",
"bugs": {
"url": "https://github.com/eamodio/vscode-gitlens/issues"
},
"repository": {
"type": "git",
"url": "https://github.com/eamodio/vscode-gitlens.git"
},
"main": "./out/extension",
"contributes": {
"configuration": {
"type": "object",
"title": "GitLens configuration",
"properties": {
"gitlens.debug": {
"type": "boolean",
"default": false,
"description": "Specifies debug mode",
"scope": "window"
},
"gitlens.insiders": {
"type": "boolean",
"default": false,
"description": "Specifies whether or not to enable new experimental features (expect there to be issues)",
"scope": "window"
},
"gitlens.keymap": {
"type": "string",
"default": "standard",
"enum": [
"standard",
"chorded",
"none"
],
"description": "Specifies the keymap to use for GitLens shortcut keys\n `standard` - adds a standard set of shortcut keys\n `chorded` - adds a chorded set of shortcut keys that all start with `Ctrl+Alt+G` (`??G` on macOS)\n `none` - no shortcut keys will be added",
"scope": "window"
},
"gitlens.outputLevel": {
"type": "string",
"default": "silent",
"enum": [
"silent",
"errors",
"verbose"
],
"description": "Specifies how much (if any) output will be sent to the GitLens output channel",
"scope": "window"
},
"gitlens.annotations.file.gutter.format": {
"type": "string",
"default": "${message|40?} ${ago|14-}",
"description": "Specifies the format of the gutter blame annotations\nAvailable tokens\n ${id} - commit id\n ${author} - commit author\n ${message} - commit message\n ${ago} - relative commit date (e.g. 1 day ago)\n ${date} - formatted commit date (format specified by `gitlens.annotations.file.gutter.dateFormat`)\n ${authorAgo} - commit author, relative commit date\nSee https://github.com/eamodio/vscode-gitlens/wiki/Advanced-Formatting for advanced formatting",
"scope": "window"
},
"gitlens.annotations.file.gutter.dateFormat": {
"type": "string",
"default": null,
"description": "Specifies how to format absolute dates (using the `${date}` token) in gutter blame annotations\nSee https://momentjs.com/docs/#/displaying/format/ for valid formats",
"scope": "window"
},
"gitlens.annotations.file.gutter.compact": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to compact (deduplicate) matching adjacent gutter blame annotations",
"scope": "window"
},
"gitlens.annotations.file.gutter.heatmap.enabled": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to provide a heatmap indicator in the gutter blame annotations",
"scope": "window"
},
"gitlens.annotations.file.gutter.heatmap.location": {
"type": "string",
"default": "right",
"enum": [
"left",
"right"
],
"description": "Specifies where the heatmap indicators will be shown in the gutter blame annotations\n `left` - adds a heatmap indicator on the left edge of the gutter blame annotations\n `right` - adds a heatmap indicator on the right edge of the gutter blame annotations",
"scope": "window"
},
"gitlens.annotations.file.gutter.hover.details": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to provide a commit details hover annotation over the gutter blame annotations",
"scope": "window"
},
"gitlens.annotations.file.gutter.hover.changes": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to provide a changes (diff) hover annotation over the gutter blame annotations",
"scope": "window"
},
"gitlens.annotations.file.gutter.hover.wholeLine": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to trigger hover annotations over the whole line",
"scope": "window"
},
"gitlens.annotations.file.gutter.separateLines": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not gutter blame annotations will be separated by a small gap",
"scope": "window"
},
"gitlens.annotations.file.hover.details": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to provide a commit details hover annotation over each line",
"scope": "window"
},
"gitlens.annotations.file.hover.changes": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to provide a changes (diff) hover annotation over each line",
"scope": "window"
},
"gitlens.annotations.file.hover.heatmap.enabled": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to provide heatmap indicators on the left edge of each line",
"scope": "window"
},
"gitlens.annotations.file.recentChanges.hover.details": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to provide a commit details hover annotation",
"scope": "window"
},
"gitlens.annotations.file.recentChanges.hover.changes": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to provide a changes (diff) hover annotation",
"scope": "window"
},
"gitlens.annotations.line.hover.details": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to provide a commit details hover annotation for the current line",
"scope": "window"
},
"gitlens.annotations.line.hover.changes": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to provide a changes (diff) hover annotation for the current line",
"scope": "window"
},
"gitlens.annotations.line.trailing.format": {
"type": "string",
"default": "${authorAgo} \u2022 ${message}",
"description": "Specifies the format of the trailing blame annotations\nAvailable tokens\n ${id} - commit id\n ${author} - commit author\n ${message} - commit message\n ${ago} - relative commit date (e.g. 1 day ago)\n ${date} - formatted commit date (format specified by `gitlens.annotations.line.trailing.dateFormat`)\n ${authorAgo} - commit author, relative commit date\nSee https://github.com/eamodio/vscode-gitlens/wiki/Advanced-Formatting for advanced formatting",
"scope": "window"
},
"gitlens.annotations.line.trailing.dateFormat": {
"type": "string",
"default": null,
"description": "Specifies how to format absolute dates (using the `${date}` token) in trailing blame annotations\nSee https://momentjs.com/docs/#/displaying/format/ for valid formats",
"scope": "window"
},
"gitlens.annotations.line.trailing.hover.details": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to provide a commit details hover annotation over the trailing blame annotations",
"scope": "window"
},
"gitlens.annotations.line.trailing.hover.changes": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to provide a changes (diff) hover annotation over the trailing blame annotations",
"scope": "window"
},
"gitlens.annotations.line.trailing.hover.wholeLine": {
"type": "boolean",
"default": false,
"description": "Specifies whether or not to trigger hover annotations over the whole line",
"scope": "window"
},
"gitlens.blame.ignoreWhitespace": {
"type": "boolean",
"default": false,
"description": "Specifies whether or not to ignore whitespace when comparing revisions during blame operations",
"scope": "resource"
},
"gitlens.blame.file.annotationType": {
"type": "string",
"default": "gutter",
"enum": [
"gutter",
"hover"
],
"description": "Specifies the type of blame annotations that will be shown for the current file\n `gutter` - adds an annotation to the beginning of each line\n `hover` - shows annotations when hovering over each line",
"scope": "window"
},
"gitlens.blame.file.lineHighlight.enabled": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to highlight lines associated with the current line",
"scope": "window"
},
"gitlens.blame.file.lineHighlight.locations": {
"type": "array",
"default": [
"gutter",
"line",
"overviewRuler"
],
"items": {
"type": "string",
"enum": [
"gutter",
"line",
"overviewRuler"
]
},
"minItems": 1,
"maxItems": 3,
"uniqueItems": true,
"description": "Specifies where the associated line highlights will be shown\n `gutter` - adds a gutter glyph\n `line` - adds a full-line highlight background color\n `overviewRuler` - adds a decoration to the overviewRuler (scroll bar)",
"scope": "window"
},
"gitlens.blame.line.enabled": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to provide a blame annotation for the current line, by default\nUse the `Toggle Line Blame Annotations` command (`gitlens.toggleLineBlame`) to toggle the annotations on and off for the current session",
"scope": "window"
},
"gitlens.blame.line.annotationType": {
"type": "string",
"default": "trailing",
"enum": [
"trailing",
"hover"
],
"description": "Specifies the type of blame annotations that will be shown for the current line\n `trailing` - adds an annotation to the end of the current line\n `hover` - shows annotations when hovering over the current line",
"scope": "window"
},
"gitlens.recentChanges.file.lineHighlight.locations": {
"type": "array",
"default": [
"gutter",
"line",
"overviewRuler"
],
"items": {
"type": "string",
"enum": [
"gutter",
"line",
"overviewRuler"
]
},
"minItems": 1,
"maxItems": 3,
"uniqueItems": true,
"description": "Specifies where the highlights of the recently changed lines will be shown\n `gutter` - adds a gutter glyph\n `line` - adds a full-line highlight background color\n `overviewRuler` - adds a decoration to the overviewRuler (scroll bar)",
"scope": "window"
},
"gitlens.codeLens.enabled": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to provide any Git code lens, by default\nUse the `Toggle Git Code Lens` command (`gitlens.toggleCodeLens`) to toggle the Git code lens on and off for the current session",
"scope": "window"
},
"gitlens.codeLens.recentChange.enabled": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to show a `recent change` code lens showing the author and date of the most recent commit for the file or code block",
"scope": "window"
},
"gitlens.codeLens.recentChange.command": {
"type": "string",
"default": "gitlens.showQuickCommitFileDetails",
"enum": [
"gitlens.toggleFileBlame",
"gitlens.diffWithPrevious",
"gitlens.showQuickCommitDetails",
"gitlens.showQuickCommitFileDetails",
"gitlens.showQuickFileHistory",
"gitlens.showQuickRepoHistory"
],
"description": "Specifies the command to be executed when the `recent change` code lens is clicked\n `gitlens.toggleFileBlame` - toggles file blame annotations\n `gitlens.diffWithPrevious` - compares the current committed file with the previous commit\n `gitlens.showQuickCommitDetails` - shows a commit details quick pick\n `gitlens.showQuickCommitFileDetails` - shows a commit file details quick pick\n `gitlens.showQuickFileHistory` - shows a file history quick pick\n `gitlens.showQuickRepoHistory` - shows a branch history quick pick",
"scope": "window"
},
"gitlens.codeLens.authors.enabled": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to show an `authors` code lens showing number of authors of the file or code block and the most prominent author (if there is more than one)",
"scope": "window"
},
"gitlens.codeLens.authors.command": {
"type": "string",
"default": "gitlens.toggleFileBlame",
"enum": [
"gitlens.toggleFileBlame",
"gitlens.diffWithPrevious",
"gitlens.showQuickCommitDetails",
"gitlens.showQuickCommitFileDetails",
"gitlens.showQuickFileHistory",
"gitlens.showQuickRepoHistory"
],
"description": "Specifies the command to be executed when the `authors` code lens is clicked\n `gitlens.toggleFileBlame` - toggles file blame annotations\n `gitlens.diffWithPrevious` - compares the current committed file with the previous commit\n `gitlens.showQuickCommitDetails` - shows a commit details quick pick\n `gitlens.showQuickCommitFileDetails` - shows a commit file details quick pick\n `gitlens.showQuickFileHistory` - shows a file history quick pick\n `gitlens.showQuickRepoHistory` - shows a branch history quick pick",
"scope": "window"
},
"gitlens.codeLens.locations": {
"type": "array",
"default": [
"document",
"containers"
],
"items": {
"type": "string",
"enum": [
"document",
"containers",
"blocks"
]
},
"minItems": 1,
"maxItems": 4,
"uniqueItems": true,
"description": "Specifies where Git code lens will be shown in the document\n `document` - adds code lens at the top of the document\n `containers` - adds code lens at the start of container-like symbols (modules, classes, interfaces, etc)\n `blocks` - adds code lens at the start of block-like symbols (functions, methods, etc) lines",
"scope": "resource"
},
"gitlens.codeLens.customLocationSymbols": {
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true,
"description": "Specifies a set of document symbols where Git code lens will or will not be shown in the document\nPrefix with `!` to not show Git code lens for the symbol\nMust be a member of `SymbolKind`",
"scope": "resource"
},
"gitlens.codeLens.perLanguageLocations": {
"type": "array",
"default": [
{
"language": "css",
"locations": [
"document"
]
},
{
"language": "html",
"locations": [
"document"
]
},
{
"language": "json",
"locations": [
"document"
]
},
{
"language": "less",
"locations": [
"document"
]
},
{
"language": "scss",
"locations": [
"document"
]
},
{
"language": "vue",
"locations": [
"document"
]
},
{
"language": "stylus",
"locations": [
"document"
]
}
],
"items": {
"type": "object",
"required": [
"language",
"locations"
],
"properties": {
"language": {
"type": "string",
"description": "Specifies the language to which this code lens override applies"
},
"locations": {
"type": "array",
"default": [
"document",
"containers"
],
"items": {
"type": "string",
"enum": [
"document",
"containers",
"blocks",
"custom"
]
},
"minItems": 1,
"maxItems": 4,
"uniqueItems": true,
"description": "Specifies where Git code lens will be shown in the document for the specified language\n `document` - adds code lens at the top of the document\n `containers` - adds code lens at the start of container-like symbols (modules, classes, interfaces, etc)\n `blocks` - adds code lens at the start of block-like symbols (functions, methods, properties, etc) lines\n `custom` - adds code lens at the start of symbols contained in `customSymbols`"
},
"customSymbols": {
"type": "array",
"items": {
"type": "string"
},
"uniqueItems": true,
"description": "Specifies the set of document symbols where Git code lens will be shown in the document for the specified language\nMust be a member of `SymbolKind`"
}
}
},
"uniqueItems": true,
"description": "Specifies where Git code lens will be shown in the document for the specified languages",
"scope": "resource"
},
"gitlens.codeLens.debug": {
"type": "boolean",
"default": false,
"description": "Specifies whether or not to show debug information in code lens",
"scope": "window"
},
"gitlens.defaultDateFormat": {
"type": "string",
"default": null,
"description": "Specifies how all absolute dates will be formatted by default\nSee https://momentjs.com/docs/#/displaying/format/ for valid formats",
"scope": "window"
},
"gitlens.gitExplorer.autoRefresh": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to automatically refresh the `GitLens` view when the repository or the file system changes",
"scope": "window"
},
"gitlens.gitExplorer.commitFormat": {
"type": "string",
"default": "${message} \u00a0\u2022\u00a0 ${authorAgo} \u00a0 (${id})",
"description": "Specifies the format of committed changes in the `GitLens` view\nAvailable tokens\n ${id} - commit id\n ${author} - commit author\n ${message} - commit message\n ${ago} - relative commit date (e.g. 1 day ago)\n ${date} - formatted commit date (format specified by `gitlens.statusBar.dateFormat`)\n ${authorAgo} - commit author, relative commit date\nSee https://github.com/eamodio/vscode-gitlens/wiki/Advanced-Formatting for advanced formatting",
"scope": "window"
},
"gitlens.gitExplorer.commitFileFormat": {
"type": "string",
"default": "${filePath}",
"description": "Specifies the format of a committed file in the `GitLens` view\nAvailable tokens\n ${directory} - directory name\n ${file} - file name\n ${filePath} - formatted file name and path\n ${path} - full file path",
"scope": "window"
},
"gitlens.gitExplorer.enabled": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to show the `GitLens` view",
"scope": "window"
},
"gitlens.gitExplorer.files.layout": {
"type": "string",
"default": "auto",
"enum": [
"auto",
"list",
"tree"
],
"description": "Specifies how the `GitLens` view will display files\n `auto` - automatically switches between displaying files as a `tree` or `list` based on the `gitlens.gitExplorer.files.threshold` setting and the number of files at each nesting level\n `list` - displays files as a list\n `tree` - displays files as a tree",
"scope": "window"
},
"gitlens.gitExplorer.files.compact": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to compact (flatten) unnecessary file nesting in the `GitLens` view\nOnly applies when displaying files as a `tree` or `auto`",
"scope": "window"
},
"gitlens.gitExplorer.files.threshold": {
"type": "number",
"default": 5,
"description": "Specifies when to switch between displaying files as a `tree` or `list` based on the number of files in a nesting level in the `GitLens` view\nOnly applies when displaying files as `auto`",
"scope": "window"
},
"gitlens.gitExplorer.gravatars": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to show gravatar images instead of commit (or status) icons in the `GitLens` view",
"scope": "window"
},
"gitlens.gitExplorer.gravatarsDefault": {
"type": "string",
"default": "robohash",
"enum": [
"identicon",
"mm",
"monsterid",
"retro",
"robohash",
"wavatar"
],
"description": "Specifies the style of the gravatar default (fallback) images in the `GitLens` view\n `identicon` - a geometric pattern\n `mm` - (mystery-man) a simple, cartoon-style silhouetted outline of a person (does not vary by email hash)\n `monsterid` - a monster with different colors, faces, etc\n `retro` - 8-bit arcade-style pixelated faces\n `robohash` - a robot with different colors, faces, etc\n `wavatar` - faces with differing features and backgrounds",
"scope": "window"
},
"gitlens.gitExplorer.includeWorkingTree": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to include working tree files inside the `Repository Status` node of the `GitLens` view",
"scope": "window"
},
"gitlens.gitExplorer.showTrackingBranch": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to show the tracking branch when displaying local branches in the `GitLens` view",
"scope": "window"
},
"gitlens.gitExplorer.stashFormat": {
"type": "string",
"default": "${message}",
"description": "Specifies the format of stashed changes in the `GitLens` view\nAvailable tokens\n ${id} - commit id\n ${author} - commit author\n ${message} - commit message\n ${ago} - relative commit date (e.g. 1 day ago)\n ${date} - formatted commit date (format specified by `gitlens.statusBar.dateFormat`)\n ${authorAgo} - commit author, relative commit date\nSee https://github.com/eamodio/vscode-gitlens/wiki/Advanced-Formatting for advanced formatting",
"scope": "window"
},
"gitlens.gitExplorer.stashFileFormat": {
"type": "string",
"default": "${filePath}",
"description": "Specifies the format of a stashed file in the `GitLens` view\nAvailable tokens\n ${directory} - directory name\n ${file} - file name\n ${filePath} - formatted file name and path\n ${path} - full file path",
"scope": "window"
},
"gitlens.gitExplorer.statusFileFormat": {
"type": "string",
"default": "${working}${filePath}",
"description": "Specifies the format of the status of a working or committed file in the `GitLens` view\nAvailable tokens\n ${directory} - directory name\n ${file} - file name\n ${filePath} - formatted file name and path\n ${path} - full file path\n ${working} - optional indicator if the file is uncommitted",
"scope": "window"
},
"gitlens.gitExplorer.view": {
"type": "string",
"default": "auto",
"enum": [
"auto",
"history",
"repository"
],
"description": "Specifies the starting view (mode) of the `GitLens` view\n `auto` - shows the last selected view, defaults to `repository`\n `history` - shows the commit history of the active file\n `repository` - shows a repository explorer",
"scope": "window"
},
"gitlens.remotes": {
"type": "array",
"default": null,
"items": {
"type": "object",
"required": [
"type",
"domain"
],
"properties": {
"type": {
"type": "string",
"enum": [
"Bitbucket",
"BitbucketServer",
"Custom",
"GitHub",
"GitLab"
],
"description": "Specifies the type of the custom remote service\n `Bitbucket`, `BitbucketServer`, `GitHub`, or `GitLab`"
},
"domain": {
"type": "string",
"description": "Specifies the domain name of the custom remote service"
},
"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"
},
"urls": {
"type": "object",
"required": [
"repository",
"branches",
"branch",
"commit",
"file",
"fileInCommit",
"fileInBranch",
"fileLine",
"fileRange"
],
"properties": {
"repository": {
"type": "string",
"description": "Specifies the format of a respository url for the custom remote service\nAvailable tokens\n ${repo} - repository path"
},
"branches": {
"type": "string",
"description": "Specifies the format of a branches url for the custom remote service\nAvailable tokens\n ${repo} - repository path\n ${branch} - branch"
},
"branch": {
"type": "string",
"description": "Specifies the format of a branch url for the custom remote service\nAvailable tokens\n ${repo} - repository path\n ${branch} - branch"
},
"commit": {
"type": "string",
"description": "Specifies the format of a commit url for the custom remote service\nAvailable tokens\n ${repo} - repository path\n ${id} - commit id"
},
"file": {
"type": "string",
"description": "Specifies the format of a file url for the custom remote service\nAvailable tokens\n ${repo} - repository path\n ${file} - file name\n ${line} - formatted line information"
},
"fileInBranch": {
"type": "string",
"description": "Specifies the format of a branch file url for the custom remote service\nAvailable tokens\n ${repo} - repository path\n ${file} - file name\n ${branch} - branch\n ${line} - formatted line information"
},
"fileInCommit": {
"type": "string",
"description": "Specifies the format of a commit file url for the custom remote service\nAvailable tokens\n ${repo} - repository path\n ${file} - file name\n ${id} - commit id\n ${line} - formatted line information"
},
"fileLine": {
"type": "string",
"description": "Specifies the format of a line in a file url for the custom remote service\nAvailable tokens\n ${line} - line"
},
"fileRange": {
"type": "string",
"description": "Specifies the format of a range in a file url for the custom remote service\nAvailable tokens\n ${start} - starting line\n ${end} - ending line"
}
}
},
"description": "Specifies the url formats of the custom remote service"
}
},
"uniqueItems": true,
"description": "Specifies user-defined remote (code-hosting) services or custom domains for built-in remote services",
"scope": "resource"
},
"gitlens.resultsExplorer.commitFormat": {
"type": "string",
"default": "${message} \u00a0\u2022\u00a0 ${authorAgo} \u00a0 (${id})",
"description": "Specifies the format of committed changes in the `GitLens Results` view\nAvailable tokens\n ${id} - commit id\n ${author} - commit author\n ${message} - commit message\n ${ago} - relative commit date (e.g. 1 day ago)\n ${date} - formatted commit date (format specified by `gitlens.statusBar.dateFormat`)\n ${authorAgo} - commit author, relative commit date\nSee https://github.com/eamodio/vscode-gitlens/wiki/Advanced-Formatting for advanced formatting",
"scope": "window"
},
"gitlens.resultsExplorer.commitFileFormat": {
"type": "string",
"default": "${filePath}",
"description": "Specifies the format of a committed file in the `GitLens Results` view\nAvailable tokens\n ${directory} - directory name\n ${file} - file name\n ${filePath} - formatted file name and path\n ${path} - full file path",
"scope": "window"
},
"gitlens.resultsExplorer.files.layout": {
"type": "string",
"default": "auto",
"enum": [
"auto",
"list",
"tree"
],
"description": "Specifies how the `GitLens Results` view will display files\n `auto` - automatically switches between displaying files as a `tree` or `list` based on the `gitlens.gitExplorer.files.threshold` setting and the number of files at each nesting level\n `list` - displays files as a list\n `tree` - displays files as a tree",
"scope": "window"
},
"gitlens.resultsExplorer.files.compact": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to compact (flatten) unnecessary file nesting in the `GitLens Results` view\nOnly applies when displaying files as a `tree` or `auto`",
"scope": "window"
},
"gitlens.resultsExplorer.files.threshold": {
"type": "number",
"default": 5,
"description": "Specifies when to switch between displaying files as a `tree` or `list` based on the number of files in a nesting level in the `GitLens Results` view\nOnly applies when displaying files as `auto`",
"scope": "window"
},
"gitlens.resultsExplorer.gravatars": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to show gravatar images instead of commit (or status) icons in the `GitLens Results` view",
"scope": "window"
},
"gitlens.resultsExplorer.gravatarsDefault": {
"type": "string",
"default": "robohash",
"enum": [
"identicon",
"mm",
"monsterid",
"retro",
"robohash",
"wavatar"
],
"description": "Specifies the style of the gravatar default (fallback) images in the `GitLens Results` view\n `identicon` - a geometric pattern\n `mm` - (mystery-man) a simple, cartoon-style silhouetted outline of a person (does not vary by email hash)\n `monsterid` - a monster with different colors, faces, etc\n `retro` - 8-bit arcade-style pixelated faces\n `robohash` - a robot with different colors, faces, etc\n `wavatar` - faces with differing features and backgrounds",
"scope": "window"
},
"gitlens.resultsExplorer.showTrackingBranch": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to show the tracking branch when displaying local branches in the `GitLens Results` view",
"scope": "window"
},
"gitlens.resultsExplorer.stashFormat": {
"type": "string",
"default": "${message}",
"description": "Specifies the format of stashed changes in the `GitLens Results` view\nAvailable tokens\n ${id} - commit id\n ${author} - commit author\n ${message} - commit message\n ${ago} - relative commit date (e.g. 1 day ago)\n ${date} - formatted commit date (format specified by `gitlens.statusBar.dateFormat`)\n ${authorAgo} - commit author, relative commit date\nSee https://github.com/eamodio/vscode-gitlens/wiki/Advanced-Formatting for advanced formatting",
"scope": "window"
},
"gitlens.resultsExplorer.stashFileFormat": {
"type": "string",
"default": "${filePath}",
"description": "Specifies the format of a stashed file in the `GitLens Results` view\nAvailable tokens\n ${directory} - directory name\n ${file} - file name\n ${filePath} - formatted file name and path\n ${path} - full file path",
"scope": "window"
},
"gitlens.resultsExplorer.statusFileFormat": {
"type": "string",
"default": "${working}${filePath}",
"description": "Specifies the format of the status of a working or committed file in the `GitLens Results` view\nAvailable tokens\n ${directory} - directory name\n ${file} - file name\n ${filePath} - formatted file name and path\n ${path} - full file path\n ${working} - optional indicator if the file is uncommitted",
"scope": "window"
},
"gitlens.statusBar.enabled": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to provide blame information on the status bar",
"scope": "window"
},
"gitlens.statusBar.alignment": {
"type": "string",
"default": "right",
"enum": [
"left",
"right"
],
"description": "Specifies the blame alignment in the status bar\n `left` - align to the left\n `right` - align to the right",
"scope": "window"
},
"gitlens.statusBar.command": {
"type": "string",
"default": "gitlens.showQuickCommitDetails",
"enum": [
"gitlens.toggleFileBlame",
"gitlens.diffWithPrevious",
"gitlens.diffWithWorking",
"gitlens.toggleCodeLens",
"gitlens.showQuickCommitDetails",
"gitlens.showQuickCommitFileDetails",
"gitlens.showQuickFileHistory",
"gitlens.showQuickRepoHistory"
],
"description": "Specifies the command to be executed when the blame status bar item is clicked\n `gitlens.toggleFileBlame` - toggles file blame annotations\n `gitlens.diffWithPrevious` - compares the current line commit with the previous\n `gitlens.diffWithWorking` - compares the current line commit with the working tree\n `gitlens.toggleCodeLens` - toggles Git code lens\n `gitlens.showQuickCommitDetails` - shows a commit details quick pick\n `gitlens.showQuickCommitFileDetails` - shows a commit file details quick pick\n `gitlens.showQuickFileHistory` - shows a file history quick pick\n `gitlens.showQuickRepoHistory` - shows a branch history quick pick",
"scope": "window"
},
"gitlens.statusBar.format": {
"type": "string",
"default": "${authorAgo}",
"description": "Specifies the format of the status bar blame information\nAvailable tokens\n ${id} - commit id\n ${author} - commit author\n ${message} - commit message\n ${ago} - relative commit date (e.g. 1 day ago)\n ${date} - formatted commit date (format specified by `gitlens.statusBar.dateFormat`)\n ${authorAgo} - commit author, relative commit date\nSee https://github.com/eamodio/vscode-gitlens/wiki/Advanced-Formatting for advanced formatting",
"scope": "window"
},
"gitlens.statusBar.dateFormat": {
"type": "string",
"default": null,
"description": "Specifies the date format of absolute dates shown in the blame information on the status bar. See https://momentjs.com/docs/#/displaying/format/ for valid formats",
"scope": "window"
},
"gitlens.strings.codeLens.unsavedChanges.recentChangeAndAuthors": {
"type": "string",
"default": "Unsaved changes (cannot determine recent change or authors)",
"description": "Specifies the string to be shown in place of both the `recent change` and `authors` code lens when there are unsaved changes",
"scope": "window"
},
"gitlens.strings.codeLens.unsavedChanges.recentChangeOnly": {
"type": "string",
"default": "Unsaved changes (cannot determine recent change)",
"description": "Specifies the string to be shown in place of the `recent change` code lens when there are unsaved changes",
"scope": "window"
},
"gitlens.strings.codeLens.unsavedChanges.authorsOnly": {
"type": "string",
"default": "Unsaved changes (cannot determine authors)",
"description": "Specifies the string to be shown in place of the `authors` code lens when there are unsaved changes",
"scope": "window"
},
"gitlens.advanced.caching.enabled": {
"type": "boolean",
"default": true,
"description": "Specifies whether git output will be cached",
"scope": "window"
},
"gitlens.advanced.caching.maxLines": {
"type": "number",
"default": 0,
"description": "Specifies the threshold for caching larger documents",
"scope": "window"
},
"gitlens.advanced.git": {
"type": "string",
"default": null,
"description": "Specifies the git path to use",
"scope": "window"
},
"gitlens.advanced.maxQuickHistory": {
"type": "number",
"default": 200,
"description": "Specifies the maximum number of QuickPick history entries to show",
"scope": "window"
},
"gitlens.advanced.menus": {
"type": "object",
"default": {
"editorContext": {
"blame": true,
"copy": true,
"details": true,
"fileDiff": true,
"history": true,
"lineDiff": true,
"remote": true
},
"editorTitle": {
"blame": true,
"fileDiff": false,
"history": false,
"remote": false,
"status": false
},
"editorTitleContext": {
"blame": false,
"fileDiff": false,
"history": false,
"remote": false
},
"explorerContext": {
"fileDiff": true,
"history": true,
"remote": true
}
},
"properties": {
"editorContext": {
"type": "object",
"default": {
"blame": true,
"copy": true,
"details": true,
"fileDiff": true,
"history": true,
"lineDiff": true,
"remote": true
},
"properties": {
"blame": {
"type": "boolean",
"default": true
},
"copy": {
"type": "boolean",
"default": true
},
"details": {
"type": "boolean",
"default": true
},
"fileDiff": {
"type": "boolean",
"default": true
},
"history": {
"type": "boolean",
"default": true
},
"lineDiff": {
"type": "boolean",
"default": true
},
"remote": {
"type": "boolean",
"default": true
}
}
},
"editorTitle": {
"type": "object",
"default": {
"blame": true,
"fileDiff": true,
"history": true,
"remote": true,
"status": true
},
"properties": {
"blame": {
"type": "boolean",
"default": true
},
"fileDiff": {
"type": "boolean",
"default": true
},
"history": {
"type": "boolean",
"default": true
},
"remote": {
"type": "boolean",
"default": true
},
"status": {
"type": "boolean",
"default": true
}
}
},
"editorTitleContext": {
"type": "object",
"default": {
"blame": true,
"fileDiff": true,
"history": true,
"remote": true
},
"properties": {
"blame": {
"type": "boolean",
"default": true
},
"fileDiff": {
"type": "boolean",
"default": true
},
"history": {
"type": "boolean",
"default": true
},
"remote": {
"type": "boolean",
"default": true
}
}
},
"explorerContext": {
"type": "object",
"default": {
"fileDiff": true,
"history": true,
"remote": true
},
"properties": {
"fileDiff": {
"type": "boolean",
"default": true
},
"history": {
"type": "boolean",
"default": true
},
"remote": {
"type": "boolean",
"default": true
}
}
}
},
"description": "Specifies which commands will be added to which menus",
"scope": "window"
},
"gitlens.advanced.messages": {
"type": "object",
"default": {
"suppressCommitHasNoPreviousCommitWarning": false,
"suppressCommitNotFoundWarning": false,
"suppressFileNotUnderSourceControlWarning": false,
"suppressGitVersionWarning": false,
"suppressLineUncommittedWarning": false,
"suppressNoRepositoryWarning": false,
"suppressUpdateNotice": false,
"suppressWelcomeNotice": false
},
"properties": {
"suppressCommitHasNoPreviousCommitWarning": {
"type": "boolean",
"default": false
},
"suppressCommitNotFoundWarning": {
"type": "boolean",
"default": false
},
"suppressFileNotUnderSourceControlWarning": {
"type": "boolean",
"default": false
},
"suppressGitVersionWarning": {
"type": "boolean",
"default": false
},
"suppressLineUncommittedWarning": {
"type": "boolean",
"default": false
},
"suppressNoRepositoryWarning": {
"type": "boolean",
"default": false
},
"suppressUpdateNotice": {
"type": "boolean",
"default": false
},
"suppressWelcomeNotice": {
"type": "boolean",
"default": false
}
},
"description": "Specifies which messages should be suppressed",
"scope": "window"
},
"gitlens.advanced.quickPick.closeOnFocusOut": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to close the QuickPick menu when focus is lost",
"scope": "window"
},
"gitlens.advanced.repositorySearchDepth": {
"type": "number",
"default": 1,
"description": "Specifies how many folders deep to search for repositories",
"scope": "resource"
},
"gitlens.advanced.telemetry.enabled": {
"type": "boolean",
"default": true,
"description": "Specifies whether or not to enable GitLens telemetry (even if enabled still abides by the overall `telemetry.enableTelemetry` setting",
"scope": "window"
}
}
},
"colors": [
{
"id": "gitlens.gutterBackgroundColor",
"description": "Specifies the background color of the gutter blame annotations",
"defaults": {
"dark": "#FFFFFF13",
"light": "#0000000C",
"highContrast": "#FFFFFF13"
}
},
{
"id": "gitlens.gutterForegroundColor",
"description": "Specifies the foreground color of the gutter blame annotations",
"defaults": {
"dark": "#BEBEBE",
"light": "#747474",
"highContrast": "#BEBEBE"
}
},
{
"id": "gitlens.gutterUncommittedForegroundColor",
"description": "Specifies the foreground color of an uncommitted line in the gutter blame annotations",
"defaults": {
"dark": "#00BCF299",
"light": "#00BCF299",
"highContrast": "#00BCF2FF"
}
},
{
"id": "gitlens.trailingLineBackgroundColor",
"description": "Specifies the background color of the trailing blame annotation",
"defaults": {
"dark": "#00000000",
"light": "#00000000",
"highContrast": "#00000000"
}
},
{
"id": "gitlens.trailingLineForegroundColor",
"description": "Specifies the foreground color of the trailing blame annotation",
"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 overview ruler color of the associated line highlights in blame annotations",
"defaults": {
"dark": "#00BCF299",
"light": "#00BCF299",
"highContrast": "#00BCF299"
}
}
],
"commands": [
{
"command": "gitlens.diffDirectory",
"title": "Directory Compare Working Tree with...",
"category": "GitLens"
},
{
"command": "gitlens.diffWith",
"title": "Compare File Revisions",
"category": "GitLens"
},
{
"command": "gitlens.diffWithBranch",
"title": "Compare File with Branch...",
"category": "GitLens"
},
{
"command": "gitlens.diffWithNext",
"title": "Compare File with Next Revision",
"category": "GitLens"
},
{
"command": "gitlens.diffWithPrevious",
"title": "Compare File with Previous Revision",
"category": "GitLens"
},
{
"command": "gitlens.diffLineWithPrevious",
"title": "Compare Line Revision with Previous",
"category": "GitLens"
},
{
"command": "gitlens.diffWithRevision",
"title": "Compare File with Revision...",
"category": "GitLens"
},
{
"command": "gitlens.diffWithWorking",
"title": "Compare File with Working Revision",
"category": "GitLens"
},
{
"command": "gitlens.diffLineWithWorking",
"title": "Compare Line Revision with Working",
"category": "GitLens"
},
{
"command": "gitlens.showFileBlame",
"title": "Show File Blame Annotations",
"category": "GitLens"
},
{
"command": "gitlens.showLineBlame",
"title": "Show Line Blame Annotations",
"category": "GitLens"
},
{
"command": "gitlens.toggleFileBlame",
"title": "Toggle File Blame Annotations",
"category": "GitLens",
"icon": {
"dark": "images/dark/git-icon.svg",
"light": "images/light/git-icon.svg"
}
},
{
"command": "gitlens.clearFileAnnotations",
"title": "Clear File Annotations",
"category": "GitLens",
"icon": {
"dark": "images/dark/git-icon-orange.svg",
"light": "images/light/git-icon-orange.svg"
}
},
{
"command": "gitlens.computingFileAnnotations",
"title": "Computing File Annotations...",
"category": "GitLens",
"icon": {
"dark": "images/dark/git-icon-progress.svg",
"light": "images/light/git-icon-progress.svg"
}
},
{
"command": "gitlens.toggleFileRecentChanges",
"title": "Toggle Recent File Changes Annotations",
"category": "GitLens",
"icon": {
"dark": "images/dark/git-icon.svg",
"light": "images/light/git-icon.svg"
}
},
{
"command": "gitlens.toggleLineBlame",
"title": "Toggle Line Blame Annotations",
"category": "GitLens"
},
{
"command": "gitlens.toggleCodeLens",
"title": "Toggle Git Code Lens",
"category": "GitLens"
},
{
"command": "gitlens.showCommitSearch",
"title": "Search Commits",
"category": "GitLens",
"icon": {
"dark": "images/dark/icon-search.svg",
"light": "images/light/icon-search.svg"
}
},
{
"command": "gitlens.showLastQuickPick",
"title": "Show Last Opened Quick Pick",
"category": "GitLens"
},
{
"command": "gitlens.showQuickCommitDetails",
"title": "Show Commit Details",
"category": "GitLens"
},
{
"command": "gitlens.showQuickCommitFileDetails",
"title": "Show Commit File Details",
"category": "GitLens"
},
{
"command": "gitlens.showQuickFileHistory",
"title": "Show 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 Stashed Changes",
"category": "GitLens"
},
{
"command": "gitlens.copyShaToClipboard",
"title": "Copy Commit ID to Clipboard",
"category": "GitLens"
},
{
"command": "gitlens.copyMessageToClipboard",
"title": "Copy Commit Message to Clipboard",
"category": "GitLens"
},
{
"command": "gitlens.closeUnchangedFiles",
"title": "Close Unchanged Files",
"category": "GitLens"
},
{
"command": "gitlens.openChangedFiles",
"title": "Open Changed Files",
"category": "GitLens"
},
{
"command": "gitlens.openBranchesInRemote",
"title": "Open Branches in Remote",
"category": "GitLens"
},
{
"command": "gitlens.openBranchInRemote",
"title": "Open Branch in Remote",
"category": "GitLens"
},
{
"command": "gitlens.openCommitInRemote",
"title": "Open Commit in Remote",
"category": "GitLens"
},
{
"command": "gitlens.openFileInRemote",
"title": "Open File in Remote",
"category": "GitLens"
},
{
"command": "gitlens.openRepoInRemote",
"title": "Open Repository in Remote",
"category": "GitLens"
},
{
"command": "gitlens.stashApply",
"title": "Apply Stashed Changes",
"category": "GitLens"
},
{
"command": "gitlens.stashDelete",
"title": "Delete Stashed Changes",
"category": "GitLens"
},
{
"command": "gitlens.stashSave",
"title": "Stash Changes",
"category": "GitLens",
"icon": {
"dark": "images/dark/icon-add.svg",
"light": "images/light/icon-add.svg"
}
},
{
"command": "gitlens.externalDiff",
"title": "Open Changes (with difftool)",
"category": "GitLens"
},
{
"command": "gitlens.externalDiffAll",
"title": "Open All Changes (with difftool)",
"category": "GitLens"
},
{
"command": "gitlens.resetSuppressedWarnings",
"title": "Reset Suppressed Warnings",
"category": "GitLens"
},
{
"command": "gitlens.explorers.openDirectoryDiff",
"title": "Open Directory Compare",
"category": "GitLens"
},
{
"command": "gitlens.explorers.openDirectoryDiffWithWorking",
"title": "Open Directory Compare with Working Tree",
"category": "GitLens"
},
{
"command": "gitlens.explorers.openChanges",
"title": "Open Changes",
"category": "GitLens"
},
{
"command": "gitlens.explorers.openChangesWithWorking",
"title": "Open Changes with Working Tree",
"category": "GitLens"
},
{
"command": "gitlens.explorers.openFile",
"title": "Open File",
"category": "GitLens"
},
{
"command": "gitlens.explorers.openFileRevision",
"title": "Open Revision",
"category": "GitLens"
},
{
"command": "gitlens.explorers.openFileRevisionInRemote",
"title": "Open Revision in Remote",
"category": "GitLens"
},
{
"command": "gitlens.explorers.openChangedFiles",
"title": "Open Files",
"category": "GitLens"
},
{
"command": "gitlens.explorers.openChangedFileChanges",
"title": "Open All Changes",
"category": "GitLens"
},
{
"command": "gitlens.explorers.openChangedFileChangesWithWorking",
"title": "Open All Changes with Working Tree",
"category": "GitLens"
},
{
"command": "gitlens.explorers.openChangedFileRevisions",
"title": "Open Revisions",
"category": "GitLens"
},
{
"command": "gitlens.explorers.applyChanges",
"title": "Apply Changes",
"category": "GitLens"
},
{
"command": "gitlens.explorers.compareWithSelected",
"title": "Compare with Selected",
"category": "GitLens"
},
{
"command": "gitlens.explorers.selectForCompare",
"title": "Select for Compare",
"category": "GitLens"
},
{
"command": "gitlens.explorers.terminalCheckoutBranch",
"title": "Checkout Branch (via Terminal)",
"category": "GitLens"
},
{
"command": "gitlens.explorers.terminalCreateBranch",
"title": "Create Branch (via Terminal)...",
"category": "GitLens"
},
{
"command": "gitlens.explorers.terminalDeleteBranch",
"title": "Delete Branch (via Terminal)",
"category": "GitLens"
},
{
"command": "gitlens.explorers.terminalRebaseBranchToRemote",
"title": "Rebase Branch to Remote (via Terminal)",
"category": "GitLens"
},
{
"command": "gitlens.explorers.terminalSquashBranchIntoCommit",
"title": "Squash Branch into Commit (via Terminal)",
"category": "GitLens"
},
{
"command": "gitlens.explorers.terminalRebaseCommit",
"title": "Rebase Commit (via Terminal)",
"category": "GitLens"
},
{
"command": "gitlens.explorers.terminalResetCommit",
"title": "Reset Commit (via Terminal)",
"category": "GitLens"
},
{
"command": "gitlens.explorers.terminalRemoveRemote",
"title": "Remove Remote (via Terminal)",
"category": "GitLens"
},
{
"command": "gitlens.gitExplorer.refresh",
"title": "Refresh",
"category": "GitLens",
"icon": {
"dark": "images/dark/icon-refresh.svg",
"light": "images/light/icon-refresh.svg"
}
},
{
"command": "gitlens.gitExplorer.refreshNode",
"title": "Refresh",
"category": "GitLens"
},
{
"command": "gitlens.gitExplorer.setFilesLayoutToAuto",
"title": "Show Files in Automatic View",
"category": "GitLens"
},
{
"command": "gitlens.gitExplorer.setFilesLayoutToList",
"title": "Show Files in List View",
"category": "GitLens"
},
{
"command": "gitlens.gitExplorer.setFilesLayoutToTree",
"title": "Show Files in Tree View",
"category": "GitLens"
},
{
"command": "gitlens.gitExplorer.setAutoRefreshToOn",
"title": "Enable Automatic Refresh",
"category": "GitLens"
},
{
"command": "gitlens.gitExplorer.setAutoRefreshToOff",
"title": "Disable Automatic Refresh",
"category": "GitLens"
},
{
"command": "gitlens.gitExplorer.switchToHistoryView",
"title": "Switch to History View",
"category": "GitLens",
"icon": {
"dark": "images/dark/icon-history.svg",
"light": "images/light/icon-history.svg"
}
},
{
"command": "gitlens.gitExplorer.switchToRepositoryView",
"title": "Switch to Repository View",
"category": "GitLens",
"icon": {
"dark": "images/dark/icon-repo.svg",
"light": "images/light/icon-repo.svg"
}
},
{
"command": "gitlens.resultsExplorer.clearResultsNode",
"title": "Clear Results",
"category": "GitLens"
},
{
"command": "gitlens.resultsExplorer.close",
"title": "Close",
"category": "GitLens",
"icon": {
"dark": "images/dark/icon-close.svg",
"light": "images/light/icon-close.svg"
}
},
{
"command": "gitlens.resultsExplorer.refresh",
"title": "Refresh",
"category": "GitLens",
"icon": {
"dark": "images/dark/icon-refresh.svg",
"light": "images/light/icon-refresh.svg"
}
},
{
"command": "gitlens.resultsExplorer.refreshNode",
"title": "Refresh",
"category": "GitLens"
},
{
"command": "gitlens.resultsExplorer.setFilesLayoutToAuto",
"title": "Show Files in Automatic View",
"category": "GitLens"
},
{
"command": "gitlens.resultsExplorer.setFilesLayoutToList",
"title": "Show Files in List View",
"category": "GitLens"
},
{
"command": "gitlens.resultsExplorer.setFilesLayoutToTree",
"title": "Show Files in Tree View",
"category": "GitLens"
},
{
"command": "gitlens.resultsExplorer.setKeepResultsToOn",
"title": "Keep Results",
"category": "GitLens",
"icon": {
"dark": "images/dark/icon-lock.svg",
"light": "images/light/icon-lock.svg"
}
},
{
"command": "gitlens.resultsExplorer.setKeepResultsToOff",
"title": "Keep Results",
"category": "GitLens",
"icon": {
"dark": "images/dark/icon-locked.svg",
"light": "images/light/icon-locked.svg"
}
}
],
"menus": {
"commandPalette": [
{
"command": "gitlens.diffDirectory",
"when": "gitlens:enabled"
},
{
"command": "gitlens.diffWith",
"when": "false"
},
{
"command": "gitlens.diffWithBranch",
"when": "gitlens:activeIsTracked"
},
{
"command": "gitlens.diffWithNext",
"when": "gitlens:activeIsTracked"
},
{
"command": "gitlens.diffWithPrevious",
"when": "gitlens:activeIsTracked"
},
{
"command": "gitlens.diffLineWithPrevious",
"when": "gitlens:activeIsBlameable"
},
{
"command": "gitlens.diffWithRevision",
"when": "gitlens:activeIsTracked"
},
{
"command": "gitlens.diffWithWorking",
"when": "gitlens:activeIsTracked"
},
{
"command": "gitlens.diffLineWithWorking",
"when": "gitlens:activeIsBlameable"
},
{
"command": "gitlens.externalDiffAll",
"when": "gitlens:enabled"
},
{
"command": "gitlens.showFileBlame",
"when": "gitlens:activeIsBlameable"
},
{
"command": "gitlens.showLineBlame",
"when": "gitlens:activeIsBlameable"
},
{
"command": "gitlens.toggleFileBlame",
"when": "gitlens:activeIsBlameable"
},
{
"command": "gitlens.clearFileAnnotations",
"when": "gitlens:annotationStatus == computed"
},
{
"command": "gitlens.computingFileAnnotations",
"when": "false"
},
{
"command": "gitlens.toggleFileRecentChanges",
"when": "gitlens:activeIsTracked"
},
{
"command": "gitlens.toggleLineBlame",
"when": "gitlens:activeIsBlameable"
},
{
"command": "gitlens.toggleCodeLens",
"when": "gitlens:activeIsTracked && gitlens:canToggleCodeLens"
},
{
"command": "gitlens.showLastQuickPick",
"when": "gitlens:enabled"
},
{
"command": "gitlens.showQuickCommitDetails",
"when": "gitlens:activeIsBlameable"
},
{
"command": "gitlens.showQuickCommitFileDetails",
"when": "gitlens:activeIsBlameable"
},
{
"command": "gitlens.showQuickFileHistory",
"when": "gitlens:activeIsTracked"
},
{
"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.copyShaToClipboard",
"when": "gitlens:activeIsBlameable"
},
{
"command": "gitlens.copyMessageToClipboard",
"when": "gitlens:activeIsBlameable"
},
{
"command": "gitlens.closeUnchangedFiles",
"when": "gitlens:enabled"
},
{
"command": "gitlens.openChangedFiles",
"when": "gitlens:enabled"
},
{
"command": "gitlens.openBranchesInRemote",
"when": "gitlens:activeHasRemote"
},
{
"command": "gitlens.openBranchInRemote",
"when": "gitlens:activeHasRemote"
},
{
"command": "gitlens.openCommitInRemote",
"when": "gitlens:activeIsBlameable && gitlens:activeHasRemote"
},
{
"command": "gitlens.openFileInRemote",
"when": "gitlens:activeIsTracked && gitlens:activeHasRemote"
},
{
"command": "gitlens.openRepoInRemote",
"when": "gitlens:activeHasRemote"
},
{
"command": "gitlens.stashApply",
"when": "gitlens:enabled"
},
{
"command": "gitlens.stashSave",
"when": "gitlens:enabled"
},
{
"command": "gitlens.resetSuppressedWarnings",
"when": "gitlens:enabled"
},
{
"command": "gitlens.explorers.openChanges",
"when": "false"
},
{
"command": "gitlens.explorers.openDirectoryDiff",
"when": "false"
},
{
"command": "gitlens.explorers.openDirectoryDiffWithWorking",
"when": "false"
},
{
"command": "gitlens.explorers.openChangesWithWorking",
"when": "false"
},
{
"command": "gitlens.explorers.openFile",
"when": "false"
},
{
"command": "gitlens.explorers.openFileRevision",
"when": "false"
},
{
"command": "gitlens.explorers.openFileRevisionInRemote",
"when": "false"
},
{
"command": "gitlens.explorers.openChangedFiles",
"when": "false"
},
{
"command": "gitlens.explorers.openChangedFileChanges",
"when": "false"
},
{
"command": "gitlens.explorers.openChangedFileChangesWithWorking",
"when": "false"
},
{
"command": "gitlens.explorers.openChangedFileRevisions",
"when": "false"
},
{
"command": "gitlens.explorers.applyChanges",
"when": "false"
},
{
"command": "gitlens.explorers.compareWithSelected",
"when": "false"
},
{
"command": "gitlens.explorers.selectForCompare",
"when": "false"
},
{
"command": "gitlens.explorers.terminalCheckoutBranch",
"when": "false"
},
{
"command": "gitlens.explorers.terminalCreateBranch",
"when": "false"
},
{
"command": "gitlens.explorers.terminalDeleteBranch",
"when": "false"
},
{
"command": "gitlens.explorers.terminalRebaseBranchToRemote",
"when": "false"
},
{
"command": "gitlens.explorers.terminalSquashBranchIntoCommit",
"when": "false"
},
{
"command": "gitlens.explorers.terminalRebaseCommit",
"when": "false"
},
{
"command": "gitlens.explorers.terminalResetCommit",
"when": "false"
},
{
"command": "gitlens.explorers.terminalRemoveRemote",
"when": "false"
},
{
"command": "gitlens.gitExplorer.refresh",
"when": "false"
},
{
"command": "gitlens.gitExplorer.refreshNode",
"when": "false"
},
{
"command": "gitlens.gitExplorer.setFilesLayoutToAuto",
"when": "false"
},
{
"command": "gitlens.gitExplorer.setFilesLayoutToList",
"when": "false"
},
{
"command": "gitlens.gitExplorer.setFilesLayoutToTree",
"when": "false"
},
{
"command": "gitlens.gitExplorer.setAutoRefreshToOn",
"when": "false"
},
{
"command": "gitlens.gitExplorer.setAutoRefreshToOff",
"when": "false"
},
{
"command": "gitlens.gitExplorer.switchToHistoryView",
"when": "gitlens:gitExplorer:view == repository"
},
{
"command": "gitlens.gitExplorer.switchToRepositoryView",
"when": "gitlens:gitExplorer:view == history"
},
{
"command": "gitlens.resultsExplorer.clearResultsNode",
"when": "false"
},
{
"command": "gitlens.resultsExplorer.close",
"when": "false"
},
{
"command": "gitlens.resultsExplorer.refresh",
"when": "false"
},
{
"command": "gitlens.resultsExplorer.refreshNode",
"when": "false"
},
{
"command": "gitlens.resultsExplorer.setFilesLayoutToAuto",
"when": "false"
},
{
"command": "gitlens.resultsExplorer.setFilesLayoutToList",
"when": "false"
},
{
"command": "gitlens.resultsExplorer.setFilesLayoutToTree",
"when": "false"
},
{
"command": "gitlens.resultsExplorer.setKeepResultsToOn",
"when": "false"
},
{
"command": "gitlens.resultsExplorer.setKeepResultsToOff",
"when": "false"
}
],
"editor/context": [
{
"command": "gitlens.openFileInRemote",
"when": "editorTextFocus && gitlens:activeHasRemote && config.gitlens.advanced.menus.editorContext.remote",
"group": "navigation@100"
},
{
"command": "gitlens.diffLineWithPrevious",
"when": "editorTextFocus && gitlens:activeIsBlameable && config.gitlens.advanced.menus.editorContext.lineDiff",
"group": "1_gitlens@1"
},
{
"command": "gitlens.diffLineWithWorking",
"when": "editorTextFocus && gitlens:activeIsBlameable && config.gitlens.advanced.menus.editorContext.lineDiff",
"group": "1_gitlens@2"
},
{
"command": "gitlens.showQuickCommitFileDetails",
"when": "editorTextFocus && gitlens:activeIsBlameable && config.gitlens.advanced.menus.editorContext.details",
"group": "1_gitlens@3"
},
{
"command": "gitlens.diffWithPrevious",
"when": "editorTextFocus && gitlens:activeIsTracked && config.gitlens.advanced.menus.editorContext.fileDiff",
"group": "1_gitlens_1@1"
},
{
"command": "gitlens.diffWithWorking",
"when": "editorTextFocus && gitlens:activeIsTracked && config.gitlens.advanced.menus.editorContext.fileDiff",
"group": "1_gitlens_1@2"
},
{
"command": "gitlens.showQuickFileHistory",
"when": "gitlens:activeIsTracked && config.gitlens.advanced.menus.editorContext.history",
"group": "3_gitlens@1"
},
{
"command": "gitlens.toggleFileBlame",
"when": "editorTextFocus && gitlens:activeIsBlameable && config.gitlens.advanced.menus.editorContext.blame",
"group": "3_gitlens@2"
},
{
"command": "gitlens.copyShaToClipboard",
"when": "editorTextFocus && gitlens:activeIsBlameable && config.gitlens.advanced.menus.editorContext.copy",
"group": "9_gitlens@1"
},
{
"command": "gitlens.copyMessageToClipboard",
"when": "editorTextFocus && gitlens:activeIsBlameable && config.gitlens.advanced.menus.editorContext.copy",
"group": "9_gitlens@2"
}
],
"editor/title": [
{
"command": "gitlens.toggleFileBlame",
"alt": "gitlens.toggleFileRecentChanges",
"when": "gitlens:activeIsBlameable && !gitlens:annotationStatus && config.gitlens.advanced.menus.editorTitle.blame",
"group": "navigation@100"
},
{
"command": "gitlens.computingFileAnnotations",
"when": "gitlens:annotationStatus == computing && config.gitlens.advanced.menus.editorTitle.blame",
"group": "navigation@100"
},
{
"command": "gitlens.clearFileAnnotations",
"when": "gitlens:annotationStatus == computed && config.gitlens.advanced.menus.editorTitle.blame",
"group": "navigation@100"
},
{
"command": "gitlens.openFileInRemote",
"when": "gitlens:enabled && gitlens:activeHasRemote && config.gitlens.advanced.menus.editorTitle.remote",
"group": "1_gitlens"
},
{
"command": "gitlens.openRepoInRemote",
"when": "gitlens:enabled && gitlens:activeHasRemote && config.gitlens.advanced.menus.editorTitle.remote",
"group": "1_gitlens"
},
{
"command": "gitlens.diffWithPrevious",
"when": "editorTextFocus && gitlens:activeIsTracked && config.gitlens.advanced.menus.editorTitle.fileDiff",
"group": "2_gitlens"
},
{
"command": "gitlens.diffWithWorking",
"when": "editorTextFocus && gitlens:activeIsTracked && config.gitlens.advanced.menus.editorTitle.fileDiff",
"group": "2_gitlens"
},
{
"command": "gitlens.showQuickFileHistory",
"when": "editorFocus && gitlens:activeIsTracked && config.gitlens.advanced.menus.editorTitle.history",
"group": "2_gitlens_1"
},
{
"command": "gitlens.showQuickRepoHistory",
"when": "!editorFocus && gitlens:enabled && config.gitlens.advanced.menus.editorTitle.history",
"group": "2_gitlens_1"
},
{
"command": "gitlens.showQuickRepoStatus",
"when": "gitlens:enabled && config.gitlens.advanced.menus.editorTitle.status",
"group": "2_gitlens_1"
}
],
"editor/title/context": [
{
"command": "gitlens.openFileInRemote",
"when": "gitlens:enabled && gitlens:activeHasRemote && config.gitlens.advanced.menus.editorTitleContext.remote",
"group": "1_gitlens"
},
{
"command": "gitlens.diffWithPrevious",
"when": "gitlens:enabled && config.gitlens.advanced.menus.editorTitleContext.fileDiff",
"group": "1_gitlens_1@1"
},
{
"command": "gitlens.diffWithWorking",
"when": "gitlens:enabled && config.gitlens.advanced.menus.editorTitleContext.fileDiff",
"group": "1_gitlens_1@2"
},
{
"command": "gitlens.showQuickFileHistory",
"when": "gitlens:enabled && config.gitlens.advanced.menus.editorTitleContext.history",
"group": "1_gitlens_2@1"
},
{
"command": "gitlens.toggleFileBlame",
"when": "gitlens:enabled && config.gitlens.advanced.menus.editorTitleContext.blame",
"group": "1_gitlens_2@2"
}
],
"explorer/context": [
{
"command": "gitlens.openFileInRemote",
"when": "gitlens:enabled && gitlens:hasRemotes && config.gitlens.advanced.menus.explorerContext.remote",
"group": "navigation@100"
},
{
"command": "gitlens.diffWithPrevious",
"when": "gitlens:enabled && config.gitlens.advanced.menus.explorerContext.fileDiff",
"group": "1_gitlens@1"
},
{
"command": "gitlens.diffWithWorking",
"when": "gitlens:enabled && config.gitlens.advanced.menus.explorerContext.fileDiff",
"group": "1_gitlens@2"
},
{
"command": "gitlens.showQuickFileHistory",
"when": "gitlens:enabled && config.gitlens.advanced.menus.explorerContext.history",
"group": "1_gitlens_1@1"
}
],
"scm/resourceGroup/context": [
{
"command": "gitlens.openChangedFiles",
"when": "gitlens:enabled",
"group": "2_gitlens@1"
},
{
"command": "gitlens.closeUnchangedFiles",
"when": "gitlens:enabled",
"group": "2_gitlens@2"
},
{
"command": "gitlens.externalDiff",
"when": "gitlens:enabled",
"group": "2_gitlens@3"
},
{
"command": "gitlens.externalDiffAll",
"when": "gitlens:enabled",
"group": "2_gitlens@4"
},
{
"command": "gitlens.stashSave",
"when": "gitlens:enabled",
"group": "3_gitlens@1"
}
],
"scm/resourceState/context": [
{
"command": "gitlens.openFileInRemote",
"when": "gitlens:enabled && gitlens:hasRemotes",
"group": "navigation"
},
{
"command": "gitlens.externalDiff",
"when": "gitlens:enabled",
"group": "navigation"
},
{
"command": "gitlens.diffWithRevision",
"when": "gitlens:enabled",
"group": "1_gitlens@1"
},
{
"command": "gitlens.diffWithBranch",
"when": "gitlens:enabled",
"group": "1_gitlens@2"
},
{
"command": "gitlens.showQuickFileHistory",
"when": "gitlens:enabled",
"group": "1_gitlens_1@1"
},
{
"command": "gitlens.stashSave",
"when": "gitlens:enabled",
"group": "2_gitlens@1"
}
],
"view/title": [
{
"command": "gitlens.showCommitSearch",
"when": "view == gitlens.gitExplorer",
"group": "navigation@1"
},
{
"command": "gitlens.gitExplorer.switchToHistoryView",
"when": "view == gitlens.gitExplorer && gitlens:gitExplorer:view == repository",
"group": "navigation@2"
},
{
"command": "gitlens.gitExplorer.switchToRepositoryView",
"when": "view == gitlens.gitExplorer && gitlens:gitExplorer:view == history",
"group": "navigation@3"
},
{
"command": "gitlens.gitExplorer.refresh",
"when": "view == gitlens.gitExplorer",
"group": "navigation@4"
},
{
"command": "gitlens.gitExplorer.setFilesLayoutToAuto",
"when": "view == gitlens.gitExplorer && gitlens:gitExplorer:view == repository",
"group": "1_gitlens"
},
{
"command": "gitlens.gitExplorer.setFilesLayoutToList",
"when": "view == gitlens.gitExplorer && gitlens:gitExplorer:view == repository",
"group": "1_gitlens"
},
{
"command": "gitlens.gitExplorer.setFilesLayoutToTree",
"when": "view == gitlens.gitExplorer && gitlens:gitExplorer:view == repository",
"group": "1_gitlens"
},
{
"command": "gitlens.gitExplorer.setAutoRefreshToOn",
"when": "view == gitlens.gitExplorer && config.gitlens.gitExplorer.autoRefresh && !gitlens:gitExplorer:autoRefresh",
"group": "2_gitlens"
},
{
"command": "gitlens.gitExplorer.setAutoRefreshToOff",
"when": "view == gitlens.gitExplorer && config.gitlens.gitExplorer.autoRefresh && gitlens:gitExplorer:autoRefresh",
"group": "2_gitlens"
},
{
"command": "gitlens.showCommitSearch",
"when": "view == gitlens.resultsExplorer",
"group": "navigation@1"
},
{
"command": "gitlens.resultsExplorer.setKeepResultsToOn",
"when": "view == gitlens.resultsExplorer && !gitlens:resultsExplorer:keepResults",
"group": "navigation@2"
},
{
"command": "gitlens.resultsExplorer.setKeepResultsToOff",
"when": "view == gitlens.resultsExplorer && gitlens:resultsExplorer:keepResults",
"group": "navigation@2"
},
{
"command": "gitlens.resultsExplorer.refresh",
"when": "view == gitlens.resultsExplorer",
"group": "navigation@3"
},
{
"command": "gitlens.resultsExplorer.close",
"when": "view == gitlens.resultsExplorer",
"group": "navigation@9"
},
{
"command": "gitlens.resultsExplorer.setFilesLayoutToAuto",
"when": "view == gitlens.resultsExplorer",
"group": "1_gitlens"
},
{
"command": "gitlens.resultsExplorer.setFilesLayoutToList",
"when": "view == gitlens.resultsExplorer",
"group": "1_gitlens"
},
{
"command": "gitlens.resultsExplorer.setFilesLayoutToTree",
"when": "view == gitlens.resultsExplorer",
"group": "1_gitlens"
}
],
"view/item/context": [
{
"command": "gitlens.openBranchesInRemote",
"when": "viewItem == gitlens:branches:remotes",
"group": "1_gitlens@1"
},
{
"command": "gitlens.explorers.compareWithSelected",
"when": "viewItem == gitlens:branch && gitlens:explorers:canCompare",
"group": "7_gitlens@1"
},
{
"command": "gitlens.explorers.selectForCompare",
"when": "viewItem == gitlens:branch",
"group": "7_gitlens@2"
},
{
"command": "gitlens.explorers.openDirectoryDiffWithWorking",
"when": "viewItem == gitlens:branch",
"group": "7_gitlens_diff@1"
},
{
"command": "gitlens.explorers.terminalCheckoutBranch",
"when": "viewItem == gitlens:branch",
"group": "8_gitlens@1"
},
{
"command": "gitlens.explorers.terminalCreateBranch",
"when": "viewItem == gitlens:branch",
"group": "8_gitlens@2"
},
{
"command": "gitlens.explorers.terminalDeleteBranch",
"when": "viewItem == gitlens:branch",
"group": "8_gitlens@3"
},
{
"command": "gitlens.explorers.terminalSquashBranchIntoCommit",
"when": "viewItem == gitlens:branch",
"group": "8_gitlens@4"
},
{
"command": "gitlens.openBranchInRemote",
"when": "viewItem == gitlens:branch:tracking",
"group": "1_gitlens@1"
},
{
"command": "gitlens.explorers.compareWithSelected",
"when": "viewItem == gitlens:branch:tracking && gitlens:explorers:canCompare",
"group": "7_gitlens@1"
},
{
"command": "gitlens.explorers.selectForCompare",
"when": "viewItem == gitlens:branch:tracking",
"group": "7_gitlens@2"
},
{
"command": "gitlens.explorers.openDirectoryDiffWithWorking",
"when": "viewItem == gitlens:branch:tracking",
"group": "7_gitlens_diff@1"
},
{
"command": "gitlens.explorers.terminalCheckoutBranch",
"when": "viewItem == gitlens:branch:tracking",
"group": "8_gitlens@1"
},
{
"command": "gitlens.explorers.terminalCreateBranch",
"when": "viewItem == gitlens:branch:tracking",
"group": "8_gitlens@2"
},
{
"command": "gitlens.explorers.terminalDeleteBranch",
"when": "viewItem == gitlens:branch:tracking",
"group": "8_gitlens@3"
},
{
"command": "gitlens.explorers.terminalSquashBranchIntoCommit",
"when": "viewItem == gitlens:branch:tracking",
"group": "8_gitlens@4"
},
{
"command": "gitlens.explorers.compareWithSelected",
"when": "viewItem == gitlens:current-branch && gitlens:explorers:canCompare",
"group": "7_gitlens@1"
},
{
"command": "gitlens.explorers.selectForCompare",
"when": "viewItem == gitlens:current-branch",
"group": "7_gitlens@2"
},
{
"command": "gitlens.explorers.terminalCreateBranch",
"when": "viewItem == gitlens:current-branch",
"group": "8_gitlens@1"
},
{
"command": "gitlens.openBranchInRemote",
"when": "viewItem == gitlens:current-branch:tracking",
"group": "1_gitlens@1"
},
{
"command": "gitlens.explorers.compareWithSelected",
"when": "viewItem == gitlens:current-branch:tracking && gitlens:explorers:canCompare",
"group": "7_gitlens@1"
},
{
"command": "gitlens.explorers.selectForCompare",
"when": "viewItem == gitlens:current-branch:tracking",
"group": "7_gitlens@2"
},
{
"command": "gitlens.explorers.terminalCreateBranch",
"when": "viewItem == gitlens:current-branch:tracking",
"group": "8_gitlens@1"
},
{
"command": "gitlens.explorers.terminalRebaseBranchToRemote",
"when": "viewItem == gitlens:current-branch:tracking",
"group": "8_gitlens@2"
},
{
"command": "gitlens.openBranchInRemote",
"when": "viewItem == gitlens:remote-branch",
"group": "1_gitlens@1"
},
{
"command": "gitlens.explorers.compareWithSelected",
"when": "viewItem == gitlens:remote-branch && gitlens:explorers:canCompare",
"group": "7_gitlens@1"
},
{
"command": "gitlens.explorers.selectForCompare",
"when": "viewItem == gitlens:remote-branch",
"group": "7_gitlens@2"
},
{
"command": "gitlens.explorers.openDirectoryDiffWithWorking",
"when": "viewItem == gitlens:remote-branch",
"group": "7_gitlens_diff@1"
},
{
"command": "gitlens.explorers.terminalCheckoutBranch",
"when": "viewItem == gitlens:remote-branch",
"group": "8_gitlens@1"
},
{
"command": "gitlens.explorers.terminalCreateBranch",
"when": "viewItem == gitlens:remote-branch",
"group": "8_gitlens@2"
},
{
"command": "gitlens.explorers.terminalDeleteBranch",
"when": "viewItem == gitlens:remote-branch",
"group": "8_gitlens@3"
},
{
"command": "gitlens.explorers.terminalSquashBranchIntoCommit",
"when": "viewItem == gitlens:remote-branch",
"group": "8_gitlens@4"
},
{
"command": "gitlens.openCommitInRemote",
"when": "viewItem == gitlens:commit && gitlens:hasRemotes",
"group": "1_gitlens@1"
},
{
"command": "gitlens.explorers.openChangedFileChanges",
"when": "viewItem == gitlens:commit",
"group": "2_gitlens@1"
},
{
"command": "gitlens.explorers.openChangedFileChangesWithWorking",
"when": "viewItem == gitlens:commit",
"group": "2_gitlens@1"
},
{
"command": "gitlens.explorers.openChangedFiles",
"when": "viewItem == gitlens:commit",
"group": "3_gitlens@1"
},
{
"command": "gitlens.explorers.openChangedFileRevisions",
"when": "viewItem == gitlens:commit",
"group": "3_gitlens@2"
},
{
"command": "gitlens.copyShaToClipboard",
"when": "viewItem == gitlens:commit",
"group": "4_gitlens@1"
},
{
"command": "gitlens.copyMessageToClipboard",
"when": "viewItem == gitlens:commit",
"group": "4_gitlens@2"
},
{
"command": "gitlens.showQuickCommitDetails",
"when": "viewItem == gitlens:commit",
"group": "5_gitlens@1"
},
{
"command": "gitlens.explorers.compareWithSelected",
"when": "viewItem == gitlens:commit && gitlens:explorers:canCompare",
"group": "7_gitlens@1"
},
{
"command": "gitlens.explorers.selectForCompare",
"when": "viewItem == gitlens:commit",
"group": "7_gitlens@2"
},
{
"command": "gitlens.openCommitInRemote",
"when": "viewItem == gitlens:commit:current && gitlens:hasRemotes",
"group": "1_gitlens@1"
},
{
"command": "gitlens.explorers.openChangedFileChanges",
"when": "viewItem == gitlens:commit:current",
"group": "2_gitlens@1"
},
{
"command": "gitlens.explorers.openChangedFileChangesWithWorking",
"when": "viewItem == gitlens:commit:current",
"group": "2_gitlens@1"
},
{
"command": "gitlens.explorers.openChangedFiles",
"when": "viewItem == gitlens:commit:current",
"group": "3_gitlens@1"
},
{
"command": "gitlens.explorers.openChangedFileRevisions",
"when": "viewItem == gitlens:commit:current",
"group": "3_gitlens@2"
},
{
"command": "gitlens.copyShaToClipboard",
"when": "viewItem == gitlens:commit:current",
"group": "4_gitlens@1"
},
{
"command": "gitlens.copyMessageToClipboard",
"when": "viewItem == gitlens:commit:current",
"group": "4_gitlens@2"
},
{
"command": "gitlens.showQuickCommitDetails",
"when": "viewItem == gitlens:commit:current",
"group": "5_gitlens@1"
},
{
"command": "gitlens.explorers.compareWithSelected",
"when": "viewItem == gitlens:commit:current && gitlens:explorers:canCompare",
"group": "7_gitlens@1"
},
{
"command": "gitlens.explorers.selectForCompare",
"when": "viewItem == gitlens:commit:current",
"group": "7_gitlens@2"
},
{
"command": "gitlens.explorers.terminalRebaseCommit",
"when": "viewItem == gitlens:commit:current",
"group": "8_gitlens@1"
},
{
"command": "gitlens.explorers.terminalResetCommit",
"when": "viewItem == gitlens:commit:current",
"group": "8_gitlens@2"
},
{
"command": "gitlens.explorers.openChanges",
"when": "viewItem == gitlens:commit-file",
"group": "1_gitlens@1"
},
{
"command": "gitlens.explorers.openChangesWithWorking",
"when": "viewItem == gitlens:commit-file",
"group": "1_gitlens@2"
},
{
"command": "gitlens.explorers.openFile",
"when": "viewItem == gitlens:commit-file",
"group": "2_gitlens@1"
},
{
"command": "gitlens.explorers.openFileRevision",
"when": "viewItem == gitlens:commit-file",
"group": "2_gitlens@2"
},
{
"command": "gitlens.openFileInRemote",
"when": "viewItem == gitlens:commit-file && gitlens:hasRemotes",
"group": "3_gitlens@1"
},
{
"command": "gitlens.explorers.openFileRevisionInRemote",
"when": "viewItem == gitlens:commit-file && gitlens:hasRemotes",
"group": "3_gitlens@2"
},
{
"command": "gitlens.explorers.applyChanges",
"when": "viewItem == gitlens:commit-file",
"group": "4_gitlens@1"
},
{
"command": "gitlens.showQuickFileHistory",
"when": "viewItem == gitlens:commit-file && gitlens:gitExplorer:view == repository",
"group": "5_gitlens@1"
},
{
"command": "gitlens.showQuickCommitFileDetails",
"when": "viewItem == gitlens:commit-file",
"group": "5_gitlens@2"
},
{
"command": "gitlens.explorers.openFile",
"when": "viewItem == gitlens:file-history",
"group": "1_gitlens@1"
},
{
"command": "gitlens.openFileInRemote",
"when": "viewItem == gitlens:file-history && gitlens:hasRemotes",
"group": "1_gitlens@2"
},
{
"command": "gitlens.openBranchesInRemote",
"when": "viewItem == gitlens:remote",
"group": "1_gitlens@1"
},
{
"command": "gitlens.openRepoInRemote",
"when": "viewItem == gitlens:remote",
"group": "1_gitlens@2"
},
{
"command": "gitlens.explorers.terminalRemoveRemote",
"when": "viewItem == gitlens:remote",
"group": "8_gitlens@1"
},
{
"command": "gitlens.openRepoInRemote",
"when": "viewItem == gitlens:repository && gitlens:hasRemotes",
"group": "1_gitlens@1"
},
{
"command": "gitlens.resultsExplorer.clearResultsNode",
"when": "viewItem == gitlens:comparison-results",
"group": "1_gitlens@1"
},
{
"command": "gitlens.explorers.openDirectoryDiff",
"when": "viewItem == gitlens:comparison-results",
"group": "7_gitlens@1"
},
{
"command": "gitlens.resultsExplorer.clearResultsNode",
"when": "viewItem == gitlens:search-results",
"group": "1_gitlens@1"
},
{
"command": "gitlens.stashSave",
"when": "viewItem == gitlens:stashes",
"group": "1_gitlens@1"
},
{
"command": "gitlens.stashApply",
"when": "viewItem == gitlens:stash",
"group": "1_gitlens@1"
},
{
"command": "gitlens.stashDelete",
"when": "viewItem == gitlens:stash",
"group": "1_gitlens@2"
},
{
"command": "gitlens.explorers.openChangedFileChanges",
"when": "viewItem == gitlens:stash",
"group": "2_gitlens@1"
},
{
"command": "gitlens.explorers.openChangedFileChangesWithWorking",
"when": "viewItem == gitlens:stash",
"group": "2_gitlens@1"
},
{
"command": "gitlens.explorers.openChangedFiles",
"when": "viewItem == gitlens:stash",
"group": "3_gitlens@1"
},
{
"command": "gitlens.explorers.openChangedFileRevisions",
"when": "viewItem == gitlens:stash",
"group": "3_gitlens@2"
},
{
"command": "gitlens.copyMessageToClipboard",
"when": "viewItem == gitlens:stash",
"group": "4_gitlens@1"
},
{
"command": "gitlens.explorers.compareWithSelected",
"when": "viewItem == gitlens:stash && gitlens:explorers:canCompare",
"group": "7_gitlens@1"
},
{
"command": "gitlens.explorers.selectForCompare",
"when": "viewItem == gitlens:stash",
"group": "7_gitlens@2"
},
{
"command": "gitlens.explorers.applyChanges",
"when": "viewItem == gitlens:stash-file",
"group": "1_gitlens@1"
},
{
"command": "gitlens.explorers.openChanges",
"when": "viewItem == gitlens:stash-file",
"group": "2_gitlens@1"
},
{
"command": "gitlens.explorers.openChangesWithWorking",
"when": "viewItem == gitlens:stash-file",
"group": "2_gitlens@2"
},
{
"command": "gitlens.explorers.openFile",
"when": "viewItem == gitlens:stash-file",
"group": "3_gitlens@1"
},
{
"command": "gitlens.explorers.openFileRevision",
"when": "viewItem == gitlens:stash-file",
"group": "3_gitlens@2"
},
{
"command": "gitlens.openFileInRemote",
"when": "viewItem == gitlens:stash-file && gitlens:hasRemotes",
"group": "4_gitlens@1"
},
{
"command": "gitlens.showQuickFileHistory",
"when": "viewItem == gitlens:stash-file",
"group": "5_gitlens@1"
},
{
"command": "gitlens.openRepoInRemote",
"when": "viewItem == gitlens:status && gitlens:hasRemotes",
"group": "1_gitlens@1"
},
{
"command": "gitlens.explorers.openChanges",
"when": "viewItem == gitlens:status-file",
"group": "1_gitlens@1"
},
{
"command": "gitlens.explorers.openChangesWithWorking",
"when": "viewItem == gitlens:status-file",
"group": "1_gitlens@2"
},
{
"command": "gitlens.explorers.openFile",
"when": "viewItem == gitlens:status-file",
"group": "2_gitlens@1"
},
{
"command": "gitlens.explorers.openFileRevision",
"when": "viewItem == gitlens:status-file",
"group": "2_gitlens@2"
},
{
"command": "gitlens.openFileInRemote",
"when": "viewItem == gitlens:status-file && gitlens:hasRemotes",
"group": "3_gitlens@1"
},
{
"command": "gitlens.showQuickFileHistory",
"when": "viewItem == gitlens:status-file && gitlens:gitExplorer:view == repository",
"group": "5_gitlens@1"
},
{
"command": "gitlens.showQuickCommitFileDetails",
"when": "viewItem == gitlens:status-file",
"group": "5_gitlens@2"
},
{
"command": "gitlens.explorers.openFile",
"when": "viewItem == gitlens:status-file-commits",
"group": "1_gitlens@1"
},
{
"command": "gitlens.openFileInRemote",
"when": "viewItem == gitlens:status-file-commits && gitlens:hasRemotes",
"group": "1_gitlens@2"
},
{
"command": "gitlens.explorers.terminalRebaseBranchToRemote",
"when": "viewItem == gitlens:status-upstream",
"group": "8_gitlens@1"
},
{
"command": "gitlens.explorers.compareWithSelected",
"when": "viewItem == gitlens:tag && gitlens:explorers:canCompare",
"group": "7_gitlens@1"
},
{
"command": "gitlens.explorers.selectForCompare",
"when": "viewItem == gitlens:tag",
"group": "7_gitlens@2"
},
{
"command": "gitlens.explorers.openDirectoryDiffWithWorking",
"when": "viewItem == gitlens:tag",
"group": "7_gitlens_diff@1"
},
{
"command": "gitlens.gitExplorer.refreshNode",
"when": "view == gitlens.gitExplorer && viewItem != gitlens:commit-file && viewItem != gitlens:stash-file && viewItem != gitlens:status-file",
"group": "9_gitlens@1"
},
{
"command": "gitlens.resultsExplorer.refreshNode",
"when": "view == gitlens.resultsExplorer && viewItem != gitlens:commit-file && viewItem != gitlens:stash-file && viewItem != gitlens:status-file",
"group": "9_gitlens@1"
}
]
},
"keybindings": [
{
"command": "gitlens.key.left",
"key": "alt+left",
"when": "gitlens:key:left"
},
{
"command": "gitlens.key.right",
"key": "alt+right",
"when": "gitlens:key:right"
},
{
"command": "gitlens.key.,",
"key": "alt+,",
"when": "gitlens:key:,"
},
{
"command": "gitlens.key..",
"key": "alt+.",
"when": "gitlens:key:."
},
{
"command": "gitlens.key.escape",
"key": "escape",
"when": "gitlens:key:escape"
},
{
"command": "gitlens.toggleFileBlame",
"key": "ctrl+alt+g b",
"mac": "cmd+alt+g b",
"when": "gitlens:keymap == chorded && editorTextFocus && gitlens:activeIsBlameable"
},
{
"command": "gitlens.toggleCodeLens",
"key": "ctrl+alt+g shift+b",
"mac": "cmd+alt+g shift+b",
"when": "gitlens:keymap == chorded && editorTextFocus && gitlens:activeIsTracked && gitlens:canToggleCodeLens"
},
{
"command": "gitlens.showLastQuickPick",
"key": "ctrl+alt+g -",
"mac": "cmd+alt+g -",
"when": "gitlens:keymap == chorded && gitlens:enabled"
},
{
"command": "gitlens.showCommitSearch",
"key": "ctrl+alt+g /",
"mac": "cmd+alt+g /",
"when": "gitlens:keymap == chorded && gitlens:enabled"
},
{
"command": "gitlens.showQuickFileHistory",
"key": "ctrl+alt+g h",
"mac": "cmd+alt+g h",
"when": "gitlens:keymap == chorded && gitlens:enabled"
},
{
"command": "gitlens.showQuickRepoHistory",
"key": "ctrl+alt+g shift+h",
"mac": "cmd+alt+g shift+h",
"when": "gitlens:keymap == chorded && gitlens:enabled"
},
{
"command": "gitlens.showQuickRepoStatus",
"key": "ctrl+alt+g s",
"mac": "cmd+alt+g s",
"when": "gitlens:keymap == chorded && gitlens:enabled"
},
{
"command": "gitlens.showQuickCommitFileDetails",
"key": "ctrl+alt+g c",
"mac": "cmd+alt+g c",
"when": "gitlens:keymap == chorded && editorTextFocus && gitlens:enabled"
},
{
"command": "gitlens.diffWithNext",
"key": "ctrl+alt+g .",
"mac": "cmd+alt+g .",
"when": "gitlens:keymap == chorded && editorTextFocus && gitlens:activeIsTracked"
},
{
"command": "gitlens.diffLineWithPrevious",
"key": "ctrl+alt+g shift+,",
"mac": "cmd+alt+g shift+,",
"when": "gitlens:keymap == chorded && editorTextFocus && gitlens:activeIsTracked"
},
{
"command": "gitlens.diffWithPrevious",
"key": "ctrl+alt+g ,",
"mac": "cmd+alt+g ,",
"when": "gitlens:keymap == chorded && editorTextFocus && gitlens:activeIsTracked"
},
{
"command": "gitlens.diffLineWithWorking",
"key": "ctrl+alt+g w",
"mac": "cmd+alt+g w",
"when": "gitlens:keymap == chorded && editorTextFocus && gitlens:activeIsTracked"
},
{
"command": "gitlens.diffWithWorking",
"key": "ctrl+alt+g shift+w",
"mac": "cmd+alt+g shift+w",
"when": "gitlens:keymap == chorded && editorTextFocus && gitlens:activeIsTracked"
},
{
"command": "gitlens.toggleFileBlame",
"key": "alt+b",
"when": "gitlens:keymap == standard && editorTextFocus && gitlens:activeIsBlameable"
},
{
"command": "gitlens.toggleCodeLens",
"key": "shift+alt+b",
"when": "gitlens:keymap == standard && editorTextFocus && gitlens:activeIsTracked && gitlens:canToggleCodeLens"
},
{
"command": "gitlens.showLastQuickPick",
"key": "alt+-",
"when": "gitlens:keymap == standard && gitlens:enabled"
},
{
"command": "gitlens.showCommitSearch",
"key": "alt+/",
"when": "gitlens:keymap == standard && gitlens:enabled"
},
{
"command": "gitlens.showQuickFileHistory",
"key": "alt+h",
"when": "gitlens:keymap == standard && gitlens:enabled"
},
{
"command": "gitlens.showQuickRepoHistory",
"key": "shift+alt+h",
"when": "gitlens:keymap == standard && gitlens:enabled"
},
{
"command": "gitlens.showQuickRepoStatus",
"key": "alt+s",
"when": "gitlens:keymap == standard && gitlens:enabled"
},
{
"command": "gitlens.showQuickCommitFileDetails",
"key": "alt+c",
"when": "gitlens:keymap == standard && editorTextFocus && gitlens:enabled"
},
{
"command": "gitlens.diffWithNext",
"key": "alt+.",
"when": "gitlens:keymap == standard && editorTextFocus && gitlens:activeIsTracked"
},
{
"command": "gitlens.diffLineWithPrevious",
"key": "shift+alt+,",
"when": "gitlens:keymap == standard && editorTextFocus && gitlens:activeIsTracked"
},
{
"command": "gitlens.diffWithPrevious",
"key": "alt+,",
"when": "gitlens:keymap == standard && editorTextFocus && gitlens:activeIsTracked"
},
{
"command": "gitlens.diffLineWithWorking",
"key": "alt+w",
"when": "gitlens:keymap == standard && editorTextFocus && gitlens:activeIsTracked"
},
{
"command": "gitlens.diffWithWorking",
"key": "shift+alt+w",
"when": "gitlens:keymap == standard && editorTextFocus && gitlens:activeIsTracked"
}
],
"views": {
"explorer": [
{
"id": "gitlens.gitExplorer",
"name": "GitLens",
"when": "gitlens:enabled && gitlens:gitExplorer && gitlens:hasRepository && config.gitlens.gitExplorer.enabled"
},
{
"id": "gitlens.resultsExplorer",
"name": "GitLens Results",
"when": "gitlens:enabled && gitlens:resultsExplorer"
}
]
}
},
"activationEvents": [
"*"
],
"scripts": {
"bundle": "npm run lint && webpack --env.production",
"clean": "git clean -xdf",
"compile": "npm run lint && tsc -p ./",
"watch": "tsc -watch -p ./",
"lint": "tslint --project tslint.json",
"pack": "npm run clean && vsce package",
"postinstall": "node ./node_modules/vscode/bin/install",
"pub": "npm run clean && vsce publish",
"reset": "npm run clean && npm install",
"vscode:prepublish": "npm install --no-save && npm run bundle",
"prepush": "npm run compile"
},
"dependencies": {
"copy-paste": "1.3.0",
"date-fns": "1.29.0",
"iconv-lite": "0.4.19",
"lodash.debounce": "4.0.8",
"lodash.once": "4.1.1",
"tmp": "0.0.33",
"tslib": "^1.8.1"
},
"devDependencies": {
"@types/copy-paste": "1.1.30",
"@types/iconv-lite": "0.0.1",
"@types/node": "8.5.2",
"@types/tmp": "0.0.33",
"husky": "^0.14.3",
"ts-loader": "^3.2.0",
"tslint": "5.8.0",
"typescript": "2.6.2",
"uglifyjs-webpack-plugin": "^1.1.4",
"vscode": "1.1.10",
"webpack": "^3.10.0",
"webpack-node-externals": "^1.6.0"
}
}