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.

2043 line
97 KiB

7 年之前
7 年之前
7 年之前
7 年之前
  1. {
  2. "name": "gitlens",
  3. "version": "5.4.0",
  4. "author": {
  5. "name": "Eric Amodio",
  6. "email": "eamodio@gmail.com"
  7. },
  8. "publisher": "eamodio",
  9. "engines": {
  10. "vscode": "^1.16.0"
  11. },
  12. "license": "SEE LICENSE IN LICENSE",
  13. "displayName": "Git Lens \u2014 git blame annotations, code lens, and more",
  14. "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",
  15. "badges": [
  16. {
  17. "url": "https://img.shields.io/badge/chat-on%20slack-brightgreen.svg",
  18. "href": "https://join.slack.com/t/vscode-dev-community/shared_invite/enQtMjIxOTgxNDE3NzM0LWU5M2ZiZDU1YjBlMzdlZjA2YjBjYzRhYTM5NTgzMTAxMjdiNWU0ZmQzYWI3MWU5N2Q1YjBiYmQ4MzY0NDE1MzY",
  19. "description": "Chat at https://vscode-dev-community.slack.com/"
  20. }
  21. ],
  22. "categories": [
  23. "Other"
  24. ],
  25. "keywords": [
  26. "git",
  27. "code lens",
  28. "blame",
  29. "history",
  30. "annotation",
  31. "log",
  32. "inline blame",
  33. "compare",
  34. "diff"
  35. ],
  36. "galleryBanner": {
  37. "color": "#56098c",
  38. "theme": "dark"
  39. },
  40. "icon": "images/gitlens-icon.png",
  41. "preview": false,
  42. "homepage": "https://github.com/eamodio/vscode-gitlens/blob/master/README.md",
  43. "bugs": {
  44. "url": "https://github.com/eamodio/vscode-gitlens/issues"
  45. },
  46. "repository": {
  47. "type": "git",
  48. "url": "https://github.com/eamodio/vscode-gitlens.git"
  49. },
  50. "main": "./out/src/extension",
  51. "contributes": {
  52. "configuration": {
  53. "type": "object",
  54. "title": "GitLens configuration",
  55. "properties": {
  56. "gitlens.debug": {
  57. "type": "boolean",
  58. "default": false,
  59. "description": "Specifies debug mode"
  60. },
  61. "gitlens.insiders": {
  62. "type": "boolean",
  63. "default": false,
  64. "description": "Specifies whether or not to enable new experimental features (expect there to be issues)"
  65. },
  66. "gitlens.outputLevel": {
  67. "type": "string",
  68. "default": "silent",
  69. "enum": [
  70. "silent",
  71. "errors",
  72. "verbose"
  73. ],
  74. "description": "Specifies how much (if any) output will be sent to the GitLens output channel"
  75. },
  76. "gitlens.annotations.file.gutter.format": {
  77. "type": "string",
  78. "default": "${message|40?} ${ago|14-}",
  79. "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"
  80. },
  81. "gitlens.annotations.file.gutter.dateFormat": {
  82. "type": "string",
  83. "default": null,
  84. "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"
  85. },
  86. "gitlens.annotations.file.gutter.compact": {
  87. "type": "boolean",
  88. "default": true,
  89. "description": "Specifies whether or not to compact (deduplicate) matching adjacent gutter blame annotations"
  90. },
  91. "gitlens.annotations.file.gutter.heatmap.enabled": {
  92. "type": "boolean",
  93. "default": true,
  94. "description": "Specifies whether or not to provide a heatmap indicator in the gutter blame annotations"
  95. },
  96. "gitlens.annotations.file.gutter.heatmap.location": {
  97. "type": "string",
  98. "default": "right",
  99. "enum": [
  100. "left",
  101. "right"
  102. ],
  103. "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"
  104. },
  105. "gitlens.annotations.file.gutter.hover.details": {
  106. "type": "boolean",
  107. "default": true,
  108. "description": "Specifies whether or not to provide a commit details hover annotation over the gutter blame annotations"
  109. },
  110. "gitlens.annotations.file.gutter.hover.wholeLine": {
  111. "type": "boolean",
  112. "default": false,
  113. "description": "Specifies whether or not to trigger hover annotations over the whole line"
  114. },
  115. "gitlens.annotations.file.hover.heatmap.enabled": {
  116. "type": "boolean",
  117. "default": true,
  118. "description": "Specifies whether or not to provide heatmap indicators on the left edge of each line"
  119. },
  120. "gitlens.annotations.file.hover.wholeLine": {
  121. "type": "boolean",
  122. "default": true,
  123. "description": "Specifies whether or not to trigger hover annotations over the whole line"
  124. },
  125. "gitlens.annotations.file.recentChanges.hover.details": {
  126. "type": "boolean",
  127. "default": true,
  128. "description": "Specifies whether or not to provide a commit details hover annotation"
  129. },
  130. "gitlens.annotations.file.recentChanges.hover.changes": {
  131. "type": "boolean",
  132. "default": true,
  133. "description": "Specifies whether or not to provide a changes (diff) hover annotation"
  134. },
  135. "gitlens.annotations.line.hover.details": {
  136. "type": "boolean",
  137. "default": true,
  138. "description": "Specifies whether or not to provide a commit details hover annotation for the current line"
  139. },
  140. "gitlens.annotations.line.hover.changes": {
  141. "type": "boolean",
  142. "default": true,
  143. "description": "Specifies whether or not to provide a changes (diff) hover annotation for the current line"
  144. },
  145. "gitlens.annotations.line.trailing.format": {
  146. "type": "string",
  147. "default": "${authorAgo} \u2022 ${message}",
  148. "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"
  149. },
  150. "gitlens.annotations.line.trailing.dateFormat": {
  151. "type": "string",
  152. "default": null,
  153. "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"
  154. },
  155. "gitlens.annotations.line.trailing.hover.details": {
  156. "type": "boolean",
  157. "default": true,
  158. "description": "Specifies whether or not to provide a commit details hover annotation over the trailing blame annotations"
  159. },
  160. "gitlens.annotations.line.trailing.hover.changes": {
  161. "type": "boolean",
  162. "default": true,
  163. "description": "Specifies whether or not to provide a changes (diff) hover annotation over the trailing blame annotations"
  164. },
  165. "gitlens.annotations.line.trailing.hover.wholeLine": {
  166. "type": "boolean",
  167. "default": false,
  168. "description": "Specifies whether or not to trigger hover annotations over the whole line"
  169. },
  170. "gitlens.blame.ignoreWhitespace": {
  171. "type": "boolean",
  172. "default": false,
  173. "description": "Specifies whether or not to ignore whitespace when comparing revisions during blame operations"
  174. },
  175. "gitlens.blame.file.annotationType": {
  176. "type": "string",
  177. "default": "gutter",
  178. "enum": [
  179. "gutter",
  180. "hover"
  181. ],
  182. "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"
  183. },
  184. "gitlens.blame.file.lineHighlight.enabled": {
  185. "type": "boolean",
  186. "default": true,
  187. "description": "Specifies whether or not to highlight lines associated with the current line"
  188. },
  189. "gitlens.blame.file.lineHighlight.locations": {
  190. "type": "array",
  191. "default": [
  192. "gutter",
  193. "line",
  194. "overviewRuler"
  195. ],
  196. "items": {
  197. "type": "string",
  198. "enum": [
  199. "gutter",
  200. "line",
  201. "overviewRuler"
  202. ]
  203. },
  204. "minItems": 1,
  205. "maxItems": 3,
  206. "uniqueItems": true,
  207. "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)"
  208. },
  209. "gitlens.blame.line.enabled": {
  210. "type": "boolean",
  211. "default": true,
  212. "description": "Specifies whether or not to provide a blame annotation for the current line, by default\nUse the `gitlens.toggleLineBlame` command to toggle the annotations on and off for the current session"
  213. },
  214. "gitlens.blame.line.annotationType": {
  215. "type": "string",
  216. "default": "trailing",
  217. "enum": [
  218. "trailing",
  219. "hover"
  220. ],
  221. "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"
  222. },
  223. "gitlens.recentChanges.file.lineHighlight.locations": {
  224. "type": "array",
  225. "default": [
  226. "gutter",
  227. "line",
  228. "overviewRuler"
  229. ],
  230. "items": {
  231. "type": "string",
  232. "enum": [
  233. "gutter",
  234. "line",
  235. "overviewRuler"
  236. ]
  237. },
  238. "minItems": 1,
  239. "maxItems": 3,
  240. "uniqueItems": true,
  241. "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)"
  242. },
  243. "gitlens.codeLens.enabled": {
  244. "type": "boolean",
  245. "default": true,
  246. "description": "Specifies whether or not to provide any Git code lens, by default\nUse the `gitlens.toggleCodeLens` command to toggle the Git code lens on and off for the current session"
  247. },
  248. "gitlens.codeLens.recentChange.enabled": {
  249. "type": "boolean",
  250. "default": true,
  251. "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"
  252. },
  253. "gitlens.codeLens.recentChange.command": {
  254. "type": "string",
  255. "default": "gitlens.showQuickCommitFileDetails",
  256. "enum": [
  257. "gitlens.toggleFileBlame",
  258. "gitlens.showBlameHistory",
  259. "gitlens.showFileHistory",
  260. "gitlens.diffWithPrevious",
  261. "gitlens.showQuickCommitDetails",
  262. "gitlens.showQuickCommitFileDetails",
  263. "gitlens.showQuickFileHistory",
  264. "gitlens.showQuickRepoHistory"
  265. ],
  266. "description": "Specifies the command to be executed when the `recent change` code lens is clicked\n `gitlens.toggleFileBlame` - toggles file blame annotations\n `gitlens.showBlameHistory` - opens the blame history explorer\n `gitlens.showFileHistory` - opens the file history explorer\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"
  267. },
  268. "gitlens.codeLens.authors.enabled": {
  269. "type": "boolean",
  270. "default": true,
  271. "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)"
  272. },
  273. "gitlens.codeLens.authors.command": {
  274. "type": "string",
  275. "default": "gitlens.toggleFileBlame",
  276. "enum": [
  277. "gitlens.toggleFileBlame",
  278. "gitlens.showBlameHistory",
  279. "gitlens.showFileHistory",
  280. "gitlens.diffWithPrevious",
  281. "gitlens.showQuickCommitDetails",
  282. "gitlens.showQuickCommitFileDetails",
  283. "gitlens.showQuickFileHistory",
  284. "gitlens.showQuickRepoHistory"
  285. ],
  286. "description": "Specifies the command to be executed when the `authors` code lens is clicked\n `gitlens.toggleFileBlame` - toggles file blame annotations\n `gitlens.showBlameHistory` - opens the blame history explorer\n `gitlens.showFileHistory` - opens the file history explorer\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"
  287. },
  288. "gitlens.codeLens.locations": {
  289. "type": "array",
  290. "default": [
  291. "document",
  292. "containers"
  293. ],
  294. "items": {
  295. "type": "string",
  296. "enum": [
  297. "document",
  298. "containers",
  299. "blocks",
  300. "custom"
  301. ]
  302. },
  303. "minItems": 1,
  304. "maxItems": 4,
  305. "uniqueItems": true,
  306. "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, properties, etc) lines\n `custom` - adds code lens at the start of symbols contained in `gitlens.codeLens.locationCustomSymbols`"
  307. },
  308. "gitlens.codeLens.customLocationSymbols": {
  309. "type": "array",
  310. "items": {
  311. "type": "string"
  312. },
  313. "uniqueItems": true,
  314. "description": "Specifies the set of document symbols where Git code lens will be shown in the document\nMust be a member of `SymbolKind`"
  315. },
  316. "gitlens.codeLens.perLanguageLocations": {
  317. "type": "array",
  318. "default": [
  319. {
  320. "language": "css",
  321. "locations": [
  322. "document"
  323. ]
  324. },
  325. {
  326. "language": "html",
  327. "locations": [
  328. "document"
  329. ]
  330. },
  331. {
  332. "language": "json",
  333. "locations": [
  334. "document"
  335. ]
  336. },
  337. {
  338. "language": "less",
  339. "locations": [
  340. "document"
  341. ]
  342. },
  343. {
  344. "language": "scss",
  345. "locations": [
  346. "document"
  347. ]
  348. },
  349. {
  350. "language": "vue",
  351. "locations": [
  352. "document"
  353. ]
  354. },
  355. {
  356. "language": "stylus",
  357. "locations": [
  358. "document"
  359. ]
  360. }
  361. ],
  362. "items": {
  363. "type": "object",
  364. "required": [
  365. "language",
  366. "locations"
  367. ],
  368. "properties": {
  369. "language": {
  370. "type": "string",
  371. "description": "Specifies the language to which this code lens override applies"
  372. },
  373. "locations": {
  374. "type": "array",
  375. "default": [
  376. "document",
  377. "containers"
  378. ],
  379. "items": {
  380. "type": "string",
  381. "enum": [
  382. "document",
  383. "containers",
  384. "blocks",
  385. "custom"
  386. ]
  387. },
  388. "minItems": 1,
  389. "maxItems": 4,
  390. "uniqueItems": true,
  391. "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`"
  392. },
  393. "customSymbols": {
  394. "type": "array",
  395. "items": {
  396. "type": "string"
  397. },
  398. "uniqueItems": true,
  399. "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`"
  400. }
  401. }
  402. },
  403. "uniqueItems": true,
  404. "description": "Specifies where Git code lens will be shown in the document for the specified languages"
  405. },
  406. "gitlens.codeLens.debug": {
  407. "type": "boolean",
  408. "default": false,
  409. "description": "Specifies whether or not to show debug information in code lens"
  410. },
  411. "gitlens.defaultDateFormat": {
  412. "type": "string",
  413. "default": null,
  414. "description": "Specifies how all absolute dates will be formatted by default\nSee https://momentjs.com/docs/#/displaying/format/ for valid formats"
  415. },
  416. "gitlens.gitExplorer.commitFormat": {
  417. "type": "string",
  418. "default": "${message} \u00a0\u2022\u00a0 ${authorAgo} \u00a0 (${id})",
  419. "description": "Specifies the format of committed changes in the `GitLens` custom 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"
  420. },
  421. "gitlens.gitExplorer.commitFileFormat": {
  422. "type": "string",
  423. "default": "${filePath}",
  424. "description": "Specifies the format of a committed file in the `GitLens` custom view\nAvailable tokens\n ${directory} - directory name\n ${file} - file name\n ${filePath} - formatted file name and path\n ${path} - full file path"
  425. },
  426. "gitlens.gitExplorer.enabled": {
  427. "type": "boolean",
  428. "default": true,
  429. "description": "Specifies whether or not to show the `GitLens` custom view"
  430. },
  431. "gitlens.gitExplorer.files.layout": {
  432. "type": "string",
  433. "default": "auto",
  434. "enum": [
  435. "auto",
  436. "list",
  437. "tree"
  438. ],
  439. "description": "Specifies how the `GitLens` custom 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"
  440. },
  441. "gitlens.gitExplorer.files.compact": {
  442. "type": "boolean",
  443. "default": true,
  444. "description": "Specifies whether or not to compact (flatten) unnecessary file nesting in the `GitLens` custom view\nOnly applies when displaying files as a `tree` or `auto`"
  445. },
  446. "gitlens.gitExplorer.files.threshold": {
  447. "type": "number",
  448. "default": 5,
  449. "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` custom view\nOnly applies when displaying files as `auto`"
  450. },
  451. "gitlens.gitExplorer.includeWorkingTree": {
  452. "type": "boolean",
  453. "default": true,
  454. "description": "Specifies whether or not to include working tree files inside the `Repository Status` node of the `GitLens` custom view"
  455. },
  456. "gitlens.gitExplorer.showTrackingBranch": {
  457. "type": "boolean",
  458. "default": true,
  459. "description": "Specifies whether or not to show the tracking branch when displaying local branches in the `GitLens` custom view"
  460. },
  461. "gitlens.gitExplorer.stashFormat": {
  462. "type": "string",
  463. "default": "${message}",
  464. "description": "Specifies the format of stashed changes in the `GitLens` custom 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"
  465. },
  466. "gitlens.gitExplorer.stashFileFormat": {
  467. "type": "string",
  468. "default": "${filePath}",
  469. "description": "Specifies the format of a stashed file in the `GitLens` custom view\nAvailable tokens\n ${directory} - directory name\n ${file} - file name\n ${filePath} - formatted file name and path\n ${path} - full file path"
  470. },
  471. "gitlens.gitExplorer.statusFileFormat": {
  472. "type": "string",
  473. "default": "${working}${filePath}",
  474. "description": "Specifies the format of the status of a working or committed file in the `GitLens` custom 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"
  475. },
  476. "gitlens.gitExplorer.view": {
  477. "type": "string",
  478. "default": "auto",
  479. "enum": [
  480. "auto",
  481. "history",
  482. "repository"
  483. ],
  484. "description": "Specifies the starting view (mode) of the `GitLens` custom 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"
  485. },
  486. "gitlens.remotes": {
  487. "type": "array",
  488. "default": null,
  489. "items": {
  490. "type": "object",
  491. "required": [
  492. "type",
  493. "domain"
  494. ],
  495. "properties": {
  496. "type": {
  497. "type": "string",
  498. "enum": [
  499. "Bitbucket",
  500. "BitbucketServer",
  501. "Custom",
  502. "GitHub",
  503. "GitLab"
  504. ],
  505. "description": "Specifies the type of the custom remote service\n `Bitbucket`, `BitbucketServer`, `GitHub`, or `GitLab`"
  506. },
  507. "domain": {
  508. "type": "string",
  509. "description": "Specifies the domain name of the custom remote service"
  510. },
  511. "name": {
  512. "type": "string",
  513. "description": "Specifies an optional friendly name for the custom remote service"
  514. },
  515. "urls": {
  516. "type": "object",
  517. "required": [
  518. "repository",
  519. "branches",
  520. "branch",
  521. "commit",
  522. "file",
  523. "fileInCommit",
  524. "fileInBranch",
  525. "fileLine",
  526. "fileRange"
  527. ],
  528. "properties": {
  529. "repository": {
  530. "type": "string",
  531. "description": "Specifies the format of a respository url for the custom remote service\nAvailable tokens\n ${repo} - repository path"
  532. },
  533. "branches": {
  534. "type": "string",
  535. "description": "Specifies the format of a branches url for the custom remote service\nAvailable tokens\n ${repo} - repository path\n ${branch} - branch"
  536. },
  537. "branch": {
  538. "type": "string",
  539. "description": "Specifies the format of a branch url for the custom remote service\nAvailable tokens\n ${repo} - repository path\n ${branch} - branch"
  540. },
  541. "commit": {
  542. "type": "string",
  543. "description": "Specifies the format of a commit url for the custom remote service\nAvailable tokens\n ${repo} - repository path\n ${id} - commit id"
  544. },
  545. "file": {
  546. "type": "string",
  547. "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"
  548. },
  549. "fileInBranch": {
  550. "type": "string",
  551. "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"
  552. },
  553. "fileInCommit": {
  554. "type": "string",
  555. "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"
  556. },
  557. "fileLine": {
  558. "type": "string",
  559. "description": "Specifies the format of a line in a file url for the custom remote service\nAvailable tokens\n ${line} - line"
  560. },
  561. "fileRange": {
  562. "type": "string",
  563. "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"
  564. }
  565. }
  566. },
  567. "description": "Specifies the url formats of the custom remote service"
  568. }
  569. },
  570. "uniqueItems": true,
  571. "description": "Specifies user-defined remote (code-hosting) services or custom domains for built-in remote services"
  572. },
  573. "gitlens.statusBar.enabled": {
  574. "type": "boolean",
  575. "default": true,
  576. "description": "Specifies whether or not to provide blame information on the status bar"
  577. },
  578. "gitlens.statusBar.alignment": {
  579. "type": "string",
  580. "default": "right",
  581. "enum": [
  582. "left",
  583. "right"
  584. ],
  585. "description": "Specifies the blame alignment in the status bar\n `left` - align to the left\n `right` - align to the right"
  586. },
  587. "gitlens.statusBar.command": {
  588. "type": "string",
  589. "default": "gitlens.showQuickCommitDetails",
  590. "enum": [
  591. "gitlens.toggleFileBlame",
  592. "gitlens.showBlameHistory",
  593. "gitlens.showFileHistory",
  594. "gitlens.diffWithPrevious",
  595. "gitlens.diffWithWorking",
  596. "gitlens.toggleCodeLens",
  597. "gitlens.showQuickCommitDetails",
  598. "gitlens.showQuickCommitFileDetails",
  599. "gitlens.showQuickFileHistory",
  600. "gitlens.showQuickRepoHistory"
  601. ],
  602. "description": "Specifies the command to be executed when the blame status bar item is clicked\n `gitlens.toggleFileBlame` - toggles file blame annotations\n `gitlens.showBlameHistory` - opens the blame history explorer\n `gitlens.showFileHistory` - opens the file history explorer\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"
  603. },
  604. "gitlens.statusBar.format": {
  605. "type": "string",
  606. "default": "${authorAgo}",
  607. "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"
  608. },
  609. "gitlens.statusBar.dateFormat": {
  610. "type": "string",
  611. "default": null,
  612. "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"
  613. },
  614. "gitlens.strings.codeLens.unsavedChanges.recentChangeAndAuthors": {
  615. "type": "string",
  616. "default": "Cannot determine recent change or authors (unsaved changes)",
  617. "description": "Specifies the string to be shown in place of both the `recent change` and `authors` code lens when there are unsaved changes"
  618. },
  619. "gitlens.strings.codeLens.unsavedChanges.recentChangeOnly": {
  620. "type": "string",
  621. "default": "Cannot determine recent change (unsaved changes)",
  622. "description": "Specifies the string to be shown in place of the `recent change` code lens when there are unsaved changes"
  623. },
  624. "gitlens.strings.codeLens.unsavedChanges.authorsOnly": {
  625. "type": "string",
  626. "default": "Cannot determine authors (unsaved changes)",
  627. "description": "Specifies the string to be shown in place of the `authors` code lens when there are unsaved changes"
  628. },
  629. "gitlens.theme.annotations.file.gutter.separateLines": {
  630. "type": "boolean",
  631. "default": true,
  632. "description": "Specifies whether or not gutter blame annotations will be separated by a small gap"
  633. },
  634. "gitlens.theme.annotations.file.gutter.dark.backgroundColor": {
  635. "type": "string",
  636. "default": "rgba(255, 255, 255, 0.075)",
  637. "description": "Specifies the dark theme background color of the gutter blame annotations. Must be a valid css color"
  638. },
  639. "gitlens.theme.annotations.file.gutter.light.backgroundColor": {
  640. "type": "string",
  641. "default": "rgba(0, 0, 0, 0.05)",
  642. "description": "Specifies the light theme background color of the gutter blame annotations. Must be a valid css color"
  643. },
  644. "gitlens.theme.annotations.file.gutter.dark.foregroundColor": {
  645. "type": "string",
  646. "default": "rgb(190, 190, 190)",
  647. "description": "Specifies the dark theme foreground color of the gutter blame annotations. Must be a valid css color"
  648. },
  649. "gitlens.theme.annotations.file.gutter.light.foregroundColor": {
  650. "type": "string",
  651. "default": "rgb(116, 116, 116)",
  652. "description": "Specifies the light theme foreground color of the gutter blame annotations. Must be a valid css color"
  653. },
  654. "gitlens.theme.annotations.file.gutter.dark.uncommittedForegroundColor": {
  655. "type": "string",
  656. "default": "rgba(0, 188, 242, 0.6)",
  657. "description": "Specifies the dark theme foreground color of an uncommitted line in the gutter blame annotations. Must be a valid css color"
  658. },
  659. "gitlens.theme.annotations.file.gutter.light.uncommittedForegroundColor": {
  660. "type": "string",
  661. "default": "rgba(0, 188, 242, 0.6)",
  662. "description": "Specifies the light theme foreground color of an uncommitted line in the gutter blame annotations. Must be a valid css color"
  663. },
  664. "gitlens.theme.annotations.line.trailing.dark.backgroundColor": {
  665. "type": "string",
  666. "default": null,
  667. "description": "Specifies the dark theme background color of the trailing blame annotation. Must be a valid css color"
  668. },
  669. "gitlens.theme.annotations.line.trailing.light.backgroundColor": {
  670. "type": "string",
  671. "default": null,
  672. "description": "Specifies the light theme background color of the trailing blame annotation. Must be a valid css color"
  673. },
  674. "gitlens.theme.annotations.line.trailing.dark.foregroundColor": {
  675. "type": "string",
  676. "default": "rgba(153, 153, 153, 0.35)",
  677. "description": "Specifies the dark theme foreground color of the trailing blame annotation. Must be a valid css color"
  678. },
  679. "gitlens.theme.annotations.line.trailing.light.foregroundColor": {
  680. "type": "string",
  681. "default": "rgba(153, 153, 153, 0.35)",
  682. "description": "Specifies the light theme foreground color of the trailing blame annotation. Must be a valid css color"
  683. },
  684. "gitlens.theme.lineHighlight.dark.backgroundColor": {
  685. "type": "string",
  686. "default": "rgba(0, 188, 242, 0.2)",
  687. "description": "Specifies the dark theme background color of the associated line highlights in blame annotations. Must be a valid css color"
  688. },
  689. "gitlens.theme.lineHighlight.light.backgroundColor": {
  690. "type": "string",
  691. "default": "rgba(0, 188, 242, 0.2)",
  692. "description": "Specifies the light theme background color of the associated line highlights in blame annotations. Must be a valid css color"
  693. },
  694. "gitlens.theme.lineHighlight.dark.overviewRulerColor": {
  695. "type": "string",
  696. "default": "rgba(0, 188, 242, 0.6)",
  697. "description": "Specifies the dark theme overview ruler color of the associated line highlights in blame annotations. Must be a valid css color"
  698. },
  699. "gitlens.theme.lineHighlight.light.overviewRulerColor": {
  700. "type": "string",
  701. "default": "rgba(0, 188, 242, 0.6)",
  702. "description": "Specifies the light theme overview ruler color of the associated line highlights in blame annotations. Must be a valid css color"
  703. },
  704. "gitlens.advanced.caching.enabled": {
  705. "type": "boolean",
  706. "default": true,
  707. "description": "Specifies whether git output will be cached"
  708. },
  709. "gitlens.advanced.caching.maxLines": {
  710. "type": "number",
  711. "default": 0,
  712. "description": "Specifies the threshold for caching larger documents"
  713. },
  714. "gitlens.advanced.git": {
  715. "type": "string",
  716. "default": null,
  717. "description": "Specifies the git path to use"
  718. },
  719. "gitlens.advanced.gitignore.enabled": {
  720. "type": "boolean",
  721. "default": true,
  722. "description": "Specifies whether or not to parse the root .gitignore file for better performance (i.e. avoids blaming excluded files)"
  723. },
  724. "gitlens.advanced.maxQuickHistory": {
  725. "type": "number",
  726. "default": 200,
  727. "description": "Specifies the maximum number of QuickPick history entries to show"
  728. },
  729. "gitlens.advanced.menus": {
  730. "type": "object",
  731. "default": {
  732. "editorContext": {
  733. "blame": true,
  734. "copy": true,
  735. "details": true,
  736. "fileDiff": true,
  737. "history": true,
  738. "lineDiff": true,
  739. "remote": true
  740. },
  741. "editorTitle": {
  742. "blame": true,
  743. "fileDiff": false,
  744. "history": false,
  745. "remote": false,
  746. "status": false
  747. },
  748. "editorTitleContext": {
  749. "blame": false,
  750. "fileDiff": false,
  751. "history": false,
  752. "remote": false
  753. },
  754. "explorerContext": {
  755. "fileDiff": true,
  756. "history": true,
  757. "remote": true
  758. }
  759. },
  760. "description": "Specifies which commands will be added to which menus",
  761. "properties": {
  762. "editorContext": {
  763. "type": "object",
  764. "default": {
  765. "blame": true,
  766. "copy": true,
  767. "details": true,
  768. "fileDiff": true,
  769. "history": true,
  770. "lineDiff": true,
  771. "remote": true
  772. },
  773. "properties": {
  774. "blame": {
  775. "type": "boolean",
  776. "default": true
  777. },
  778. "copy": {
  779. "type": "boolean",
  780. "default": true
  781. },
  782. "details": {
  783. "type": "boolean",
  784. "default": true
  785. },
  786. "fileDiff": {
  787. "type": "boolean",
  788. "default": true
  789. },
  790. "history": {
  791. "type": "boolean",
  792. "default": true
  793. },
  794. "lineDiff": {
  795. "type": "boolean",
  796. "default": true
  797. },
  798. "remote": {
  799. "type": "boolean",
  800. "default": true
  801. }
  802. }
  803. },
  804. "editorTitle": {
  805. "type": "object",
  806. "default": {
  807. "blame": true,
  808. "fileDiff": true,
  809. "history": true,
  810. "remote": true,
  811. "status": true
  812. },
  813. "properties": {
  814. "blame": {
  815. "type": "boolean",
  816. "default": true
  817. },
  818. "fileDiff": {
  819. "type": "boolean",
  820. "default": true
  821. },
  822. "history": {
  823. "type": "boolean",
  824. "default": true
  825. },
  826. "remote": {
  827. "type": "boolean",
  828. "default": true
  829. },
  830. "status": {
  831. "type": "boolean",
  832. "default": true
  833. }
  834. }
  835. },
  836. "editorTitleContext": {
  837. "type": "object",
  838. "default": {
  839. "blame": true,
  840. "fileDiff": true,
  841. "history": true,
  842. "remote": true
  843. },
  844. "properties": {
  845. "blame": {
  846. "type": "boolean",
  847. "default": true
  848. },
  849. "fileDiff": {
  850. "type": "boolean",
  851. "default": true
  852. },
  853. "history": {
  854. "type": "boolean",
  855. "default": true
  856. },
  857. "remote": {
  858. "type": "boolean",
  859. "default": true
  860. }
  861. }
  862. },
  863. "explorerContext": {
  864. "type": "object",
  865. "default": {
  866. "fileDiff": true,
  867. "history": true,
  868. "remote": true
  869. },
  870. "properties": {
  871. "fileDiff": {
  872. "type": "boolean",
  873. "default": true
  874. },
  875. "history": {
  876. "type": "boolean",
  877. "default": true
  878. },
  879. "remote": {
  880. "type": "boolean",
  881. "default": true
  882. }
  883. }
  884. }
  885. }
  886. },
  887. "gitlens.advanced.quickPick.closeOnFocusOut": {
  888. "type": "boolean",
  889. "default": true,
  890. "description": "Specifies whether or not to close the QuickPick menu when focus is lost"
  891. },
  892. "gitlens.advanced.telemetry.enabled": {
  893. "type": "boolean",
  894. "default": true,
  895. "description": "Specifies whether or not to enable GitLens telemetry (even if enabled still abides by the overall `telemetry.enableTelemetry` setting"
  896. },
  897. "gitlens.advanced.toggleWhitespace.enabled": {
  898. "type": "boolean",
  899. "default": false,
  900. "description": "Specifies whether or not to toggle whitespace off then showing blame annotations (*may* be required by certain fonts/themes)"
  901. }
  902. }
  903. },
  904. "commands": [
  905. {
  906. "command": "gitlens.diffDirectory",
  907. "title": "Directory Compare",
  908. "category": "GitLens"
  909. },
  910. {
  911. "command": "gitlens.diffWith",
  912. "title": "Compare File Revisions",
  913. "category": "GitLens"
  914. },
  915. {
  916. "command": "gitlens.diffWithBranch",
  917. "title": "Compare File with Branch...",
  918. "category": "GitLens"
  919. },
  920. {
  921. "command": "gitlens.diffWithNext",
  922. "title": "Compare File with Next Revision",
  923. "category": "GitLens"
  924. },
  925. {
  926. "command": "gitlens.diffWithPrevious",
  927. "title": "Compare File with Previous Revision",
  928. "category": "GitLens"
  929. },
  930. {
  931. "command": "gitlens.diffLineWithPrevious",
  932. "title": "Compare Line Revision with Previous",
  933. "category": "GitLens"
  934. },
  935. {
  936. "command": "gitlens.diffWithRevision",
  937. "title": "Compare File with Revision...",
  938. "category": "GitLens"
  939. },
  940. {
  941. "command": "gitlens.diffWithWorking",
  942. "title": "Compare File with Working Revision",
  943. "category": "GitLens"
  944. },
  945. {
  946. "command": "gitlens.diffLineWithWorking",
  947. "title": "Compare Line Revision with Working",
  948. "category": "GitLens"
  949. },
  950. {
  951. "command": "gitlens.showFileBlame",
  952. "title": "Show File Blame Annotations",
  953. "category": "GitLens"
  954. },
  955. {
  956. "command": "gitlens.showLineBlame",
  957. "title": "Show Line Blame Annotations",
  958. "category": "GitLens"
  959. },
  960. {
  961. "command": "gitlens.toggleFileBlame",
  962. "title": "Toggle File Blame Annotations",
  963. "category": "GitLens",
  964. "icon": {
  965. "dark": "images/dark/git-icon.svg",
  966. "light": "images/light/git-icon.svg"
  967. }
  968. },
  969. {
  970. "command": "gitlens.clearFileAnnotations",
  971. "title": "Clear File Annotations",
  972. "category": "GitLens",
  973. "icon": {
  974. "dark": "images/dark/git-icon-orange.svg",
  975. "light": "images/light/git-icon-orange.svg"
  976. }
  977. },
  978. {
  979. "command": "gitlens.computingFileAnnotations",
  980. "title": "Computing File Annotations...",
  981. "category": "GitLens",
  982. "icon": {
  983. "dark": "images/dark/git-icon-progress.svg",
  984. "light": "images/light/git-icon-progress.svg"
  985. }
  986. },
  987. {
  988. "command": "gitlens.toggleFileRecentChanges",
  989. "title": "Toggle Recent File Changes Annotations",
  990. "category": "GitLens",
  991. "icon": {
  992. "dark": "images/dark/git-icon.svg",
  993. "light": "images/light/git-icon.svg"
  994. }
  995. },
  996. {
  997. "command": "gitlens.toggleLineBlame",
  998. "title": "Toggle Line Blame Annotations",
  999. "category": "GitLens"
  1000. },
  1001. {
  1002. "command": "gitlens.toggleCodeLens",
  1003. "title": "Toggle Git Code Lens",
  1004. "category": "GitLens"
  1005. },
  1006. {
  1007. "command": "gitlens.showBlameHistory",
  1008. "title": "Open Blame History Explorer",
  1009. "category": "GitLens"
  1010. },
  1011. {
  1012. "command": "gitlens.showCommitSearch",
  1013. "title": "Search Commits",
  1014. "category": "GitLens",
  1015. "icon": {
  1016. "dark": "images/dark/icon-search.svg",
  1017. "light": "images/light/icon-search.svg"
  1018. }
  1019. },
  1020. {
  1021. "command": "gitlens.showFileHistory",
  1022. "title": "Open File History Explorer",
  1023. "category": "GitLens"
  1024. },
  1025. {
  1026. "command": "gitlens.showLastQuickPick",
  1027. "title": "Show Last Opened Quick Pick",
  1028. "category": "GitLens"
  1029. },
  1030. {
  1031. "command": "gitlens.showQuickCommitDetails",
  1032. "title": "Show Commit Details",
  1033. "category": "GitLens"
  1034. },
  1035. {
  1036. "command": "gitlens.showQuickCommitFileDetails",
  1037. "title": "Show Commit File Details",
  1038. "category": "GitLens"
  1039. },
  1040. {
  1041. "command": "gitlens.showQuickFileHistory",
  1042. "title": "Show File History",
  1043. "category": "GitLens"
  1044. },
  1045. {
  1046. "command": "gitlens.showQuickBranchHistory",
  1047. "title": "Show Branch History",
  1048. "category": "GitLens"
  1049. },
  1050. {
  1051. "command": "gitlens.showQuickRepoHistory",
  1052. "title": "Show Current Branch History",
  1053. "category": "GitLens"
  1054. },
  1055. {
  1056. "command": "gitlens.showQuickRepoStatus",
  1057. "title": "Show Repository Status",
  1058. "category": "GitLens"
  1059. },
  1060. {
  1061. "command": "gitlens.showQuickStashList",
  1062. "title": "Show Stashed Changes",
  1063. "category": "GitLens"
  1064. },
  1065. {
  1066. "command": "gitlens.copyShaToClipboard",
  1067. "title": "Copy Commit ID to Clipboard",
  1068. "category": "GitLens"
  1069. },
  1070. {
  1071. "command": "gitlens.copyMessageToClipboard",
  1072. "title": "Copy Commit Message to Clipboard",
  1073. "category": "GitLens"
  1074. },
  1075. {
  1076. "command": "gitlens.closeUnchangedFiles",
  1077. "title": "Close Unchanged Files",
  1078. "category": "GitLens"
  1079. },
  1080. {
  1081. "command": "gitlens.openChangedFiles",
  1082. "title": "Open Changed Files",
  1083. "category": "GitLens"
  1084. },
  1085. {
  1086. "command": "gitlens.openBranchesInRemote",
  1087. "title": "Open Branches in Remote",
  1088. "category": "GitLens"
  1089. },
  1090. {
  1091. "command": "gitlens.openBranchInRemote",
  1092. "title": "Open Branch in Remote",
  1093. "category": "GitLens"
  1094. },
  1095. {
  1096. "command": "gitlens.openCommitInRemote",
  1097. "title": "Open Commit in Remote",
  1098. "category": "GitLens"
  1099. },
  1100. {
  1101. "command": "gitlens.openFileInRemote",
  1102. "title": "Open File in Remote",
  1103. "category": "GitLens"
  1104. },
  1105. {
  1106. "command": "gitlens.openRepoInRemote",
  1107. "title": "Open Repository in Remote",
  1108. "category": "GitLens"
  1109. },
  1110. {
  1111. "command": "gitlens.stashApply",
  1112. "title": "Apply Stashed Changes",
  1113. "category": "GitLens"
  1114. },
  1115. {
  1116. "command": "gitlens.stashDelete",
  1117. "title": "Delete Stashed Changes",
  1118. "category": "GitLens"
  1119. },
  1120. {
  1121. "command": "gitlens.stashSave",
  1122. "title": "Stash Changes",
  1123. "category": "GitLens",
  1124. "icon": {
  1125. "dark": "images/dark/icon-add.svg",
  1126. "light": "images/light/icon-add.svg"
  1127. }
  1128. },
  1129. {
  1130. "command": "gitlens.externalDiff",
  1131. "title": "Open Changes (with difftool)",
  1132. "category": "GitLens"
  1133. },
  1134. {
  1135. "command": "gitlens.resetSuppressedWarnings",
  1136. "title": "Reset Suppressed Warnings",
  1137. "category": "GitLens"
  1138. },
  1139. {
  1140. "command": "gitlens.gitExplorer.refresh",
  1141. "title": "Refresh",
  1142. "category": "GitLens",
  1143. "icon": {
  1144. "dark": "images/dark/icon-refresh.svg",
  1145. "light": "images/light/icon-refresh.svg"
  1146. }
  1147. },
  1148. {
  1149. "command": "gitlens.gitExplorer.switchToHistoryView",
  1150. "title": "Switch to History View",
  1151. "category": "GitLens",
  1152. "icon": {
  1153. "dark": "images/dark/icon-history.svg",
  1154. "light": "images/light/icon-history.svg"
  1155. }
  1156. },
  1157. {
  1158. "command": "gitlens.gitExplorer.switchToRepositoryView",
  1159. "title": "Switch to Repository View",
  1160. "category": "GitLens",
  1161. "icon": {
  1162. "dark": "images/dark/icon-repo.svg",
  1163. "light": "images/light/icon-repo.svg"
  1164. }
  1165. },
  1166. {
  1167. "command": "gitlens.gitExplorer.openChanges",
  1168. "title": "Open Changes",
  1169. "category": "GitLens"
  1170. },
  1171. {
  1172. "command": "gitlens.gitExplorer.openChangesWithWorking",
  1173. "title": "Open Changes with Working Tree",
  1174. "category": "GitLens"
  1175. },
  1176. {
  1177. "command": "gitlens.gitExplorer.openFile",
  1178. "title": "Open File",
  1179. "category": "GitLens"
  1180. },
  1181. {
  1182. "command": "gitlens.gitExplorer.openFileRevision",
  1183. "title": "Open Revision",
  1184. "category": "GitLens"
  1185. },
  1186. {
  1187. "command": "gitlens.gitExplorer.openFileRevisionInRemote",
  1188. "title": "Open Revision in Remote",
  1189. "category": "GitLens"
  1190. },
  1191. {
  1192. "command": "gitlens.gitExplorer.openChangedFiles",
  1193. "title": "Open Files",
  1194. "category": "GitLens"
  1195. },
  1196. {
  1197. "command": "gitlens.gitExplorer.openChangedFileChanges",
  1198. "title": "Open All Changes",
  1199. "category": "GitLens"
  1200. },
  1201. {
  1202. "command": "gitlens.gitExplorer.openChangedFileChangesWithWorking",
  1203. "title": "Open All Changes with Working Tree",
  1204. "category": "GitLens"
  1205. },
  1206. {
  1207. "command": "gitlens.gitExplorer.openChangedFileRevisions",
  1208. "title": "Open Revisions",
  1209. "category": "GitLens"
  1210. },
  1211. {
  1212. "command": "gitlens.gitExplorer.applyChanges",
  1213. "title": "Apply Changes",
  1214. "category": "GitLens"
  1215. }
  1216. ],
  1217. "menus": {
  1218. "commandPalette": [
  1219. {
  1220. "command": "gitlens.diffDirectory",
  1221. "when": "gitlens:enabled"
  1222. },
  1223. {
  1224. "command": "gitlens.diffWith",
  1225. "when": "false"
  1226. },
  1227. {
  1228. "command": "gitlens.diffWithBranch",
  1229. "when": "gitlens:isTracked"
  1230. },
  1231. {
  1232. "command": "gitlens.diffWithNext",
  1233. "when": "gitlens:isTracked"
  1234. },
  1235. {
  1236. "command": "gitlens.diffWithPrevious",
  1237. "when": "gitlens:isTracked"
  1238. },
  1239. {
  1240. "command": "gitlens.diffLineWithPrevious",
  1241. "when": "gitlens:isBlameable"
  1242. },
  1243. {
  1244. "command": "gitlens.diffWithRevision",
  1245. "when": "gitlens:isTracked"
  1246. },
  1247. {
  1248. "command": "gitlens.diffWithWorking",
  1249. "when": "gitlens:isTracked"
  1250. },
  1251. {
  1252. "command": "gitlens.diffLineWithWorking",
  1253. "when": "gitlens:isBlameable"
  1254. },
  1255. {
  1256. "command": "gitlens.showFileBlame",
  1257. "when": "gitlens:isBlameable"
  1258. },
  1259. {
  1260. "command": "gitlens.showLineBlame",
  1261. "when": "gitlens:isBlameable"
  1262. },
  1263. {
  1264. "command": "gitlens.toggleFileBlame",
  1265. "when": "gitlens:isBlameable"
  1266. },
  1267. {
  1268. "command": "gitlens.clearFileAnnotations",
  1269. "when": "gitlens:annotationStatus == computed"
  1270. },
  1271. {
  1272. "command": "gitlens.computingFileAnnotations",
  1273. "when": "false"
  1274. },
  1275. {
  1276. "command": "gitlens.toggleFileRecentChanges",
  1277. "when": "gitlens:isTracked"
  1278. },
  1279. {
  1280. "command": "gitlens.toggleLineBlame",
  1281. "when": "gitlens:isBlameable"
  1282. },
  1283. {
  1284. "command": "gitlens.toggleCodeLens",
  1285. "when": "gitlens:isTracked && gitlens:canToggleCodeLens"
  1286. },
  1287. {
  1288. "command": "gitlens.showBlameHistory",
  1289. "when": "gitlens:isBlameable"
  1290. },
  1291. {
  1292. "command": "gitlens.showFileHistory",
  1293. "when": "gitlens:isTracked"
  1294. },
  1295. {
  1296. "command": "gitlens.showLastQuickPick",
  1297. "when": "gitlens:enabled"
  1298. },
  1299. {
  1300. "command": "gitlens.showQuickCommitDetails",
  1301. "when": "gitlens:isBlameable"
  1302. },
  1303. {
  1304. "command": "gitlens.showQuickCommitFileDetails",
  1305. "when": "gitlens:isBlameable"
  1306. },
  1307. {
  1308. "command": "gitlens.showQuickFileHistory",
  1309. "when": "gitlens:isTracked"
  1310. },
  1311. {
  1312. "command": "gitlens.showQuickBranchHistory",
  1313. "when": "gitlens:enabled"
  1314. },
  1315. {
  1316. "command": "gitlens.showQuickRepoHistory",
  1317. "when": "gitlens:enabled"
  1318. },
  1319. {
  1320. "command": "gitlens.showQuickRepoStatus",
  1321. "when": "gitlens:enabled"
  1322. },
  1323. {
  1324. "command": "gitlens.showQuickStashList",
  1325. "when": "gitlens:enabled"
  1326. },
  1327. {
  1328. "command": "gitlens.copyShaToClipboard",
  1329. "when": "gitlens:isBlameable"
  1330. },
  1331. {
  1332. "command": "gitlens.copyMessageToClipboard",
  1333. "when": "gitlens:isBlameable"
  1334. },
  1335. {
  1336. "command": "gitlens.closeUnchangedFiles",
  1337. "when": "gitlens:enabled"
  1338. },
  1339. {
  1340. "command": "gitlens.openChangedFiles",
  1341. "when": "gitlens:enabled"
  1342. },
  1343. {
  1344. "command": "gitlens.openBranchesInRemote",
  1345. "when": "gitlens:hasRemotes"
  1346. },
  1347. {
  1348. "command": "gitlens.openBranchInRemote",
  1349. "when": "gitlens:hasRemotes"
  1350. },
  1351. {
  1352. "command": "gitlens.openCommitInRemote",
  1353. "when": "gitlens:isBlameable && gitlens:hasRemotes"
  1354. },
  1355. {
  1356. "command": "gitlens.openFileInRemote",
  1357. "when": "gitlens:isTracked && gitlens:hasRemotes"
  1358. },
  1359. {
  1360. "command": "gitlens.openRepoInRemote",
  1361. "when": "gitlens:hasRemotes"
  1362. },
  1363. {
  1364. "command": "gitlens.stashApply",
  1365. "when": "gitlens:enabled"
  1366. },
  1367. {
  1368. "command": "gitlens.stashSave",
  1369. "when": "gitlens:enabled"
  1370. },
  1371. {
  1372. "command": "gitlens.resetSuppressedWarnings",
  1373. "when": "gitlens:enabled"
  1374. },
  1375. {
  1376. "command": "gitlens.gitExplorer.refresh",
  1377. "when": "false"
  1378. },
  1379. {
  1380. "command": "gitlens.gitExplorer.switchToHistoryView",
  1381. "when": "gitlens:gitExplorer:view == repository"
  1382. },
  1383. {
  1384. "command": "gitlens.gitExplorer.switchToRepositoryView",
  1385. "when": "gitlens:gitExplorer:view == history"
  1386. },
  1387. {
  1388. "command": "gitlens.gitExplorer.openChanges",
  1389. "when": "false"
  1390. },
  1391. {
  1392. "command": "gitlens.gitExplorer.openChangesWithWorking",
  1393. "when": "false"
  1394. },
  1395. {
  1396. "command": "gitlens.gitExplorer.openFile",
  1397. "when": "false"
  1398. },
  1399. {
  1400. "command": "gitlens.gitExplorer.openFileRevision",
  1401. "when": "false"
  1402. },
  1403. {
  1404. "command": "gitlens.gitExplorer.openFileRevisionInRemote",
  1405. "when": "false"
  1406. },
  1407. {
  1408. "command": "gitlens.gitExplorer.openChangedFiles",
  1409. "when": "false"
  1410. },
  1411. {
  1412. "command": "gitlens.gitExplorer.openChangedFileChanges",
  1413. "when": "false"
  1414. },
  1415. {
  1416. "command": "gitlens.gitExplorer.openChangedFileChangesWithWorking",
  1417. "when": "false"
  1418. },
  1419. {
  1420. "command": "gitlens.gitExplorer.openChangedFileRevisions",
  1421. "when": "false"
  1422. },
  1423. {
  1424. "command": "gitlens.gitExplorer.applyChanges",
  1425. "when": "false"
  1426. }
  1427. ],
  1428. "editor/context": [
  1429. {
  1430. "command": "gitlens.openFileInRemote",
  1431. "when": "editorTextFocus && gitlens:isTracked && gitlens:hasRemotes && config.gitlens.advanced.menus.editorContext.remote",
  1432. "group": "navigation@100"
  1433. },
  1434. {
  1435. "command": "gitlens.diffLineWithPrevious",
  1436. "when": "editorTextFocus && gitlens:isBlameable && config.gitlens.advanced.menus.editorContext.lineDiff",
  1437. "group": "1_gitlens@1"
  1438. },
  1439. {
  1440. "command": "gitlens.diffLineWithWorking",
  1441. "when": "editorTextFocus && gitlens:isBlameable && config.gitlens.advanced.menus.editorContext.lineDiff",
  1442. "group": "1_gitlens@2"
  1443. },
  1444. {
  1445. "command": "gitlens.showQuickCommitFileDetails",
  1446. "when": "editorTextFocus && gitlens:isBlameable && config.gitlens.advanced.menus.editorContext.details",
  1447. "group": "1_gitlens@3"
  1448. },
  1449. {
  1450. "command": "gitlens.diffWithPrevious",
  1451. "when": "editorTextFocus && gitlens:isTracked && config.gitlens.advanced.menus.editorContext.fileDiff",
  1452. "group": "1_gitlens_1@1"
  1453. },
  1454. {
  1455. "command": "gitlens.diffWithWorking",
  1456. "when": "editorTextFocus && gitlens:isTracked && config.gitlens.advanced.menus.editorContext.fileDiff",
  1457. "group": "1_gitlens_1@2"
  1458. },
  1459. {
  1460. "command": "gitlens.showQuickFileHistory",
  1461. "when": "gitlens:isTracked && config.gitlens.advanced.menus.editorContext.history",
  1462. "group": "3_gitlens@1"
  1463. },
  1464. {
  1465. "command": "gitlens.toggleFileBlame",
  1466. "when": "editorTextFocus && gitlens:isBlameable && config.gitlens.advanced.menus.editorContext.blame",
  1467. "group": "3_gitlens@2"
  1468. },
  1469. {
  1470. "command": "gitlens.copyShaToClipboard",
  1471. "when": "editorTextFocus && gitlens:isBlameable && config.gitlens.advanced.menus.editorContext.copy",
  1472. "group": "9_gitlens@1"
  1473. },
  1474. {
  1475. "command": "gitlens.copyMessageToClipboard",
  1476. "when": "editorTextFocus && gitlens:isBlameable && config.gitlens.advanced.menus.editorContext.copy",
  1477. "group": "9_gitlens@2"
  1478. }
  1479. ],
  1480. "editor/title": [
  1481. {
  1482. "command": "gitlens.toggleFileBlame",
  1483. "alt": "gitlens.toggleFileRecentChanges",
  1484. "when": "gitlens:isBlameable && !gitlens:annotationStatus && config.gitlens.advanced.menus.editorTitle.blame",
  1485. "group": "navigation@100"
  1486. },
  1487. {
  1488. "command": "gitlens.computingFileAnnotations",
  1489. "when": "gitlens:annotationStatus == computing && config.gitlens.advanced.menus.editorTitle.blame",
  1490. "group": "navigation@100"
  1491. },
  1492. {
  1493. "command": "gitlens.clearFileAnnotations",
  1494. "when": "gitlens:annotationStatus == computed && config.gitlens.advanced.menus.editorTitle.blame",
  1495. "group": "navigation@100"
  1496. },
  1497. {
  1498. "command": "gitlens.openFileInRemote",
  1499. "when": "gitlens:enabled && gitlens:hasRemotes && config.gitlens.advanced.menus.editorTitle.remote",
  1500. "group": "1_gitlens"
  1501. },
  1502. {
  1503. "command": "gitlens.openRepoInRemote",
  1504. "when": "gitlens:enabled && gitlens:hasRemotes && config.gitlens.advanced.menus.editorTitle.remote",
  1505. "group": "1_gitlens"
  1506. },
  1507. {
  1508. "command": "gitlens.diffWithPrevious",
  1509. "when": "editorTextFocus && gitlens:isTracked && config.gitlens.advanced.menus.editorTitle.fileDiff",
  1510. "group": "2_gitlens"
  1511. },
  1512. {
  1513. "command": "gitlens.diffWithWorking",
  1514. "when": "editorTextFocus && gitlens:isTracked && config.gitlens.advanced.menus.editorTitle.fileDiff",
  1515. "group": "2_gitlens"
  1516. },
  1517. {
  1518. "command": "gitlens.showQuickFileHistory",
  1519. "when": "editorFocus && gitlens:isTracked && config.gitlens.advanced.menus.editorTitle.history",
  1520. "group": "2_gitlens_1"
  1521. },
  1522. {
  1523. "command": "gitlens.showQuickRepoHistory",
  1524. "when": "!editorFocus && gitlens:enabled && config.gitlens.advanced.menus.editorTitle.history",
  1525. "group": "2_gitlens_1"
  1526. },
  1527. {
  1528. "command": "gitlens.showQuickRepoStatus",
  1529. "when": "gitlens:enabled && config.gitlens.advanced.menus.editorTitle.status",
  1530. "group": "2_gitlens_1"
  1531. }
  1532. ],
  1533. "editor/title/context": [
  1534. {
  1535. "command": "gitlens.openFileInRemote",
  1536. "when": "gitlens:enabled && gitlens:hasRemotes && config.gitlens.advanced.menus.editorTitleContext.remote",
  1537. "group": "1_gitlens"
  1538. },
  1539. {
  1540. "command": "gitlens.diffWithPrevious",
  1541. "when": "gitlens:enabled && config.gitlens.advanced.menus.editorTitleContext.fileDiff",
  1542. "group": "1_gitlens_1@1"
  1543. },
  1544. {
  1545. "command": "gitlens.diffWithWorking",
  1546. "when": "gitlens:enabled && config.gitlens.advanced.menus.editorTitleContext.fileDiff",
  1547. "group": "1_gitlens_1@2"
  1548. },
  1549. {
  1550. "command": "gitlens.showQuickFileHistory",
  1551. "when": "gitlens:enabled && config.gitlens.advanced.menus.editorTitleContext.history",
  1552. "group": "1_gitlens_2@1"
  1553. },
  1554. {
  1555. "command": "gitlens.toggleFileBlame",
  1556. "when": "gitlens:enabled && config.gitlens.advanced.menus.editorTitleContext.blame",
  1557. "group": "1_gitlens_2@2"
  1558. }
  1559. ],
  1560. "explorer/context": [
  1561. {
  1562. "command": "gitlens.openFileInRemote",
  1563. "when": "gitlens:enabled && gitlens:hasRemotes && config.gitlens.advanced.menus.explorerContext.remote",
  1564. "group": "navigation@100"
  1565. },
  1566. {
  1567. "command": "gitlens.diffWithPrevious",
  1568. "when": "gitlens:enabled && config.gitlens.advanced.menus.explorerContext.fileDiff",
  1569. "group": "1_gitlens@1"
  1570. },
  1571. {
  1572. "command": "gitlens.diffWithWorking",
  1573. "when": "gitlens:enabled && config.gitlens.advanced.menus.explorerContext.fileDiff",
  1574. "group": "1_gitlens@2"
  1575. },
  1576. {
  1577. "command": "gitlens.showQuickFileHistory",
  1578. "when": "gitlens:enabled && config.gitlens.advanced.menus.explorerContext.history",
  1579. "group": "1_gitlens_1@1"
  1580. }
  1581. ],
  1582. "scm/resourceGroup/context": [
  1583. {
  1584. "command": "gitlens.openChangedFiles",
  1585. "when": "gitlens:enabled",
  1586. "group": "2_gitlens@1"
  1587. },
  1588. {
  1589. "command": "gitlens.closeUnchangedFiles",
  1590. "when": "gitlens:enabled",
  1591. "group": "2_gitlens@2"
  1592. },
  1593. {
  1594. "command": "gitlens.externalDiff",
  1595. "when": "gitlens:enabled",
  1596. "group": "2_gitlens@3"
  1597. },
  1598. {
  1599. "command": "gitlens.stashSave",
  1600. "when": "gitlens:enabled",
  1601. "group": "3_gitlens@1"
  1602. }
  1603. ],
  1604. "scm/resourceState/context": [
  1605. {
  1606. "command": "gitlens.openFileInRemote",
  1607. "when": "gitlens:enabled && gitlens:hasRemotes",
  1608. "group": "navigation"
  1609. },
  1610. {
  1611. "command": "gitlens.externalDiff",
  1612. "when": "gitlens:enabled",
  1613. "group": "navigation"
  1614. },
  1615. {
  1616. "command": "gitlens.diffWithRevision",
  1617. "when": "gitlens:enabled",
  1618. "group": "1_gitlens@1"
  1619. },
  1620. {
  1621. "command": "gitlens.showQuickFileHistory",
  1622. "when": "gitlens:enabled",
  1623. "group": "1_gitlens_1@1"
  1624. },
  1625. {
  1626. "command": "gitlens.stashSave",
  1627. "when": "gitlens:enabled",
  1628. "group": "2_gitlens@1"
  1629. }
  1630. ],
  1631. "view/title": [
  1632. {
  1633. "command": "gitlens.showCommitSearch",
  1634. "when": "view == gitlens.gitExplorer",
  1635. "group": "navigation@1"
  1636. },
  1637. {
  1638. "command": "gitlens.gitExplorer.switchToHistoryView",
  1639. "when": "view == gitlens.gitExplorer && gitlens:gitExplorer:view == repository",
  1640. "group": "navigation@2"
  1641. },
  1642. {
  1643. "command": "gitlens.gitExplorer.switchToRepositoryView",
  1644. "when": "view == gitlens.gitExplorer && gitlens:gitExplorer:view == history",
  1645. "group": "navigation@3"
  1646. },
  1647. {
  1648. "command": "gitlens.gitExplorer.refresh",
  1649. "when": "view == gitlens.gitExplorer",
  1650. "group": "navigation@4"
  1651. }
  1652. ],
  1653. "view/item/context": [
  1654. {
  1655. "command": "gitlens.openBranchesInRemote",
  1656. "when": "view == gitlens.gitExplorer && viewItem == gitlens:branches:remote",
  1657. "group": "1_gitlens@1"
  1658. },
  1659. {
  1660. "command": "gitlens.openBranchInRemote",
  1661. "when": "view == gitlens.gitExplorer && viewItem == gitlens:branch-history:remote",
  1662. "group": "1_gitlens@1"
  1663. },
  1664. {
  1665. "command": "gitlens.openCommitInRemote",
  1666. "when": "gitlens:hasRemotes && view == gitlens.gitExplorer && viewItem == gitlens:commit",
  1667. "group": "1_gitlens@1"
  1668. },
  1669. {
  1670. "command": "gitlens.gitExplorer.openChangedFileChanges",
  1671. "when": "view == gitlens.gitExplorer && viewItem == gitlens:commit",
  1672. "group": "2_gitlens@1"
  1673. },
  1674. {
  1675. "command": "gitlens.gitExplorer.openChangedFileChangesWithWorking",
  1676. "when": "view == gitlens.gitExplorer && viewItem == gitlens:commit",
  1677. "group": "2_gitlens@1"
  1678. },
  1679. {
  1680. "command": "gitlens.gitExplorer.openChangedFiles",
  1681. "when": "view == gitlens.gitExplorer && viewItem == gitlens:commit",
  1682. "group": "3_gitlens@1"
  1683. },
  1684. {
  1685. "command": "gitlens.gitExplorer.openChangedFileRevisions",
  1686. "when": "view == gitlens.gitExplorer && viewItem == gitlens:commit",
  1687. "group": "3_gitlens@2"
  1688. },
  1689. {
  1690. "command": "gitlens.copyShaToClipboard",
  1691. "when": "view == gitlens.gitExplorer && viewItem == gitlens:commit",
  1692. "group": "4_gitlens@1"
  1693. },
  1694. {
  1695. "command": "gitlens.copyMessageToClipboard",
  1696. "when": "view == gitlens.gitExplorer && viewItem == gitlens:commit",
  1697. "group": "4_gitlens@2"
  1698. },
  1699. {
  1700. "command": "gitlens.showQuickCommitDetails",
  1701. "when": "view == gitlens.gitExplorer && viewItem == gitlens:commit",
  1702. "group": "5_gitlens@1"
  1703. },
  1704. {
  1705. "command": "gitlens.gitExplorer.openChanges",
  1706. "when": "view == gitlens.gitExplorer && viewItem == gitlens:commit-file",
  1707. "group": "1_gitlens@1"
  1708. },
  1709. {
  1710. "command": "gitlens.gitExplorer.openChangesWithWorking",
  1711. "when": "view == gitlens.gitExplorer && viewItem == gitlens:commit-file",
  1712. "group": "1_gitlens@2"
  1713. },
  1714. {
  1715. "command": "gitlens.gitExplorer.openFile",
  1716. "when": "view == gitlens.gitExplorer && viewItem == gitlens:commit-file",
  1717. "group": "2_gitlens@1"
  1718. },
  1719. {
  1720. "command": "gitlens.gitExplorer.openFileRevision",
  1721. "when": "view == gitlens.gitExplorer && viewItem == gitlens:commit-file",
  1722. "group": "2_gitlens@2"
  1723. },
  1724. {
  1725. "command": "gitlens.openFileInRemote",
  1726. "when": "gitlens:hasRemotes && view == gitlens.gitExplorer && viewItem == gitlens:commit-file",
  1727. "group": "3_gitlens@1"
  1728. },
  1729. {
  1730. "command": "gitlens.gitExplorer.openFileRevisionInRemote",
  1731. "when": "gitlens:hasRemotes && view == gitlens.gitExplorer && viewItem == gitlens:commit-file",
  1732. "group": "3_gitlens@2"
  1733. },
  1734. {
  1735. "command": "gitlens.gitExplorer.applyChanges",
  1736. "when": "view == gitlens.gitExplorer && viewItem == gitlens:commit-file",
  1737. "group": "4_gitlens@1"
  1738. },
  1739. {
  1740. "command": "gitlens.showQuickFileHistory",
  1741. "when": "view == gitlens.gitExplorer && viewItem == gitlens:commit-file && gitlens:gitExplorer:view == repository",
  1742. "group": "5_gitlens@1"
  1743. },
  1744. {
  1745. "command": "gitlens.showQuickCommitFileDetails",
  1746. "when": "view == gitlens.gitExplorer && viewItem == gitlens:commit-file",
  1747. "group": "5_gitlens@2"
  1748. },
  1749. {
  1750. "command": "gitlens.gitExplorer.openFile",
  1751. "when": "view == gitlens.gitExplorer && viewItem == gitlens:file-history",
  1752. "group": "1_gitlens@1"
  1753. },
  1754. {
  1755. "command": "gitlens.openFileInRemote",
  1756. "when": "gitlens:hasRemotes && view == gitlens.gitExplorer && viewItem == gitlens:file-history",
  1757. "group": "1_gitlens@2"
  1758. },
  1759. {
  1760. "command": "gitlens.openBranchesInRemote",
  1761. "when": "gitlens:hasRemotes && view == gitlens.gitExplorer && viewItem == gitlens:remote",
  1762. "group": "1_gitlens@1"
  1763. },
  1764. {
  1765. "command": "gitlens.openRepoInRemote",
  1766. "when": "gitlens:hasRemotes && view == gitlens.gitExplorer && viewItem == gitlens:remote",
  1767. "group": "1_gitlens@2"
  1768. },
  1769. {
  1770. "command": "gitlens.stashSave",
  1771. "when": "view == gitlens.gitExplorer && viewItem == gitlens:stashes",
  1772. "group": "1_gitlens@1"
  1773. },
  1774. {
  1775. "command": "gitlens.stashApply",
  1776. "when": "view == gitlens.gitExplorer && viewItem == gitlens:stash",
  1777. "group": "1_gitlens@1"
  1778. },
  1779. {
  1780. "command": "gitlens.stashDelete",
  1781. "when": "view == gitlens.gitExplorer && viewItem == gitlens:stash",
  1782. "group": "1_gitlens@2"
  1783. },
  1784. {
  1785. "command": "gitlens.gitExplorer.openChangedFileChanges",
  1786. "when": "view == gitlens.gitExplorer && viewItem == gitlens:stash",
  1787. "group": "2_gitlens@1"
  1788. },
  1789. {
  1790. "command": "gitlens.gitExplorer.openChangedFileChangesWithWorking",
  1791. "when": "view == gitlens.gitExplorer && viewItem == gitlens:stash",
  1792. "group": "2_gitlens@1"
  1793. },
  1794. {
  1795. "command": "gitlens.gitExplorer.openChangedFiles",
  1796. "when": "view == gitlens.gitExplorer && viewItem == gitlens:stash",
  1797. "group": "3_gitlens@1"
  1798. },
  1799. {
  1800. "command": "gitlens.gitExplorer.openChangedFileRevisions",
  1801. "when": "view == gitlens.gitExplorer && viewItem == gitlens:stash",
  1802. "group": "3_gitlens@2"
  1803. },
  1804. {
  1805. "command": "gitlens.copyMessageToClipboard",
  1806. "when": "view == gitlens.gitExplorer && viewItem == gitlens:stash",
  1807. "group": "4_gitlens@1"
  1808. },
  1809. {
  1810. "command": "gitlens.gitExplorer.applyChanges",
  1811. "when": "view == gitlens.gitExplorer && viewItem == gitlens:stash-file",
  1812. "group": "1_gitlens@1"
  1813. },
  1814. {
  1815. "command": "gitlens.gitExplorer.openChanges",
  1816. "when": "view == gitlens.gitExplorer && viewItem == gitlens:stash-file",
  1817. "group": "2_gitlens@1"
  1818. },
  1819. {
  1820. "command": "gitlens.gitExplorer.openChangesWithWorking",
  1821. "when": "view == gitlens.gitExplorer && viewItem == gitlens:stash-file",
  1822. "group": "2_gitlens@2"
  1823. },
  1824. {
  1825. "command": "gitlens.gitExplorer.openFile",
  1826. "when": "view == gitlens.gitExplorer && viewItem == gitlens:stash-file",
  1827. "group": "3_gitlens@1"
  1828. },
  1829. {
  1830. "command": "gitlens.gitExplorer.openFileRevision",
  1831. "when": "view == gitlens.gitExplorer && viewItem == gitlens:stash-file",
  1832. "group": "3_gitlens@2"
  1833. },
  1834. {
  1835. "command": "gitlens.openFileInRemote",
  1836. "when": "gitlens:hasRemotes && view == gitlens.gitExplorer && viewItem == gitlens:stash-file",
  1837. "group": "4_gitlens@1"
  1838. },
  1839. {
  1840. "command": "gitlens.showQuickFileHistory",
  1841. "when": "view == gitlens.gitExplorer && viewItem == gitlens:stash-file",
  1842. "group": "5_gitlens@1"
  1843. },
  1844. {
  1845. "command": "gitlens.openRepoInRemote",
  1846. "when": "gitlens:hasRemotes && view == gitlens.gitExplorer && viewItem == gitlens:status",
  1847. "group": "1_gitlens@1"
  1848. },
  1849. {
  1850. "command": "gitlens.gitExplorer.openChanges",
  1851. "when": "view == gitlens.gitExplorer && viewItem == gitlens:status-file",
  1852. "group": "1_gitlens@1"
  1853. },
  1854. {
  1855. "command": "gitlens.gitExplorer.openChangesWithWorking",
  1856. "when": "view == gitlens.gitExplorer && viewItem == gitlens:status-file",
  1857. "group": "1_gitlens@2"
  1858. },
  1859. {
  1860. "command": "gitlens.gitExplorer.openFile",
  1861. "when": "view == gitlens.gitExplorer && viewItem == gitlens:status-file",
  1862. "group": "2_gitlens@1"
  1863. },
  1864. {
  1865. "command": "gitlens.gitExplorer.openFileRevision",
  1866. "when": "view == gitlens.gitExplorer && viewItem == gitlens:status-file",
  1867. "group": "2_gitlens@2"
  1868. },
  1869. {
  1870. "command": "gitlens.openFileInRemote",
  1871. "when": "gitlens:hasRemotes && view == gitlens.gitExplorer && viewItem == gitlens:status-file",
  1872. "group": "3_gitlens@1"
  1873. },
  1874. {
  1875. "command": "gitlens.showQuickFileHistory",
  1876. "when": "view == gitlens.gitExplorer && viewItem == gitlens:status-file && gitlens:gitExplorer:view == repository",
  1877. "group": "5_gitlens@1"
  1878. },
  1879. {
  1880. "command": "gitlens.showQuickCommitFileDetails",
  1881. "when": "view == gitlens.gitExplorer && viewItem == gitlens:status-file",
  1882. "group": "5_gitlens@2"
  1883. },
  1884. {
  1885. "command": "gitlens.gitExplorer.openFile",
  1886. "when": "view == gitlens.gitExplorer && viewItem == gitlens:status-file-commits",
  1887. "group": "1_gitlens@1"
  1888. },
  1889. {
  1890. "command": "gitlens.openFileInRemote",
  1891. "when": "gitlens:hasRemotes && view == gitlens.gitExplorer && viewItem == gitlens:status-file-commits",
  1892. "group": "1_gitlens@2"
  1893. },
  1894. {
  1895. "command": "gitlens.gitExplorer.refresh",
  1896. "when": "view == gitlens.gitExplorer && viewItem != gitlens:commit-file && viewItem != gitlens:stash-file && viewItem != gitlens:status-file",
  1897. "group": "9_gitlens@1"
  1898. }
  1899. ]
  1900. },
  1901. "keybindings": [
  1902. {
  1903. "command": "gitlens.key.left",
  1904. "key": "alt+left",
  1905. "when": "gitlens:key:left"
  1906. },
  1907. {
  1908. "command": "gitlens.key.right",
  1909. "key": "alt+right",
  1910. "when": "gitlens:key:right"
  1911. },
  1912. {
  1913. "command": "gitlens.key.,",
  1914. "key": "alt+,",
  1915. "when": "gitlens:key:,"
  1916. },
  1917. {
  1918. "command": "gitlens.key..",
  1919. "key": "alt+.",
  1920. "when": "gitlens:key:."
  1921. },
  1922. {
  1923. "command": "gitlens.key.escape",
  1924. "key": "escape",
  1925. "when": "gitlens:key:escape"
  1926. },
  1927. {
  1928. "command": "gitlens.toggleFileBlame",
  1929. "key": "alt+b",
  1930. "when": "editorTextFocus && gitlens:isTracked"
  1931. },
  1932. {
  1933. "command": "gitlens.toggleCodeLens",
  1934. "key": "shift+alt+b",
  1935. "when": "editorTextFocus && gitlens:isTracked && gitlens:canToggleCodeLens"
  1936. },
  1937. {
  1938. "command": "gitlens.showLastQuickPick",
  1939. "key": "alt+-",
  1940. "when": "gitlens:enabled"
  1941. },
  1942. {
  1943. "command": "gitlens.showCommitSearch",
  1944. "key": "alt+/",
  1945. "when": "gitlens:enabled"
  1946. },
  1947. {
  1948. "command": "gitlens.showQuickFileHistory",
  1949. "key": "alt+h",
  1950. "when": "gitlens:enabled"
  1951. },
  1952. {
  1953. "command": "gitlens.showQuickRepoHistory",
  1954. "key": "shift+alt+h",
  1955. "when": "gitlens:enabled"
  1956. },
  1957. {
  1958. "command": "gitlens.showQuickRepoStatus",
  1959. "key": "alt+s",
  1960. "when": "gitlens:enabled"
  1961. },
  1962. {
  1963. "command": "gitlens.showQuickCommitFileDetails",
  1964. "key": "alt+c",
  1965. "when": "editorTextFocus && gitlens:enabled"
  1966. },
  1967. {
  1968. "command": "gitlens.diffWithNext",
  1969. "key": "alt+.",
  1970. "when": "editorTextFocus && gitlens:isTracked"
  1971. },
  1972. {
  1973. "command": "gitlens.diffLineWithPrevious",
  1974. "key": "shift+alt+,",
  1975. "when": "editorTextFocus && gitlens:isTracked"
  1976. },
  1977. {
  1978. "command": "gitlens.diffWithPrevious",
  1979. "key": "alt+,",
  1980. "when": "editorTextFocus && gitlens:isTracked"
  1981. },
  1982. {
  1983. "command": "gitlens.diffLineWithWorking",
  1984. "key": "alt+w",
  1985. "when": "editorTextFocus && gitlens:isTracked"
  1986. },
  1987. {
  1988. "command": "gitlens.diffWithWorking",
  1989. "key": "shift+alt+w",
  1990. "when": "editorTextFocus && gitlens:isTracked"
  1991. }
  1992. ],
  1993. "views": {
  1994. "explorer": [
  1995. {
  1996. "id": "gitlens.gitExplorer",
  1997. "name": "GitLens",
  1998. "when": "gitlens:enabled && config.gitlens.gitExplorer.enabled"
  1999. }
  2000. ]
  2001. }
  2002. },
  2003. "activationEvents": [
  2004. "*"
  2005. ],
  2006. "scripts": {
  2007. "clean": "git clean -xdf",
  2008. "compile": "npm run lint && tsc -p ./",
  2009. "watch": "tsc -watch -p ./",
  2010. "lint": "tslint --project tslint.json",
  2011. "pack": "npm run clean && vsce package",
  2012. "postinstall": "node ./node_modules/vscode/bin/install",
  2013. "pub": "npm run clean && vsce publish",
  2014. "reset": "npm run clean && npm install",
  2015. "vscode:prepublish": "npm install --no-save && npm run compile",
  2016. "precommit": "npm run compile"
  2017. },
  2018. "dependencies": {
  2019. "applicationinsights": "0.21.0",
  2020. "copy-paste": "1.3.0",
  2021. "iconv-lite": "0.4.19",
  2022. "ignore": "3.3.5",
  2023. "lodash.debounce": "4.0.8",
  2024. "lodash.escaperegexp": "4.1.2",
  2025. "lodash.isequal": "4.5.0",
  2026. "lodash.once": "4.1.1",
  2027. "moment": "2.18.1",
  2028. "spawn-rx": "2.0.11",
  2029. "tmp": "0.0.33"
  2030. },
  2031. "devDependencies": {
  2032. "@types/copy-paste": "1.1.30",
  2033. "@types/iconv-lite": "0.0.1",
  2034. "@types/mocha": "2.2.43",
  2035. "@types/node": "8.0.31",
  2036. "@types/tmp": "0.0.33",
  2037. "husky": "^0.14.3",
  2038. "mocha": "3.5.3",
  2039. "tslint": "5.7.0",
  2040. "typescript": "2.5.3",
  2041. "vscode": "1.1.5"
  2042. }
  2043. }