Ви не можете вибрати більше 25 тем Теми мають розпочинатися з літери або цифри, можуть містити дефіси (-) і не повинні перевищувати 35 символів.

5657 рядки
171 KiB

5 роки тому
5 роки тому
5 роки тому
5 роки тому
5 роки тому
5 роки тому
5 роки тому
5 роки тому
5 роки тому
5 роки тому
5 роки тому
5 роки тому
5 роки тому
5 роки тому
6 роки тому
  1. {
  2. "name": "gitlens",
  3. "displayName": "GitLens — Git supercharged",
  4. "description": "Supercharge the Git capabilities built into Visual Studio Code — Visualize code authorship at a glance via Git blame annotations and code lens, seamlessly navigate and explore Git repositories, gain valuable insights via powerful comparison commands, and so much more",
  5. "version": "10.0.0-alpha",
  6. "author": {
  7. "name": "Eric Amodio",
  8. "email": "eamodio@gmail.com"
  9. },
  10. "publisher": "eamodio",
  11. "license": "SEE LICENSE IN LICENSE",
  12. "homepage": "https://github.com/eamodio/vscode-gitlens/blob/master/README.md",
  13. "bugs": {
  14. "url": "https://github.com/eamodio/vscode-gitlens/issues"
  15. },
  16. "repository": {
  17. "type": "git",
  18. "url": "https://github.com/eamodio/vscode-gitlens.git"
  19. },
  20. "engines": {
  21. "vscode": "^1.37.0"
  22. },
  23. "main": "./dist/extension",
  24. "icon": "images/gitlens-icon.png",
  25. "preview": false,
  26. "badges": [
  27. {
  28. "url": "https://img.shields.io/badge/vscode--dev--community-gitlens-blue.svg?logo=slack&labelColor=555555",
  29. "href": "https://vscode-slack.amod.io",
  30. "description": "Join us in the #gitlens channel"
  31. }
  32. ],
  33. "categories": [
  34. "Other"
  35. ],
  36. "galleryBanner": {
  37. "color": "#8647ae",
  38. "theme": "dark"
  39. },
  40. "keywords": [
  41. "gitlens",
  42. "git",
  43. "blame",
  44. "log",
  45. "annotation",
  46. "multi-root ready"
  47. ],
  48. "activationEvents": [
  49. "*"
  50. ],
  51. "contributes": {
  52. "configuration": {
  53. "type": "object",
  54. "title": "GitLens — Use 'GitLens: Open Settings' for a richer, interactive experience",
  55. "properties": {
  56. "gitlens.blame.avatars": {
  57. "type": "boolean",
  58. "default": true,
  59. "markdownDescription": "Specifies whether to show avatar images in the gutter blame annotations",
  60. "scope": "window"
  61. },
  62. "gitlens.blame.compact": {
  63. "type": "boolean",
  64. "default": true,
  65. "markdownDescription": "Specifies whether to compact (deduplicate) matching adjacent gutter blame annotations",
  66. "scope": "window"
  67. },
  68. "gitlens.blame.dateFormat": {
  69. "type": "string",
  70. "default": null,
  71. "markdownDescription": "Specifies how to format absolute dates (e.g. using the `${date}` token) in gutter blame annotations. See the [Moment.js docs](https://momentjs.com/docs/#/displaying/format/) for valid formats",
  72. "scope": "window"
  73. },
  74. "gitlens.blame.format": {
  75. "type": "string",
  76. "default": "${message|40?} ${agoOrDate|14-}",
  77. "markdownDescription": "Specifies the format of the gutter blame annotations. See [_Commit Tokens_](https://github.com/eamodio/vscode-gitlens/wiki/Custom-Formatting#commit-tokens) in the GitLens docs. Date formatting is controlled by the `#gitlens.blame.dateFormat#` setting",
  78. "scope": "window"
  79. },
  80. "gitlens.blame.heatmap.enabled": {
  81. "type": "boolean",
  82. "default": true,
  83. "markdownDescription": "Specifies whether to provide a heatmap indicator in the gutter blame annotations",
  84. "scope": "window"
  85. },
  86. "gitlens.blame.heatmap.location": {
  87. "type": "string",
  88. "default": "right",
  89. "enum": [
  90. "left",
  91. "right"
  92. ],
  93. "enumDescriptions": [
  94. "Adds a heatmap indicator on the left edge of the gutter blame annotations",
  95. "Adds a heatmap indicator on the right edge of the gutter blame annotations"
  96. ],
  97. "markdownDescription": "Specifies where the heatmap indicators will be shown in the gutter blame annotations",
  98. "scope": "window"
  99. },
  100. "gitlens.blame.highlight.enabled": {
  101. "type": "boolean",
  102. "default": true,
  103. "markdownDescription": "Specifies whether to highlight lines associated with the current line",
  104. "scope": "window"
  105. },
  106. "gitlens.blame.highlight.locations": {
  107. "type": "array",
  108. "default": [
  109. "gutter",
  110. "line",
  111. "overview"
  112. ],
  113. "items": {
  114. "type": "string",
  115. "enum": [
  116. "gutter",
  117. "line",
  118. "overview"
  119. ],
  120. "enumDescriptions": [
  121. "Adds a gutter glyph",
  122. "Adds a full-line highlight background color",
  123. "Adds a decoration to the overview ruler (scroll bar)"
  124. ]
  125. },
  126. "minItems": 1,
  127. "maxItems": 3,
  128. "uniqueItems": true,
  129. "markdownDescription": "Specifies where the associated line highlights will be shown",
  130. "scope": "window"
  131. },
  132. "gitlens.blame.ignoreWhitespace": {
  133. "type": "boolean",
  134. "default": false,
  135. "markdownDescription": "Specifies whether to ignore whitespace when comparing revisions during blame operations",
  136. "scope": "resource"
  137. },
  138. "gitlens.blame.separateLines": {
  139. "type": "boolean",
  140. "default": true,
  141. "markdownDescription": "Specifies whether gutter blame annotations will be separated by a small gap",
  142. "scope": "window"
  143. },
  144. "gitlens.blame.toggleMode": {
  145. "type": "string",
  146. "default": "file",
  147. "enum": [
  148. "file",
  149. "window"
  150. ],
  151. "enumDescriptions": [
  152. "Toggles each file individually",
  153. "Toggles the window, i.e. all files at once"
  154. ],
  155. "markdownDescription": "Specifies how the gutter blame annotations will be toggled",
  156. "scope": "window"
  157. },
  158. "gitlens.codeLens.authors.command": {
  159. "type": "string",
  160. "default": "gitlens.toggleFileBlame",
  161. "enum": [
  162. "gitlens.toggleFileBlame",
  163. "gitlens.diffWithPrevious",
  164. "gitlens.showQuickCommitDetails",
  165. "gitlens.showQuickCommitFileDetails",
  166. "gitlens.showQuickFileHistory",
  167. "gitlens.showQuickRepoHistory"
  168. ],
  169. "enumDescriptions": [
  170. "Toggles file blame annotations",
  171. "Compares the current committed file with the previous commit",
  172. "Shows a commit details quick pick",
  173. "Shows a commit file details quick pick",
  174. "Shows a file history quick pick",
  175. "Shows a branch history quick pick"
  176. ],
  177. "markdownDescription": "Specifies the command to be executed when an _authors_ code lens is clicked",
  178. "scope": "window"
  179. },
  180. "gitlens.codeLens.authors.enabled": {
  181. "type": "boolean",
  182. "default": true,
  183. "markdownDescription": "Specifies whether to provide 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)",
  184. "scope": "window"
  185. },
  186. "gitlens.codeLens.enabled": {
  187. "type": "boolean",
  188. "default": true,
  189. "markdownDescription": "Specifies whether to provide any Git code lens, by default. Use the `Toggle Git Code Lens` command (`gitlens.toggleCodeLens`) to toggle the Git code lens on and off for the current window",
  190. "scope": "window"
  191. },
  192. "gitlens.codeLens.includeSingleLineSymbols": {
  193. "type": "boolean",
  194. "default": false,
  195. "markdownDescription": "Specifies whether to provide any Git code lens on symbols that span only a single line",
  196. "scope": "window"
  197. },
  198. "gitlens.codeLens.recentChange.command": {
  199. "type": "string",
  200. "default": "gitlens.showQuickCommitFileDetails",
  201. "enum": [
  202. "gitlens.toggleFileBlame",
  203. "gitlens.diffWithPrevious",
  204. "gitlens.showQuickCommitDetails",
  205. "gitlens.showQuickCommitFileDetails",
  206. "gitlens.showQuickFileHistory",
  207. "gitlens.showQuickRepoHistory"
  208. ],
  209. "enumDescriptions": [
  210. "Toggles file blame annotations",
  211. "Compares the current committed file with the previous commit",
  212. "Shows a commit details quick pick",
  213. "Shows a commit file details quick pick",
  214. "Shows a file history quick pick",
  215. "Shows a branch history quick pick"
  216. ],
  217. "markdownDescription": "Specifies the command to be executed when a _recent change_ code lens is clicked",
  218. "scope": "window"
  219. },
  220. "gitlens.codeLens.recentChange.enabled": {
  221. "type": "boolean",
  222. "default": true,
  223. "markdownDescription": "Specifies whether to provide a _recent change_ code lens, showing the author and date of the most recent commit for the file or code block",
  224. "scope": "window"
  225. },
  226. "gitlens.codeLens.scopes": {
  227. "type": "array",
  228. "default": [
  229. "document",
  230. "containers"
  231. ],
  232. "items": {
  233. "type": "string",
  234. "enum": [
  235. "document",
  236. "containers",
  237. "blocks"
  238. ],
  239. "enumDescriptions": [
  240. "Adds code lens at the top of the document",
  241. "Adds code lens at the start of container-like symbols (modules, classes, interfaces, etc)",
  242. "Adds code lens at the start of block-like symbols (functions, methods, etc) lines"
  243. ]
  244. },
  245. "minItems": 1,
  246. "maxItems": 4,
  247. "uniqueItems": true,
  248. "markdownDescription": "Specifies where Git code lens will be shown in the document",
  249. "scope": "resource"
  250. },
  251. "gitlens.codeLens.scopesByLanguage": {
  252. "type": "array",
  253. "default": [
  254. {
  255. "language": "azure-pipelines",
  256. "scopes": [
  257. "document"
  258. ]
  259. },
  260. {
  261. "language": "ansible",
  262. "scopes": [
  263. "document"
  264. ]
  265. },
  266. {
  267. "language": "css",
  268. "scopes": [
  269. "document"
  270. ]
  271. },
  272. {
  273. "language": "html",
  274. "scopes": [
  275. "document"
  276. ]
  277. },
  278. {
  279. "language": "json",
  280. "scopes": [
  281. "document"
  282. ]
  283. },
  284. {
  285. "language": "jsonc",
  286. "scopes": [
  287. "document"
  288. ]
  289. },
  290. {
  291. "language": "less",
  292. "scopes": [
  293. "document"
  294. ]
  295. },
  296. {
  297. "language": "postcss",
  298. "scopes": [
  299. "document"
  300. ]
  301. },
  302. {
  303. "language": "python",
  304. "symbolScopes": [
  305. "!Module"
  306. ]
  307. },
  308. {
  309. "language": "scss",
  310. "scopes": [
  311. "document"
  312. ]
  313. },
  314. {
  315. "language": "stylus",
  316. "scopes": [
  317. "document"
  318. ]
  319. },
  320. {
  321. "language": "vue",
  322. "scopes": [
  323. "document"
  324. ]
  325. },
  326. {
  327. "language": "yaml",
  328. "scopes": [
  329. "document"
  330. ]
  331. }
  332. ],
  333. "items": {
  334. "type": "object",
  335. "required": [
  336. "language"
  337. ],
  338. "properties": {
  339. "language": {
  340. "type": "string",
  341. "description": "Specifies the language to which this code lens override applies"
  342. },
  343. "scopes": {
  344. "type": "array",
  345. "default": [
  346. "document",
  347. "containers"
  348. ],
  349. "items": {
  350. "type": "string",
  351. "enum": [
  352. "document",
  353. "containers",
  354. "blocks",
  355. "custom"
  356. ],
  357. "enumDescriptions": [
  358. "Adds code lens at the top of the document",
  359. "Adds code lens at the start of container-like symbols (modules, classes, interfaces, etc)",
  360. "Adds code lens at the start of block-like symbols (functions, methods, properties, etc) lines",
  361. "Adds code lens at the start of symbols contained in `symbolScopes`"
  362. ]
  363. },
  364. "minItems": 1,
  365. "maxItems": 4,
  366. "uniqueItems": true,
  367. "description": "Specifies where Git code lens will be shown in the document for the specified language"
  368. },
  369. "symbolScopes": {
  370. "type": "array",
  371. "items": {
  372. "type": "string"
  373. },
  374. "uniqueItems": true,
  375. "description": "Specifies the set of document symbols where Git code lens will be shown in the document for the specified language. Must be a member of `SymbolKind`"
  376. }
  377. }
  378. },
  379. "uniqueItems": true,
  380. "markdownDescription": "Specifies where Git code lens will be shown in the document for the specified languages",
  381. "scope": "resource"
  382. },
  383. "gitlens.codeLens.symbolScopes": {
  384. "type": "array",
  385. "items": {
  386. "type": "string"
  387. },
  388. "uniqueItems": true,
  389. "markdownDescription": "Specifies a set of document symbols where Git code lens will or will not be shown in the document. Prefix with `!` to avoid providing a Git code lens for the symbol. Must be a member of `SymbolKind`",
  390. "scope": "resource"
  391. },
  392. "gitlens.currentLine.dateFormat": {
  393. "type": "string",
  394. "default": null,
  395. "markdownDescription": "Specifies how to format absolute dates (e.g. using the `${date}` token) for the current line blame annotation. See the [Moment.js docs](https://momentjs.com/docs/#/displaying/format/) for valid formats",
  396. "scope": "window"
  397. },
  398. "gitlens.currentLine.enabled": {
  399. "type": "boolean",
  400. "default": true,
  401. "markdownDescription": "Specifies whether to provide a blame annotation for the current line, by default. Use the `Toggle Line Blame Annotations` command (`gitlens.toggleLineBlame`) to toggle the annotations on and off for the current window",
  402. "scope": "window"
  403. },
  404. "gitlens.currentLine.format": {
  405. "type": "string",
  406. "default": "${author}, ${agoOrDate} • ${message}",
  407. "markdownDescription": "Specifies the format of the current line blame annotation. See [_Commit Tokens_](https://github.com/eamodio/vscode-gitlens/wiki/Custom-Formatting#commit-tokens) in the GitLens docs. Date formatting is controlled by the `#gitlens.currentLine.dateFormat#` setting",
  408. "scope": "window"
  409. },
  410. "gitlens.currentLine.scrollable": {
  411. "type": "boolean",
  412. "default": true,
  413. "markdownDescription": "Specifies whether the current line blame annotation can be scrolled into view when it is outside the viewport",
  414. "scope": "window"
  415. },
  416. "gitlens.debug": {
  417. "type": "boolean",
  418. "default": false,
  419. "markdownDescription": "Specifies debug mode",
  420. "scope": "window"
  421. },
  422. "gitlens.defaultDateFormat": {
  423. "type": "string",
  424. "default": null,
  425. "markdownDescription": "Specifies how absolute dates will be formatted by default. See the [Moment.js docs](https://momentjs.com/docs/#/displaying/format/) for valid formats",
  426. "scope": "window"
  427. },
  428. "gitlens.defaultDateShortFormat": {
  429. "type": "string",
  430. "default": null,
  431. "markdownDescription": "Specifies how short absolute dates will be formatted by default. See the [Moment.js docs](https://momentjs.com/docs/#/displaying/format/) for valid formats",
  432. "scope": "window"
  433. },
  434. "gitlens.defaultDateSource": {
  435. "type": "string",
  436. "default": "authored",
  437. "enum": [
  438. "authored",
  439. "committed"
  440. ],
  441. "enumDescriptions": [
  442. "Uses the date when the changes were authored (i.e. originally written)",
  443. "Uses the date when the changes were committed"
  444. ],
  445. "markdownDescription": "Specifies whether commit dates should use the authored or committed date",
  446. "scope": "window"
  447. },
  448. "gitlens.defaultDateStyle": {
  449. "type": "string",
  450. "default": "relative",
  451. "enum": [
  452. "relative",
  453. "absolute"
  454. ],
  455. "enumDescriptions": [
  456. "e.g. 1 day ago",
  457. "e.g. July 25th, 2018 7:18pm"
  458. ],
  459. "markdownDescription": "Specifies how dates will be displayed by default",
  460. "scope": "window"
  461. },
  462. "gitlens.defaultGravatarsStyle": {
  463. "type": "string",
  464. "default": "robohash",
  465. "enum": [
  466. "identicon",
  467. "mp",
  468. "monsterid",
  469. "retro",
  470. "robohash",
  471. "wavatar"
  472. ],
  473. "enumDescriptions": [
  474. "A geometric pattern",
  475. "A simple, cartoon-style silhouetted outline of a person (does not vary by email hash)",
  476. "A monster with different colors, faces, etc",
  477. "8-bit arcade-style pixelated faces",
  478. "A robot with different colors, faces, etc",
  479. "A face with differing features and backgrounds"
  480. ],
  481. "markdownDescription": "Specifies the style of the gravatar default (fallback) images",
  482. "scope": "window"
  483. },
  484. "gitlens.gitCommands.closeOnFocusOut": {
  485. "type": "boolean",
  486. "default": false,
  487. "markdownDescription": "Specifies whether to dismiss the Git Commands menu when focus is lost (if not, press `ESC` to dismiss)",
  488. "scope": "window"
  489. },
  490. "gitlens.gitCommands.skipConfirmations": {
  491. "type": "array",
  492. "default": [
  493. "fetch:command",
  494. "stash-push:command",
  495. "switch:command"
  496. ],
  497. "items": {
  498. "type": "string",
  499. "enum": [
  500. "fetch:command",
  501. "fetch:menu",
  502. "pull:command",
  503. "pull:menu",
  504. "push:command",
  505. "push:menu",
  506. "stash-apply:command",
  507. "stash-apply:menu",
  508. "stash-pop:command",
  509. "stash-pop:menu",
  510. "stash-push:command",
  511. "stash-push:menu",
  512. "switch:command",
  513. "switch:menu"
  514. ],
  515. "enumDescriptions": [
  516. "Skips fetch confirmations when run from a command, e.g. a view action",
  517. "Skips fetch confirmations when run from the `Git Commands` menu",
  518. "Skips pull confirmations when run from a command, e.g. a view action",
  519. "Skips pull confirmations when run from the `Git Commands` menu",
  520. "Skips push confirmations when run from a command, e.g. a view action",
  521. "Skips push confirmations when run from the `Git Commands` menu",
  522. "Skips stash apply confirmations when run from a command, e.g. a view action",
  523. "Skips stash apply confirmations when run from the `Git Commands` menu",
  524. "Skips stash pop confirmations when run from a command, e.g. a view action",
  525. "Skips stash pop confirmations when run from the `Git Commands` menu",
  526. "Skips stash push confirmations when run from a command, e.g. a view action",
  527. "Skips stash push confirmations when run from the `Git Commands` menu",
  528. "Skips switch confirmations when run from a command, e.g. a view action",
  529. "Skips switch confirmations when run from the `Git Commands` menu"
  530. ]
  531. },
  532. "minItems": 0,
  533. "maxItems": 14,
  534. "uniqueItems": true,
  535. "markdownDescription": "Specifies which (and when) Git commands will skip the confirmation step, using the format: `git-command-name:(menu|command)`",
  536. "scope": "window"
  537. },
  538. "gitlens.heatmap.ageThreshold": {
  539. "type": "string",
  540. "default": "90",
  541. "markdownDescription": "Specifies the age of the most recent change (in days) after which the gutter heatmap annotations will be cold rather than hot (i.e. will use `#gitlens.heatmap.coldColor#` instead of `#gitlens.heatmap.hotColor#`)",
  542. "scope": "window"
  543. },
  544. "gitlens.heatmap.coldColor": {
  545. "type": "string",
  546. "default": "#0a60f6",
  547. "markdownDescription": "Specifies the base color of the gutter heatmap annotations when the most recent change is older (cold) than the `#gitlens.heatmap.ageThreshold#` value",
  548. "scope": "window"
  549. },
  550. "gitlens.heatmap.hotColor": {
  551. "type": "string",
  552. "default": "#f66a0a",
  553. "markdownDescription": "Specifies the base color of the gutter heatmap annotations when the most recent change is newer (hot) than the `#gitlens.heatmap.ageThreshold#` value",
  554. "scope": "window"
  555. },
  556. "gitlens.heatmap.toggleMode": {
  557. "type": "string",
  558. "default": "file",
  559. "enum": [
  560. "file",
  561. "window"
  562. ],
  563. "enumDescriptions": [
  564. "Toggles each file individually",
  565. "Toggles the window, i.e. all files at once"
  566. ],
  567. "markdownDescription": "Specifies how the gutter heatmap annotations will be toggled",
  568. "scope": "window"
  569. },
  570. "gitlens.hovers.annotations.changes": {
  571. "type": "boolean",
  572. "default": true,
  573. "markdownDescription": "Specifies whether to provide a _changes (diff)_ hover for all lines when showing blame annotations",
  574. "scope": "window"
  575. },
  576. "gitlens.hovers.annotations.details": {
  577. "type": "boolean",
  578. "default": true,
  579. "markdownDescription": "Specifies whether to provide a _commit details_ hover for all lines when showing blame annotations",
  580. "scope": "window"
  581. },
  582. "gitlens.hovers.annotations.enabled": {
  583. "type": "boolean",
  584. "default": true,
  585. "markdownDescription": "Specifies whether to provide any hovers when showing blame annotations",
  586. "scope": "window"
  587. },
  588. "gitlens.hovers.annotations.over": {
  589. "type": "string",
  590. "default": "line",
  591. "enum": [
  592. "annotation",
  593. "line"
  594. ],
  595. "enumDescriptions": [
  596. "Only shown when hovering over the line annotation",
  597. "Shown when hovering anywhere over the line"
  598. ],
  599. "markdownDescription": "Specifies when to trigger hovers when showing blame annotations",
  600. "scope": "window"
  601. },
  602. "gitlens.hovers.currentLine.changes": {
  603. "type": "boolean",
  604. "default": true,
  605. "markdownDescription": "Specifies whether to provide a _changes (diff)_ hover for the current line",
  606. "scope": "window"
  607. },
  608. "gitlens.hovers.currentLine.details": {
  609. "type": "boolean",
  610. "default": true,
  611. "markdownDescription": "Specifies whether to provide a _commit details_ hover for the current line",
  612. "scope": "window"
  613. },
  614. "gitlens.hovers.currentLine.enabled": {
  615. "type": "boolean",
  616. "default": true,
  617. "markdownDescription": "Specifies whether to provide any hovers for the current line",
  618. "scope": "window"
  619. },
  620. "gitlens.hovers.currentLine.over": {
  621. "type": "string",
  622. "default": "annotation",
  623. "enum": [
  624. "annotation",
  625. "line"
  626. ],
  627. "enumDescriptions": [
  628. "Only shown when hovering over the line annotation",
  629. "Shown when hovering anywhere over the line"
  630. ],
  631. "markdownDescription": "Specifies when to trigger hovers for the current line",
  632. "scope": "window"
  633. },
  634. "gitlens.hovers.avatars": {
  635. "type": "boolean",
  636. "default": true,
  637. "markdownDescription": "Specifies whether to show avatar images in hovers",
  638. "scope": "window"
  639. },
  640. "gitlens.hovers.changesDiff": {
  641. "type": "string",
  642. "default": "line",
  643. "enum": [
  644. "line",
  645. "hunk"
  646. ],
  647. "enumDescriptions": [
  648. "Shows only the changes to the line",
  649. "Shows the set of related changes"
  650. ],
  651. "markdownDescription": "Specifies whether to show just the changes to the line or the set of related changes in the _changes (diff)_ hover",
  652. "scope": "window"
  653. },
  654. "gitlens.hovers.detailsMarkdownFormat": {
  655. "type": "string",
  656. "default": "${avatar}  __${author}__, ${ago}   _(${date})_ \n\n${message}\n\n${commands}",
  657. "markdownDescription": "Specifies the format (in markdown) of the _commit details_ hover. See [_Commit Tokens_](https://github.com/eamodio/vscode-gitlens/wiki/Custom-Formatting#commit-tokens) in the GitLens docs",
  658. "scope": "window"
  659. },
  660. "gitlens.hovers.enabled": {
  661. "type": "boolean",
  662. "default": true,
  663. "markdownDescription": "Specifies whether to provide any hovers",
  664. "scope": "window"
  665. },
  666. "gitlens.insiders": {
  667. "type": "boolean",
  668. "default": false,
  669. "markdownDescription": "Specifies whether to enable experimental features",
  670. "scope": "window"
  671. },
  672. "gitlens.keymap": {
  673. "type": "string",
  674. "default": "chorded",
  675. "enum": [
  676. "alternate",
  677. "chorded",
  678. "none"
  679. ],
  680. "enumDescriptions": [
  681. "Adds an alternate set of shortcut keys that start with `Alt` (⌥ on macOS)",
  682. "Adds a chorded set of shortcut keys that start with `Ctrl+Alt+G` (`⌥⌘G` on macOS)",
  683. "No shortcut keys will be added"
  684. ],
  685. "markdownDescription": "Specifies the keymap to use for GitLens shortcut keys",
  686. "scope": "window"
  687. },
  688. "gitlens.liveshare.allowGuestAccess": {
  689. "type": "boolean",
  690. "default": true,
  691. "description": "Specifies whether to allow guest access to GitLens features when using Visual Studio Live Share",
  692. "scope": "window"
  693. },
  694. "gitlens.menus": {
  695. "anyOf": [
  696. {
  697. "enum": [
  698. false
  699. ]
  700. },
  701. {
  702. "type": "object",
  703. "properties": {
  704. "editor": {
  705. "anyOf": [
  706. {
  707. "enum": [
  708. false
  709. ]
  710. },
  711. {
  712. "type": "object",
  713. "properties": {
  714. "blame": {
  715. "type": "boolean"
  716. },
  717. "clipboard": {
  718. "type": "boolean"
  719. },
  720. "compare": {
  721. "type": "boolean"
  722. },
  723. "details": {
  724. "type": "boolean"
  725. },
  726. "history": {
  727. "type": "boolean"
  728. },
  729. "remote": {
  730. "type": "boolean"
  731. }
  732. }
  733. }
  734. ]
  735. },
  736. "editorGroup": {
  737. "anyOf": [
  738. {
  739. "enum": [
  740. false
  741. ]
  742. },
  743. {
  744. "type": "object",
  745. "properties": {
  746. "blame": {
  747. "type": "boolean"
  748. },
  749. "compare": {
  750. "type": "boolean"
  751. }
  752. }
  753. }
  754. ]
  755. },
  756. "editorTab": {
  757. "anyOf": [
  758. {
  759. "enum": [
  760. false
  761. ]
  762. },
  763. {
  764. "type": "object",
  765. "properties": {
  766. "clipboard": {
  767. "type": "boolean"
  768. },
  769. "compare": {
  770. "type": "boolean"
  771. },
  772. "history": {
  773. "type": "boolean"
  774. },
  775. "remote": {
  776. "type": "boolean"
  777. }
  778. }
  779. }
  780. ]
  781. },
  782. "explorer": {
  783. "anyOf": [
  784. {
  785. "enum": [
  786. false
  787. ]
  788. },
  789. {
  790. "type": "object",
  791. "properties": {
  792. "clipboard": {
  793. "type": "boolean"
  794. },
  795. "compare": {
  796. "type": "boolean"
  797. },
  798. "history": {
  799. "type": "boolean"
  800. },
  801. "remote": {
  802. "type": "boolean"
  803. }
  804. }
  805. }
  806. ]
  807. },
  808. "scmGroup": {
  809. "anyOf": [
  810. {
  811. "enum": [
  812. false
  813. ]
  814. },
  815. {
  816. "type": "object",
  817. "properties": {
  818. "compare": {
  819. "type": "boolean"
  820. },
  821. "openClose": {
  822. "type": "boolean"
  823. },
  824. "stash": {
  825. "type": "boolean"
  826. },
  827. "stashInline": {
  828. "type": "boolean"
  829. }
  830. }
  831. }
  832. ]
  833. },
  834. "scmItem": {
  835. "anyOf": [
  836. {
  837. "enum": [
  838. false
  839. ]
  840. },
  841. {
  842. "type": "object",
  843. "properties": {
  844. "clipboard": {
  845. "type": "boolean"
  846. },
  847. "compare": {
  848. "type": "boolean"
  849. },
  850. "history": {
  851. "type": "boolean"
  852. },
  853. "remote": {
  854. "type": "boolean"
  855. },
  856. "stash": {
  857. "type": "boolean"
  858. }
  859. }
  860. }
  861. ]
  862. }
  863. }
  864. }
  865. ],
  866. "default": {
  867. "editor": {
  868. "blame": false,
  869. "clipboard": true,
  870. "compare": true,
  871. "details": false,
  872. "history": false,
  873. "remote": false
  874. },
  875. "editorGroup": {
  876. "blame": true,
  877. "compare": true
  878. },
  879. "editorTab": {
  880. "clipboard": true,
  881. "compare": true,
  882. "history": true,
  883. "remote": true
  884. },
  885. "explorer": {
  886. "clipboard": true,
  887. "compare": true,
  888. "history": true,
  889. "remote": true
  890. },
  891. "scmGroup": {
  892. "compare": true,
  893. "openClose": true,
  894. "stash": true,
  895. "stashInline": true
  896. },
  897. "scmItem": {
  898. "clipboard": true,
  899. "compare": true,
  900. "history": true,
  901. "remote": true,
  902. "stash": true
  903. }
  904. },
  905. "markdownDescription": "Specifies which commands will be added to which menus",
  906. "scope": "window"
  907. },
  908. "gitlens.mode.active": {
  909. "type": "string",
  910. "markdownDescription": "Specifies the active GitLens mode, if any",
  911. "scope": "window"
  912. },
  913. "gitlens.mode.statusBar.enabled": {
  914. "type": "boolean",
  915. "default": true,
  916. "markdownDescription": "Specifies whether to provide the active GitLens mode in the status bar",
  917. "scope": "window"
  918. },
  919. "gitlens.mode.statusBar.alignment": {
  920. "type": "string",
  921. "default": "right",
  922. "enum": [
  923. "left",
  924. "right"
  925. ],
  926. "enumDescriptions": [
  927. "Aligns to the left",
  928. "Aligns to the right"
  929. ],
  930. "markdownDescription": "Specifies the active GitLens mode alignment in the status bar",
  931. "scope": "window"
  932. },
  933. "gitlens.modes": {
  934. "type": "object",
  935. "properties": {
  936. "zen": {
  937. "type": "object",
  938. "properties": {
  939. "name": {
  940. "type": "string",
  941. "description": "Specifies the friendly name of this user-defined mode"
  942. },
  943. "statusBarItemName": {
  944. "type": "string",
  945. "description": "Specifies the name shown in the status bar when this user-defined mode is active"
  946. },
  947. "description": {
  948. "type": "string",
  949. "description": "Specifies the description of this user-defined mode"
  950. },
  951. "codeLens": {
  952. "type": "boolean",
  953. "description": "Specifies whether to show any Git code lens when this user-defined mode is active"
  954. },
  955. "currentLine": {
  956. "type": "boolean",
  957. "description": "Specifies whether to show a blame annotation for the current line when this user-defined mode is active"
  958. },
  959. "hovers": {
  960. "type": "boolean",
  961. "description": "Specifies whether to show any hovers when this user-defined mode is active"
  962. },
  963. "statusBar": {
  964. "type": "boolean",
  965. "description": "Specifies whether to show blame information in the status bar when this user-defined mode is active"
  966. },
  967. "views": {
  968. "type": "boolean",
  969. "description": "Specifies whether to show any GitLens views when this user-defined mode is active"
  970. }
  971. }
  972. },
  973. "review": {
  974. "type": "object",
  975. "properties": {
  976. "name": {
  977. "type": "string",
  978. "description": "Specifies the friendly name of this user-defined mode"
  979. },
  980. "statusBarItemName": {
  981. "type": "string",
  982. "description": "Specifies the name shown in the status bar when this user-defined mode is active"
  983. },
  984. "description": {
  985. "type": "string",
  986. "description": "Specifies the description of this user-defined mode"
  987. },
  988. "codeLens": {
  989. "type": "boolean",
  990. "description": "Specifies whether to show any Git code lens when this user-defined mode is active"
  991. },
  992. "currentLine": {
  993. "type": "boolean",
  994. "description": "Specifies whether to show a blame annotation for the current line when this user-defined mode is active"
  995. },
  996. "hovers": {
  997. "type": "boolean",
  998. "description": "Specifies whether to show any hovers when this user-defined mode is active"
  999. },
  1000. "statusBar": {
  1001. "type": "boolean",
  1002. "description": "Specifies whether to show blame information in the status bar when this user-defined mode is active"
  1003. },
  1004. "views": {
  1005. "type": "boolean",
  1006. "description": "Specifies whether to show any GitLens views when this user-defined mode is active"
  1007. }
  1008. }
  1009. }
  1010. },
  1011. "additionalProperties": {
  1012. "type": "object",
  1013. "required": [
  1014. "name"
  1015. ],
  1016. "properties": {
  1017. "name": {
  1018. "type": "string",
  1019. "description": "Specifies the friendly name of this user-defined mode"
  1020. },
  1021. "statusBarItemName": {
  1022. "type": "string",
  1023. "description": "Specifies the name shown in the status bar when this user-defined mode is active"
  1024. },
  1025. "description": {
  1026. "type": "string",
  1027. "description": "Specifies the description of this user-defined mode"
  1028. },
  1029. "annotations": {
  1030. "type": "string",
  1031. "enum": [
  1032. "blame",
  1033. "heatmap",
  1034. "recentChanges"
  1035. ],
  1036. "enumDescriptions": [
  1037. "Shows the gutter blame annotations",
  1038. "Shows the gutter heatmap annotations",
  1039. "Shows the recently changed lines annotations"
  1040. ],
  1041. "description": "Specifies which (if any) file annotations will be shown when this user-defined mode is active"
  1042. },
  1043. "codeLens": {
  1044. "type": "boolean",
  1045. "description": "Specifies whether to show any Git code lens when this user-defined mode is active"
  1046. },
  1047. "currentLine": {
  1048. "type": "boolean",
  1049. "description": "Specifies whether to show a blame annotation for the current line when this user-defined mode is active"
  1050. },
  1051. "hovers": {
  1052. "type": "boolean",
  1053. "description": "Specifies whether to show any hovers when this user-defined mode is active"
  1054. },
  1055. "statusBar": {
  1056. "type": "boolean",
  1057. "description": "Specifies whether to show blame information in the status bar when this user-defined mode is active"
  1058. },
  1059. "views": {
  1060. "type": "boolean",
  1061. "description": "Specifies whether to show any GitLens views when this user-defined mode is active"
  1062. }
  1063. }
  1064. },
  1065. "default": {
  1066. "zen": {
  1067. "name": "Zen",
  1068. "statusBarItemName": "Zen",
  1069. "description": "for a zen-like experience, disables many visual features",
  1070. "codeLens": false,
  1071. "currentLine": false,
  1072. "hovers": false,
  1073. "statusBar": false
  1074. },
  1075. "review": {
  1076. "name": "Review",
  1077. "statusBarItemName": "Reviewing",
  1078. "description": "for reviewing code, enables many visual features",
  1079. "codeLens": true,
  1080. "currentLine": true,
  1081. "hovers": true
  1082. }
  1083. },
  1084. "markdownDescription": "Specifies the user-defined GitLens modes",
  1085. "scope": "window"
  1086. },
  1087. "gitlens.outputLevel": {
  1088. "type": "string",
  1089. "default": "errors",
  1090. "enum": [
  1091. "silent",
  1092. "errors",
  1093. "verbose",
  1094. "debug"
  1095. ],
  1096. "enumDescriptions": [
  1097. "Logs nothing",
  1098. "Logs only errors",
  1099. "Logs all errors, warnings, and messages",
  1100. "Logs all errors, warnings, and messages with extra context useful for debugging"
  1101. ],
  1102. "markdownDescription": "Specifies how much (if any) output will be sent to the GitLens output channel",
  1103. "scope": "window"
  1104. },
  1105. "gitlens.recentChanges.highlight.locations": {
  1106. "type": "array",
  1107. "default": [
  1108. "gutter",
  1109. "line",
  1110. "overview"
  1111. ],
  1112. "items": {
  1113. "type": "string",
  1114. "enum": [
  1115. "gutter",
  1116. "line",
  1117. "overview"
  1118. ],
  1119. "enumDescriptions": [
  1120. "Adds a gutter glyph",
  1121. "Adds a full-line highlight background color",
  1122. "Adds a decoration to the overview ruler (scroll bar)"
  1123. ]
  1124. },
  1125. "minItems": 1,
  1126. "maxItems": 3,
  1127. "uniqueItems": true,
  1128. "markdownDescription": "Specifies where the highlights of the recently changed lines will be shown",
  1129. "scope": "window"
  1130. },
  1131. "gitlens.recentChanges.toggleMode": {
  1132. "type": "string",
  1133. "default": "file",
  1134. "enum": [
  1135. "file",
  1136. "window"
  1137. ],
  1138. "enumDescriptions": [
  1139. "Toggles each file individually",
  1140. "Toggles the window, i.e. all files at once"
  1141. ],
  1142. "markdownDescription": "Specifies how the recently changed lines annotations will be toggled",
  1143. "scope": "window"
  1144. },
  1145. "gitlens.remotes": {
  1146. "type": "array",
  1147. "default": null,
  1148. "items": {
  1149. "type": "object",
  1150. "required": [
  1151. "type",
  1152. "domain"
  1153. ],
  1154. "properties": {
  1155. "type": {
  1156. "type": "string",
  1157. "enum": [
  1158. "Bitbucket",
  1159. "BitbucketServer",
  1160. "Custom",
  1161. "GitHub",
  1162. "GitLab"
  1163. ],
  1164. "description": "Specifies the type of the custom remote service"
  1165. },
  1166. "domain": {
  1167. "type": "string",
  1168. "description": "Specifies the domain name of the custom remote service"
  1169. },
  1170. "name": {
  1171. "type": "string",
  1172. "description": "Specifies an optional friendly name for the custom remote service"
  1173. },
  1174. "protocol": {
  1175. "type": "string",
  1176. "default": "https",
  1177. "description": "Specifies an optional url protocol for the custom remote service"
  1178. },
  1179. "urls": {
  1180. "type": "object",
  1181. "required": [
  1182. "repository",
  1183. "branches",
  1184. "branch",
  1185. "commit",
  1186. "file",
  1187. "fileInCommit",
  1188. "fileInBranch",
  1189. "fileLine",
  1190. "fileRange"
  1191. ],
  1192. "properties": {
  1193. "repository": {
  1194. "type": "string",
  1195. "description": "Specifies the format of a respository url for the custom remote service\nAvailable tokens\n ${repo}` — repository path"
  1196. },
  1197. "branches": {
  1198. "type": "string",
  1199. "description": "Specifies the format of a branches url for the custom remote service\nAvailable tokens\n ${repo}` — repository path\n ${branch}` — branch"
  1200. },
  1201. "branch": {
  1202. "type": "string",
  1203. "description": "Specifies the format of a branch url for the custom remote service\nAvailable tokens\n ${repo}` — repository path\n ${branch}` — branch"
  1204. },
  1205. "commit": {
  1206. "type": "string",
  1207. "description": "Specifies the format of a commit url for the custom remote service\nAvailable tokens\n ${repo}` — repository path\n ${id}` — commit id"
  1208. },
  1209. "file": {
  1210. "type": "string",
  1211. "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"
  1212. },
  1213. "fileInBranch": {
  1214. "type": "string",
  1215. "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"
  1216. },
  1217. "fileInCommit": {
  1218. "type": "string",
  1219. "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"
  1220. },
  1221. "fileLine": {
  1222. "type": "string",
  1223. "description": "Specifies the format of a line in a file url for the custom remote service\nAvailable tokens\n ${line}` — line"
  1224. },
  1225. "fileRange": {
  1226. "type": "string",
  1227. "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"
  1228. }
  1229. }
  1230. },
  1231. "description": "Specifies the url formats of the custom remote service"
  1232. }
  1233. },
  1234. "uniqueItems": true,
  1235. "markdownDescription": "Specifies user-defined remote (code-hosting) services or custom domains for built-in remote services",
  1236. "scope": "resource"
  1237. },
  1238. "gitlens.showWhatsNewAfterUpgrades": {
  1239. "type": "boolean",
  1240. "default": true,
  1241. "markdownDescription": "Specifies whether to show What's New after upgrading to new feature releases",
  1242. "scope": "window"
  1243. },
  1244. "gitlens.sortBranchesBy": {
  1245. "type": "string",
  1246. "default": "name:desc",
  1247. "enum": [
  1248. "name:desc",
  1249. "name:asc",
  1250. "date:desc",
  1251. "date:asc"
  1252. ],
  1253. "enumDescriptions": [
  1254. "Sorts branches by name in descending order",
  1255. "Sorts branches by name in ascending order",
  1256. "Sorts branches by the most recent commit date in descending order",
  1257. "Sorts branches by the most recent commit date in ascending order"
  1258. ],
  1259. "markdownDescription": "Specifies how branches are sorted in quick pick menus and views",
  1260. "scope": "window"
  1261. },
  1262. "gitlens.sortTagsBy": {
  1263. "type": "string",
  1264. "default": "name:desc",
  1265. "enum": [
  1266. "name:desc",
  1267. "name:asc"
  1268. ],
  1269. "enumDescriptions": [
  1270. "Sorts tags by name in descending order",
  1271. "Sorts tags by name in ascending order"
  1272. ],
  1273. "markdownDescription": "Specifies how tags are sorted in quick pick menus and views",
  1274. "scope": "window"
  1275. },
  1276. "gitlens.statusBar.alignment": {
  1277. "type": "string",
  1278. "default": "right",
  1279. "enum": [
  1280. "left",
  1281. "right"
  1282. ],
  1283. "enumDescriptions": [
  1284. "Aligns to the left",
  1285. "Aligns to the right"
  1286. ],
  1287. "markdownDescription": "Specifies the blame alignment in the status bar",
  1288. "scope": "window"
  1289. },
  1290. "gitlens.statusBar.command": {
  1291. "type": "string",
  1292. "default": "gitlens.showQuickCommitDetails",
  1293. "enum": [
  1294. "gitlens.toggleFileBlame",
  1295. "gitlens.diffWithPrevious",
  1296. "gitlens.diffWithWorking",
  1297. "gitlens.toggleCodeLens",
  1298. "gitlens.showQuickCommitDetails",
  1299. "gitlens.showQuickCommitFileDetails",
  1300. "gitlens.showQuickFileHistory",
  1301. "gitlens.showQuickRepoHistory"
  1302. ],
  1303. "enumDescriptions": [
  1304. "Toggles file blame annotations",
  1305. "Compares the current line commit with the previous",
  1306. "Compares the current line commit with the working tree",
  1307. "Toggles Git code lens",
  1308. "Shows a commit details quick pick",
  1309. "Shows a commit file details quick pick",
  1310. "Shows a file history quick pick",
  1311. "Shows a branch history quick pick"
  1312. ],
  1313. "markdownDescription": "Specifies the command to be executed when the blame status bar item is clicked",
  1314. "scope": "window"
  1315. },
  1316. "gitlens.statusBar.dateFormat": {
  1317. "type": "string",
  1318. "default": null,
  1319. "markdownDescription": "Specifies how to format absolute dates (e.g. using the `${date}` token) in the blame information in the status bar. See the [Moment.js docs](https://momentjs.com/docs/#/displaying/format/) for valid formats",
  1320. "scope": "window"
  1321. },
  1322. "gitlens.statusBar.enabled": {
  1323. "type": "boolean",
  1324. "default": true,
  1325. "markdownDescription": "Specifies whether to provide blame information in the status bar",
  1326. "scope": "window"
  1327. },
  1328. "gitlens.statusBar.format": {
  1329. "type": "string",
  1330. "default": "${author}, ${agoOrDate}",
  1331. "markdownDescription": "Specifies the format of the blame information in the status bar. See [_Commit Tokens_](https://github.com/eamodio/vscode-gitlens/wiki/Custom-Formatting#commit-tokens) in the GitLens docs. Date formatting is controlled by the `#gitlens.statusBar.dateFormat#` setting",
  1332. "scope": "window"
  1333. },
  1334. "gitlens.statusBar.reduceFlicker": {
  1335. "type": "boolean",
  1336. "default": false,
  1337. "markdownDescription": "Specifies whether to avoid clearing the previous blame information when changing lines to reduce status bar \"flashing\"",
  1338. "scope": "window"
  1339. },
  1340. "gitlens.strings.codeLens.unsavedChanges.recentChangeAndAuthors": {
  1341. "type": "string",
  1342. "default": "Unsaved changes (cannot determine recent change or authors)",
  1343. "markdownDescription": "Specifies the string to be shown in place of both the _recent change_ and _authors_ code lens when there are unsaved changes",
  1344. "scope": "window"
  1345. },
  1346. "gitlens.strings.codeLens.unsavedChanges.recentChangeOnly": {
  1347. "type": "string",
  1348. "default": "Unsaved changes (cannot determine recent change)",
  1349. "markdownDescription": "Specifies the string to be shown in place of the _recent change_ code lens when there are unsaved changes",
  1350. "scope": "window"
  1351. },
  1352. "gitlens.strings.codeLens.unsavedChanges.authorsOnly": {
  1353. "type": "string",
  1354. "default": "Unsaved changes (cannot determine authors)",
  1355. "markdownDescription": "Specifies the string to be shown in place of the _authors_ code lens when there are unsaved changes",
  1356. "scope": "window"
  1357. },
  1358. "gitlens.views.commitFileFormat": {
  1359. "type": "string",
  1360. "default": "${file}",
  1361. "markdownDescription": "Specifies the format of a committed file in the views. See [_File Tokens_](https://github.com/eamodio/vscode-gitlens/wiki/Custom-Formatting#file-tokens) in the GitLens docs",
  1362. "scope": "window"
  1363. },
  1364. "gitlens.views.commitFileDescriptionFormat": {
  1365. "type": "string",
  1366. "default": "${directory}${ ← originalPath}",
  1367. "markdownDescription": "Specifies the description format of a committed file in the views. See [_File Tokens_](https://github.com/eamodio/vscode-gitlens/wiki/Custom-Formatting#file-tokens) in the GitLens docs",
  1368. "scope": "window"
  1369. },
  1370. "gitlens.views.commitFormat": {
  1371. "type": "string",
  1372. "default": "${❰ tips ❱➤ }${message}",
  1373. "markdownDescription": "Specifies the format of committed changes in the views. See [_Commit Tokens_](https://github.com/eamodio/vscode-gitlens/wiki/Custom-Formatting#commit-tokens) in the GitLens docs",
  1374. "scope": "window"
  1375. },
  1376. "gitlens.views.commitDescriptionFormat": {
  1377. "type": "string",
  1378. "default": "${changes • }${author}, ${agoOrDate}",
  1379. "markdownDescription": "Specifies the description format of committed changes in the views. See [_Commit Tokens_](https://github.com/eamodio/vscode-gitlens/wiki/Custom-Formatting#commit-tokens) in the GitLens docs",
  1380. "scope": "window"
  1381. },
  1382. "gitlens.views.compare.avatars": {
  1383. "type": "boolean",
  1384. "default": true,
  1385. "markdownDescription": "Specifies whether to show avatar images instead of commit (or status) icons in the _Compare_ view",
  1386. "scope": "window"
  1387. },
  1388. "gitlens.views.compare.enabled": {
  1389. "type": "boolean",
  1390. "default": true,
  1391. "markdownDescription": "Specifies whether to show the _Compare_ view",
  1392. "scope": "window"
  1393. },
  1394. "gitlens.views.compare.files.compact": {
  1395. "type": "boolean",
  1396. "default": true,
  1397. "markdownDescription": "Specifies whether to compact (flatten) unnecessary file nesting in the _Compare_ view. Only applies when `#gitlens.views.compare.files.layout#` is set to `tree` or `auto`",
  1398. "scope": "window"
  1399. },
  1400. "gitlens.views.compare.files.layout": {
  1401. "type": "string",
  1402. "default": "auto",
  1403. "enum": [
  1404. "auto",
  1405. "list",
  1406. "tree"
  1407. ],
  1408. "enumDescriptions": [
  1409. "Automatically switches between displaying files as a `tree` or `list` based on the `#gitlens.views.compare.files.threshold#` value and the number of files at each nesting level",
  1410. "Displays files as a list",
  1411. "Displays files as a tree"
  1412. ],
  1413. "markdownDescription": "Specifies how the _Compare_ view will display files",
  1414. "scope": "window"
  1415. },
  1416. "gitlens.views.compare.files.threshold": {
  1417. "type": "number",
  1418. "default": 5,
  1419. "markdownDescription": "Specifies when to switch between displaying files as a `tree` or `list` based on the number of files in a nesting level in the _Compare_ view. Only applies when `#gitlens.views.compare.files.layout#` is set to `auto`",
  1420. "scope": "window"
  1421. },
  1422. "gitlens.views.compare.location": {
  1423. "type": "string",
  1424. "default": "gitlens",
  1425. "enum": [
  1426. "gitlens",
  1427. "explorer",
  1428. "scm"
  1429. ],
  1430. "enumDescriptions": [
  1431. "Adds to the GitLens side bar",
  1432. "Adds to the Explorer side bar",
  1433. "Adds to the Source Control side bar"
  1434. ],
  1435. "markdownDescription": "Specifies where to show the _Compare_ view",
  1436. "scope": "window"
  1437. },
  1438. "gitlens.views.defaultItemLimit": {
  1439. "type": "number",
  1440. "default": 10,
  1441. "markdownDescription": "Specifies the default number of items to show in a view list. Use 0 to specify no limit",
  1442. "scope": "window"
  1443. },
  1444. "gitlens.views.pageItemLimit": {
  1445. "type": "number",
  1446. "default": 20,
  1447. "markdownDescription": "Specifies the number of items to show in a each page when paginating a view list. Use 0 to specify no limit",
  1448. "scope": "window"
  1449. },
  1450. "gitlens.views.fileHistory.avatars": {
  1451. "type": "boolean",
  1452. "default": true,
  1453. "markdownDescription": "Specifies whether to show avatar images instead of status icons in the _File History_ view",
  1454. "scope": "window"
  1455. },
  1456. "gitlens.views.fileHistory.enabled": {
  1457. "type": "boolean",
  1458. "default": true,
  1459. "markdownDescription": "Specifies whether to show the _File History_ view",
  1460. "scope": "window"
  1461. },
  1462. "gitlens.views.fileHistory.location": {
  1463. "type": "string",
  1464. "default": "gitlens",
  1465. "enum": [
  1466. "gitlens",
  1467. "explorer",
  1468. "scm"
  1469. ],
  1470. "enumDescriptions": [
  1471. "Adds to the GitLens side bar",
  1472. "Adds to the Explorer side bar",
  1473. "Adds to the Source Control side bar"
  1474. ],
  1475. "markdownDescription": "Specifies where to show the _File History_ view",
  1476. "scope": "window"
  1477. },
  1478. "gitlens.views.lineHistory.avatars": {
  1479. "type": "boolean",
  1480. "default": true,
  1481. "markdownDescription": "Specifies whether to show avatar images instead of status icons in the _Line History_ view",
  1482. "scope": "window"
  1483. },
  1484. "gitlens.views.lineHistory.enabled": {
  1485. "type": "boolean",
  1486. "default": true,
  1487. "markdownDescription": "Specifies whether to show the _Line History_ view",
  1488. "scope": "window"
  1489. },
  1490. "gitlens.views.lineHistory.location": {
  1491. "type": "string",
  1492. "default": "gitlens",
  1493. "enum": [
  1494. "gitlens",
  1495. "explorer",
  1496. "scm"
  1497. ],
  1498. "enumDescriptions": [
  1499. "Adds to the GitLens side bar",
  1500. "Adds to the Explorer side bar",
  1501. "Adds to the Source Control side bar"
  1502. ],
  1503. "markdownDescription": "Specifies where to show the _Line History_ view",
  1504. "scope": "window"
  1505. },
  1506. "gitlens.views.repositories.autoRefresh": {
  1507. "type": "boolean",
  1508. "default": true,
  1509. "markdownDescription": "Specifies whether to automatically refresh the _Repositories_ view when the repository or the file system changes",
  1510. "scope": "window"
  1511. },
  1512. "gitlens.views.repositories.autoReveal": {
  1513. "type": "boolean",
  1514. "default": true,
  1515. "markdownDescription": "Specifies whether to automatically reveal repositories in the _Repositories_ view when opening files",
  1516. "scope": "window"
  1517. },
  1518. "gitlens.views.repositories.avatars": {
  1519. "type": "boolean",
  1520. "default": true,
  1521. "markdownDescription": "Specifies whether to show avatar images instead of commit (or status) icons in the _Repositories_ view",
  1522. "scope": "window"
  1523. },
  1524. "gitlens.views.repositories.branches.layout": {
  1525. "type": "string",
  1526. "default": "tree",
  1527. "enum": [
  1528. "list",
  1529. "tree"
  1530. ],
  1531. "enumDescriptions": [
  1532. "Displays branches as a list",
  1533. "Displays branches as a tree when branch names contain slashes `/`"
  1534. ],
  1535. "markdownDescription": "Specifies how the _Repositories_ view will display branches",
  1536. "scope": "window"
  1537. },
  1538. "gitlens.views.repositories.compact": {
  1539. "type": "boolean",
  1540. "default": false,
  1541. "markdownDescription": "Specifies whether to show the _Repositories_ view in a compact display density",
  1542. "scope": "window"
  1543. },
  1544. "gitlens.views.repositories.enabled": {
  1545. "type": "boolean",
  1546. "default": true,
  1547. "markdownDescription": "Specifies whether to show the _Repositories_ view",
  1548. "scope": "window"
  1549. },
  1550. "gitlens.views.repositories.files.compact": {
  1551. "type": "boolean",
  1552. "default": true,
  1553. "markdownDescription": "Specifies whether to compact (flatten) unnecessary file nesting in the _Repositories_ view. Only applies when `#gitlens.views.repositories.files.layout#` is set to `tree` or `auto`",
  1554. "scope": "window"
  1555. },
  1556. "gitlens.views.repositories.files.layout": {
  1557. "type": "string",
  1558. "default": "auto",
  1559. "enum": [
  1560. "auto",
  1561. "list",
  1562. "tree"
  1563. ],
  1564. "enumDescriptions": [
  1565. "Automatically switches between displaying files as a `tree` or `list` based on the `#gitlens.views.repositories.files.threshold#` value and the number of files at each nesting level",
  1566. "Displays files as a list",
  1567. "Displays files as a tree"
  1568. ],
  1569. "markdownDescription": "Specifies how the _Repositories_ view will display files",
  1570. "scope": "window"
  1571. },
  1572. "gitlens.views.repositories.files.threshold": {
  1573. "type": "number",
  1574. "default": 5,
  1575. "markdownDescription": "Specifies when to switch between displaying files as a `tree` or `list` based on the number of files in a nesting level in the _Repositories_ view. Only applies when `#gitlens.views.repositories.files.layout#` is set to `auto`",
  1576. "scope": "window"
  1577. },
  1578. "gitlens.views.repositories.includeWorkingTree": {
  1579. "type": "boolean",
  1580. "default": true,
  1581. "markdownDescription": "Specifies whether to include working tree file status for each repository in the _Repositories_ view",
  1582. "scope": "window"
  1583. },
  1584. "gitlens.views.repositories.location": {
  1585. "type": "string",
  1586. "default": "gitlens",
  1587. "enum": [
  1588. "gitlens",
  1589. "explorer",
  1590. "scm"
  1591. ],
  1592. "enumDescriptions": [
  1593. "Adds to the GitLens side bar",
  1594. "Adds to the Explorer side bar",
  1595. "Adds to the Source Control side bar"
  1596. ],
  1597. "markdownDescription": "Specifies where to show the _Repositories_ view",
  1598. "scope": "window"
  1599. },
  1600. "gitlens.views.repositories.showBranchComparison": {
  1601. "anyOf": [
  1602. {
  1603. "enum": [
  1604. false
  1605. ]
  1606. },
  1607. {
  1608. "type": "string",
  1609. "enum": [
  1610. "branch",
  1611. "working"
  1612. ],
  1613. "enumDescriptions": [
  1614. "Compares the current branch to the user-selected reference",
  1615. "Compares the working tree to the user-selected reference"
  1616. ]
  1617. }
  1618. ],
  1619. "default": "working",
  1620. "markdownDescription": "Specifies whether to show a comparison of a user-selected reference (branch, tag. etc) to the current branch or the working tree in the _Repositories_ view",
  1621. "scope": "window"
  1622. },
  1623. "gitlens.views.repositories.showTrackingBranch": {
  1624. "type": "boolean",
  1625. "default": true,
  1626. "markdownDescription": "Specifies whether to show the tracking branch when displaying local branches in the _Repositories_ view",
  1627. "scope": "window"
  1628. },
  1629. "gitlens.views.search.avatars": {
  1630. "type": "boolean",
  1631. "default": true,
  1632. "markdownDescription": "Specifies whether to show avatar images instead of commit (or status) icons in the _Search Commits_ view",
  1633. "scope": "window"
  1634. },
  1635. "gitlens.views.search.enabled": {
  1636. "type": "boolean",
  1637. "default": true,
  1638. "markdownDescription": "Specifies whether to show the _Search Commits_ view",
  1639. "scope": "window"
  1640. },
  1641. "gitlens.views.search.files.compact": {
  1642. "type": "boolean",
  1643. "default": true,
  1644. "markdownDescription": "Specifies whether to compact (flatten) unnecessary file nesting in the _Search Commits_ view. Only applies when `#gitlens.views.search.files.layout#` is set to `tree` or `auto`",
  1645. "scope": "window"
  1646. },
  1647. "gitlens.views.search.files.layout": {
  1648. "type": "string",
  1649. "default": "auto",
  1650. "enum": [
  1651. "auto",
  1652. "list",
  1653. "tree"
  1654. ],
  1655. "enumDescriptions": [
  1656. "Automatically switches between displaying files as a `tree` or `list` based on the `#gitlens.views.search.files.threshold#` value and the number of files at each nesting level",
  1657. "Displays files as a list",
  1658. "Displays files as a tree"
  1659. ],
  1660. "markdownDescription": "Specifies how the _Search Commits_ view will display files",
  1661. "scope": "window"
  1662. },
  1663. "gitlens.views.search.files.threshold": {
  1664. "type": "number",
  1665. "default": 5,
  1666. "markdownDescription": "Specifies when to switch between displaying files as a `tree` or `list` based on the number of files in a nesting level in the _Search Commits_ view. Only applies when `#gitlens.views.search.files.layout#` is set to `auto`",
  1667. "scope": "window"
  1668. },
  1669. "gitlens.views.search.location": {
  1670. "type": "string",
  1671. "default": "gitlens",
  1672. "enum": [
  1673. "gitlens",
  1674. "explorer",
  1675. "scm"
  1676. ],
  1677. "enumDescriptions": [
  1678. "Adds to the GitLens side bar",
  1679. "Adds to the Explorer side bar",
  1680. "Adds to the Source Control side bar"
  1681. ],
  1682. "markdownDescription": "Specifies where to show the _Search Commits_ view",
  1683. "scope": "window"
  1684. },
  1685. "gitlens.views.showRelativeDateMarkers": {
  1686. "type": "boolean",
  1687. "default": true,
  1688. "markdownDescription": "Specifies whether to show relative date markers (_Less than a week ago_, _Over a week ago_, _Over a month ago_, etc) on revision (commit) histories in the views",
  1689. "scope": "window"
  1690. },
  1691. "gitlens.views.stashFileFormat": {
  1692. "type": "string",
  1693. "default": "${file}",
  1694. "markdownDescription": "Specifies the format of a stashed file in the views. See [_File Tokens_](https://github.com/eamodio/vscode-gitlens/wiki/Custom-Formatting#file-tokens) in the GitLens docs",
  1695. "scope": "window"
  1696. },
  1697. "gitlens.views.stashFileDescriptionFormat": {
  1698. "type": "string",
  1699. "default": "${directory}${ ← originalPath}",
  1700. "markdownDescription": "Specifies the description format of a stashed file in the views. See [_File Tokens_](https://github.com/eamodio/vscode-gitlens/wiki/Custom-Formatting#file-tokens) in the GitLens docs",
  1701. "scope": "window"
  1702. },
  1703. "gitlens.views.stashFormat": {
  1704. "type": "string",
  1705. "default": "${message}",
  1706. "markdownDescription": "Specifies the format of stashes in the views. See [_Commit Tokens_](https://github.com/eamodio/vscode-gitlens/wiki/Custom-Formatting#commit-tokens) in the GitLens docs",
  1707. "scope": "window"
  1708. },
  1709. "gitlens.views.stashDescriptionFormat": {
  1710. "type": "string",
  1711. "default": "${changes • }${agoOrDate}",
  1712. "markdownDescription": "Specifies the description format of stashes in the views. See [_Commit Tokens_](https://github.com/eamodio/vscode-gitlens/wiki/Custom-Formatting#commit-tokens) in the GitLens docs",
  1713. "scope": "window"
  1714. },
  1715. "gitlens.views.statusFileFormat": {
  1716. "type": "string",
  1717. "default": "${working }${file}",
  1718. "markdownDescription": "Specifies the format of the status of a working or committed file in the views. See [_File Tokens_](https://github.com/eamodio/vscode-gitlens/wiki/Custom-Formatting#file-tokens) in the GitLens docs",
  1719. "scope": "window"
  1720. },
  1721. "gitlens.views.statusFileDescriptionFormat": {
  1722. "type": "string",
  1723. "default": "${directory}${ ← originalPath}",
  1724. "markdownDescription": "Specifies the description format of the status of a working or committed file in the views. See [_File Tokens_](https://github.com/eamodio/vscode-gitlens/wiki/Custom-Formatting#file-tokens) in the GitLens docs",
  1725. "scope": "window"
  1726. },
  1727. "gitlens.advanced.abbreviatedShaLength": {
  1728. "type": "number",
  1729. "default": "7",
  1730. "markdownDescription": "Specifies the length of abbreviated commit ids (shas)",
  1731. "scope": "window"
  1732. },
  1733. "gitlens.advanced.blame.customArguments": {
  1734. "type": "array",
  1735. "default": null,
  1736. "items": {
  1737. "type": "string"
  1738. },
  1739. "markdownDescription": "Specifies additional arguments to pass to the `git blame` command",
  1740. "scope": "resource"
  1741. },
  1742. "gitlens.advanced.blame.delayAfterEdit": {
  1743. "type": "number",
  1744. "default": 5000,
  1745. "markdownDescription": "Specifies the time (in milliseconds) to wait before re-blaming an unsaved document after an edit. Use 0 to specify an infinite wait",
  1746. "scope": "window"
  1747. },
  1748. "gitlens.advanced.blame.sizeThresholdAfterEdit": {
  1749. "type": "number",
  1750. "default": 5000,
  1751. "markdownDescription": "Specifies the maximum document size (in lines) allowed to be re-blamed after an edit while still unsaved. Use 0 to specify no maximum",
  1752. "scope": "window"
  1753. },
  1754. "gitlens.advanced.caching.enabled": {
  1755. "type": "boolean",
  1756. "default": true,
  1757. "markdownDescription": "Specifies whether git output will be cached — changing the default is not recommended",
  1758. "scope": "window"
  1759. },
  1760. "gitlens.advanced.fileHistoryFollowsRenames": {
  1761. "type": "boolean",
  1762. "default": true,
  1763. "markdownDescription": "Specifies whether file histories will follow renames — will affect how merge commits are shown in histories",
  1764. "scope": "window"
  1765. },
  1766. "gitlens.advanced.maxListItems": {
  1767. "type": "number",
  1768. "default": 200,
  1769. "markdownDescription": "Specifies the maximum number of items to show in a list. Use 0 to specify no maximum",
  1770. "scope": "window"
  1771. },
  1772. "gitlens.advanced.maxSearchItems": {
  1773. "type": "number",
  1774. "default": 200,
  1775. "markdownDescription": "Specifies the maximum number of items to show in a search. Use 0 to specify no maximum",
  1776. "scope": "window"
  1777. },
  1778. "gitlens.advanced.messages": {
  1779. "type": "object",
  1780. "default": {
  1781. "suppressCommitHasNoPreviousCommitWarning": false,
  1782. "suppressCommitNotFoundWarning": false,
  1783. "suppressFileNotUnderSourceControlWarning": false,
  1784. "suppressGitDisabledWarning": false,
  1785. "suppressGitVersionWarning": false,
  1786. "suppressLineUncommittedWarning": false,
  1787. "suppressNoRepositoryWarning": false,
  1788. "suppressSupportGitLensNotification": false
  1789. },
  1790. "properties": {
  1791. "suppressCommitHasNoPreviousCommitWarning": {
  1792. "type": "boolean",
  1793. "default": false
  1794. },
  1795. "suppressCommitNotFoundWarning": {
  1796. "type": "boolean",
  1797. "default": false
  1798. },
  1799. "suppressFileNotUnderSourceControlWarning": {
  1800. "type": "boolean",
  1801. "default": false
  1802. },
  1803. "suppressGitDisabledWarning": {
  1804. "type": "boolean",
  1805. "default": false
  1806. },
  1807. "suppressGitVersionWarning": {
  1808. "type": "boolean",
  1809. "default": false
  1810. },
  1811. "suppressLineUncommittedWarning": {
  1812. "type": "boolean",
  1813. "default": false
  1814. },
  1815. "suppressNoRepositoryWarning": {
  1816. "type": "boolean",
  1817. "default": false
  1818. },
  1819. "suppressSupportGitLensNotification": {
  1820. "type": "boolean",
  1821. "default": false
  1822. }
  1823. },
  1824. "markdownDescription": "Specifies which messages should be suppressed",
  1825. "scope": "window"
  1826. },
  1827. "gitlens.advanced.quickPick.closeOnFocusOut": {
  1828. "type": "boolean",
  1829. "default": true,
  1830. "markdownDescription": "Specifies whether to dismiss quick pick menus when focus is lost (if not, press `ESC` to dismiss)",
  1831. "scope": "window"
  1832. },
  1833. "gitlens.advanced.repositorySearchDepth": {
  1834. "type": "number",
  1835. "default": 1,
  1836. "markdownDescription": "Specifies how many folders deep to search for repositories",
  1837. "scope": "resource"
  1838. },
  1839. "gitlens.advanced.similarityThreshold": {
  1840. "anyOf": [
  1841. {
  1842. "type": "number"
  1843. },
  1844. {
  1845. "type": "null"
  1846. }
  1847. ],
  1848. "default": null,
  1849. "markdownDescription": "Specifies the amount (percent) of similarity a deleted and added file pair must have to be considered a rename",
  1850. "scope": "window"
  1851. },
  1852. "gitlens.advanced.telemetry.enabled": {
  1853. "type": "boolean",
  1854. "default": true,
  1855. "markdownDescription": "Specifies whether to enable GitLens telemetry (even if enabled still abides by the overall `#telemetry.enableTelemetry#` setting",
  1856. "scope": "window"
  1857. },
  1858. "gitlens.advanced.useSymmetricDifferenceNotation": {
  1859. "type": "boolean",
  1860. "default": true,
  1861. "markdownDescription": "Specifies whether to use the symmetric difference (three-dot) notation or the range (two-dot) notation for comparisons. See the [Git docs](https://git-scm.com/docs/gitrevisions#_dotted_range_notations)",
  1862. "scope": "window"
  1863. }
  1864. }
  1865. },
  1866. "colors": [
  1867. {
  1868. "id": "gitlens.gutterBackgroundColor",
  1869. "description": "Specifies the background color of the gutter blame annotations",
  1870. "defaults": {
  1871. "dark": "#FFFFFF13",
  1872. "light": "#0000000C",
  1873. "highContrast": "#FFFFFF13"
  1874. }
  1875. },
  1876. {
  1877. "id": "gitlens.gutterForegroundColor",
  1878. "description": "Specifies the foreground color of the gutter blame annotations",
  1879. "defaults": {
  1880. "dark": "#BEBEBE",
  1881. "light": "#747474",
  1882. "highContrast": "#BEBEBE"
  1883. }
  1884. },
  1885. {
  1886. "id": "gitlens.gutterUncommittedForegroundColor",
  1887. "description": "Specifies the foreground color of an uncommitted line in the gutter blame annotations",
  1888. "defaults": {
  1889. "dark": "#00BCF299",
  1890. "light": "#00BCF299",
  1891. "highContrast": "#00BCF2FF"
  1892. }
  1893. },
  1894. {
  1895. "id": "gitlens.trailingLineBackgroundColor",
  1896. "description": "Specifies the background color of the blame annotation for the current line",
  1897. "defaults": {
  1898. "dark": "#00000000",
  1899. "light": "#00000000",
  1900. "highContrast": "#00000000"
  1901. }
  1902. },
  1903. {
  1904. "id": "gitlens.trailingLineForegroundColor",
  1905. "description": "Specifies the foreground color of the blame annotation for the current line",
  1906. "defaults": {
  1907. "dark": "#99999959",
  1908. "light": "#99999959",
  1909. "highContrast": "#99999999"
  1910. }
  1911. },
  1912. {
  1913. "id": "gitlens.lineHighlightBackgroundColor",
  1914. "description": "Specifies the background color of the associated line highlights in blame annotations",
  1915. "defaults": {
  1916. "dark": "#00BCF233",
  1917. "light": "#00BCF233",
  1918. "highContrast": "#00BCF233"
  1919. }
  1920. },
  1921. {
  1922. "id": "gitlens.lineHighlightOverviewRulerColor",
  1923. "description": "Specifies the overview ruler color of the associated line highlights in blame annotations",
  1924. "defaults": {
  1925. "dark": "#00BCF299",
  1926. "light": "#00BCF299",
  1927. "highContrast": "#00BCF299"
  1928. }
  1929. }
  1930. ],
  1931. "commands": [
  1932. {
  1933. "command": "gitlens.supportGitLens",
  1934. "title": "Support GitLens ❤",
  1935. "category": "GitLens",
  1936. "icon": {
  1937. "dark": "images/dark/icon-heart.svg",
  1938. "light": "images/light/icon-heart.svg"
  1939. }
  1940. },
  1941. {
  1942. "command": "gitlens.showSettingsPage",
  1943. "title": "Open Settings",
  1944. "category": "GitLens",
  1945. "icon": {
  1946. "dark": "images/dark/icon-gear.svg",
  1947. "light": "images/light/icon-gear.svg"
  1948. }
  1949. },
  1950. {
  1951. "command": "gitlens.showSettingsPage#repositories-view",
  1952. "title": "Open Settings",
  1953. "category": "GitLens",
  1954. "icon": {
  1955. "dark": "images/dark/icon-gear.svg",
  1956. "light": "images/light/icon-gear.svg"
  1957. }
  1958. },
  1959. {
  1960. "command": "gitlens.showSettingsPage#file-history-view",
  1961. "title": "Open Settings",
  1962. "category": "GitLens",
  1963. "icon": {
  1964. "dark": "images/dark/icon-gear.svg",
  1965. "light": "images/light/icon-gear.svg"
  1966. }
  1967. },
  1968. {
  1969. "command": "gitlens.showSettingsPage#line-history-view",
  1970. "title": "Open Settings",
  1971. "category": "GitLens",
  1972. "icon": {
  1973. "dark": "images/dark/icon-gear.svg",
  1974. "light": "images/light/icon-gear.svg"
  1975. }
  1976. },
  1977. {
  1978. "command": "gitlens.showSettingsPage#search-commits-view",
  1979. "title": "Open Settings",
  1980. "category": "GitLens",
  1981. "icon": {
  1982. "dark": "images/dark/icon-gear.svg",
  1983. "light": "images/light/icon-gear.svg"
  1984. }
  1985. },
  1986. {
  1987. "command": "gitlens.showSettingsPage#compare-view",
  1988. "title": "Open Settings",
  1989. "category": "GitLens",
  1990. "icon": {
  1991. "dark": "images/dark/icon-gear.svg",
  1992. "light": "images/light/icon-gear.svg"
  1993. }
  1994. },
  1995. {
  1996. "command": "gitlens.showWelcomePage",
  1997. "title": "Welcome",
  1998. "category": "GitLens"
  1999. },
  2000. {
  2001. "command": "gitlens.showCompareView",
  2002. "title": "Show Compare View",
  2003. "category": "GitLens"
  2004. },
  2005. {
  2006. "command": "gitlens.showFileHistoryView",
  2007. "title": "Show File History View",
  2008. "category": "GitLens"
  2009. },
  2010. {
  2011. "command": "gitlens.showLineHistoryView",
  2012. "title": "Show Line History View",
  2013. "category": "GitLens"
  2014. },
  2015. {
  2016. "command": "gitlens.showRepositoriesView",
  2017. "title": "Show Repositories View",
  2018. "category": "GitLens"
  2019. },
  2020. {
  2021. "command": "gitlens.showSearchView",
  2022. "title": "Show Search Commits View",
  2023. "category": "GitLens"
  2024. },
  2025. {
  2026. "command": "gitlens.diffDirectory",
  2027. "title": "Directory Compare Working Tree with...",
  2028. "category": "GitLens"
  2029. },
  2030. {
  2031. "command": "gitlens.diffDirectoryWithHead",
  2032. "title": "Directory Compare All Changes",
  2033. "category": "GitLens"
  2034. },
  2035. {
  2036. "command": "gitlens.diffHeadWith",
  2037. "title": "Compare HEAD with...",
  2038. "category": "GitLens"
  2039. },
  2040. {
  2041. "command": "gitlens.diffWorkingWith",
  2042. "title": "Compare Working Tree with...",
  2043. "category": "GitLens"
  2044. },
  2045. {
  2046. "command": "gitlens.diffWithRef",
  2047. "title": "Open Changes with...",
  2048. "category": "GitLens"
  2049. },
  2050. {
  2051. "command": "gitlens.diffWithNext",
  2052. "title": "Open Changes with Next Revision",
  2053. "category": "GitLens",
  2054. "icon": {
  2055. "dark": "images/dark/icon-next-commit.svg",
  2056. "light": "images/light/icon-next-commit.svg"
  2057. },
  2058. "enablement": "gitlens:activeFileStatus =~ /revision/"
  2059. },
  2060. {
  2061. "command": "gitlens.diffWithNextInDiffLeft",
  2062. "title": "Open Changes with Next Revision",
  2063. "category": "GitLens",
  2064. "icon": {
  2065. "dark": "images/dark/icon-next-commit.svg",
  2066. "light": "images/light/icon-next-commit.svg"
  2067. },
  2068. "enablement": "gitlens:activeFileStatus =~ /revision/"
  2069. },
  2070. {
  2071. "command": "gitlens.diffWithPrevious",
  2072. "title": "Open Changes with Previous Revision",
  2073. "category": "GitLens",
  2074. "icon": {
  2075. "dark": "images/dark/icon-prev-commit.svg",
  2076. "light": "images/light/icon-prev-commit.svg"
  2077. }
  2078. },
  2079. {
  2080. "command": "gitlens.diffWithPreviousInDiffRight",
  2081. "title": "Open Changes with Previous Revision",
  2082. "category": "GitLens",
  2083. "icon": {
  2084. "dark": "images/dark/icon-prev-commit.svg",
  2085. "light": "images/light/icon-prev-commit.svg"
  2086. }
  2087. },
  2088. {
  2089. "command": "gitlens.diffLineWithPrevious",
  2090. "title": "Open Line Changes with Previous Revision",
  2091. "category": "GitLens"
  2092. },
  2093. {
  2094. "command": "gitlens.diffWithRevision",
  2095. "title": "Open Changes with Revision...",
  2096. "category": "GitLens",
  2097. "icon": {
  2098. "dark": "images/dark/icon-prev-commit-menu.svg",
  2099. "light": "images/light/icon-prev-commit-menu.svg"
  2100. }
  2101. },
  2102. {
  2103. "command": "gitlens.diffWithWorking",
  2104. "title": "Open Changes with Working File",
  2105. "category": "GitLens",
  2106. "icon": {
  2107. "dark": "images/dark/icon-compare-ref-working.svg",
  2108. "light": "images/light/icon-compare-ref-working.svg"
  2109. }
  2110. },
  2111. {
  2112. "command": "gitlens.diffLineWithWorking",
  2113. "title": "Open Line Changes with Working File",
  2114. "category": "GitLens"
  2115. },
  2116. {
  2117. "command": "gitlens.toggleFileBlame",
  2118. "title": "Toggle File Blame Annotations",
  2119. "category": "GitLens",
  2120. "icon": {
  2121. "dark": "images/dark/icon-git.svg",
  2122. "light": "images/light/icon-git.svg"
  2123. }
  2124. },
  2125. {
  2126. "command": "gitlens.clearFileAnnotations",
  2127. "title": "Clear File Annotations",
  2128. "category": "GitLens",
  2129. "icon": {
  2130. "dark": "images/dark/icon-git-orange.svg",
  2131. "light": "images/light/icon-git-orange.svg"
  2132. }
  2133. },
  2134. {
  2135. "command": "gitlens.computingFileAnnotations",
  2136. "title": "Computing File Annotations...",
  2137. "category": "GitLens",
  2138. "icon": {
  2139. "dark": "images/dark/icon-git-progress.svg",
  2140. "light": "images/light/icon-git-progress.svg"
  2141. }
  2142. },
  2143. {
  2144. "command": "gitlens.toggleFileHeatmap",
  2145. "title": "Toggle File Heatmap Annotations",
  2146. "category": "GitLens",
  2147. "icon": {
  2148. "dark": "images/dark/icon-git.svg",
  2149. "light": "images/light/icon-git.svg"
  2150. }
  2151. },
  2152. {
  2153. "command": "gitlens.toggleFileRecentChanges",
  2154. "title": "Toggle Recent File Changes Annotations",
  2155. "category": "GitLens",
  2156. "icon": {
  2157. "dark": "images/dark/icon-git.svg",
  2158. "light": "images/light/icon-git.svg"
  2159. }
  2160. },
  2161. {
  2162. "command": "gitlens.toggleLineBlame",
  2163. "title": "Toggle Line Blame Annotations",
  2164. "category": "GitLens"
  2165. },
  2166. {
  2167. "command": "gitlens.toggleCodeLens",
  2168. "title": "Toggle Git Code Lens",
  2169. "category": "GitLens"
  2170. },
  2171. {
  2172. "command": "gitlens.gitCommands",
  2173. "title": "Git Commands",
  2174. "category": "GitLens"
  2175. },
  2176. {
  2177. "command": "gitlens.switchMode",
  2178. "title": "Switch Mode",
  2179. "category": "GitLens"
  2180. },
  2181. {
  2182. "command": "gitlens.toggleReviewMode",
  2183. "title": "Toggle Review Mode",
  2184. "category": "GitLens"
  2185. },
  2186. {
  2187. "command": "gitlens.toggleZenMode",
  2188. "title": "Toggle Zen Mode",
  2189. "category": "GitLens"
  2190. },
  2191. {
  2192. "command": "gitlens.showCommitSearch",
  2193. "title": "Search Commits",
  2194. "category": "GitLens",
  2195. "icon": {
  2196. "dark": "images/dark/icon-search.svg",
  2197. "light": "images/light/icon-search.svg"
  2198. }
  2199. },
  2200. {
  2201. "command": "gitlens.showLastQuickPick",
  2202. "title": "Show Last Opened Quick Pick",
  2203. "category": "GitLens"
  2204. },
  2205. {
  2206. "command": "gitlens.showCommitInView",
  2207. "title": "Show Commit in View",
  2208. "category": "GitLens"
  2209. },
  2210. {
  2211. "command": "gitlens.showFileHistoryInView",
  2212. "title": "Show File History in View",
  2213. "category": "GitLens"
  2214. },
  2215. {
  2216. "command": "gitlens.showFolderHistory",
  2217. "title": "Show Folder History",
  2218. "category": "GitLens"
  2219. },
  2220. {
  2221. "command": "gitlens.showQuickCommitDetails",
  2222. "title": "Show Commit Details",
  2223. "category": "GitLens"
  2224. },
  2225. {
  2226. "command": "gitlens.showQuickCommitFileDetails",
  2227. "title": "Show Commit Details",
  2228. "category": "GitLens"
  2229. },
  2230. {
  2231. "command": "gitlens.showQuickRevisionDetails",
  2232. "title": "Show Revision Details",
  2233. "category": "GitLens",
  2234. "icon": {
  2235. "dark": "images/dark/icon-commit.svg",
  2236. "light": "images/light/icon-commit.svg"
  2237. },
  2238. "enablement": "gitlens:activeFileStatus =~ /revision/ && resourceScheme != git"
  2239. },
  2240. {
  2241. "command": "gitlens.showQuickFileHistory",
  2242. "title": "Show File History",
  2243. "category": "GitLens"
  2244. },
  2245. {
  2246. "command": "gitlens.showQuickBranchHistory",
  2247. "title": "Show Branch History",
  2248. "category": "GitLens"
  2249. },
  2250. {
  2251. "command": "gitlens.showQuickRepoHistory",
  2252. "title": "Show Current Branch History",
  2253. "category": "GitLens"
  2254. },
  2255. {
  2256. "command": "gitlens.showQuickRepoStatus",
  2257. "title": "Show Repository Status",
  2258. "category": "GitLens"
  2259. },
  2260. {
  2261. "command": "gitlens.showQuickStashList",
  2262. "title": "Show Stashes",
  2263. "category": "GitLens"
  2264. },
  2265. {
  2266. "command": "gitlens.copyMessageToClipboard",
  2267. "title": "Copy Commit Message to Clipboard",
  2268. "category": "GitLens",
  2269. "icon": {
  2270. "dark": "images/dark/icon-copy-message.svg",
  2271. "light": "images/light/icon-copy-message.svg"
  2272. }
  2273. },
  2274. {
  2275. "command": "gitlens.copyRemoteFileUrlToClipboard",
  2276. "title": "Copy Remote Url to Clipboard",
  2277. "category": "GitLens",
  2278. "icon": {
  2279. "dark": "images/dark/icon-copy-link.svg",
  2280. "light": "images/light/icon-copy-link.svg"
  2281. }
  2282. },
  2283. {
  2284. "command": "gitlens.copyShaToClipboard",
  2285. "title": "Copy Commit ID to Clipboard",
  2286. "category": "GitLens",
  2287. "icon": {
  2288. "dark": "images/dark/icon-copy.svg",
  2289. "light": "images/light/icon-copy.svg"
  2290. }
  2291. },
  2292. {
  2293. "command": "gitlens.closeUnchangedFiles",
  2294. "title": "Close Unchanged Files",
  2295. "category": "GitLens"
  2296. },
  2297. {
  2298. "command": "gitlens.openChangedFiles",
  2299. "title": "Open Changed Files",
  2300. "category": "GitLens"
  2301. },
  2302. {
  2303. "command": "gitlens.openBranchesInRemote",
  2304. "title": "Open Branches on Remote",
  2305. "category": "GitLens",
  2306. "icon": {
  2307. "dark": "images/dark/icon-link.svg",
  2308. "light": "images/light/icon-link.svg"
  2309. }
  2310. },
  2311. {
  2312. "command": "gitlens.openBranchInRemote",
  2313. "title": "Open Branch on Remote",
  2314. "category": "GitLens",
  2315. "icon": {
  2316. "dark": "images/dark/icon-link.svg",
  2317. "light": "images/light/icon-link.svg"
  2318. }
  2319. },
  2320. {
  2321. "command": "gitlens.openCommitInRemote",
  2322. "title": "Open Commit on Remote",
  2323. "category": "GitLens",
  2324. "icon": {
  2325. "dark": "images/dark/icon-link.svg",
  2326. "light": "images/light/icon-link.svg"
  2327. }
  2328. },
  2329. {
  2330. "command": "gitlens.openFileInRemote",
  2331. "title": "Open File on Remote",
  2332. "category": "GitLens",
  2333. "icon": {
  2334. "dark": "images/dark/icon-link.svg",
  2335. "light": "images/light/icon-link.svg"
  2336. }
  2337. },
  2338. {
  2339. "command": "gitlens.openFileRevision",
  2340. "title": "Open Revision...",
  2341. "category": "GitLens"
  2342. },
  2343. {
  2344. "command": "gitlens.openFileRevisionFrom",
  2345. "title": "Open Revision from...",
  2346. "category": "GitLens"
  2347. },
  2348. {
  2349. "command": "gitlens.openRepoInRemote",
  2350. "title": "Open Repository on Remote",
  2351. "category": "GitLens",
  2352. "icon": {
  2353. "dark": "images/dark/icon-link.svg",
  2354. "light": "images/light/icon-link.svg"
  2355. }
  2356. },
  2357. {
  2358. "command": "gitlens.openRevisionFile",
  2359. "title": "Open Revision",
  2360. "category": "GitLens",
  2361. "icon": {
  2362. "dark": "images/dark/icon-open-revision.svg",
  2363. "light": "images/light/icon-open-revision.svg"
  2364. },
  2365. "enablement": "gitlens:activeFileStatus =~ /revision/ && resourceScheme != git"
  2366. },
  2367. {
  2368. "command": "gitlens.openWorkingFile",
  2369. "title": "Open File",
  2370. "category": "GitLens",
  2371. "icon": {
  2372. "dark": "images/dark/icon-open-working-file.svg",
  2373. "light": "images/light/icon-open-working-file.svg"
  2374. }
  2375. },
  2376. {
  2377. "command": "gitlens.stashApply",
  2378. "title": "Apply Stash",
  2379. "category": "GitLens",
  2380. "icon": {
  2381. "dark": "images/dark/icon-stash-pop.svg",
  2382. "light": "images/light/icon-stash-pop.svg"
  2383. }
  2384. },
  2385. {
  2386. "command": "gitlens.stashDelete",
  2387. "title": "Delete Stash",
  2388. "category": "GitLens",
  2389. "icon": {
  2390. "dark": "images/dark/icon-delete.svg",
  2391. "light": "images/light/icon-delete.svg"
  2392. }
  2393. },
  2394. {
  2395. "command": "gitlens.stashSave",
  2396. "title": "Stash All Changes",
  2397. "category": "GitLens",
  2398. "icon": {
  2399. "dark": "images/dark/icon-stash-save.svg",
  2400. "light": "images/light/icon-stash-save.svg"
  2401. }
  2402. },
  2403. {
  2404. "command": "gitlens.stashSaveFiles",
  2405. "title": "Stash Changes",
  2406. "category": "GitLens",
  2407. "icon": {
  2408. "dark": "images/dark/icon-stash-save.svg",
  2409. "light": "images/light/icon-stash-save.svg"
  2410. }
  2411. },
  2412. {
  2413. "command": "gitlens.externalDiff",
  2414. "title": "Open Changes (with difftool)",
  2415. "category": "GitLens"
  2416. },
  2417. {
  2418. "command": "gitlens.externalDiffAll",
  2419. "title": "Open All Changes (with difftool)",
  2420. "category": "GitLens"
  2421. },
  2422. {
  2423. "command": "gitlens.resetSuppressedWarnings",
  2424. "title": "Reset Suppressed Warnings",
  2425. "category": "GitLens"
  2426. },
  2427. {
  2428. "command": "gitlens.inviteToLiveShare",
  2429. "title": "Invite to Live Share",
  2430. "category": "GitLens",
  2431. "icon": {
  2432. "dark": "images/dark/icon-link-color.svg",
  2433. "light": "images/light/icon-link-color.svg"
  2434. }
  2435. },
  2436. {
  2437. "command": "gitlens.exploreRepoAtRevision",
  2438. "title": "Explore Repository from Revision",
  2439. "category": "GitLens",
  2440. "icon": {
  2441. "dark": "images/dark/icon-open-folder.svg",
  2442. "light": "images/light/icon-open-folder.svg"
  2443. },
  2444. "enablement": "gitlens:activeFileStatus =~ /revision/ && resourceScheme != git"
  2445. },
  2446. {
  2447. "command": "gitlens.views.exploreRepoAtRevision",
  2448. "title": "Explore Repository from Revision",
  2449. "category": "GitLens",
  2450. "icon": {
  2451. "dark": "images/dark/icon-open-folder.svg",
  2452. "light": "images/light/icon-open-folder.svg"
  2453. }
  2454. },
  2455. {
  2456. "command": "gitlens.fetchRepositories",
  2457. "title": "Fetch Repositories",
  2458. "category": "GitLens",
  2459. "icon": {
  2460. "dark": "images/dark/icon-sync.svg",
  2461. "light": "images/light/icon-sync.svg"
  2462. }
  2463. },
  2464. {
  2465. "command": "gitlens.pullRepositories",
  2466. "title": "Pull Repositories",
  2467. "category": "GitLens",
  2468. "icon": {
  2469. "dark": "images/dark/icon-pull.svg",
  2470. "light": "images/light/icon-pull.svg"
  2471. }
  2472. },
  2473. {
  2474. "command": "gitlens.pushRepositories",
  2475. "title": "Push Repositories",
  2476. "category": "GitLens",
  2477. "icon": {
  2478. "dark": "images/dark/icon-push.svg",
  2479. "light": "images/light/icon-push.svg"
  2480. }
  2481. },
  2482. {
  2483. "command": "gitlens.views.addRemote",
  2484. "title": "Add Remote",
  2485. "category": "GitLens",
  2486. "icon": {
  2487. "dark": "images/dark/icon-add.svg",
  2488. "light": "images/light/icon-add.svg"
  2489. }
  2490. },
  2491. {
  2492. "command": "gitlens.views.restore",
  2493. "title": "Restore",
  2494. "category": "GitLens",
  2495. "icon": {
  2496. "dark": "images/dark/icon-checkout.svg",
  2497. "light": "images/light/icon-checkout.svg"
  2498. }
  2499. },
  2500. {
  2501. "command": "gitlens.views.switchToBranch",
  2502. "title": "Switch to Branch",
  2503. "category": "GitLens",
  2504. "icon": {
  2505. "dark": "images/dark/icon-checkout.svg",
  2506. "light": "images/light/icon-checkout.svg"
  2507. }
  2508. },
  2509. {
  2510. "command": "gitlens.views.switchToCommit",
  2511. "title": "Switch to Commit",
  2512. "category": "GitLens",
  2513. "icon": {
  2514. "dark": "images/dark/icon-checkout.svg",
  2515. "light": "images/light/icon-checkout.svg"
  2516. }
  2517. },
  2518. {
  2519. "command": "gitlens.views.switchToTag",
  2520. "title": "Switch to Tag",
  2521. "category": "GitLens",
  2522. "icon": {
  2523. "dark": "images/dark/icon-checkout.svg",
  2524. "light": "images/light/icon-checkout.svg"
  2525. }
  2526. },
  2527. {
  2528. "command": "gitlens.views.copy",
  2529. "title": "Copy",
  2530. "category": "GitLens"
  2531. },
  2532. {
  2533. "command": "gitlens.views.repositories.copy",
  2534. "title": "Copy",
  2535. "category": "GitLens"
  2536. },
  2537. {
  2538. "command": "gitlens.views.fileHistory.copy",
  2539. "title": "Copy",
  2540. "category": "GitLens"
  2541. },
  2542. {
  2543. "command": "gitlens.views.lineHistory.copy",
  2544. "title": "Copy",
  2545. "category": "GitLens"
  2546. },
  2547. {
  2548. "command": "gitlens.views.compare.copy",
  2549. "title": "Copy",
  2550. "category": "GitLens"
  2551. },
  2552. {
  2553. "command": "gitlens.views.search.copy",
  2554. "title": "Copy",
  2555. "category": "GitLens"
  2556. },
  2557. {
  2558. "command": "gitlens.views.pruneRemote",
  2559. "title": "Prune",
  2560. "category": "GitLens"
  2561. },
  2562. {
  2563. "command": "gitlens.views.fetch",
  2564. "title": "Fetch",
  2565. "category": "GitLens",
  2566. "icon": {
  2567. "dark": "images/dark/icon-sync.svg",
  2568. "light": "images/light/icon-sync.svg"
  2569. }
  2570. },
  2571. {
  2572. "command": "gitlens.views.pull",
  2573. "title": "Pull",
  2574. "category": "GitLens",
  2575. "icon": {
  2576. "dark": "images/dark/icon-pull.svg",
  2577. "light": "images/light/icon-pull.svg"
  2578. }
  2579. },
  2580. {
  2581. "command": "gitlens.views.push",
  2582. "title": "Push",
  2583. "category": "GitLens",
  2584. "icon": {
  2585. "dark": "images/dark/icon-push.svg",
  2586. "light": "images/light/icon-push.svg"
  2587. }
  2588. },
  2589. {
  2590. "command": "gitlens.views.pushWithForce",
  2591. "title": "Push (force)",
  2592. "category": "GitLens",
  2593. "icon": {
  2594. "dark": "images/dark/icon-push-force.svg",
  2595. "light": "images/light/icon-push-force.svg"
  2596. }
  2597. },
  2598. {
  2599. "command": "gitlens.views.openInTerminal",
  2600. "title": "Open in Terminal",
  2601. "category": "GitLens"
  2602. },
  2603. {
  2604. "command": "gitlens.views.setAsDefault",
  2605. "title": "Set as Default",
  2606. "category": "GitLens"
  2607. },
  2608. {
  2609. "command": "gitlens.views.unsetAsDefault",
  2610. "title": "Unset as Default",
  2611. "category": "GitLens"
  2612. },
  2613. {
  2614. "command": "gitlens.views.stageDirectory",
  2615. "title": "Stage All Changes",
  2616. "category": "GitLens",
  2617. "icon": {
  2618. "dark": "images/dark/icon-add.svg",
  2619. "light": "images/light/icon-add.svg"
  2620. }
  2621. },
  2622. {
  2623. "command": "gitlens.views.stageFile",
  2624. "title": "Stage Changes",
  2625. "category": "GitLens",
  2626. "icon": {
  2627. "dark": "images/dark/icon-add.svg",
  2628. "light": "images/light/icon-add.svg"
  2629. }
  2630. },
  2631. {
  2632. "command": "gitlens.views.unstageDirectory",
  2633. "title": "Unstage All Changes",
  2634. "category": "GitLens",
  2635. "icon": {
  2636. "dark": "images/dark/icon-minus.svg",
  2637. "light": "images/light/icon-minus.svg"
  2638. }
  2639. },
  2640. {
  2641. "command": "gitlens.views.unstageFile",
  2642. "title": "Unstage Changes",
  2643. "category": "GitLens",
  2644. "icon": {
  2645. "dark": "images/dark/icon-minus.svg",
  2646. "light": "images/light/icon-minus.svg"
  2647. }
  2648. },
  2649. {
  2650. "command": "gitlens.views.star",
  2651. "title": "Add to Favorites",
  2652. "category": "GitLens",
  2653. "icon": {
  2654. "dark": "images/dark/icon-star.svg",
  2655. "light": "images/light/icon-star.svg"
  2656. }
  2657. },
  2658. {
  2659. "command": "gitlens.views.unstar",
  2660. "title": "Remove from Favorites",
  2661. "category": "GitLens",
  2662. "icon": {
  2663. "dark": "images/dark/icon-star-filled.svg",
  2664. "light": "images/light/icon-star-filled.svg"
  2665. }
  2666. },
  2667. {
  2668. "command": "gitlens.views.openDirectoryDiff",
  2669. "title": "Open Directory Compare",
  2670. "category": "GitLens"
  2671. },
  2672. {
  2673. "command": "gitlens.views.openDirectoryDiffWithWorking",
  2674. "title": "Open Directory Compare with Working Tree",
  2675. "category": "GitLens"
  2676. },
  2677. {
  2678. "command": "gitlens.views.openChanges",
  2679. "title": "Open Changes",
  2680. "category": "GitLens"
  2681. },
  2682. {
  2683. "command": "gitlens.views.openChangesWithWorking",
  2684. "title": "Open Changes with Working File",
  2685. "category": "GitLens"
  2686. },
  2687. {
  2688. "command": "gitlens.views.openFile",
  2689. "title": "Open File",
  2690. "category": "GitLens",
  2691. "icon": {
  2692. "dark": "images/dark/icon-open-file.svg",
  2693. "light": "images/light/icon-open-file.svg"
  2694. }
  2695. },
  2696. {
  2697. "command": "gitlens.views.openFileRevision",
  2698. "title": "Open Revision",
  2699. "category": "GitLens",
  2700. "icon": {
  2701. "dark": "images/dark/icon-open-file.svg",
  2702. "light": "images/light/icon-open-file.svg"
  2703. }
  2704. },
  2705. {
  2706. "command": "gitlens.views.openFileRevisionInRemote",
  2707. "title": "Open Revision on Remote",
  2708. "category": "GitLens",
  2709. "icon": {
  2710. "dark": "images/dark/icon-link.svg",
  2711. "light": "images/light/icon-link.svg"
  2712. }
  2713. },
  2714. {
  2715. "command": "gitlens.views.openChangedFiles",
  2716. "title": "Open Files",
  2717. "category": "GitLens"
  2718. },
  2719. {
  2720. "command": "gitlens.views.openChangedFileChanges",
  2721. "title": "Open All Changes",
  2722. "category": "GitLens"
  2723. },
  2724. {
  2725. "command": "gitlens.views.openChangedFileChangesWithWorking",
  2726. "title": "Open All Changes with Working Tree",
  2727. "category": "GitLens"
  2728. },
  2729. {
  2730. "command": "gitlens.views.openChangedFileRevisions",
  2731. "title": "Open Revisions",
  2732. "category": "GitLens"
  2733. },
  2734. {
  2735. "command": "gitlens.views.applyChanges",
  2736. "title": "Apply Changes",
  2737. "category": "GitLens"
  2738. },
  2739. {
  2740. "command": "gitlens.views.closeRepository",
  2741. "title": "Close Repository",
  2742. "category": "GitLens"
  2743. },
  2744. {
  2745. "command": "gitlens.views.compareAncestryWithWorking",
  2746. "title": "Compare Ancestry with Working Tree",
  2747. "category": "GitLens"
  2748. },
  2749. {
  2750. "command": "gitlens.views.compareWithHead",
  2751. "title": "Compare with HEAD",
  2752. "category": "GitLens",
  2753. "icon": {
  2754. "dark": "images/dark/icon-compare-refs.svg",
  2755. "light": "images/light/icon-compare-refs.svg"
  2756. }
  2757. },
  2758. {
  2759. "command": "gitlens.views.compareWithRemote",
  2760. "title": "Compare with Remote",
  2761. "category": "GitLens",
  2762. "icon": {
  2763. "dark": "images/dark/icon-compare-ref-remote.svg",
  2764. "light": "images/light/icon-compare-ref-remote.svg"
  2765. }
  2766. },
  2767. {
  2768. "command": "gitlens.views.compareWithSelected",
  2769. "title": "Compare with Selected",
  2770. "category": "GitLens"
  2771. },
  2772. {
  2773. "command": "gitlens.views.selectForCompare",
  2774. "title": "Select for Compare",
  2775. "category": "GitLens"
  2776. },
  2777. {
  2778. "command": "gitlens.views.compareFileWithSelected",
  2779. "title": "Compare with Selected",
  2780. "category": "GitLens"
  2781. },
  2782. {
  2783. "command": "gitlens.views.selectFileForCompare",
  2784. "title": "Select for Compare",
  2785. "category": "GitLens"
  2786. },
  2787. {
  2788. "command": "gitlens.views.compareWithWorking",
  2789. "title": "Compare with Working Tree",
  2790. "category": "GitLens",
  2791. "icon": {
  2792. "dark": "images/dark/icon-compare-ref-working.svg",
  2793. "light": "images/light/icon-compare-ref-working.svg"
  2794. }
  2795. },
  2796. {
  2797. "command": "gitlens.views.contributor.addCoauthoredBy",
  2798. "title": "Add as Co-author",
  2799. "category": "GitLens"
  2800. },
  2801. {
  2802. "command": "gitlens.views.contributor.copyToClipboard",
  2803. "title": "Copy to Clipboard",
  2804. "category": "GitLens",
  2805. "icon": {
  2806. "dark": "images/dark/icon-copy.svg",
  2807. "light": "images/light/icon-copy.svg"
  2808. }
  2809. },
  2810. {
  2811. "command": "gitlens.views.setComparisonToTwoDot",
  2812. "title": "Switch to Two-dot Comparison",
  2813. "category": "GitLens",
  2814. "icon": {
  2815. "dark": "images/dark/icon-compare-twodot.svg",
  2816. "light": "images/light/icon-compare-twodot.svg"
  2817. }
  2818. },
  2819. {
  2820. "command": "gitlens.views.setComparisonToThreeDot",
  2821. "title": "Switch to Three-dot Comparison",
  2822. "category": "GitLens",
  2823. "icon": {
  2824. "dark": "images/dark/icon-compare-threedot.svg",
  2825. "light": "images/light/icon-compare-threedot.svg"
  2826. }
  2827. },
  2828. {
  2829. "command": "gitlens.views.terminalCreateBranch",
  2830. "title": "Create Branch (via Terminal)...",
  2831. "category": "GitLens"
  2832. },
  2833. {
  2834. "command": "gitlens.views.terminalDeleteBranch",
  2835. "title": "Delete Branch (via Terminal)",
  2836. "category": "GitLens"
  2837. },
  2838. {
  2839. "command": "gitlens.views.cherryPick",
  2840. "title": "Cherry Pick Commit",
  2841. "category": "GitLens"
  2842. },
  2843. {
  2844. "command": "gitlens.views.mergeBranchInto",
  2845. "title": "Merge Branch into Current...",
  2846. "category": "GitLens"
  2847. },
  2848. {
  2849. "command": "gitlens.views.rebaseOntoBranch",
  2850. "title": "Rebase Current onto Branch...",
  2851. "category": "GitLens"
  2852. },
  2853. {
  2854. "command": "gitlens.views.rebaseOntoCommit",
  2855. "title": "Rebase Current onto Commit...",
  2856. "category": "GitLens"
  2857. },
  2858. {
  2859. "command": "gitlens.views.rebaseOntoUpstream",
  2860. "title": "Rebase Current onto Upstream...",
  2861. "category": "GitLens"
  2862. },
  2863. {
  2864. "command": "gitlens.views.reset",
  2865. "title": "Reset to Commit",
  2866. "category": "GitLens"
  2867. },
  2868. {
  2869. "command": "gitlens.views.revert",
  2870. "title": "Revert Commit",
  2871. "category": "GitLens"
  2872. },
  2873. {
  2874. "command": "gitlens.views.terminalPushCommit",
  2875. "title": "Push to Commit (via Terminal)",
  2876. "category": "GitLens"
  2877. },
  2878. {
  2879. "command": "gitlens.views.terminalRemoveRemote",
  2880. "title": "Remove Remote (via Terminal)",
  2881. "category": "GitLens"
  2882. },
  2883. {
  2884. "command": "gitlens.views.terminalCreateTag",
  2885. "title": "Create Tag (via Terminal)...",
  2886. "category": "GitLens"
  2887. },
  2888. {
  2889. "command": "gitlens.views.terminalDeleteTag",
  2890. "title": "Delete Tag (via Terminal)",
  2891. "category": "GitLens"
  2892. },
  2893. {
  2894. "command": "gitlens.views.repositories.refresh",
  2895. "title": "Refresh",
  2896. "category": "GitLens",
  2897. "icon": {
  2898. "dark": "images/dark/icon-refresh.svg",
  2899. "light": "images/light/icon-refresh.svg"
  2900. }
  2901. },
  2902. {
  2903. "command": "gitlens.views.repositories.setBranchComparisonToWorking",
  2904. "title": "Switch to Working Tree Comparison",
  2905. "category": "GitLens",
  2906. "icon": {
  2907. "dark": "images/dark/icon-compare-ref-working.svg",
  2908. "light": "images/light/icon-compare-ref-working.svg"
  2909. }
  2910. },
  2911. {
  2912. "command": "gitlens.views.repositories.setBranchComparisonToBranch",
  2913. "title": "Switch to Branch Comparison",
  2914. "category": "GitLens",
  2915. "icon": {
  2916. "dark": "images/dark/icon-compare-refs.svg",
  2917. "light": "images/light/icon-compare-refs.svg"
  2918. }
  2919. },
  2920. {
  2921. "command": "gitlens.views.repositories.setFilesLayoutToAuto",
  2922. "title": "Automatic Layout",
  2923. "category": "GitLens"
  2924. },
  2925. {
  2926. "command": "gitlens.views.repositories.setFilesLayoutToList",
  2927. "title": "List Layout",
  2928. "category": "GitLens"
  2929. },
  2930. {
  2931. "command": "gitlens.views.repositories.setFilesLayoutToTree",
  2932. "title": "Tree Layout",
  2933. "category": "GitLens"
  2934. },
  2935. {
  2936. "command": "gitlens.views.repositories.setAutoRefreshToOn",
  2937. "title": "Enable Automatic Refresh",
  2938. "category": "GitLens"
  2939. },
  2940. {
  2941. "command": "gitlens.views.repositories.setAutoRefreshToOff",
  2942. "title": "Disable Automatic Refresh",
  2943. "category": "GitLens"
  2944. },
  2945. {
  2946. "command": "gitlens.views.fileHistory.refresh",
  2947. "title": "Refresh",
  2948. "category": "GitLens",
  2949. "icon": {
  2950. "dark": "images/dark/icon-refresh.svg",
  2951. "light": "images/light/icon-refresh.svg"
  2952. }
  2953. },
  2954. {
  2955. "command": "gitlens.views.fileHistory.changeBase",
  2956. "title": "Change Base...",
  2957. "category": "GitLens",
  2958. "icon": {
  2959. "dark": "images/dark/icon-history.svg",
  2960. "light": "images/light/icon-history.svg"
  2961. }
  2962. },
  2963. {
  2964. "command": "gitlens.views.fileHistory.setEditorFollowingOn",
  2965. "title": "Resume File Tracking",
  2966. "category": "GitLens",
  2967. "icon": {
  2968. "dark": "images/dark/icon-location.svg",
  2969. "light": "images/light/icon-location.svg"
  2970. }
  2971. },
  2972. {
  2973. "command": "gitlens.views.fileHistory.setEditorFollowingOff",
  2974. "title": "Pause File Tracking",
  2975. "category": "GitLens",
  2976. "icon": {
  2977. "dark": "images/dark/icon-location-filled.svg",
  2978. "light": "images/light/icon-location-filled.svg"
  2979. }
  2980. },
  2981. {
  2982. "command": "gitlens.views.fileHistory.setRenameFollowingOn",
  2983. "title": "Follow Renames",
  2984. "category": "GitLens"
  2985. },
  2986. {
  2987. "command": "gitlens.views.fileHistory.setRenameFollowingOff",
  2988. "title": "Don't Follow Renames",
  2989. "category": "GitLens"
  2990. },
  2991. {
  2992. "command": "gitlens.views.lineHistory.refresh",
  2993. "title": "Refresh",
  2994. "category": "GitLens",
  2995. "icon": {
  2996. "dark": "images/dark/icon-refresh.svg",
  2997. "light": "images/light/icon-refresh.svg"
  2998. }
  2999. },
  3000. {
  3001. "command": "gitlens.views.lineHistory.changeBase",
  3002. "title": "Change Base...",
  3003. "category": "GitLens",
  3004. "icon": {
  3005. "dark": "images/dark/icon-history.svg",
  3006. "light": "images/light/icon-history.svg"
  3007. }
  3008. },
  3009. {
  3010. "command": "gitlens.views.lineHistory.setEditorFollowingOn",
  3011. "title": "Resume Line Tracking",
  3012. "category": "GitLens",
  3013. "icon": {
  3014. "dark": "images/dark/icon-location.svg",
  3015. "light": "images/light/icon-location.svg"
  3016. }
  3017. },
  3018. {
  3019. "command": "gitlens.views.lineHistory.setEditorFollowingOff",
  3020. "title": "Pause Line Tracking",
  3021. "category": "GitLens",
  3022. "icon": {
  3023. "dark": "images/dark/icon-location-filled.svg",
  3024. "light": "images/light/icon-location-filled.svg"
  3025. }
  3026. },
  3027. {
  3028. "command": "gitlens.views.lineHistory.setRenameFollowingOn",
  3029. "title": "Follow Renames",
  3030. "category": "GitLens"
  3031. },
  3032. {
  3033. "command": "gitlens.views.lineHistory.setRenameFollowingOff",
  3034. "title": "Don't Follow Renames",
  3035. "category": "GitLens"
  3036. },
  3037. {
  3038. "command": "gitlens.views.compare.selectForCompare",
  3039. "title": "Compare References...",
  3040. "category": "GitLens",
  3041. "icon": {
  3042. "dark": "images/dark/icon-compare-refs.svg",
  3043. "light": "images/light/icon-compare-refs.svg"
  3044. }
  3045. },
  3046. {
  3047. "command": "gitlens.views.compare.clear",
  3048. "title": "Clear Results",
  3049. "category": "GitLens",
  3050. "icon": {
  3051. "dark": "images/dark/icon-clear.svg",
  3052. "light": "images/light/icon-clear.svg"
  3053. }
  3054. },
  3055. {
  3056. "command": "gitlens.views.compare.refresh",
  3057. "title": "Refresh",
  3058. "category": "GitLens",
  3059. "icon": {
  3060. "dark": "images/dark/icon-refresh.svg",
  3061. "light": "images/light/icon-refresh.svg"
  3062. }
  3063. },
  3064. {
  3065. "command": "gitlens.views.compare.setFilesLayoutToAuto",
  3066. "title": "Automatic Layout",
  3067. "category": "GitLens"
  3068. },
  3069. {
  3070. "command": "gitlens.views.compare.setFilesLayoutToList",
  3071. "title": "List Layout",
  3072. "category": "GitLens"
  3073. },
  3074. {
  3075. "command": "gitlens.views.compare.setFilesLayoutToTree",
  3076. "title": "Tree Layout",
  3077. "category": "GitLens"
  3078. },
  3079. {
  3080. "command": "gitlens.views.compare.setKeepResultsToOn",
  3081. "title": "Keep Results",
  3082. "category": "GitLens",
  3083. "icon": {
  3084. "dark": "images/dark/icon-lock.svg",
  3085. "light": "images/light/icon-lock.svg"
  3086. }
  3087. },
  3088. {
  3089. "command": "gitlens.views.compare.setKeepResultsToOff",
  3090. "title": "Keep Results",
  3091. "category": "GitLens",
  3092. "icon": {
  3093. "dark": "images/dark/icon-locked.svg",
  3094. "light": "images/light/icon-locked.svg"
  3095. }
  3096. },
  3097. {
  3098. "command": "gitlens.views.compare.pinComparison",
  3099. "title": "Pin Comparison",
  3100. "category": "GitLens",
  3101. "icon": {
  3102. "dark": "images/dark/icon-pin.svg",
  3103. "light": "images/light/icon-pin.svg"
  3104. }
  3105. },
  3106. {
  3107. "command": "gitlens.views.compare.unpinComparison",
  3108. "title": "Unpin Comparison",
  3109. "category": "GitLens",
  3110. "icon": {
  3111. "dark": "images/dark/icon-unpin.svg",
  3112. "light": "images/light/icon-unpin.svg"
  3113. }
  3114. },
  3115. {
  3116. "command": "gitlens.views.compare.swapComparison",
  3117. "title": "Swap Comparison",
  3118. "category": "GitLens",
  3119. "icon": {
  3120. "dark": "images/dark/icon-swap.svg",
  3121. "light": "images/light/icon-swap.svg"
  3122. }
  3123. },
  3124. {
  3125. "command": "gitlens.views.search.searchCommits",
  3126. "title": "Search Commits",
  3127. "category": "GitLens",
  3128. "icon": {
  3129. "dark": "images/dark/icon-search.svg",
  3130. "light": "images/light/icon-search.svg"
  3131. }
  3132. },
  3133. {
  3134. "command": "gitlens.views.search.clear",
  3135. "title": "Clear Results",
  3136. "category": "GitLens",
  3137. "icon": {
  3138. "dark": "images/dark/icon-clear.svg",
  3139. "light": "images/light/icon-clear.svg"
  3140. }
  3141. },
  3142. {
  3143. "command": "gitlens.views.search.refresh",
  3144. "title": "Refresh",
  3145. "category": "GitLens",
  3146. "icon": {
  3147. "dark": "images/dark/icon-refresh.svg",
  3148. "light": "images/light/icon-refresh.svg"
  3149. }
  3150. },
  3151. {
  3152. "command": "gitlens.views.search.setFilesLayoutToAuto",
  3153. "title": "Automatic Layout",
  3154. "category": "GitLens"
  3155. },
  3156. {
  3157. "command": "gitlens.views.search.setFilesLayoutToList",
  3158. "title": "List Layout",
  3159. "category": "GitLens"
  3160. },
  3161. {
  3162. "command": "gitlens.views.search.setFilesLayoutToTree",
  3163. "title": "Tree Layout",
  3164. "category": "GitLens"
  3165. },
  3166. {
  3167. "command": "gitlens.views.search.setKeepResultsToOn",
  3168. "title": "Keep Results",
  3169. "category": "GitLens",
  3170. "icon": {
  3171. "dark": "images/dark/icon-lock.svg",
  3172. "light": "images/light/icon-lock.svg"
  3173. }
  3174. },
  3175. {
  3176. "command": "gitlens.views.search.setKeepResultsToOff",
  3177. "title": "Keep Results",
  3178. "category": "GitLens",
  3179. "icon": {
  3180. "dark": "images/dark/icon-locked.svg",
  3181. "light": "images/light/icon-locked.svg"
  3182. }
  3183. },
  3184. {
  3185. "command": "gitlens.views.dismissNode",
  3186. "title": "Dismiss",
  3187. "category": "GitLens",
  3188. "icon": {
  3189. "dark": "images/dark/icon-close.svg",
  3190. "light": "images/light/icon-close.svg"
  3191. }
  3192. },
  3193. {
  3194. "command": "gitlens.views.expandNode",
  3195. "title": "Expand",
  3196. "category": "GitLens"
  3197. },
  3198. {
  3199. "command": "gitlens.views.refreshNode",
  3200. "title": "Refresh",
  3201. "category": "GitLens",
  3202. "icon": {
  3203. "dark": "images/dark/icon-refresh.svg",
  3204. "light": "images/light/icon-refresh.svg"
  3205. }
  3206. },
  3207. {
  3208. "command": "gitlens.views.showMoreChildren",
  3209. "title": "Show More",
  3210. "category": "GitLens",
  3211. "icon": {
  3212. "dark": "images/dark/icon-unfold.svg",
  3213. "light": "images/light/icon-unfold.svg"
  3214. }
  3215. },
  3216. {
  3217. "command": "gitlens.views.showAllChildren",
  3218. "title": "Show All",
  3219. "category": "GitLens",
  3220. "icon": {
  3221. "dark": "images/dark/icon-unfold.svg",
  3222. "light": "images/light/icon-unfold.svg"
  3223. }
  3224. }
  3225. ],
  3226. "menus": {
  3227. "commandPalette": [
  3228. {
  3229. "command": "gitlens.showSettingsPage#repositories-view",
  3230. "when": "false"
  3231. },
  3232. {
  3233. "command": "gitlens.showSettingsPage#file-history-view",
  3234. "when": "false"
  3235. },
  3236. {
  3237. "command": "gitlens.showSettingsPage#line-history-view",
  3238. "when": "false"
  3239. },
  3240. {
  3241. "command": "gitlens.showSettingsPage#search-commits-view",
  3242. "when": "false"
  3243. },
  3244. {
  3245. "command": "gitlens.showSettingsPage#compare-view",
  3246. "when": "false"
  3247. },
  3248. {
  3249. "command": "gitlens.showCompareView",
  3250. "when": "gitlens:enabled"
  3251. },
  3252. {
  3253. "command": "gitlens.showFileHistoryView",
  3254. "when": "gitlens:enabled"
  3255. },
  3256. {
  3257. "command": "gitlens.showLineHistoryView",
  3258. "when": "gitlens:enabled"
  3259. },
  3260. {
  3261. "command": "gitlens.showRepositoriesView",
  3262. "when": "gitlens:enabled"
  3263. },
  3264. {
  3265. "command": "gitlens.showSearchView",
  3266. "when": "gitlens:enabled"
  3267. },
  3268. {
  3269. "command": "gitlens.diffDirectory",
  3270. "when": "gitlens:enabled"
  3271. },
  3272. {
  3273. "command": "gitlens.diffDirectoryWithHead",
  3274. "when": "gitlens:enabled"
  3275. },
  3276. {
  3277. "command": "gitlens.diffHeadWith",
  3278. "when": "gitlens:enabled"
  3279. },
  3280. {
  3281. "command": "gitlens.diffWorkingWith",
  3282. "when": "gitlens:enabled"
  3283. },
  3284. {
  3285. "command": "gitlens.diffWithRef",
  3286. "when": "gitlens:activeFileStatus =~ /tracked/"
  3287. },
  3288. {
  3289. "command": "gitlens.diffWithNext",
  3290. "when": "gitlens:activeFileStatus =~ /revision/ && !isInDiffEditor"
  3291. },
  3292. {
  3293. "command": "gitlens.diffWithNext",
  3294. "when": "gitlens:activeFileStatus =~ /revision/ && isInDiffRightEditor"
  3295. },
  3296. {
  3297. "command": "gitlens.diffWithNextInDiffLeft",
  3298. "when": "gitlens:activeFileStatus =~ /revision/ && isInDiffLeftEditor"
  3299. },
  3300. {
  3301. "command": "gitlens.diffWithPrevious",
  3302. "when": "gitlens:activeFileStatus =~ /tracked/ && !isInDiffEditor"
  3303. },
  3304. {
  3305. "command": "gitlens.diffWithPrevious",
  3306. "when": "gitlens:activeFileStatus =~ /tracked/ && isInDiffLeftEditor"
  3307. },
  3308. {
  3309. "command": "gitlens.diffWithPreviousInDiffRight",
  3310. "when": "gitlens:activeFileStatus =~ /tracked/ && isInDiffRightEditor"
  3311. },
  3312. {
  3313. "command": "gitlens.diffLineWithPrevious",
  3314. "when": "gitlens:activeFileStatus =~ /blameable/"
  3315. },
  3316. {
  3317. "command": "gitlens.diffWithRevision",
  3318. "when": "gitlens:activeFileStatus =~ /tracked/"
  3319. },
  3320. {
  3321. "command": "gitlens.diffWithWorking",
  3322. "when": "gitlens:activeFileStatus =~ /revision/"
  3323. },
  3324. {
  3325. "command": "gitlens.diffLineWithWorking",
  3326. "when": "gitlens:activeFileStatus =~ /blameable/"
  3327. },
  3328. {
  3329. "command": "gitlens.externalDiff",
  3330. "when": "gitlens:activeFileStatus =~ /tracked/"
  3331. },
  3332. {
  3333. "command": "gitlens.externalDiffAll",
  3334. "when": "gitlens:enabled"
  3335. },
  3336. {
  3337. "command": "gitlens.toggleFileBlame",
  3338. "when": "gitlens:activeFileStatus =~ /blameable/"
  3339. },
  3340. {
  3341. "command": "gitlens.clearFileAnnotations",
  3342. "when": "gitlens:activeFileStatus =~ /blameable/ && gitlens:annotationStatus == computed"
  3343. },
  3344. {
  3345. "command": "gitlens.computingFileAnnotations",
  3346. "when": "false"
  3347. },
  3348. {
  3349. "command": "gitlens.toggleFileHeatmap",
  3350. "when": "gitlens:activeFileStatus =~ /blameable/"
  3351. },
  3352. {
  3353. "command": "gitlens.toggleFileRecentChanges",
  3354. "when": "gitlens:activeFileStatus =~ /blameable/"
  3355. },
  3356. {
  3357. "command": "gitlens.toggleLineBlame",
  3358. "when": "gitlens:enabled"
  3359. },
  3360. {
  3361. "command": "gitlens.toggleCodeLens",
  3362. "when": "gitlens:enabled && gitlens:canToggleCodeLens"
  3363. },
  3364. {
  3365. "command": "gitlens.gitCommands",
  3366. "when": "gitlens:enabled && !gitlens:readonly"
  3367. },
  3368. {
  3369. "command": "gitlens.switchMode",
  3370. "when": "gitlens:enabled"
  3371. },
  3372. {
  3373. "command": "gitlens.toggleReviewMode",
  3374. "when": "gitlens:enabled"
  3375. },
  3376. {
  3377. "command": "gitlens.toggleZenMode",
  3378. "when": "gitlens:enabled"
  3379. },
  3380. {
  3381. "command": "gitlens.showCommitSearch",
  3382. "when": "gitlens:enabled"
  3383. },
  3384. {
  3385. "command": "gitlens.showLastQuickPick",
  3386. "when": "gitlens:enabled"
  3387. },
  3388. {
  3389. "command": "gitlens.showCommitInView",
  3390. "when": "gitlens:activeFileStatus =~ /blameable/"
  3391. },
  3392. {
  3393. "command": "gitlens.showFileHistoryInView",
  3394. "when": "gitlens:activeFileStatus =~ /tracked/"
  3395. },
  3396. {
  3397. "command": "gitlens.showFolderHistory",
  3398. "when": "gitlens:enabled"
  3399. },
  3400. {
  3401. "command": "gitlens.showQuickCommitDetails",
  3402. "when": "gitlens:activeFileStatus =~ /blameable/"
  3403. },
  3404. {
  3405. "command": "gitlens.showQuickCommitFileDetails",
  3406. "when": "gitlens:activeFileStatus =~ /blameable/"
  3407. },
  3408. {
  3409. "command": "gitlens.showQuickRevisionDetails",
  3410. "when": "gitlens:activeFileStatus =~ /revision/"
  3411. },
  3412. {
  3413. "command": "gitlens.showQuickFileHistory",
  3414. "when": "gitlens:activeFileStatus =~ /tracked/"
  3415. },
  3416. {
  3417. "command": "gitlens.showQuickBranchHistory",
  3418. "when": "gitlens:enabled"
  3419. },
  3420. {
  3421. "command": "gitlens.showQuickRepoHistory",
  3422. "when": "gitlens:enabled"
  3423. },
  3424. {
  3425. "command": "gitlens.showQuickRepoStatus",
  3426. "when": "gitlens:enabled"
  3427. },
  3428. {
  3429. "command": "gitlens.showQuickStashList",
  3430. "when": "gitlens:enabled"
  3431. },
  3432. {
  3433. "command": "gitlens.copyMessageToClipboard",
  3434. "when": "gitlens:activeFileStatus =~ /blameable/"
  3435. },
  3436. {
  3437. "command": "gitlens.copyRemoteFileUrlToClipboard",
  3438. "when": "gitlens:activeFileStatus =~ /tracked/ && gitlens:activeFileStatus =~ /remotes/"
  3439. },
  3440. {
  3441. "command": "gitlens.copyShaToClipboard",
  3442. "when": "gitlens:activeFileStatus =~ /blameable/"
  3443. },
  3444. {
  3445. "command": "gitlens.closeUnchangedFiles",
  3446. "when": "gitlens:enabled"
  3447. },
  3448. {
  3449. "command": "gitlens.openChangedFiles",
  3450. "when": "gitlens:enabled"
  3451. },
  3452. {
  3453. "command": "gitlens.openBranchesInRemote",
  3454. "when": "gitlens:hasRemotes"
  3455. },
  3456. {
  3457. "command": "gitlens.openBranchInRemote",
  3458. "when": "gitlens:hasRemotes"
  3459. },
  3460. {
  3461. "command": "gitlens.openCommitInRemote",
  3462. "when": "gitlens:activeFileStatus =~ /blameable/ && gitlens:activeFileStatus =~ /remotes/"
  3463. },
  3464. {
  3465. "command": "gitlens.openFileInRemote",
  3466. "when": "gitlens:activeFileStatus =~ /tracked/ && gitlens:activeFileStatus =~ /remotes/"
  3467. },
  3468. {
  3469. "command": "gitlens.openFileRevision",
  3470. "when": "gitlens:activeFileStatus =~ /tracked/"
  3471. },
  3472. {
  3473. "command": "gitlens.openFileRevisionFrom",
  3474. "when": "gitlens:activeFileStatus =~ /tracked/"
  3475. },
  3476. {
  3477. "command": "gitlens.openRepoInRemote",
  3478. "when": "gitlens:hasRemotes"
  3479. },
  3480. {
  3481. "command": "gitlens.openRevisionFile",
  3482. "when": "gitlens:activeFileStatus =~ /revision/"
  3483. },
  3484. {
  3485. "command": "gitlens.openWorkingFile",
  3486. "when": "gitlens:activeFileStatus =~ /revision/"
  3487. },
  3488. {
  3489. "command": "gitlens.stashApply",
  3490. "when": "gitlens:enabled && !gitlens:readonly"
  3491. },
  3492. {
  3493. "command": "gitlens.stashDelete",
  3494. "when": "false"
  3495. },
  3496. {
  3497. "command": "gitlens.stashSave",
  3498. "when": "gitlens:enabled && !gitlens:readonly"
  3499. },
  3500. {
  3501. "command": "gitlens.stashSaveFiles",
  3502. "when": "false"
  3503. },
  3504. {
  3505. "command": "gitlens.resetSuppressedWarnings",
  3506. "when": "gitlens:enabled"
  3507. },
  3508. {
  3509. "command": "gitlens.inviteToLiveShare",
  3510. "when": "false"
  3511. },
  3512. {
  3513. "command": "gitlens.exploreRepoAtRevision",
  3514. "when": "gitlens:activeFileStatus =~ /revision/"
  3515. },
  3516. {
  3517. "command": "gitlens.views.exploreRepoAtRevision",
  3518. "when": "false"
  3519. },
  3520. {
  3521. "command": "gitlens.fetchRepositories",
  3522. "when": "gitlens:hasRemotes && !gitlens:readonly"
  3523. },
  3524. {
  3525. "command": "gitlens.pullRepositories",
  3526. "when": "gitlens:hasRemotes && !gitlens:readonly"
  3527. },
  3528. {
  3529. "command": "gitlens.pushRepositories",
  3530. "when": "gitlens:hasRemotes && !gitlens:readonly"
  3531. },
  3532. {
  3533. "command": "gitlens.views.addRemote",
  3534. "when": "false"
  3535. },
  3536. {
  3537. "command": "gitlens.views.restore",
  3538. "when": "false"
  3539. },
  3540. {
  3541. "command": "gitlens.views.switchToBranch",
  3542. "when": "false"
  3543. },
  3544. {
  3545. "command": "gitlens.views.switchToCommit",
  3546. "when": "false"
  3547. },
  3548. {
  3549. "command": "gitlens.views.switchToTag",
  3550. "when": "false"
  3551. },
  3552. {
  3553. "command": "gitlens.views.copy",
  3554. "when": "false"
  3555. },
  3556. {
  3557. "command": "gitlens.views.repositories.copy",
  3558. "when": "false"
  3559. },
  3560. {
  3561. "command": "gitlens.views.fileHistory.copy",
  3562. "when": "false"
  3563. },
  3564. {
  3565. "command": "gitlens.views.lineHistory.copy",
  3566. "when": "false"
  3567. },
  3568. {
  3569. "command": "gitlens.views.compare.copy",
  3570. "when": "false"
  3571. },
  3572. {
  3573. "command": "gitlens.views.search.copy",
  3574. "when": "false"
  3575. },
  3576. {
  3577. "command": "gitlens.views.pruneRemote",
  3578. "when": "false"
  3579. },
  3580. {
  3581. "command": "gitlens.views.fetch",
  3582. "when": "false"
  3583. },
  3584. {
  3585. "command": "gitlens.views.pull",
  3586. "when": "false"
  3587. },
  3588. {
  3589. "command": "gitlens.views.push",
  3590. "when": "false"
  3591. },
  3592. {
  3593. "command": "gitlens.views.pushWithForce",
  3594. "when": "false"
  3595. },
  3596. {
  3597. "command": "gitlens.views.openInTerminal",
  3598. "when": "false"
  3599. },
  3600. {
  3601. "command": "gitlens.views.setAsDefault",
  3602. "when": "false"
  3603. },
  3604. {
  3605. "command": "gitlens.views.unsetAsDefault",
  3606. "when": "false"
  3607. },
  3608. {
  3609. "command": "gitlens.views.stageDirectory",
  3610. "when": "false"
  3611. },
  3612. {
  3613. "command": "gitlens.views.stageFile",
  3614. "when": "false"
  3615. },
  3616. {
  3617. "command": "gitlens.views.unstageDirectory",
  3618. "when": "false"
  3619. },
  3620. {
  3621. "command": "gitlens.views.unstageFile",
  3622. "when": "false"
  3623. },
  3624. {
  3625. "command": "gitlens.views.star",
  3626. "when": "false"
  3627. },
  3628. {
  3629. "command": "gitlens.views.unstar",
  3630. "when": "false"
  3631. },
  3632. {
  3633. "command": "gitlens.views.openChanges",
  3634. "when": "false"
  3635. },
  3636. {
  3637. "command": "gitlens.views.openDirectoryDiff",
  3638. "when": "false"
  3639. },
  3640. {
  3641. "command": "gitlens.views.openDirectoryDiffWithWorking",
  3642. "when": "false"
  3643. },
  3644. {
  3645. "command": "gitlens.views.openChangesWithWorking",
  3646. "when": "false"
  3647. },
  3648. {
  3649. "command": "gitlens.views.openFile",
  3650. "when": "false"
  3651. },
  3652. {
  3653. "command": "gitlens.views.openFileRevision",
  3654. "when": "false"
  3655. },
  3656. {
  3657. "command": "gitlens.views.openFileRevisionInRemote",
  3658. "when": "false"
  3659. },
  3660. {
  3661. "command": "gitlens.views.openChangedFiles",
  3662. "when": "false"
  3663. },
  3664. {
  3665. "command": "gitlens.views.openChangedFileChanges",
  3666. "when": "false"
  3667. },
  3668. {
  3669. "command": "gitlens.views.openChangedFileChangesWithWorking",
  3670. "when": "false"
  3671. },
  3672. {
  3673. "command": "gitlens.views.openChangedFileRevisions",
  3674. "when": "false"
  3675. },
  3676. {
  3677. "command": "gitlens.views.applyChanges",
  3678. "when": "false"
  3679. },
  3680. {
  3681. "command": "gitlens.views.closeRepository",
  3682. "when": "false"
  3683. },
  3684. {
  3685. "command": "gitlens.views.compareAncestryWithWorking",
  3686. "when": "false"
  3687. },
  3688. {
  3689. "command": "gitlens.views.compareWithHead",
  3690. "when": "false"
  3691. },
  3692. {
  3693. "command": "gitlens.views.compareWithRemote",
  3694. "when": "false"
  3695. },
  3696. {
  3697. "command": "gitlens.views.compareWithSelected",
  3698. "when": "false"
  3699. },
  3700. {
  3701. "command": "gitlens.views.selectForCompare",
  3702. "when": "false"
  3703. },
  3704. {
  3705. "command": "gitlens.views.compareFileWithSelected",
  3706. "when": "false"
  3707. },
  3708. {
  3709. "command": "gitlens.views.selectFileForCompare",
  3710. "when": "false"
  3711. },
  3712. {
  3713. "command": "gitlens.views.compareWithWorking",
  3714. "when": "false"
  3715. },
  3716. {
  3717. "command": "gitlens.views.contributor.addCoauthoredBy",
  3718. "when": "false"
  3719. },
  3720. {
  3721. "command": "gitlens.views.contributor.copyToClipboard",
  3722. "when": "false"
  3723. },
  3724. {
  3725. "command": "gitlens.views.setComparisonToTwoDot",
  3726. "when": "false"
  3727. },
  3728. {
  3729. "command": "gitlens.views.setComparisonToThreeDot",
  3730. "when": "false"
  3731. },
  3732. {
  3733. "command": "gitlens.views.terminalCreateBranch",
  3734. "when": "false"
  3735. },
  3736. {
  3737. "command": "gitlens.views.terminalDeleteBranch",
  3738. "when": "false"
  3739. },
  3740. {
  3741. "command": "gitlens.views.cherryPick",
  3742. "when": "false"
  3743. },
  3744. {
  3745. "command": "gitlens.views.mergeBranchInto",
  3746. "when": "false"
  3747. },
  3748. {
  3749. "command": "gitlens.views.rebaseOntoBranch",
  3750. "when": "false"
  3751. },
  3752. {
  3753. "command": "gitlens.views.rebaseOntoCommit",
  3754. "when": "false"
  3755. },
  3756. {
  3757. "command": "gitlens.views.rebaseOntoUpstream",
  3758. "when": "false"
  3759. },
  3760. {
  3761. "command": "gitlens.views.reset",
  3762. "when": "false"
  3763. },
  3764. {
  3765. "command": "gitlens.views.revert",
  3766. "when": "false"
  3767. },
  3768. {
  3769. "command": "gitlens.views.terminalPushCommit",
  3770. "when": "false"
  3771. },
  3772. {
  3773. "command": "gitlens.views.terminalRemoveRemote",
  3774. "when": "false"
  3775. },
  3776. {
  3777. "command": "gitlens.views.terminalCreateTag",
  3778. "when": "false"
  3779. },
  3780. {
  3781. "command": "gitlens.views.terminalDeleteTag",
  3782. "when": "false"
  3783. },
  3784. {
  3785. "command": "gitlens.views.repositories.refresh",
  3786. "when": "false"
  3787. },
  3788. {
  3789. "command": "gitlens.views.repositories.setBranchComparisonToWorking",
  3790. "when": "false"
  3791. },
  3792. {
  3793. "command": "gitlens.views.repositories.setBranchComparisonToBranch",
  3794. "when": "false"
  3795. },
  3796. {
  3797. "command": "gitlens.views.repositories.setFilesLayoutToAuto",
  3798. "when": "false"
  3799. },
  3800. {
  3801. "command": "gitlens.views.repositories.setFilesLayoutToList",
  3802. "when": "false"
  3803. },
  3804. {
  3805. "command": "gitlens.views.repositories.setFilesLayoutToTree",
  3806. "when": "false"
  3807. },
  3808. {
  3809. "command": "gitlens.views.repositories.setAutoRefreshToOn",
  3810. "when": "false"
  3811. },
  3812. {
  3813. "command": "gitlens.views.repositories.setAutoRefreshToOff",
  3814. "when": "false"
  3815. },
  3816. {
  3817. "command": "gitlens.views.fileHistory.refresh",
  3818. "when": "false"
  3819. },
  3820. {
  3821. "command": "gitlens.views.fileHistory.changeBase",
  3822. "when": "false"
  3823. },
  3824. {
  3825. "command": "gitlens.views.fileHistory.setEditorFollowingOn",
  3826. "when": "false"
  3827. },
  3828. {
  3829. "command": "gitlens.views.fileHistory.setEditorFollowingOff",
  3830. "when": "false"
  3831. },
  3832. {
  3833. "command": "gitlens.views.fileHistory.setRenameFollowingOn",
  3834. "when": "false"
  3835. },
  3836. {
  3837. "command": "gitlens.views.fileHistory.setRenameFollowingOff",
  3838. "when": "false"
  3839. },
  3840. {
  3841. "command": "gitlens.views.lineHistory.refresh",
  3842. "when": "false"
  3843. },
  3844. {
  3845. "command": "gitlens.views.lineHistory.changeBase",
  3846. "when": "false"
  3847. },
  3848. {
  3849. "command": "gitlens.views.lineHistory.setEditorFollowingOn",
  3850. "when": "false"
  3851. },
  3852. {
  3853. "command": "gitlens.views.lineHistory.setEditorFollowingOff",
  3854. "when": "false"
  3855. },
  3856. {
  3857. "command": "gitlens.views.lineHistory.setRenameFollowingOn",
  3858. "when": "false"
  3859. },
  3860. {
  3861. "command": "gitlens.views.lineHistory.setRenameFollowingOff",
  3862. "when": "false"
  3863. },
  3864. {
  3865. "command": "gitlens.views.compare.selectForCompare",
  3866. "when": "gitlens:enabled && config.gitlens.views.compare.enabled"
  3867. },
  3868. {
  3869. "command": "gitlens.views.compare.clear",
  3870. "when": "false"
  3871. },
  3872. {
  3873. "command": "gitlens.views.compare.refresh",
  3874. "when": "false"
  3875. },
  3876. {
  3877. "command": "gitlens.views.compare.setFilesLayoutToAuto",
  3878. "when": "false"
  3879. },
  3880. {
  3881. "command": "gitlens.views.compare.setFilesLayoutToList",
  3882. "when": "false"
  3883. },
  3884. {
  3885. "command": "gitlens.views.compare.setFilesLayoutToTree",
  3886. "when": "false"
  3887. },
  3888. {
  3889. "command": "gitlens.views.compare.setKeepResultsToOn",
  3890. "when": "false"
  3891. },
  3892. {
  3893. "command": "gitlens.views.compare.setKeepResultsToOff",
  3894. "when": "false"
  3895. },
  3896. {
  3897. "command": "gitlens.views.compare.pinComparison",
  3898. "when": "false"
  3899. },
  3900. {
  3901. "command": "gitlens.views.compare.unpinComparison",
  3902. "when": "false"
  3903. },
  3904. {
  3905. "command": "gitlens.views.search.searchCommits",
  3906. "when": "false"
  3907. },
  3908. {
  3909. "command": "gitlens.views.search.clear",
  3910. "when": "false"
  3911. },
  3912. {
  3913. "command": "gitlens.views.search.refresh",
  3914. "when": "false"
  3915. },
  3916. {
  3917. "command": "gitlens.views.search.setFilesLayoutToAuto",
  3918. "when": "false"
  3919. },
  3920. {
  3921. "command": "gitlens.views.search.setFilesLayoutToList",
  3922. "when": "false"
  3923. },
  3924. {
  3925. "command": "gitlens.views.search.setFilesLayoutToTree",
  3926. "when": "false"
  3927. },
  3928. {
  3929. "command": "gitlens.views.search.setKeepResultsToOn",
  3930. "when": "false"
  3931. },
  3932. {
  3933. "command": "gitlens.views.search.setKeepResultsToOff",
  3934. "when": "false"
  3935. },
  3936. {
  3937. "command": "gitlens.views.dismissNode",
  3938. "when": "false"
  3939. },
  3940. {
  3941. "command": "gitlens.views.expandNode",
  3942. "when": "false"
  3943. },
  3944. {
  3945. "command": "gitlens.views.refreshNode",
  3946. "when": "false"
  3947. },
  3948. {
  3949. "command": "gitlens.views.showMoreChildren",
  3950. "when": "false"
  3951. },
  3952. {
  3953. "command": "gitlens.views.showAllChildren",
  3954. "when": "false"
  3955. }
  3956. ],
  3957. "editor/context": [
  3958. {
  3959. "command": "gitlens.diffLineWithPrevious",
  3960. "when": "editorTextFocus && gitlens:activeFileStatus =~ /blameable/ && config.gitlens.menus.editor.compare",
  3961. "group": "1_gitlens@1"
  3962. },
  3963. {
  3964. "command": "gitlens.diffLineWithWorking",
  3965. "when": "editorTextFocus && gitlens:activeFileStatus =~ /blameable/ && config.gitlens.menus.editor.compare",
  3966. "group": "1_gitlens@2"
  3967. },
  3968. {
  3969. "command": "gitlens.openFileInRemote",
  3970. "when": "editorTextFocus && gitlens:activeFileStatus =~ /remotes/ && config.gitlens.menus.editor.remote",
  3971. "group": "1_gitlens_1@1"
  3972. },
  3973. {
  3974. "command": "gitlens.openCommitInRemote",
  3975. "when": "editorTextFocus && gitlens:activeFileStatus =~ /remotes/ && config.gitlens.menus.editor.remote",
  3976. "group": "1_gitlens_1@2"
  3977. },
  3978. {
  3979. "command": "gitlens.showQuickCommitFileDetails",
  3980. "when": "editorTextFocus && gitlens:activeFileStatus =~ /blameable/ && config.gitlens.menus.editor.details",
  3981. "group": "1_gitlens_1@3"
  3982. },
  3983. {
  3984. "command": "gitlens.showQuickFileHistory",
  3985. "when": "gitlens:activeFileStatus =~ /tracked/ && config.gitlens.menus.editor.history",
  3986. "group": "3_gitlens@1"
  3987. },
  3988. {
  3989. "command": "gitlens.showFileHistoryInView",
  3990. "when": "gitlens:activeFileStatus =~ /tracked/ && config.gitlens.menus.editor.history",
  3991. "group": "3_gitlens@2"
  3992. },
  3993. {
  3994. "command": "gitlens.toggleFileBlame",
  3995. "when": "editorTextFocus && gitlens:activeFileStatus =~ /blameable/ && config.gitlens.menus.editor.blame",
  3996. "group": "3_gitlens@3"
  3997. },
  3998. {
  3999. "command": "gitlens.copyShaToClipboard",
  4000. "when": "editorTextFocus && gitlens:activeFileStatus =~ /blameable/ && config.gitlens.menus.editor.clipboard",
  4001. "group": "9_b_gitlens@1"
  4002. },
  4003. {
  4004. "command": "gitlens.copyMessageToClipboard",
  4005. "when": "editorTextFocus && gitlens:activeFileStatus =~ /blameable/ && config.gitlens.menus.editor.clipboard",
  4006. "group": "9_b_gitlens@2"
  4007. },
  4008. {
  4009. "command": "gitlens.copyRemoteFileUrlToClipboard",
  4010. "when": "editorTextFocus && gitlens:activeFileStatus =~ /remotes/ && config.gitlens.menus.editor.clipboard",
  4011. "group": "9_b_gitlens@3"
  4012. }
  4013. ],
  4014. "editor/title": [
  4015. {
  4016. "command": "gitlens.exploreRepoAtRevision",
  4017. "when": "gitlens:activeFileStatus =~ /revision/ && resourceScheme =~ /^(?!(file|git)$).*$/",
  4018. "group": "navigation@-100"
  4019. },
  4020. {
  4021. "command": "gitlens.diffWithWorking",
  4022. "when": "gitlens:activeFileStatus =~ /revision/ && resourceScheme =~ /^(?!(file|git)$).*$/",
  4023. "group": "navigation@-99"
  4024. },
  4025. {
  4026. "command": "gitlens.openRevisionFile",
  4027. "when": "gitlens:activeFileStatus =~ /revision/ && resourceScheme =~ /^(?!(file|git)$).*$/ && isInDiffEditor",
  4028. "group": "navigation@-98"
  4029. },
  4030. {
  4031. "command": "gitlens.openWorkingFile",
  4032. "when": "gitlens:activeFileStatus =~ /revision/ && resourceScheme =~ /^(?!(file|git)$).*$/",
  4033. "group": "navigation@-97"
  4034. },
  4035. {
  4036. "command": "gitlens.openWorkingFile",
  4037. "when": "gitlens:activeFileStatus =~ /revision/ && resourceScheme == git && !isInDiffEditor",
  4038. "group": "navigation@-97"
  4039. },
  4040. {
  4041. "command": "gitlens.diffWithPrevious",
  4042. "alt": "gitlens.diffWithRevision",
  4043. "when": "gitlens:activeFileStatus =~ /tracked/ && config.gitlens.menus.editorGroup.compare && !isInDiffEditor",
  4044. "group": "navigation@97"
  4045. },
  4046. {
  4047. "command": "gitlens.diffWithPrevious",
  4048. "alt": "gitlens.diffWithRevision",
  4049. "when": "gitlens:activeFileStatus =~ /tracked/ && config.gitlens.menus.editorGroup.compare && isInDiffLeftEditor",
  4050. "group": "navigation@97"
  4051. },
  4052. {
  4053. "command": "gitlens.diffWithPreviousInDiffRight",
  4054. "alt": "gitlens.diffWithRevision",
  4055. "when": "gitlens:activeFileStatus =~ /tracked/ && config.gitlens.menus.editorGroup.compare && isInDiffRightEditor",
  4056. "group": "navigation@97"
  4057. },
  4058. {
  4059. "command": "gitlens.showQuickRevisionDetails",
  4060. "when": "gitlens:activeFileStatus =~ /tracked/ && config.gitlens.menus.editorGroup.compare",
  4061. "group": "navigation@98"
  4062. },
  4063. {
  4064. "command": "gitlens.diffWithNext",
  4065. "when": "gitlens:activeFileStatus =~ /tracked/ && config.gitlens.menus.editorGroup.compare && !isInDiffEditor",
  4066. "group": "navigation@99"
  4067. },
  4068. {
  4069. "command": "gitlens.diffWithNext",
  4070. "when": "gitlens:activeFileStatus =~ /tracked/ && config.gitlens.menus.editorGroup.compare && isInDiffRightEditor",
  4071. "group": "navigation@99"
  4072. },
  4073. {
  4074. "command": "gitlens.diffWithNextInDiffLeft",
  4075. "when": "gitlens:activeFileStatus =~ /tracked/ && config.gitlens.menus.editorGroup.compare && isInDiffLeftEditor",
  4076. "group": "navigation@99"
  4077. },
  4078. {
  4079. "command": "gitlens.toggleFileBlame",
  4080. "alt": "gitlens.toggleFileHeatmap",
  4081. "when": "gitlens:activeFileStatus =~ /blameable/ && !gitlens:annotationStatus && config.gitlens.menus.editorGroup.blame",
  4082. "group": "navigation@100"
  4083. },
  4084. {
  4085. "command": "gitlens.computingFileAnnotations",
  4086. "when": "gitlens:activeFileStatus =~ /blameable/ && gitlens:annotationStatus == computing && config.gitlens.menus.editorGroup.blame",
  4087. "group": "navigation@100"
  4088. },
  4089. {
  4090. "command": "gitlens.clearFileAnnotations",
  4091. "when": "gitlens:activeFileStatus =~ /blameable/ && gitlens:annotationStatus == computed && config.gitlens.menus.editorGroup.blame",
  4092. "group": "navigation@100"
  4093. }
  4094. ],
  4095. "editor/title/context": [
  4096. {
  4097. "command": "gitlens.openRevisionFile",
  4098. "when": "resourceScheme == gitlens",
  4099. "group": "1_co_gitlens@1"
  4100. },
  4101. {
  4102. "command": "gitlens.openWorkingFile",
  4103. "when": "resourceScheme == gitlens",
  4104. "group": "1_co_gitlens@2"
  4105. },
  4106. {
  4107. "command": "gitlens.openFileInRemote",
  4108. "when": "gitlens:enabled && gitlens:hasRemotes && config.gitlens.menus.editorTab.remote",
  4109. "group": "1_co_gitlens@3"
  4110. },
  4111. {
  4112. "command": "gitlens.diffWithPrevious",
  4113. "when": "gitlens:enabled && config.gitlens.menus.editorTab.compare",
  4114. "group": "1_co_gitlens_1@1"
  4115. },
  4116. {
  4117. "command": "gitlens.diffWithRevision",
  4118. "when": "gitlens:enabled && config.gitlens.menus.editorTab.compare",
  4119. "group": "1_co_gitlens_1@2"
  4120. },
  4121. {
  4122. "command": "gitlens.diffWithWorking",
  4123. "when": "resourceScheme == gitlens && config.gitlens.menus.editorTab.compare",
  4124. "group": "1_co_gitlens_1@3"
  4125. },
  4126. {
  4127. "command": "gitlens.showQuickFileHistory",
  4128. "when": "gitlens:enabled && config.gitlens.menus.editorTab.history",
  4129. "group": "1_co_gitlens_2@1"
  4130. },
  4131. {
  4132. "command": "gitlens.showFileHistoryInView",
  4133. "when": "gitlens:enabled && config.gitlens.menus.editorTab.history",
  4134. "group": "1_co_gitlens_2@2"
  4135. },
  4136. {
  4137. "command": "gitlens.exploreRepoAtRevision",
  4138. "when": "resourceScheme == gitlens",
  4139. "group": "1_co_gitlens_3@1"
  4140. },
  4141. {
  4142. "command": "gitlens.copyRemoteFileUrlToClipboard",
  4143. "when": "gitlens:enabled && gitlens:hasRemotes && config.gitlens.menus.editorTab.clipboard",
  4144. "group": "1_cutcopypaste@100"
  4145. }
  4146. ],
  4147. "explorer/context": [
  4148. {
  4149. "command": "gitlens.openFileInRemote",
  4150. "when": "!explorerResourceIsRoot && !explorerResourceIsFolder && gitlens:enabled && gitlens:hasRemotes && config.gitlens.menus.explorer.remote",
  4151. "group": "navigation@100"
  4152. },
  4153. {
  4154. "command": "gitlens.diffWithPrevious",
  4155. "when": "!explorerResourceIsRoot && !explorerResourceIsFolder && gitlens:enabled && config.gitlens.menus.explorer.compare",
  4156. "group": "3_compare@1"
  4157. },
  4158. {
  4159. "command": "gitlens.diffWithRevision",
  4160. "when": "!explorerResourceIsRoot && !explorerResourceIsFolder && gitlens:enabled && config.gitlens.menus.explorer.compare",
  4161. "group": "3_compare@2"
  4162. },
  4163. {
  4164. "command": "gitlens.showQuickFileHistory",
  4165. "when": "!explorerResourceIsRoot && !explorerResourceIsFolder && gitlens:enabled && config.gitlens.menus.explorer.history",
  4166. "group": "4_gitlens_1@1"
  4167. },
  4168. {
  4169. "command": "gitlens.showFolderHistory",
  4170. "when": "explorerResourceIsFolder && gitlens:enabled && config.gitlens.menus.explorer.history",
  4171. "group": "4_gitlens_1@1"
  4172. },
  4173. {
  4174. "command": "gitlens.showFileHistoryInView",
  4175. "when": "!explorerResourceIsRoot && !explorerResourceIsFolder && gitlens:enabled && config.gitlens.menus.explorer.history",
  4176. "group": "4_gitlens_1@2"
  4177. },
  4178. {
  4179. "command": "gitlens.copyRemoteFileUrlToClipboard",
  4180. "when": "!explorerResourceIsRoot && !explorerResourceIsFolder && gitlens:enabled && gitlens:hasRemotes && config.gitlens.menus.explorer.clipboard",
  4181. "group": "5_cutcopypaste@100"
  4182. }
  4183. ],
  4184. "scm/resourceGroup/context": [
  4185. {
  4186. "command": "gitlens.stashSave",
  4187. "when": "gitlens:enabled && !gitlens:readonly && config.gitlens.menus.scmGroup.stashInline",
  4188. "group": "inline@-1"
  4189. },
  4190. {
  4191. "command": "gitlens.stashSave",
  4192. "when": "gitlens:enabled && !gitlens:readonly && config.gitlens.menus.scmGroup.stash",
  4193. "group": "1_modification@100"
  4194. },
  4195. {
  4196. "command": "gitlens.openChangedFiles",
  4197. "when": "gitlens:enabled && config.gitlens.menus.scmGroup.openClose",
  4198. "group": "2_gitlens@1"
  4199. },
  4200. {
  4201. "command": "gitlens.closeUnchangedFiles",
  4202. "when": "gitlens:enabled && config.gitlens.menus.scmGroup.openClose",
  4203. "group": "2_gitlens@2"
  4204. },
  4205. {
  4206. "command": "gitlens.externalDiffAll",
  4207. "when": "gitlens:enabled && config.gitlens.menus.scmGroup.compare",
  4208. "group": "3_gitlens@3"
  4209. },
  4210. {
  4211. "command": "gitlens.diffDirectoryWithHead",
  4212. "when": "gitlens:enabled && config.gitlens.menus.scmGroup.compare",
  4213. "group": "3_gitlens@4"
  4214. }
  4215. ],
  4216. "scm/resourceState/context": [
  4217. {
  4218. "command": "gitlens.openFileInRemote",
  4219. "when": "gitlens:enabled && gitlens:hasRemotes && config.gitlens.menus.scmItem.remote",
  4220. "group": "navigation"
  4221. },
  4222. {
  4223. "command": "gitlens.externalDiff",
  4224. "when": "gitlens:enabled && config.gitlens.menus.scmItem.compare",
  4225. "group": "navigation"
  4226. },
  4227. {
  4228. "command": "gitlens.diffWithRevision",
  4229. "when": "gitlens:enabled && config.gitlens.menus.scmItem.compare",
  4230. "group": "1_gitlens@1"
  4231. },
  4232. {
  4233. "command": "gitlens.diffWithRef",
  4234. "when": "gitlens:enabled && config.gitlens.menus.scmItem.compare",
  4235. "group": "1_gitlens@2"
  4236. },
  4237. {
  4238. "command": "gitlens.showQuickFileHistory",
  4239. "when": "gitlens:enabled && config.gitlens.menus.scmItem.history",
  4240. "group": "1_gitlens_1@1"
  4241. },
  4242. {
  4243. "command": "gitlens.showFileHistoryInView",
  4244. "when": "gitlens:enabled && config.gitlens.menus.scmItem.history",
  4245. "group": "1_gitlens_1@2"
  4246. },
  4247. {
  4248. "command": "gitlens.stashSaveFiles",
  4249. "when": "gitlens:enabled && !gitlens:readonly && config.gitlens.menus.scmItem.stash",
  4250. "group": "1_modification@-1"
  4251. },
  4252. {
  4253. "command": "gitlens.copyRemoteFileUrlToClipboard",
  4254. "when": "gitlens:enabled && gitlens:hasRemotes && config.gitlens.menus.scmItem.clipboard",
  4255. "group": "9_gitlens@1"
  4256. }
  4257. ],
  4258. "view/title": [
  4259. {
  4260. "command": "gitlens.pushRepositories",
  4261. "when": "gitlens:hasRemotes && !gitlens:readonly && view =~ /^gitlens\\.views\\.repositories:/",
  4262. "group": "navigation@10"
  4263. },
  4264. {
  4265. "command": "gitlens.pullRepositories",
  4266. "when": "gitlens:hasRemotes && !gitlens:readonly && view =~ /^gitlens\\.views\\.repositories:/",
  4267. "group": "navigation@11"
  4268. },
  4269. {
  4270. "command": "gitlens.fetchRepositories",
  4271. "when": "gitlens:hasRemotes && !gitlens:readonly && view =~ /^gitlens\\.views\\.repositories:/",
  4272. "group": "navigation@12"
  4273. },
  4274. {
  4275. "command": "gitlens.views.repositories.refresh",
  4276. "when": "view =~ /^gitlens\\.views\\.repositories:/",
  4277. "group": "navigation@99"
  4278. },
  4279. {
  4280. "command": "gitlens.views.repositories.setFilesLayoutToAuto",
  4281. "when": "view =~ /^gitlens\\.views\\.repositories:/",
  4282. "group": "1_gitlens"
  4283. },
  4284. {
  4285. "command": "gitlens.views.repositories.setFilesLayoutToList",
  4286. "when": "view =~ /^gitlens\\.views\\.repositories:/",
  4287. "group": "1_gitlens"
  4288. },
  4289. {
  4290. "command": "gitlens.views.repositories.setFilesLayoutToTree",
  4291. "when": "view =~ /^gitlens\\.views\\.repositories:/",
  4292. "group": "1_gitlens"
  4293. },
  4294. {
  4295. "command": "gitlens.views.repositories.setAutoRefreshToOn",
  4296. "when": "view =~ /^gitlens\\.views\\.repositories:/ && config.gitlens.views.repositories.autoRefresh && !gitlens:views:repositories:autoRefresh",
  4297. "group": "2_gitlens"
  4298. },
  4299. {
  4300. "command": "gitlens.views.repositories.setAutoRefreshToOff",
  4301. "when": "view =~ /^gitlens\\.views\\.repositories:/ && config.gitlens.views.repositories.autoRefresh && gitlens:views:repositories:autoRefresh",
  4302. "group": "2_gitlens"
  4303. },
  4304. {
  4305. "command": "gitlens.views.fileHistory.setEditorFollowingOn",
  4306. "when": "view =~ /^gitlens\\.views\\.fileHistory:/ && !gitlens:views:fileHistory:editorFollowing",
  4307. "group": "navigation@10"
  4308. },
  4309. {
  4310. "command": "gitlens.views.fileHistory.setEditorFollowingOff",
  4311. "when": "view =~ /^gitlens\\.views\\.fileHistory:/ && gitlens:views:fileHistory:editorFollowing",
  4312. "group": "navigation@10"
  4313. },
  4314. {
  4315. "command": "gitlens.views.fileHistory.changeBase",
  4316. "when": "view =~ /^gitlens\\.views\\.fileHistory:/",
  4317. "group": "navigation@11"
  4318. },
  4319. {
  4320. "command": "gitlens.views.fileHistory.refresh",
  4321. "when": "view =~ /^gitlens\\.views\\.fileHistory:/",
  4322. "group": "navigation@99"
  4323. },
  4324. {
  4325. "command": "gitlens.views.fileHistory.setRenameFollowingOn",
  4326. "when": "view =~ /^gitlens\\.views\\.fileHistory:/ && !config.gitlens.advanced.fileHistoryFollowsRenames",
  4327. "group": "1_gitlens"
  4328. },
  4329. {
  4330. "command": "gitlens.views.fileHistory.setRenameFollowingOff",
  4331. "when": "view =~ /^gitlens\\.views\\.fileHistory:/ && config.gitlens.advanced.fileHistoryFollowsRenames",
  4332. "group": "1_gitlens"
  4333. },
  4334. {
  4335. "command": "gitlens.views.lineHistory.setEditorFollowingOn",
  4336. "when": "view =~ /^gitlens\\.views\\.lineHistory:/ && !gitlens:views:lineHistory:editorFollowing",
  4337. "group": "navigation@10"
  4338. },
  4339. {
  4340. "command": "gitlens.views.lineHistory.setEditorFollowingOff",
  4341. "when": "view =~ /^gitlens\\.views\\.lineHistory:/ && gitlens:views:lineHistory:editorFollowing",
  4342. "group": "navigation@10"
  4343. },
  4344. {
  4345. "command": "gitlens.views.lineHistory.changeBase",
  4346. "when": "view =~ /^gitlens\\.views\\.lineHistory:/",
  4347. "group": "navigation@11"
  4348. },
  4349. {
  4350. "command": "gitlens.views.lineHistory.refresh",
  4351. "when": "view =~ /^gitlens\\.views\\.lineHistory:/",
  4352. "group": "navigation@99"
  4353. },
  4354. {
  4355. "command": "gitlens.views.lineHistory.setRenameFollowingOn",
  4356. "when": "view =~ /^gitlens\\.views\\.lineHistory:/ && !config.gitlens.advanced.fileHistoryFollowsRenames",
  4357. "group": "1_gitlens"
  4358. },
  4359. {
  4360. "command": "gitlens.views.lineHistory.setRenameFollowingOff",
  4361. "when": "view =~ /^gitlens\\.views\\.lineHistory:/ && config.gitlens.advanced.fileHistoryFollowsRenames",
  4362. "group": "1_gitlens"
  4363. },
  4364. {
  4365. "command": "gitlens.views.compare.selectForCompare",
  4366. "when": "view =~ /^gitlens\\.views\\.compare:/",
  4367. "group": "navigation@10"
  4368. },
  4369. {
  4370. "command": "gitlens.views.compare.setKeepResultsToOn",
  4371. "when": "view =~ /^gitlens\\.views\\.compare:/ && !gitlens:views:compare:keepResults",
  4372. "group": "navigation@11"
  4373. },
  4374. {
  4375. "command": "gitlens.views.compare.setKeepResultsToOff",
  4376. "when": "view =~ /^gitlens\\.views\\.compare:/ && gitlens:views:compare:keepResults",
  4377. "group": "navigation@11"
  4378. },
  4379. {
  4380. "command": "gitlens.views.compare.clear",
  4381. "when": "view =~ /^gitlens\\.views\\.compare:/",
  4382. "group": "navigation@98"
  4383. },
  4384. {
  4385. "command": "gitlens.views.compare.refresh",
  4386. "when": "view =~ /^gitlens\\.views\\.compare:/",
  4387. "group": "navigation@99"
  4388. },
  4389. {
  4390. "command": "gitlens.views.compare.setFilesLayoutToAuto",
  4391. "when": "view =~ /^gitlens\\.views\\.compare:/",
  4392. "group": "1_gitlens"
  4393. },
  4394. {
  4395. "command": "gitlens.views.compare.setFilesLayoutToList",
  4396. "when": "view =~ /^gitlens\\.views\\.compare:/",
  4397. "group": "1_gitlens"
  4398. },
  4399. {
  4400. "command": "gitlens.views.compare.setFilesLayoutToTree",
  4401. "when": "view =~ /^gitlens\\.views\\.compare:/",
  4402. "group": "1_gitlens"
  4403. },
  4404. {
  4405. "command": "gitlens.views.search.searchCommits",
  4406. "when": "view =~ /^gitlens\\.views\\.search:/",
  4407. "group": "navigation@10"
  4408. },
  4409. {
  4410. "command": "gitlens.views.search.setKeepResultsToOn",
  4411. "when": "view =~ /^gitlens\\.views\\.search:/ && !gitlens:views:search:keepResults",
  4412. "group": "navigation@11"
  4413. },
  4414. {
  4415. "command": "gitlens.views.search.setKeepResultsToOff",
  4416. "when": "view =~ /^gitlens\\.views\\.search:/ && gitlens:views:search:keepResults",
  4417. "group": "navigation@11"
  4418. },
  4419. {
  4420. "command": "gitlens.views.search.clear",
  4421. "when": "view =~ /^gitlens\\.views\\.search:/",
  4422. "group": "navigation@98"
  4423. },
  4424. {
  4425. "command": "gitlens.views.search.refresh",
  4426. "when": "view =~ /^gitlens\\.views\\.search:/",
  4427. "group": "navigation@99"
  4428. },
  4429. {
  4430. "command": "gitlens.views.search.setFilesLayoutToAuto",
  4431. "when": "view =~ /^gitlens\\.views\\.search:/",
  4432. "group": "1_gitlens"
  4433. },
  4434. {
  4435. "command": "gitlens.views.search.setFilesLayoutToList",
  4436. "when": "view =~ /^gitlens\\.views\\.search:/",
  4437. "group": "1_gitlens"
  4438. },
  4439. {
  4440. "command": "gitlens.views.search.setFilesLayoutToTree",
  4441. "when": "view =~ /^gitlens\\.views\\.search:/",
  4442. "group": "1_gitlens"
  4443. },
  4444. {
  4445. "command": "gitlens.supportGitLens",
  4446. "when": "view =~ /^gitlens\\.views\\..*:/ && config.gitlens.advanced.messages.suppressSupportGitLensNotification != true && gitlens:views:supportGitLens:hide != true",
  4447. "group": "navigation@1"
  4448. },
  4449. {
  4450. "command": "gitlens.showSettingsPage#repositories-view",
  4451. "when": "view =~ /^gitlens\\.views\\.repositories:/",
  4452. "group": "9_gitlens"
  4453. },
  4454. {
  4455. "command": "gitlens.showSettingsPage#file-history-view",
  4456. "when": "view =~ /^gitlens\\.views\\.fileHistory:/",
  4457. "group": "9_gitlens"
  4458. },
  4459. {
  4460. "command": "gitlens.showSettingsPage#line-history-view",
  4461. "when": "view =~ /^gitlens\\.views\\.lineHistory:/",
  4462. "group": "9_gitlens"
  4463. },
  4464. {
  4465. "command": "gitlens.showSettingsPage#search-commits-view",
  4466. "when": "view =~ /^gitlens\\.views\\.search:/",
  4467. "group": "9_gitlens"
  4468. },
  4469. {
  4470. "command": "gitlens.showSettingsPage",
  4471. "when": "view =~ /^gitlens\\.views\\.compare:/",
  4472. "group": "9_gitlens"
  4473. }
  4474. ],
  4475. "view/item/context": [
  4476. {
  4477. "command": "gitlens.openBranchesInRemote",
  4478. "when": "viewItem =~ /gitlens:branches\\b(?=.*?\\b\\+remotes\\b)/",
  4479. "group": "inline@98"
  4480. },
  4481. {
  4482. "command": "gitlens.openBranchesInRemote",
  4483. "when": "viewItem =~ /gitlens:branches\\b(?=.*?\\b\\+remotes\\b)/",
  4484. "group": "1_gitlens@1"
  4485. },
  4486. {
  4487. "command": "gitlens.views.switchToBranch",
  4488. "when": "!gitlens:readonly && viewItem =~ /gitlens:branch\\b/",
  4489. "group": "inline@10"
  4490. },
  4491. {
  4492. "command": "gitlens.views.compareWithRemote",
  4493. "when": "viewItem =~ /gitlens:branch\\b(?=.*?\\b\\+tracking\\b)/",
  4494. "group": "inline@97"
  4495. },
  4496. {
  4497. "command": "gitlens.views.compareWithHead",
  4498. "when": "viewItem =~ /gitlens:(branch\\b(?!.*?\\b\\+current\\b)|commit\\b|stash\\b|tag\\b)/",
  4499. "group": "inline@98",
  4500. "alt": "gitlens.views.compareWithWorking"
  4501. },
  4502. {
  4503. "command": "gitlens.views.compareWithWorking",
  4504. "when": "viewItem =~ /gitlens:branch\\b(?=.*?\\b\\+current\\b)/",
  4505. "group": "inline@98"
  4506. },
  4507. {
  4508. "command": "gitlens.views.star",
  4509. "when": "viewItem =~ /gitlens:branch\\b(?!.*?\\b\\+starred\\b)/",
  4510. "group": "inline@99"
  4511. },
  4512. {
  4513. "command": "gitlens.views.unstar",
  4514. "when": "viewItem =~ /gitlens:branch\\b(?=.*?\\b\\+starred\\b)/",
  4515. "group": "inline@99"
  4516. },
  4517. {
  4518. "command": "gitlens.views.switchToBranch",
  4519. "when": "!gitlens:readonly && viewItem =~ /gitlens:branch\\b/",
  4520. "group": "1_gitlens@1"
  4521. },
  4522. {
  4523. "command": "gitlens.views.rebaseOntoUpstream",
  4524. "when": "!gitlens:readonly && viewItem =~ /gitlens:branch\\b(?=.*?\\b\\+current\\b)(?=.*?\\b\\+tracking\\b)/",
  4525. "group": "1_gitlens_1@1"
  4526. },
  4527. {
  4528. "command": "gitlens.views.mergeBranchInto",
  4529. "when": "!gitlens:readonly && viewItem =~ /gitlens:branch\\b(?!.*?\\b\\+current\\b)/",
  4530. "group": "1_gitlens_1@2"
  4531. },
  4532. {
  4533. "command": "gitlens.views.rebaseOntoBranch",
  4534. "when": "!gitlens:readonly && viewItem =~ /gitlens:branch\\b(?!.*?\\b\\+current\\b)/",
  4535. "group": "1_gitlens_1@3"
  4536. },
  4537. {
  4538. "command": "gitlens.openBranchInRemote",
  4539. "when": "viewItem =~ /gitlens:branch\\b(?=.*?\\b\\+(tracking|remote)\\b)/",
  4540. "group": "2_gitlens@1"
  4541. },
  4542. {
  4543. "command": "gitlens.views.compareWithRemote",
  4544. "when": "viewItem =~ /gitlens:branch\\b(?=.*?\\b\\+tracking\\b)/",
  4545. "group": "7_gitlens@1"
  4546. },
  4547. {
  4548. "command": "gitlens.views.compareWithHead",
  4549. "when": "viewItem =~ /gitlens:(branch\\b(?!.*?\\b\\+current\\b)|commit\\b|stash\\b|tag\\b)/",
  4550. "group": "7_gitlens@2"
  4551. },
  4552. {
  4553. "command": "gitlens.views.compareWithWorking",
  4554. "when": "viewItem =~ /gitlens:(branch|commit|stash|tag)\\b/",
  4555. "group": "7_gitlens@3"
  4556. },
  4557. {
  4558. "command": "gitlens.views.compareAncestryWithWorking",
  4559. "when": "viewItem =~ /gitlens:branch\\b(?!.*?\\b\\+current\\b)/",
  4560. "group": "7_gitlens@4"
  4561. },
  4562. {
  4563. "command": "gitlens.views.compareWithSelected",
  4564. "when": "viewItem =~ /gitlens:(branch|commit|stash|tag)\\b/ && gitlens:views:canCompare",
  4565. "group": "7_gitlens_@1"
  4566. },
  4567. {
  4568. "command": "gitlens.views.selectForCompare",
  4569. "when": "viewItem =~ /gitlens:(branch|commit|stash|tag)\\b/",
  4570. "group": "7_gitlens_@2"
  4571. },
  4572. {
  4573. "command": "gitlens.views.compareFileWithSelected",
  4574. "when": "viewItem =~ /gitlens:file\\b/ && gitlens:views:canCompare:file",
  4575. "group": "7_gitlens_@1"
  4576. },
  4577. {
  4578. "command": "gitlens.views.selectFileForCompare",
  4579. "when": "viewItem =~ /gitlens:file\\b/",
  4580. "group": "7_gitlens_@2"
  4581. },
  4582. {
  4583. "command": "gitlens.views.openDirectoryDiffWithWorking",
  4584. "when": "viewItem =~ /gitlens:(branch|tag)\\b/",
  4585. "group": "7_gitlens_more@2"
  4586. },
  4587. {
  4588. "command": "gitlens.views.terminalCreateBranch",
  4589. "when": "!gitlens:readonly && viewItem =~ /gitlens:(branch|commit|tag)\\b/",
  4590. "group": "8_gitlens@5"
  4591. },
  4592. {
  4593. "command": "gitlens.views.terminalDeleteBranch",
  4594. "when": "!gitlens:readonly && viewItem =~ /gitlens:branch\\b(?!.*?\\b\\+current\\b)/",
  4595. "group": "8_gitlens@6"
  4596. },
  4597. {
  4598. "command": "gitlens.views.terminalCreateTag",
  4599. "when": "!gitlens:readonly && viewItem =~ /gitlens:(branch|commit)\\b/",
  4600. "group": "8_gitlens@7"
  4601. },
  4602. {
  4603. "command": "gitlens.views.star",
  4604. "when": "viewItem =~ /gitlens:branch\\b(?!.*?\\b\\+starred\\b)/",
  4605. "group": "8_gitlens_@1"
  4606. },
  4607. {
  4608. "command": "gitlens.views.unstar",
  4609. "when": "viewItem =~ /gitlens:branch\\b(?=.*?\\b\\+starred\\b)/",
  4610. "group": "8_gitlens_@1"
  4611. },
  4612. {
  4613. "command": "gitlens.inviteToLiveShare",
  4614. "when": "gitlens:vsls && gitlens:vsls != guest && viewItem =~ /gitlens:contributor\\b/",
  4615. "group": "inline@97"
  4616. },
  4617. {
  4618. "command": "gitlens.views.contributor.copyToClipboard",
  4619. "when": "viewItem =~ /gitlens:contributor\\b/",
  4620. "group": "inline@98"
  4621. },
  4622. {
  4623. "command": "gitlens.inviteToLiveShare",
  4624. "when": "gitlens:vsls && gitlens:vsls != guest && viewItem =~ /gitlens:contributor\\b/",
  4625. "group": "1_gitlens@1"
  4626. },
  4627. {
  4628. "command": "gitlens.views.contributor.copyToClipboard",
  4629. "when": "viewItem =~ /gitlens:contributor\\b/",
  4630. "group": "1_gitlens_1@1"
  4631. },
  4632. {
  4633. "command": "gitlens.views.contributor.addCoauthoredBy",
  4634. "when": "viewItem =~ /gitlens:contributor\\b/",
  4635. "group": "2_gitlens@1"
  4636. },
  4637. {
  4638. "command": "gitlens.openCommitInRemote",
  4639. "when": "viewItem =~ /gitlens:commit\\b/ && gitlens:hasRemotes",
  4640. "group": "inline@98"
  4641. },
  4642. {
  4643. "command": "gitlens.views.revert",
  4644. "when": "!gitlens:readonly && viewItem =~ /gitlens:commit\\b(?=.*?\\b\\+current\\b)/",
  4645. "group": "1_gitlens@1"
  4646. },
  4647. {
  4648. "command": "gitlens.views.reset",
  4649. "when": "!gitlens:readonly && viewItem =~ /gitlens:commit\\b(?=.*?\\b\\+current\\b)/",
  4650. "group": "1_gitlens@2"
  4651. },
  4652. {
  4653. "command": "gitlens.views.cherryPick",
  4654. "when": "!gitlens:readonly && viewItem =~ /gitlens:commit\\b(?!.*?\\b\\+current\\b)/",
  4655. "group": "1_gitlens@1"
  4656. },
  4657. {
  4658. "command": "gitlens.views.switchToCommit",
  4659. "when": "!gitlens:readonly && viewItem =~ /gitlens:commit\\b/",
  4660. "group": "1_gitlens@3"
  4661. },
  4662. {
  4663. "command": "gitlens.views.rebaseOntoCommit",
  4664. "when": "!gitlens:readonly && viewItem =~ /gitlens:commit\\b/",
  4665. "group": "1_gitlens@4"
  4666. },
  4667. {
  4668. "command": "gitlens.openCommitInRemote",
  4669. "when": "viewItem =~ /gitlens:commit\\b/ && gitlens:hasRemotes",
  4670. "group": "1_gitlens_1@1"
  4671. },
  4672. {
  4673. "command": "gitlens.views.openChangedFileChanges",
  4674. "when": "viewItem =~ /gitlens:(commit|stash|results:files)\\b/",
  4675. "group": "2_gitlens@1"
  4676. },
  4677. {
  4678. "command": "gitlens.views.openChangedFileChangesWithWorking",
  4679. "when": "viewItem =~ /gitlens:(commit|stash|results:files)\\b/",
  4680. "group": "2_gitlens@2"
  4681. },
  4682. {
  4683. "command": "gitlens.views.openChangedFiles",
  4684. "when": "viewItem =~ /gitlens:(commit|stash|results:files)\\b/",
  4685. "group": "3_gitlens@1"
  4686. },
  4687. {
  4688. "command": "gitlens.views.openChangedFileRevisions",
  4689. "when": "viewItem =~ /gitlens:(commit|stash|results:files)\\b/",
  4690. "group": "3_gitlens@2"
  4691. },
  4692. {
  4693. "command": "gitlens.copyShaToClipboard",
  4694. "when": "viewItem =~ /gitlens:(commit|file\\b(?=.*?\\b\\+committed\\b))\\b/",
  4695. "group": "inline@98",
  4696. "alt": "gitlens.copyMessageToClipboard"
  4697. },
  4698. {
  4699. "command": "gitlens.copyShaToClipboard",
  4700. "when": "viewItem =~ /gitlens:(commit|file\\b(?=.*?\\b\\+committed\\b))\\b/",
  4701. "group": "5_gitlens@1"
  4702. },
  4703. {
  4704. "command": "gitlens.copyMessageToClipboard",
  4705. "when": "viewItem =~ /gitlens:(commit|stash|file\\b(?=.*?\\b\\+committed\\b))\\b/",
  4706. "group": "5_gitlens@2"
  4707. },
  4708. {
  4709. "command": "gitlens.showQuickCommitDetails",
  4710. "when": "viewItem =~ /gitlens:commit\\b/",
  4711. "group": "5_gitlens_1@1"
  4712. },
  4713. {
  4714. "command": "gitlens.showCommitInView",
  4715. "when": "viewItem =~ /gitlens:commit\\b/",
  4716. "group": "5_gitlens_1@2"
  4717. },
  4718. {
  4719. "command": "gitlens.views.terminalPushCommit",
  4720. "when": "!gitlens:readonly && viewItem =~ /gitlens:commit\\b(?=.*?\\b\\+current\\b)/",
  4721. "group": "8_gitlens@2"
  4722. },
  4723. {
  4724. "command": "gitlens.views.openFile",
  4725. "when": "viewItem =~ /gitlens:(history:(file|line)|status:file)\\b/",
  4726. "group": "inline@1"
  4727. },
  4728. {
  4729. "command": "gitlens.views.openFile",
  4730. "when": "viewItem =~ /gitlens:file\\b(?!.*?\\b\\+history\\b)/",
  4731. "group": "inline@1",
  4732. "alt": "gitlens.views.openFileRevision"
  4733. },
  4734. {
  4735. "command": "gitlens.views.openFileRevision",
  4736. "when": "viewItem =~ /gitlens:file\\b(?=.*?\\b\\+history\\b)/",
  4737. "group": "inline@1",
  4738. "alt": "gitlens.views.openFile"
  4739. },
  4740. {
  4741. "command": "gitlens.views.stageFile",
  4742. "when": "!gitlens:readonly && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+unstaged\\b)/",
  4743. "group": "inline@1"
  4744. },
  4745. {
  4746. "command": "gitlens.views.unstageFile",
  4747. "when": "!gitlens:readonly && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+staged\\b)/",
  4748. "group": "inline@1"
  4749. },
  4750. {
  4751. "command": "gitlens.views.stageFile",
  4752. "when": "!gitlens:readonly && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+unstaged\\b)/",
  4753. "group": "1_gitlens@1"
  4754. },
  4755. {
  4756. "command": "gitlens.views.unstageFile",
  4757. "when": "!gitlens:readonly && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+staged\\b)/",
  4758. "group": "1_gitlens@1"
  4759. },
  4760. {
  4761. "command": "gitlens.stashSaveFiles",
  4762. "when": "!gitlens:readonly && viewItem =~ /gitlens:file\\b(?=.*?\\b\\+(un)?staged\\b)/",
  4763. "group": "1_gitlens@2"
  4764. },
  4765. {
  4766. "command": "gitlens.views.openChanges",
  4767. "when": "viewItem =~ /gitlens:file\\b/",
  4768. "group": "2_gitlens@1"
  4769. },
  4770. {
  4771. "command": "gitlens.externalDiff",
  4772. "when": "viewItem =~ /gitlens:file\\b/",
  4773. "group": "2_gitlens@2"
  4774. },
  4775. {
  4776. "command": "gitlens.views.openChangesWithWorking",
  4777. "when": "viewItem =~ /gitlens:file\\b/",
  4778. "group": "2_gitlens@3"
  4779. },
  4780. {
  4781. "command": "gitlens.views.openFile",
  4782. "when": "viewItem =~ /gitlens:(file|history:(file|line)|status:file)\\b/",
  4783. "group": "3_gitlens@1"
  4784. },
  4785. {
  4786. "command": "gitlens.views.openFileRevision",
  4787. "when": "viewItem =~ /gitlens:file\\b((?=.*?\\b\\+committed\\b)|:results)/",
  4788. "group": "3_gitlens@2"
  4789. },
  4790. {
  4791. "command": "gitlens.openFileInRemote",
  4792. "when": "viewItem =~ /gitlens:(file\\b(?!.*?\\b\\+(un)?staged\\b)|history:(file|line))\\b/ && gitlens:hasRemotes",
  4793. "group": "inline@99",
  4794. "alt": "gitlens.copyRemoteFileUrlToClipboard"
  4795. },
  4796. {
  4797. "command": "gitlens.openFileInRemote",
  4798. "when": "viewItem =~ /gitlens:file\\b/ && gitlens:hasRemotes",
  4799. "group": "4_gitlens@1"
  4800. },
  4801. {
  4802. "command": "gitlens.copyRemoteFileUrlToClipboard",
  4803. "when": "viewItem =~ /gitlens:(file|history:(file|line)|status:file)\\b/ && gitlens:hasRemotes",
  4804. "group": "5_gitlens@3"
  4805. },
  4806. {
  4807. "command": "gitlens.views.openFileRevisionInRemote",
  4808. "when": "viewItem =~ /gitlens:file\\b(?=.*?\\b\\+committed\\b)/ && gitlens:hasRemotes",
  4809. "group": "4_gitlens@2"
  4810. },
  4811. {
  4812. "command": "gitlens.openFileInRemote",
  4813. "when": "viewItem =~ /gitlens:(history:(file|line)|status:file)\\b/ && gitlens:hasRemotes",
  4814. "group": "3_gitlens@2"
  4815. },
  4816. {
  4817. "command": "gitlens.views.applyChanges",
  4818. "when": "viewItem =~ /gitlens:file\\b((?=.*?\\b\\+committed\\b)|:results\\b)/",
  4819. "group": "5_gitlens_1@1"
  4820. },
  4821. {
  4822. "command": "gitlens.views.restore",
  4823. "when": "viewItem =~ /gitlens:file\\b((?=.*?\\b\\+committed\\b)|:results\\b)/",
  4824. "group": "5_gitlens_1@2"
  4825. },
  4826. {
  4827. "command": "gitlens.views.applyChanges",
  4828. "when": "!gitlens:readonly && viewItem == gitlens:file:stash",
  4829. "group": "1_gitlens@1"
  4830. },
  4831. {
  4832. "command": "gitlens.views.restore",
  4833. "when": "!gitlens:readonly && viewItem == gitlens:file:stash",
  4834. "group": "1_gitlens@2"
  4835. },
  4836. {
  4837. "command": "gitlens.showQuickCommitDetails",
  4838. "when": "viewItem =~ /gitlens:file\\b(?!(:stash|:status))/",
  4839. "group": "5_gitlens_2@1"
  4840. },
  4841. {
  4842. "command": "gitlens.showCommitInView",
  4843. "when": "viewItem =~ /gitlens:file\\b(?!(:stash|:status))/",
  4844. "group": "5_gitlens_2@2"
  4845. },
  4846. {
  4847. "command": "gitlens.showQuickFileHistory",
  4848. "when": "viewItem =~ /gitlens:file\\b/",
  4849. "group": "8_gitlens@1"
  4850. },
  4851. {
  4852. "command": "gitlens.showFileHistoryInView",
  4853. "when": "viewItem =~ /gitlens:file\\b/",
  4854. "group": "8_gitlens@2"
  4855. },
  4856. {
  4857. "command": "gitlens.views.addRemote",
  4858. "when": "!gitlens:readonly && viewItem =~ /gitlens:remotes\\b/",
  4859. "group": "inline@1"
  4860. },
  4861. {
  4862. "command": "gitlens.views.addRemote",
  4863. "when": "!gitlens:readonly && viewItem =~ /gitlens:remotes\\b/",
  4864. "group": "1_gitlens@1"
  4865. },
  4866. {
  4867. "command": "gitlens.views.fetch",
  4868. "when": "!gitlens:readonly && viewItem =~ /gitlens:remote\\b/",
  4869. "group": "inline@97"
  4870. },
  4871. {
  4872. "command": "gitlens.openRepoInRemote",
  4873. "when": "viewItem =~ /gitlens:remote\\b/",
  4874. "group": "inline@98"
  4875. },
  4876. {
  4877. "command": "gitlens.views.fetch",
  4878. "when": "!gitlens:readonly && viewItem =~ /gitlens:remote\\b/",
  4879. "group": "1_gitlens@1"
  4880. },
  4881. {
  4882. "command": "gitlens.views.pruneRemote",
  4883. "when": "!gitlens:readonly && viewItem =~ /gitlens:remote\\b/",
  4884. "group": "1_gitlens@2"
  4885. },
  4886. {
  4887. "command": "gitlens.openRepoInRemote",
  4888. "when": "viewItem =~ /gitlens:remote\\b/",
  4889. "group": "2_gitlens@1"
  4890. },
  4891. {
  4892. "command": "gitlens.openBranchesInRemote",
  4893. "when": "viewItem =~ /gitlens:remote\\b/",
  4894. "group": "2_gitlens@2"
  4895. },
  4896. {
  4897. "command": "gitlens.views.terminalRemoveRemote",
  4898. "when": "!gitlens:readonly && viewItem =~ /gitlens:remote\\b/",
  4899. "group": "8_gitlens@1"
  4900. },
  4901. {
  4902. "command": "gitlens.views.setAsDefault",
  4903. "when": "viewItem =~ /gitlens:remote\\b(?!.*?\\b\\+default\\b)/",
  4904. "group": "8_gitlens_@1"
  4905. },
  4906. {
  4907. "command": "gitlens.views.unsetAsDefault",
  4908. "when": "viewItem =~ /gitlens:remote\\b(?=.*?\\b\\+default\\b)/",
  4909. "group": "8_gitlens_@1"
  4910. },
  4911. {
  4912. "command": "gitlens.views.exploreRepoAtRevision",
  4913. "when": "viewItem =~ /gitlens:(branch|commit|file\\b((?=.*?\\b\\+committed\\b)|:results)|stash|tag)\\b/",
  4914. "group": "7_gitlens_more@1"
  4915. },
  4916. {
  4917. "command": "gitlens.showCommitSearch",
  4918. "when": "viewItem =~ /gitlens:repository\\b/",
  4919. "group": "inline@10"
  4920. },
  4921. {
  4922. "command": "gitlens.views.push",
  4923. "when": "gitlens:hasRemotes && !gitlens:readonly && viewItem =~ /gitlens:repository\\b/",
  4924. "group": "inline@96",
  4925. "alt": "gitlens.views.pushWithForce"
  4926. },
  4927. {
  4928. "command": "gitlens.views.pull",
  4929. "when": "gitlens:hasRemotes && !gitlens:readonly && viewItem =~ /gitlens:repository\\b/",
  4930. "group": "inline@97"
  4931. },
  4932. {
  4933. "command": "gitlens.views.fetch",
  4934. "when": "gitlens:hasRemotes && !gitlens:readonly && viewItem =~ /gitlens:repository\\b/",
  4935. "group": "inline@98"
  4936. },
  4937. {
  4938. "command": "gitlens.views.star",
  4939. "when": "viewItem =~ /gitlens:repository\\b(?!.*?\\b\\+starred\\b)/",
  4940. "group": "inline@99"
  4941. },
  4942. {
  4943. "command": "gitlens.views.unstar",
  4944. "when": "viewItem =~ /gitlens:repository\\b(?=.*?\\b\\+starred\\b)/",
  4945. "group": "inline@99"
  4946. },
  4947. {
  4948. "command": "gitlens.views.fetch",
  4949. "when": "gitlens:hasRemotes && !gitlens:readonly && viewItem =~ /gitlens:repository\\b/",
  4950. "group": "1_gitlens@1"
  4951. },
  4952. {
  4953. "command": "gitlens.views.pull",
  4954. "when": "gitlens:hasRemotes && !gitlens:readonly && viewItem =~ /gitlens:repository\\b/",
  4955. "group": "1_gitlens@1"
  4956. },
  4957. {
  4958. "command": "gitlens.views.push",
  4959. "when": "gitlens:hasRemotes && !gitlens:readonly && viewItem =~ /gitlens:repository\\b/",
  4960. "group": "1_gitlens@1"
  4961. },
  4962. {
  4963. "command": "gitlens.views.pushWithForce",
  4964. "when": "gitlens:hasRemotes && !gitlens:readonly && viewItem =~ /gitlens:repository\\b/",
  4965. "group": "1_gitlens@2"
  4966. },
  4967. {
  4968. "command": "gitlens.views.openInTerminal",
  4969. "when": "viewItem =~ /gitlens:repository\\b/",
  4970. "group": "2_gitlens@1"
  4971. },
  4972. {
  4973. "command": "gitlens.openRepoInRemote",
  4974. "when": "viewItem =~ /gitlens:repository\\b/ && gitlens:hasRemotes",
  4975. "group": "2_gitlens@2"
  4976. },
  4977. {
  4978. "command": "gitlens.showCommitSearch",
  4979. "when": "viewItem =~ /gitlens:repository\\b/",
  4980. "group": "3_gitlens@1"
  4981. },
  4982. {
  4983. "command": "gitlens.stashApply",
  4984. "when": "!gitlens:readonly && viewItem =~ /gitlens:repository\\b/",
  4985. "group": "4_gitlens@1"
  4986. },
  4987. {
  4988. "command": "gitlens.stashSave",
  4989. "when": "!gitlens:readonly && viewItem =~ /gitlens:repository\\b/",
  4990. "group": "4_gitlens@2"
  4991. },
  4992. {
  4993. "command": "gitlens.views.star",
  4994. "when": "viewItem =~ /gitlens:repository\\b(?!.*?\\b\\+starred\\b)/",
  4995. "group": "8_gitlens@1"
  4996. },
  4997. {
  4998. "command": "gitlens.views.unstar",
  4999. "when": "viewItem =~ /gitlens:repository\\b(?=.*?\\b\\+starred\\b)/",
  5000. "group": "8_gitlens@1"
  5001. },
  5002. {
  5003. "command": "gitlens.views.closeRepository",
  5004. "when": "viewItem =~ /gitlens:repository\\b/",
  5005. "group": "8_gitlens@2"
  5006. },
  5007. {
  5008. "command": "gitlens.views.pull",
  5009. "when": "gitlens:hasRemotes && !gitlens:readonly && viewItem == gitlens:status:upstream:behind",
  5010. "group": "inline@1"
  5011. },
  5012. {
  5013. "command": "gitlens.views.pull",
  5014. "when": "gitlens:hasRemotes && !gitlens:readonly && viewItem == gitlens:status:upstream:behind",
  5015. "group": "1_gitlens@1"
  5016. },
  5017. {
  5018. "command": "gitlens.views.push",
  5019. "when": "gitlens:hasRemotes && !gitlens:readonly && viewItem == gitlens:status:upstream:ahead",
  5020. "group": "inline@1",
  5021. "alt": "gitlens.views.pushWithForce"
  5022. },
  5023. {
  5024. "command": "gitlens.views.push",
  5025. "when": "gitlens:hasRemotes && !gitlens:readonly && viewItem == gitlens:status:upstream:ahead",
  5026. "group": "1_gitlens@1"
  5027. },
  5028. {
  5029. "command": "gitlens.views.pushWithForce",
  5030. "when": "gitlens:hasRemotes && !gitlens:readonly && viewItem == gitlens:status:upstream:ahead",
  5031. "group": "1_gitlens@2"
  5032. },
  5033. {
  5034. "command": "gitlens.views.dismissNode",
  5035. "when": "viewItem =~ /gitlens:(compare:picker:ref|compare:results\\b(?!.*?\\b\\+pinned\\b)|search)\\b(?!:(commits|files))/",
  5036. "group": "inline@99"
  5037. },
  5038. {
  5039. "command": "gitlens.views.setComparisonToTwoDot",
  5040. "when": "viewItem =~ /gitlens:compare:branch\\b(?=.*?\\b\\+comparing\\b)(?=.*?\\b\\+threedot\\b)/",
  5041. "group": "inline@1"
  5042. },
  5043. {
  5044. "command": "gitlens.views.setComparisonToThreeDot",
  5045. "when": "viewItem =~ /gitlens:compare:branch\\b(?=.*?\\b\\+comparing\\b)(?=.*?\\b\\+twodot\\b)/",
  5046. "group": "inline@1"
  5047. },
  5048. {
  5049. "command": "gitlens.views.repositories.setBranchComparisonToWorking",
  5050. "when": "viewItem =~ /gitlens:compare:branch\\b(?=.*?\\b\\+comparing\\b)(?=.*?\\b\\+branch\\b)/",
  5051. "group": "inline@2"
  5052. },
  5053. {
  5054. "command": "gitlens.views.repositories.setBranchComparisonToBranch",
  5055. "when": "viewItem =~ /gitlens:compare:branch\\b(?=.*?\\b\\+comparing\\b)(?=.*?\\b\\+working\\b)/",
  5056. "group": "inline@2"
  5057. },
  5058. {
  5059. "command": "gitlens.views.setComparisonToTwoDot",
  5060. "when": "viewItem =~ /gitlens:compare:branch\\b(?=.*?\\b\\+comparing\\b)(?=.*?\\b\\+threedot\\b)/",
  5061. "group": "1_gitlens@1"
  5062. },
  5063. {
  5064. "command": "gitlens.views.setComparisonToThreeDot",
  5065. "when": "viewItem =~ /gitlens:compare:branch\\b(?=.*?\\b\\+comparing\\b)(?=.*?\\b\\+twodot\\b)/",
  5066. "group": "1_gitlens@1"
  5067. },
  5068. {
  5069. "command": "gitlens.views.repositories.setBranchComparisonToWorking",
  5070. "when": "viewItem =~ /gitlens:compare:branch\\b(?=.*?\\b\\+comparing\\b)(?=.*?\\b\\+branch\\b)/",
  5071. "group": "1_gitlens@2"
  5072. },
  5073. {
  5074. "command": "gitlens.views.repositories.setBranchComparisonToBranch",
  5075. "when": "viewItem =~ /gitlens:compare:branch\\b(?=.*?\\b\\+comparing\\b)(?=.*?\\b\\+working\\b)/",
  5076. "group": "1_gitlens@2"
  5077. },
  5078. {
  5079. "command": "gitlens.views.setComparisonToTwoDot",
  5080. "when": "viewItem =~ /gitlens:compare:results\\b(?=.*?\\b\\+threedot\\b)/",
  5081. "group": "inline@2"
  5082. },
  5083. {
  5084. "command": "gitlens.views.setComparisonToThreeDot",
  5085. "when": "viewItem =~ /gitlens:compare:results\\b(?=.*?\\b\\+twodot\\b)/",
  5086. "group": "inline@2"
  5087. },
  5088. {
  5089. "command": "gitlens.views.compare.swapComparison",
  5090. "when": "viewItem =~ /gitlens:compare:results\\b/",
  5091. "group": "inline@3"
  5092. },
  5093. {
  5094. "command": "gitlens.views.refreshNode",
  5095. "when": "viewItem =~ /gitlens:compare:(branch(?=.*?\\b\\+comparing\\b)|results)\\b/",
  5096. "group": "inline@4"
  5097. },
  5098. {
  5099. "command": "gitlens.views.compare.pinComparison",
  5100. "when": "viewItem =~ /gitlens:compare:results\\b(?!.*?\\b\\+pinned\\b)/",
  5101. "group": "inline@98"
  5102. },
  5103. {
  5104. "command": "gitlens.views.compare.unpinComparison",
  5105. "when": "viewItem =~ /gitlens:compare:results\\b(?=.*?\\b\\+pinned\\b)/",
  5106. "group": "inline@98"
  5107. },
  5108. {
  5109. "command": "gitlens.views.openDirectoryDiff",
  5110. "when": "viewItem =~ /gitlens:compare:results\\b/",
  5111. "group": "1_gitlens@1"
  5112. },
  5113. {
  5114. "command": "gitlens.views.compare.pinComparison",
  5115. "when": "viewItem =~ /gitlens:compare:results\\b(?!.*?\\b\\+pinned\\b)/",
  5116. "group": "2_gitlens@1"
  5117. },
  5118. {
  5119. "command": "gitlens.views.compare.unpinComparison",
  5120. "when": "viewItem =~ /gitlens:compare:results\\b(?=.*?\\b\\+pinned\\b)/",
  5121. "group": "2_gitlens@1"
  5122. },
  5123. {
  5124. "command": "gitlens.views.setComparisonToTwoDot",
  5125. "when": "viewItem =~ /gitlens:compare:results\\b(?=.*?\\b\\+threedot\\b)/",
  5126. "group": "2_gitlens@2"
  5127. },
  5128. {
  5129. "command": "gitlens.views.setComparisonToThreeDot",
  5130. "when": "viewItem =~ /gitlens:compare:results\\b(?=.*?\\b\\+twodot\\b)/",
  5131. "group": "2_gitlens@2"
  5132. },
  5133. {
  5134. "command": "gitlens.views.compare.swapComparison",
  5135. "when": "viewItem =~ /gitlens:compare:results\\b/",
  5136. "group": "2_gitlens@3"
  5137. },
  5138. {
  5139. "command": "gitlens.views.search.searchCommits",
  5140. "when": "viewItem == gitlens:search:results",
  5141. "group": "inline@1"
  5142. },
  5143. {
  5144. "command": "gitlens.views.search.searchCommits",
  5145. "when": "viewItem == gitlens:search:results",
  5146. "group": "2_gitlens@1"
  5147. },
  5148. {
  5149. "command": "gitlens.stashSave",
  5150. "when": "!gitlens:readonly && viewItem =~ /^gitlens:(stashes|status:files)$/",
  5151. "group": "inline@98"
  5152. },
  5153. {
  5154. "command": "gitlens.stashApply",
  5155. "when": "!gitlens:readonly && viewItem == gitlens:stashes",
  5156. "group": "inline@99"
  5157. },
  5158. {
  5159. "command": "gitlens.stashSave",
  5160. "when": "!gitlens:readonly && viewItem =~ /^gitlens:(stashes|status:files)$/",
  5161. "group": "1_gitlens@1"
  5162. },
  5163. {
  5164. "command": "gitlens.stashApply",
  5165. "when": "!gitlens:readonly && viewItem == gitlens:stashes",
  5166. "group": "1_gitlens@2"
  5167. },
  5168. {
  5169. "command": "gitlens.stashApply",
  5170. "when": "!gitlens:readonly && viewItem == gitlens:stash",
  5171. "group": "inline@98"
  5172. },
  5173. {
  5174. "command": "gitlens.stashDelete",
  5175. "when": "!gitlens:readonly && viewItem == gitlens:stash",
  5176. "group": "inline@99"
  5177. },
  5178. {
  5179. "command": "gitlens.stashApply",
  5180. "when": "!gitlens:readonly && viewItem == gitlens:stash",
  5181. "group": "1_gitlens@1"
  5182. },
  5183. {
  5184. "command": "gitlens.stashDelete",
  5185. "when": "!gitlens:readonly && viewItem == gitlens:stash",
  5186. "group": "1_gitlens@2"
  5187. },
  5188. {
  5189. "command": "gitlens.views.switchToTag",
  5190. "when": "!gitlens:readonly && viewItem =~ /gitlens:tag\\b/",
  5191. "group": "inline@10"
  5192. },
  5193. {
  5194. "command": "gitlens.views.switchToTag",
  5195. "when": "!gitlens:readonly && viewItem =~ /gitlens:tag\\b/",
  5196. "group": "1_gitlens@1"
  5197. },
  5198. {
  5199. "command": "gitlens.views.terminalDeleteTag",
  5200. "when": "!gitlens:readonly && viewItem == gitlens:tag",
  5201. "group": "8_gitlens"
  5202. },
  5203. {
  5204. "command": "gitlens.views.stageDirectory",
  5205. "when": "viewItem =~ /gitlens:folder\\b(?=.*?\\b\\+working\\b)/",
  5206. "group": "inline@1"
  5207. },
  5208. {
  5209. "command": "gitlens.views.unstageDirectory",
  5210. "when": "viewItem =~ /gitlens:folder\\b(?=.*?\\b\\+working\\b)/",
  5211. "group": "inline@2"
  5212. },
  5213. {
  5214. "command": "gitlens.views.stageDirectory",
  5215. "when": "viewItem =~ /gitlens:folder\\b(?=.*?\\b\\+working\\b)/",
  5216. "group": "1_gitlens@1"
  5217. },
  5218. {
  5219. "command": "gitlens.views.unstageDirectory",
  5220. "when": "viewItem =~ /gitlens:folder\\b(?=.*?\\b\\+working\\b)/",
  5221. "group": "1_gitlens@2"
  5222. },
  5223. {
  5224. "command": "gitlens.views.expandNode",
  5225. "when": "viewItem =~ /gitlens:(compare|folder|results|search|status)\\b/",
  5226. "group": "8_gitlens@1"
  5227. },
  5228. {
  5229. "command": "gitlens.views.dismissNode",
  5230. "when": "viewItem =~ /gitlens:(compare:picker:ref|compare:results\\b(?!.*?\\b\\+pinned\\b)|search)\\b(?!:(commits|files))/",
  5231. "group": "8_gitlens@2"
  5232. },
  5233. {
  5234. "command": "gitlens.views.refreshNode",
  5235. "when": "viewItem =~ /gitlens:(?!file\\b)/",
  5236. "group": "9_gitlens@1"
  5237. },
  5238. {
  5239. "command": "gitlens.views.showAllChildren",
  5240. "when": "viewItem =~ /gitlens:pager\\b/",
  5241. "group": "inline@1"
  5242. },
  5243. {
  5244. "command": "gitlens.views.showAllChildren",
  5245. "when": "viewItem =~ /gitlens:pager\\b/",
  5246. "group": "1_gitlens@1"
  5247. }
  5248. ]
  5249. },
  5250. "keybindings": [
  5251. {
  5252. "command": "gitlens.key.left",
  5253. "key": "alt+left",
  5254. "when": "gitlens:key:left"
  5255. },
  5256. {
  5257. "command": "gitlens.key.right",
  5258. "key": "alt+right",
  5259. "when": "gitlens:key:right"
  5260. },
  5261. {
  5262. "command": "gitlens.key.,",
  5263. "key": "alt+,",
  5264. "when": "gitlens:key:,"
  5265. },
  5266. {
  5267. "command": "gitlens.key..",
  5268. "key": "alt+.",
  5269. "when": "gitlens:key:."
  5270. },
  5271. {
  5272. "command": "gitlens.key.escape",
  5273. "key": "escape",
  5274. "when": "gitlens:key:escape && editorTextFocus && !findWidgetVisible && !renameInputVisible && !suggestWidgetVisible && !isInEmbeddedEditor"
  5275. },
  5276. {
  5277. "command": "gitlens.toggleFileBlame",
  5278. "key": "alt+b",
  5279. "when": "config.gitlens.keymap == alternate && editorTextFocus && gitlens:activeFileStatus =~ /blameable/"
  5280. },
  5281. {
  5282. "command": "gitlens.toggleCodeLens",
  5283. "key": "shift+alt+b",
  5284. "when": "config.gitlens.keymap == alternate && editorTextFocus && gitlens:enabled && gitlens:canToggleCodeLens"
  5285. },
  5286. {
  5287. "command": "gitlens.showLastQuickPick",
  5288. "key": "alt+-",
  5289. "when": "config.gitlens.keymap == alternate && gitlens:enabled"
  5290. },
  5291. {
  5292. "command": "gitlens.showCommitSearch",
  5293. "key": "alt+/",
  5294. "when": "config.gitlens.keymap == alternate && gitlens:enabled"
  5295. },
  5296. {
  5297. "command": "gitlens.showQuickFileHistory",
  5298. "key": "alt+h",
  5299. "when": "config.gitlens.keymap == alternate && gitlens:enabled"
  5300. },
  5301. {
  5302. "command": "gitlens.showQuickRepoHistory",
  5303. "key": "shift+alt+h",
  5304. "when": "config.gitlens.keymap == alternate && gitlens:enabled"
  5305. },
  5306. {
  5307. "command": "gitlens.showQuickRepoStatus",
  5308. "key": "alt+s",
  5309. "when": "config.gitlens.keymap == alternate && gitlens:enabled"
  5310. },
  5311. {
  5312. "command": "gitlens.showQuickCommitFileDetails",
  5313. "key": "alt+c",
  5314. "when": "config.gitlens.keymap == alternate && editorTextFocus && gitlens:enabled"
  5315. },
  5316. {
  5317. "command": "gitlens.diffWithNext",
  5318. "key": "alt+.",
  5319. "when": "config.gitlens.keymap == alternate && editorTextFocus && gitlens:activeFileStatus =~ /revision/ && !isInDiffEditor"
  5320. },
  5321. {
  5322. "command": "gitlens.diffWithNext",
  5323. "key": "alt+.",
  5324. "when": "config.gitlens.keymap == alternate && editorTextFocus && gitlens:activeFileStatus =~ /revision/ && isInDiffRightEditor"
  5325. },
  5326. {
  5327. "command": "gitlens.diffWithNextInDiffLeft",
  5328. "key": "alt+.",
  5329. "when": "config.gitlens.keymap == alternate && editorTextFocus && gitlens:activeFileStatus =~ /revision/ && isInDiffLeftEditor"
  5330. },
  5331. {
  5332. "command": "gitlens.diffWithPrevious",
  5333. "key": "alt+,",
  5334. "when": "config.gitlens.keymap == alternate && editorTextFocus && gitlens:activeFileStatus =~ /tracked/ && !isInDiffEditor"
  5335. },
  5336. {
  5337. "command": "gitlens.diffWithPrevious",
  5338. "key": "alt+,",
  5339. "when": "config.gitlens.keymap == alternate && editorTextFocus && gitlens:activeFileStatus =~ /tracked/ && isInDiffLeftEditor"
  5340. },
  5341. {
  5342. "command": "gitlens.diffWithPreviousInDiffRight",
  5343. "key": "alt+,",
  5344. "when": "config.gitlens.keymap == alternate && editorTextFocus && gitlens:activeFileStatus =~ /tracked/ && isInDiffRightEditor"
  5345. },
  5346. {
  5347. "command": "gitlens.diffLineWithPrevious",
  5348. "key": "shift+alt+,",
  5349. "when": "config.gitlens.keymap == alternate && editorTextFocus && gitlens:activeFileStatus =~ /tracked/"
  5350. },
  5351. {
  5352. "command": "gitlens.diffWithWorking",
  5353. "key": "shift+alt+.",
  5354. "when": "config.gitlens.keymap == alternate && editorTextFocus && gitlens:activeFileStatus =~ /revision/"
  5355. },
  5356. {
  5357. "command": "gitlens.diffLineWithWorking",
  5358. "key": "alt+w",
  5359. "when": "config.gitlens.keymap == alternate && editorTextFocus && gitlens:activeFileStatus =~ /tracked/"
  5360. },
  5361. {
  5362. "command": "gitlens.toggleFileBlame",
  5363. "key": "ctrl+shift+g b",
  5364. "mac": "cmd+alt+g b",
  5365. "when": "config.gitlens.keymap == chorded && editorTextFocus && gitlens:activeFileStatus =~ /blameable/"
  5366. },
  5367. {
  5368. "command": "gitlens.toggleCodeLens",
  5369. "key": "ctrl+shift+g shift+b",
  5370. "mac": "cmd+alt+g shift+b",
  5371. "when": "config.gitlens.keymap == chorded && editorTextFocus && gitlens:enabled && gitlens:canToggleCodeLens"
  5372. },
  5373. {
  5374. "command": "gitlens.showLastQuickPick",
  5375. "key": "ctrl+shift+g -",
  5376. "mac": "cmd+alt+g -",
  5377. "when": "config.gitlens.keymap == chorded && gitlens:enabled"
  5378. },
  5379. {
  5380. "command": "gitlens.showCommitSearch",
  5381. "key": "ctrl+shift+g /",
  5382. "mac": "cmd+alt+g /",
  5383. "when": "config.gitlens.keymap == chorded && gitlens:enabled"
  5384. },
  5385. {
  5386. "command": "gitlens.showQuickFileHistory",
  5387. "key": "ctrl+shift+g h",
  5388. "mac": "cmd+alt+g h",
  5389. "when": "config.gitlens.keymap == chorded && gitlens:enabled"
  5390. },
  5391. {
  5392. "command": "gitlens.showQuickRepoHistory",
  5393. "key": "ctrl+shift+g shift+h",
  5394. "mac": "cmd+alt+g shift+h",
  5395. "when": "config.gitlens.keymap == chorded && gitlens:enabled"
  5396. },
  5397. {
  5398. "command": "gitlens.showQuickRepoStatus",
  5399. "key": "ctrl+shift+g s",
  5400. "mac": "cmd+alt+g s",
  5401. "when": "config.gitlens.keymap == chorded && gitlens:enabled"
  5402. },
  5403. {
  5404. "command": "gitlens.showQuickCommitFileDetails",
  5405. "key": "ctrl+shift+g c",
  5406. "mac": "cmd+alt+g c",
  5407. "when": "config.gitlens.keymap == chorded && editorTextFocus && gitlens:enabled"
  5408. },
  5409. {
  5410. "command": "gitlens.diffWithNext",
  5411. "key": "ctrl+shift+g .",
  5412. "mac": "cmd+alt+g .",
  5413. "when": "config.gitlens.keymap == chorded && editorTextFocus && gitlens:activeFileStatus =~ /revision/ && !isInDiffEditor"
  5414. },
  5415. {
  5416. "command": "gitlens.diffWithNext",
  5417. "key": "ctrl+shift+g .",
  5418. "mac": "cmd+alt+g .",
  5419. "when": "config.gitlens.keymap == chorded && editorTextFocus && gitlens:activeFileStatus =~ /revision/ && isInDiffRightEditor"
  5420. },
  5421. {
  5422. "command": "gitlens.diffWithNextInDiffLeft",
  5423. "key": "ctrl+shift+g .",
  5424. "mac": "cmd+alt+g .",
  5425. "when": "config.gitlens.keymap == chorded && editorTextFocus && gitlens:activeFileStatus =~ /revision/ && isInDiffLeftEditor"
  5426. },
  5427. {
  5428. "command": "gitlens.diffWithPrevious",
  5429. "key": "ctrl+shift+g ,",
  5430. "mac": "cmd+alt+g ,",
  5431. "when": "config.gitlens.keymap == chorded && editorTextFocus && gitlens:activeFileStatus =~ /tracked/ && !isInDiffEditor"
  5432. },
  5433. {
  5434. "command": "gitlens.diffWithPrevious",
  5435. "key": "ctrl+shift+g ,",
  5436. "mac": "cmd+alt+g ,",
  5437. "when": "config.gitlens.keymap == chorded && editorTextFocus && gitlens:activeFileStatus =~ /tracked/ && isInDiffLeftEditor"
  5438. },
  5439. {
  5440. "command": "gitlens.diffWithPreviousInDiffRight",
  5441. "key": "ctrl+shift+g ,",
  5442. "mac": "cmd+alt+g ,",
  5443. "when": "config.gitlens.keymap == chorded && editorTextFocus && gitlens:activeFileStatus =~ /tracked/ && isInDiffRightEditor"
  5444. },
  5445. {
  5446. "command": "gitlens.diffLineWithPrevious",
  5447. "key": "ctrl+shift+g shift+,",
  5448. "mac": "cmd+alt+g shift+,",
  5449. "when": "config.gitlens.keymap == chorded && editorTextFocus && gitlens:activeFileStatus =~ /tracked/"
  5450. },
  5451. {
  5452. "command": "gitlens.diffWithWorking",
  5453. "key": "ctrl+shift+g shift+.",
  5454. "mac": "cmd+alt+g shift+.",
  5455. "when": "config.gitlens.keymap == chorded && editorTextFocus && gitlens:activeFileStatus =~ /revision/"
  5456. },
  5457. {
  5458. "command": "gitlens.diffLineWithWorking",
  5459. "key": "ctrl+shift+g w",
  5460. "mac": "cmd+alt+g w",
  5461. "when": "config.gitlens.keymap == chorded && editorTextFocus && gitlens:activeFileStatus =~ /tracked/"
  5462. },
  5463. {
  5464. "command": "workbench.view.scm",
  5465. "key": "ctrl+shift+g g",
  5466. "mac": "ctrl+shift+g",
  5467. "when": "config.gitlens.keymap == chorded && gitlens:enabled"
  5468. },
  5469. {
  5470. "command": "gitlens.views.repositories.copy",
  5471. "key": "ctrl+c",
  5472. "mac": "cmd+c",
  5473. "when": "gitlens:enabled && focusedView =~ /^gitlens\\.views\\.repositories/"
  5474. },
  5475. {
  5476. "command": "gitlens.views.fileHistory.copy",
  5477. "key": "ctrl+c",
  5478. "mac": "cmd+c",
  5479. "when": "gitlens:enabled && focusedView =~ /^gitlens\\.views\\.fileHistory/"
  5480. },
  5481. {
  5482. "command": "gitlens.views.lineHistory.copy",
  5483. "key": "ctrl+c",
  5484. "mac": "cmd+c",
  5485. "when": "gitlens:enabled && focusedView =~ /^gitlens\\.views\\.lineHistory/"
  5486. },
  5487. {
  5488. "command": "gitlens.views.compare.copy",
  5489. "key": "ctrl+c",
  5490. "mac": "cmd+c",
  5491. "when": "gitlens:enabled && focusedView =~ /^gitlens\\.views\\.compare/"
  5492. },
  5493. {
  5494. "command": "gitlens.views.search.copy",
  5495. "key": "ctrl+c",
  5496. "mac": "cmd+c",
  5497. "when": "gitlens:enabled && focusedView =~ /^gitlens\\.views\\.search/"
  5498. }
  5499. ],
  5500. "resourceLabelFormatters": [
  5501. {
  5502. "scheme": "gitlens",
  5503. "authority": "*",
  5504. "formatting": {
  5505. "label": "${path} (${authority})",
  5506. "separator": "/"
  5507. }
  5508. }
  5509. ],
  5510. "viewsContainers": {
  5511. "activitybar": [
  5512. {
  5513. "id": "gitlens",
  5514. "title": "GitLens",
  5515. "icon": "images/gitlens-activitybar.svg"
  5516. }
  5517. ]
  5518. },
  5519. "views": {
  5520. "gitlens": [
  5521. {
  5522. "id": "gitlens.views.repositories:gitlens",
  5523. "name": "Repositories",
  5524. "when": "config.gitlens.views.repositories.enabled && config.gitlens.views.repositories.location == gitlens"
  5525. },
  5526. {
  5527. "id": "gitlens.views.fileHistory:gitlens",
  5528. "name": "File History",
  5529. "when": "config.gitlens.views.fileHistory.enabled && config.gitlens.views.fileHistory.location == gitlens"
  5530. },
  5531. {
  5532. "id": "gitlens.views.lineHistory:gitlens",
  5533. "name": "Line History",
  5534. "when": "config.gitlens.views.lineHistory.enabled && config.gitlens.views.lineHistory.location == gitlens"
  5535. },
  5536. {
  5537. "id": "gitlens.views.compare:gitlens",
  5538. "name": "Compare",
  5539. "when": "config.gitlens.views.compare.enabled && config.gitlens.views.compare.location == gitlens"
  5540. },
  5541. {
  5542. "id": "gitlens.views.search:gitlens",
  5543. "name": "Search Commits",
  5544. "when": "config.gitlens.views.search.enabled && config.gitlens.views.search.location == gitlens"
  5545. }
  5546. ],
  5547. "explorer": [
  5548. {
  5549. "id": "gitlens.views.repositories:explorer",
  5550. "name": "GitLens: Repositories",
  5551. "when": "gitlens:enabled && config.gitlens.views.repositories.enabled && config.gitlens.views.repositories.location == explorer"
  5552. },
  5553. {
  5554. "id": "gitlens.views.fileHistory:explorer",
  5555. "name": "GitLens: File History",
  5556. "when": "gitlens:enabled && config.gitlens.views.fileHistory.enabled && config.gitlens.views.fileHistory.location == explorer"
  5557. },
  5558. {
  5559. "id": "gitlens.views.lineHistory:explorer",
  5560. "name": "GitLens: Line History",
  5561. "when": "gitlens:enabled && config.gitlens.views.lineHistory.enabled && config.gitlens.views.lineHistory.location == explorer"
  5562. },
  5563. {
  5564. "id": "gitlens.views.compare:explorer",
  5565. "name": "GitLens: Compare",
  5566. "when": "gitlens:enabled && config.gitlens.views.compare.enabled && config.gitlens.views.compare.location == explorer"
  5567. },
  5568. {
  5569. "id": "gitlens.views.search:explorer",
  5570. "name": "GitLens: Search Commits",
  5571. "when": "gitlens:enabled && config.gitlens.views.search.enabled && config.gitlens.views.search.location == explorer"
  5572. }
  5573. ],
  5574. "scm": [
  5575. {
  5576. "id": "gitlens.views.repositories:scm",
  5577. "name": "GitLens: Repositories",
  5578. "when": "gitlens:enabled && config.gitlens.views.repositories.enabled && config.gitlens.views.repositories.location == scm"
  5579. },
  5580. {
  5581. "id": "gitlens.views.fileHistory:scm",
  5582. "name": "GitLens: File History",
  5583. "when": "gitlens:enabled && config.gitlens.views.fileHistory.enabled && config.gitlens.views.fileHistory.location == scm"
  5584. },
  5585. {
  5586. "id": "gitlens.views.lineHistory:scm",
  5587. "name": "GitLens: Line History",
  5588. "when": "gitlens:enabled && config.gitlens.views.lineHistory.enabled && config.gitlens.views.lineHistory.location == scm"
  5589. },
  5590. {
  5591. "id": "gitlens.views.compare:scm",
  5592. "name": "GitLens: Compare",
  5593. "when": "gitlens:enabled && config.gitlens.views.compare.enabled && config.gitlens.views.compare.location == scm"
  5594. },
  5595. {
  5596. "id": "gitlens.views.search:scm",
  5597. "name": "GitLens: Search Commits",
  5598. "when": "gitlens:enabled && config.gitlens.views.search.enabled && config.gitlens.views.search.location == scm"
  5599. }
  5600. ]
  5601. }
  5602. },
  5603. "scripts": {
  5604. "analyze:bundle": "webpack --env.analyzeBundle",
  5605. "analyze:deps": "webpack --env.analyzeDeps",
  5606. "build": "webpack --env.development",
  5607. "bundle": "webpack --env.production",
  5608. "clean": "git clean -Xdf -e !node_modules -e !node_modules/**/*",
  5609. "lint": "eslint src/**/*.ts --fix",
  5610. "pack": "vsce package --yarn",
  5611. "pretty": "prettier --config .prettierrc --loglevel warn --write \"./**/*.{ts,md,json}\"",
  5612. "pub": "vsce publish --yarn",
  5613. "rebuild": "yarn run reset && yarn run build",
  5614. "reset": "yarn run clean && yarn --frozen-lockfile",
  5615. "watch": "webpack --watch --env.development --info-verbosity verbose",
  5616. "webviews:optimize": "webpack --config-name webviews --env.optimizeImages",
  5617. "webviews:watch": "webpack --watch --config-name webviews --env.development --info-verbosity verbose",
  5618. "update:emoji": "pushd emoji && node ./shortcodeToEmoji.js && popd",
  5619. "vscode:prepublish": "yarn run bundle"
  5620. },
  5621. "dependencies": {
  5622. "dayjs": "1.8.16",
  5623. "iconv-lite": "0.5.0",
  5624. "lodash-es": "4.17.15",
  5625. "vsls": "0.3.1291"
  5626. },
  5627. "devDependencies": {
  5628. "@types/lodash-es": "4.17.3",
  5629. "@types/node": "10.14.17",
  5630. "@types/vscode": "1.37.0",
  5631. "@typescript-eslint/eslint-plugin": "2.2.0",
  5632. "@typescript-eslint/parser": "2.2.0",
  5633. "circular-dependency-plugin": "5.2.0",
  5634. "clean-webpack-plugin": "3.0.0",
  5635. "csp-html-webpack-plugin": "3.0.3",
  5636. "css-loader": "3.2.0",
  5637. "eslint": "6.3.0",
  5638. "eslint-cli": "1.1.1",
  5639. "eslint-config-prettier": "6.2.0",
  5640. "eslint-plugin-import": "2.18.2",
  5641. "fork-ts-checker-webpack-plugin": "1.5.0",
  5642. "html-webpack-exclude-assets-plugin": "0.0.7",
  5643. "html-webpack-plugin": "3.2.0",
  5644. "imagemin-webpack-plugin": "2.4.2",
  5645. "mini-css-extract-plugin": "0.8.0",
  5646. "node-sass": "4.12.0",
  5647. "prettier": "1.18.2",
  5648. "sass-loader": "8.0.0",
  5649. "terser-webpack-plugin": "2.0.1",
  5650. "ts-loader": "6.0.4",
  5651. "typescript": "3.6.2",
  5652. "vsce": "1.66.0",
  5653. "webpack": "4.39.3",
  5654. "webpack-bundle-analyzer": "3.4.1",
  5655. "webpack-cli": "3.3.8"
  5656. }
  5657. }