提问人:user956609 提问时间:11/7/2023 最后编辑:user956609 更新时间:11/15/2023 访问量:53
在vscode中工作时清理树的当子句?
When clause when working tree clean in vscode?
问:
我正在将 git.sync 快捷方式添加到我的 vscode 中
这意味着我需要在我的快捷方式绑定中添加一个适当的 when 子句:
{
"key": "cmd+enter",
"command": "git.sync"
"when":""
},
所以我需要添加一个 when 子句,它是什么?
我最终想要实现的是,我可以使用 cmd + enter 来提交和同步(推送到远程),因为源代码控制面板提交快捷键是 cmd+ enter,我想提交然后同步使用相同的键盘快捷键(而不是在终端中输入或单击鼠标)
答:
据我所知,在撰写本文时(VS Code 1.85),没有这样的上下文键可用于执行此操作。为了证实:
您可以在 https://code.visualstudio.com/api/references/when-clause-contexts 中查看可用上下文键的文档。在搜索“scm”或“git”时,我没有看到任何听起来有用的内容。
在defaultKeybindings.json伪文件中打开正则表达式模式进行搜索,我也没有看到任何未记录的内容。
"when":.*scm
通过搜索 github.dev/microsoft/vscode,我也没有看到任何未记录的内容。在正则表达式模式下进行搜索,
(createKey|createScoped|createOverlayy|setContext|removeContext|getContext|createChildContext).*?(git|scm)
- 有一个上下文键,但在 extensions/git/src/api/git.d.ts 中为其类型定义列出的唯一值是 和 。
git.state
APIState
'initialized'
'uninitialized'
- 还有 和 上下文键,但我认为这些不足以获得您想要的内容。
gitRebaseInProgress
gitMergeInProgress
- 还有 和 ,但这些仅适用于活动资源(单数),而不是整个存储库。
scmActiveResourceHasChanges
scmActiveResourceRepository
- 有一个上下文键,但在 extensions/git/src/api/git.d.ts 中为其类型定义列出的唯一值是 和 。
看看现有的问题票,我没有看到有人已经要求这个:https://github.com/microsoft/vscode/issues?q=is%3Aopen+is%3Aissue+label%3Acontext-keys。
因此,我建议您提出一个功能请求问题票证,要求它。
评论
when
Cmd+Enter
Cmd+Enter
runCommands
when