{
    "name": "gitlens",
    "version": "2.0.2",
    "author": {
        "name": "Eric Amodio",
        "email": "eamodio@gmail.com"
    },
    "publisher": "eamodio",
    "engines": {
        "vscode": "^1.9.0"
    },
    "license": "SEE LICENSE IN LICENSE",
    "displayName": "GitLens",
    "description": "Provides Git CodeLens information (most recent commit, # of authors), on-demand inline blame annotations, status bar blame information, file & blame history explorers, and commands to compare changes",
    "categories": [
        "Other"
    ],
    "keywords": [
        "git",
        "blame",
        "history",
        "codelens",
        "annotation"
    ],
    "galleryBanner": {
        "color": "#56098c",
        "theme": "dark"
    },
    "icon": "images/gitlens-icon.svg",
    "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/src/extension",
    "contributes": {
        "configuration": {
            "type": "object",
            "title": "GitLens configuration",
            "properties": {
                "gitlens.blame.annotation.style": {
                    "type": "string",
                    "default": "expanded",
                    "enum": [
                        "compact",
                        "expanded",
                        "trailing"
                    ],
                    "description": "Specifies the style of the blame annotations. `compact` - groups annotations to limit the repetition and also adds author and date when possible. `expanded` - shows an annotation before every line. `trailing` - shows an annotation after every line"
                },
                "gitlens.blame.annotation.sha": {
                    "type": "boolean",
                    "default": true,
                    "description": "Specifies whether the commit sha will be shown in the blame annotations. Applies only to the `expanded` & `trailing` annotation styles"
                },
                "gitlens.blame.annotation.author": {
                    "type": "boolean",
                    "default": true,
                    "description": "Specifies whether the committer will be shown in the blame annotations. Applies only to the `expanded` & `trailing` annotation styles"
                },
                "gitlens.blame.annotation.date": {
                    "type": "string",
                    "default": "off",
                    "enum": [
                        "off",
                        "relative",
                        "absolute"
                    ],
                    "description": "Specifies whether and how the commit date will be shown in the blame annotations. Applies only to the `expanded` & `trailing` annotation styles"
                },
                "gitlens.blame.annotation.message": {
                    "type": "boolean",
                    "default": false,
                    "description": "Specifies whether the commit message will be shown in the blame annotations. Applies only to the `expanded` & `trailing` annotation styles"
                },
                "gitlens.blame.annotation.activeLine": {
                    "type": "string",
                    "default": "both",
                    "enum": [
                        "off",
                        "inline",
                        "hover",
                        "both"
                    ],
                    "description": "Specifies whether and how to show blame annotations on the active line. `off` - no annotation. `inline` - adds a trailing annotation to the active line. `hover` - adds hover annotation to the active line. `both` - adds both `inline` and `hover` annotations"
                },
                "gitlens.blame.annotation.characters.ellipse": {
                    "type": "string",
                    "default": "\\2026",
                    "description": "Specifies the ellipse character to use in blame annotations"
                },
                "gitlens.blame.annotation.characters.indent": {
                    "type": "string",
                    "default": "\\2759",
                    "description": "Specifies the indent character to use in `compact` blame annotations"
                },
                "gitlens.blame.annotation.characters.padding": {
                    "type": "string",
                    "default": "\\00a0",
                    "description": "Specifies the padding character (typically a non-breaking space) to use in blame annotations"
                },
                "gitlens.blame.annotation.characters.separator": {
                    "type": "string",
                    "default": "\\2022",
                    "description": "Specifies the separator character to use in blame annotations"
                },
                "gitlens.codeLens.visibility": {
                    "type": "string",
                    "default": "auto",
                    "enum": [
                        "auto",
                        "ondemand",
                        "off"
                    ],
                    "description": "Specifies when CodeLens will be triggered in the active document. `auto` - automatically. `ondemand` - only when requested. `off` - disables all active document CodeLens"
                },
                "gitlens.codeLens.location": {
                    "type": "string",
                    "default": "document+containers",
                    "enum": [
                        "all",
                        "document+containers",
                        "document",
                        "custom"
                    ],
                    "description": "Specifies where CodeLens will be rendered in the active document. `all` - render at the top of the document, on container-like (classes, modules, etc), and on member-like (methods, functions, properties, etc) lines. `document+containers` - render at the top of the document and on container-like lines. `document` - only render at the top of the document. `custom` - rendering controlled by `gitlens.codeLens.locationCustomSymbols`"
                },
                "gitlens.codeLens.locationCustomSymbols": {
                    "type": "array",
                    "description": "Specifies the set of document symbols to render active document CodeLens on. Must be a member of `SymbolKind`"
                },
                "gitlens.codeLens.languageLocations": {
                    "type": "array",
                    "default": [
                        {
                            "language": "json",
                            "location": "document"
                        },
                        {
                            "language": "css",
                            "location": "document"
                        },
                        {
                            "language": "scss",
                            "location": "document"
                        },
                        {
                            "language": "less",
                            "location": "document"
                        }
                    ],
                    "items": {
                        "type": "object",
                        "required": [
                            "language",
                            "location"
                        ],
                        "properties": {
                            "language": {
                                "type": "string",
                                "description": "Specifies the language to which this CodeLens override applies"
                            },
                            "location": {
                                "type": "string",
                                "default": "document+containers",
                                "enum": [
                                    "all",
                                    "document+containers",
                                    "document",
                                    "custom",
                                    "none"
                                ],
                                "description": "Specifies where CodeLens will be rendered in the active document for the specified language. `all` - render at the top of the document, on container-like (classes, modules, etc), and on member-like (methods, functions, properties, etc) lines. `document+containers` - render at the top of the document and on container-like lines. `document` - only render at the top of the document. `custom` - rendering controlled by `customSymbols`"
                            },
                            "customSymbols": {
                                "type": "string",
                                "description": "Specifies the set of document symbols to render active document CodeLens on. Must be a member of `SymbolKind`"
                            }
                        }
                    },
                    "uniqueItems": true,
                    "enum": [
                        "all",
                        "document+containers",
                        "document",
                        "custom"
                    ],
                    "description": "Specifies where CodeLens will be rendered in the active document for the specified languages"
                },
                "gitlens.codeLens.recentChange.enabled": {
                    "type": "boolean",
                    "default": true,
                    "description": "Specifies whether the recent change CodeLens is shown"
                },
                "gitlens.codeLens.recentChange.command": {
                    "type": "string",
                    "default": "gitlens.showFileHistory",
                    "enum": [
                        "gitlens.toggleBlame",
                        "gitlens.showBlameHistory",
                        "gitlens.showFileHistory",
                        "gitlens.diffWithPrevious",
                        "gitlens.showQuickFileHistory"
                    ],
                    "description": "Specifies the command executed when the recent change CodeLens is clicked.  `gitlens.toggleBlame` - toggles blame annotations. `gitlens.showBlameHistory` - opens the blame history explorer. `gitlens.showFileHistory` - opens the file history explorer. `gitlens.diffWithPrevious` - compares the current checked-in file with the previous commit. `gitlens.showQuickFileHistory` - shows a file history picker"
                },
                "gitlens.codeLens.authors.enabled": {
                    "type": "boolean",
                    "default": true,
                    "description": "Specifies whether the authors CodeLens is shown"
                },
                "gitlens.codeLens.authors.command": {
                    "type": "string",
                    "default": "gitlens.toggleBlame",
                    "enum": [
                        "gitlens.toggleBlame",
                        "gitlens.showBlameHistory",
                        "gitlens.showFileHistory",
                        "gitlens.diffWithPrevious",
                        "gitlens.showQuickFileHistory"
                    ],
                    "description": "Specifies the command executed when the authors CodeLens is clicked.  `gitlens.toggleBlame` - toggles blame annotations. `gitlens.showBlameHistory` - opens the blame history explorer. `gitlens.showFileHistory` - opens the file history explorer. `gitlens.diffWithPrevious` - compares the current checked-in file with the previous commit. `gitlens.showQuickFileHistory` - shows a file history picker"
                },
                "gitlens.menus.diff.enabled": {
                    "type": "boolean",
                    "default": true,
                    "description": "Specifies whether diff commands will be added to the context menus"
                },
                "gitlens.statusBar.enabled": {
                    "type": "boolean",
                    "default": true,
                    "description": "Specifies whether blame information is shown in the status bar"
                },
                "gitlens.statusBar.command": {
                    "type": "string",
                    "default": "gitlens.showQuickFileHistory",
                    "enum": [
                        "gitlens.toggleBlame",
                        "gitlens.showBlameHistory",
                        "gitlens.showFileHistory",
                        "gitlens.diffWithPrevious",
                        "gitlens.toggleCodeLens",
                        "gitlens.showQuickFileHistory"
                    ],
                    "description": "Specifies the command executed when the blame status bar item is clicked. `gitlens.toggleBlame` - toggles blame annotations. `gitlens.showBlameHistory` - opens the blame history explorer. `gitlens.showFileHistory` - opens the file history explorer. `gitlens.diffWithPrevious` - compares the current checked-in file with the previous commit. `gitlens.showQuickFileHistory` - shows a file history picker"
                },
                "gitlens.advanced.caching.enabled": {
                    "type": "boolean",
                    "default": true,
                    "description": "Specifies whether git blame output will be cached"
                },
                "gitlens.advanced.caching.statusBar.maxLines": {
                    "type": "number",
                    "default": 0,
                    "description": "Specifies whether status bar git blame output will be cached for larger documents"
                },
                "gitlens.advanced.debug": {
                    "type": "boolean",
                    "default": false,
                    "description": "Specifies debug mode"
                },
                "gitlens.advanced.git": {
                    "type": "string",
                    "default": null,
                    "description": "Specifies a git path to use"
                },
                "gitlens.advanced.gitignore.enabled": {
                    "type": "boolean",
                    "default": true,
                    "description": "Specifies whether or not to parse the root .gitignore file for better performance (i.e. avoids blaming excluded files)"
                },
                "gitlens.advanced.maxQuickHistory": {
                    "type": "number",
                    "default": 200,
                    "description": "Specifies the maximum number of QuickPick history entries to show"
                },
                "gitlens.advanced.output.level": {
                    "type": "string",
                    "default": "silent",
                    "enum": [
                        "silent",
                        "errors",
                        "verbose"
                    ],
                    "description": "Specifies how much (if any) output will be sent to the GitLens output channel"
                },
                "gitlens.advanced.toggleWhitespace.enabled": {
                    "type": "boolean",
                    "default": false,
                    "description": "Specifies whether or not to toggle whitespace off then showing blame annotations (*may* be required by certain fonts/themes)"
                }
            }
        },
        "commands": [
            {
                "command": "gitlens.diffWithPrevious",
                "title": "Diff Commit with Previous",
                "category": "GitLens"
            },
            {
                "command": "gitlens.diffLineWithPrevious",
                "title": "Diff Commit (line) with Previous",
                "category": "GitLens"
            },
            {
                "command": "gitlens.diffWithWorking",
                "title": "Diff Commit with Working Tree",
                "category": "GitLens"
            },
            {
                "command": "gitlens.diffLineWithWorking",
                "title": "Diff Commit (line) with Working Tree",
                "category": "GitLens"
            },
            {
                "command": "gitlens.showBlame",
                "title": "Show Blame Annotations",
                "category": "GitLens"
            },
            {
                "command": "gitlens.toggleBlame",
                "title": "Toggle Blame Annotations",
                "category": "GitLens",
                "icon": {
                    "dark": "images/git-icon-dark.svg",
                    "light": "images/git-icon-light.svg"
                }
            },
            {
                "command": "gitlens.toggleCodeLens",
                "title": "Toggle Git CodeLens",
                "category": "GitLens"
            },
            {
                "command": "gitlens.showBlameHistory",
                "title": "Open Blame History Explorer",
                "category": "GitLens"
            },
            {
                "command": "gitlens.showFileHistory",
                "title": "Open File History Explorer",
                "category": "GitLens"
            },
            {
                "command": "gitlens.showQuickCommitDetails",
                "title": "Show Commit Details",
                "category": "GitLens"
            },
            {
                "command": "gitlens.showQuickFileHistory",
                "title": "Show File History",
                "category": "GitLens"
            },
            {
                "command": "gitlens.showQuickRepoHistory",
                "title": "Show Repository History",
                "category": "GitLens"
            },
            {
                "command": "gitlens.copyShaToClipboard",
                "title": "Copy Commit Sha to Clipboard",
                "category": "GitLens"
            }
        ],
        "menus": {
            "explorer/context": [
                {
                    "command": "gitlens.showQuickFileHistory",
                    "when": "config.git.enabled",
                    "group": "gitlens"
                },
                {
                    "command": "gitlens.diffWithPrevious",
                    "when": "config.gitlens.menus.diff.enabled && config.git.enabled",
                    "group": "gitlens_diff"
                },
                {
                    "command": "gitlens.diffWithWorking",
                    "when": "config.gitlens.menus.diff.enabled && config.git.enabled",
                    "group": "gitlens_diff"
                }
            ],
            "editor/title": [
                {
                    "command": "gitlens.toggleBlame",
                    "when": "config.git.enabled",
                    "group": "navigation@100"
                },
                {
                    "command": "gitlens.showQuickFileHistory",
                    "when": "config.git.enabled",
                    "group": "1_gitlens"
                },
                {
                    "command": "gitlens.diffWithPrevious",
                    "when": "config.gitlens.menus.diff.enabled && config.git.enabled",
                    "group": "1_gitlens_diff"
                },
                {
                    "command": "gitlens.diffWithWorking",
                    "when": "config.gitlens.menus.diff.enabled && config.git.enabled",
                    "group": "1_gitlens_diff"
                }
            ],
            "editor/title/context": [
                {
                    "command": "gitlens.toggleBlame",
                    "when": "config.git.enabled",
                    "group": "gitlens@1"
                },
                {
                    "command": "gitlens.showQuickFileHistory",
                    "when": "config.git.enabled",
                    "group": "gitlens@2"
                }
            ],
            "editor/context": [
                {
                    "command": "gitlens.diffLineWithPrevious",
                    "when": "editorTextFocus && config.gitlens.menus.diff.enabled && config.git.enabled",
                    "group": "1_gitlens@1"
                },
                {
                    "command": "gitlens.diffLineWithWorking",
                    "when": "editorTextFocus && config.gitlens.menus.diff.enabled && config.git.enabled",
                    "group": "1_gitlens@2"
                },
                {
                    "command": "gitlens.toggleBlame",
                    "when": "editorTextFocus && config.git.enabled",
                    "group": "2_gitlens@1"
                },
                {
                    "command": "gitlens.showQuickFileHistory",
                    "alt": "gitlens.showFileHistory",
                    "when": "config.git.enabled",
                    "group": "2_gitlens@2"
                },
                {
                    "command": "gitlens.copyShaToClipboard",
                    "when": "editorTextFocus && config.git.enabled",
                    "group": "9_gitlens@1"
                }
            ]
        },
        "keybindings": [
            {
                "command": "gitlens.toggleBlame",
                "key": "alt+b",
                "mac": "alt+b",
                "when": "editorTextFocus"
            },
            {
                "command": "gitlens.toggleCodeLens",
                "key": "alt+shift+b",
                "mac": "alt+shift+b",
                "when": "editorTextFocus"
            },
            {
                "command": "gitlens.showQuickFileHistory",
                "key": "alt+h",
                "mac": "alt+h",
                "when": "editorTextFocus"
            },
            {
                "command": "gitlens.showQuickRepoHistory",
                "key": "shift+alt+h",
                "mac": "shift+alt+h"
            },
            {
                "command": "gitlens.showQuickCommitDetails",
                "key": "alt+c",
                "mac": "alt+c"
            },
            {
                "command": "gitlens.diffLineWithPrevious",
                "key": "alt+p",
                "mac": "alt+p",
                "when": "editorTextFocus"
            },
            {
                "command": "gitlens.diffWithPrevious",
                "key": "shift+alt+p",
                "mac": "shift+alt+p",
                "when": "editorTextFocus"
            },
            {
                "command": "gitlens.diffLineWithWorking",
                "key": "alt+w",
                "mac": "alt+w",
                "when": "editorTextFocus"
            },
            {
                "command": "gitlens.diffWithWorking",
                "key": "shift+alt+w",
                "mac": "shift+alt+w",
                "when": "editorTextFocus"
            }
        ]
    },
    "activationEvents": [
        "*"
    ],
    "scripts": {
        "compile": "tsc -watch -p ./",
        "lint": "tslint --project tslint.json",
        "pack": "git clean -xdf && npm install && vsce package",
        "postinstall": "node ./node_modules/vscode/bin/install",
        "pub": "git clean -xdf --exclude=node_modules/ && npm install && vsce publish",
        "vscode:prepublish": "tsc -p ./"
    },
    "dependencies": {
        "copy-paste": "^1.3.0",
        "ignore": "^3.2.2",
        "lodash.debounce": "^4.0.8",
        "lodash.escaperegexp": "^4.1.2",
        "lodash.isequal": "^4.5.0",
        "lodash.once": "^4.1.1",
        "moment": "^2.17.1",
        "spawn-rx": "^2.0.8",
        "tmp": "^0.0.31"
    },
    "devDependencies": {
        "@types/copy-paste": "^1.1.30",
        "@types/node": "^7.0.5",
        "@types/mocha": "^2.2.39",
        "@types/tmp": "^0.0.32",
        "mocha": "^3.2.0",
        "tslint": "^4.4.2",
        "typescript": "^2.1.6",
        "vscode": "^1.0.3"
    }
}