VS Code - 查找快捷方式 'when' 表达式的 panel/view 上下文名称
VS Code - find panel/view context name for shortcut 'when' expression
我正在尝试向我的 VS Code 实例添加一些快捷方式,我想使用 when
表达式来限定它们的范围以避免冲突。
唉,我正在努力寻找在表达式中使用的正确上下文名称来实现我想要的。
我搜索了文档,发现这里列出了其中的一些:https://code.visualstudio.com/docs/getstarted/keybindings#_contexts
但是,正如文档所说:
The list above isn't exhaustive and you may see some when contexts for specific VS Code UI in the Default Keyboard Shortcuts.
当然,我想要确定快捷方式范围的上下文不在列表中;)
因此,我想知道是否有办法在 VS Code panel/view 中找到特定 panel/view 的上下文名称 UI。
为了说明这一点,假设我只想在列出可用 NPM 脚本的面板获得焦点时激活快捷方式...应该使用什么上下文名称来实现?
我试过了 - 没想到它会起作用 - 但它似乎:
"when": "focusedView == npm"
类似的信息是 active/focussed view context clauses。
一般来说,您可以:
- 打开开发者工具:
Help/Toggle Developer Tools
并转到控制台
- 在 VS 代码命令面板中选择
Inspect Context Keys
- 单击 vscode window
中的一个元素
- 查看工具控制台并展开其中的最后一项以显示所有当前上下文(when 子句)。
但是当我这样做时,我没有发现任何有用的东西,而且 focusedView = ""
在那里,所以没有帮助。
所以我试过了
{
"key": "alt+i",
"command": "workbench.action.terminal.sendSequence",
"args": { "text": "howdy" },
"when": "focusedView == npm"
},
只是将 howdy
打印到终端进行测试。我让它工作的唯一方法是当 npm scripts
viewlet header 或其内容具有焦点时。
我正在尝试向我的 VS Code 实例添加一些快捷方式,我想使用 when
表达式来限定它们的范围以避免冲突。
唉,我正在努力寻找在表达式中使用的正确上下文名称来实现我想要的。
我搜索了文档,发现这里列出了其中的一些:https://code.visualstudio.com/docs/getstarted/keybindings#_contexts
但是,正如文档所说:
The list above isn't exhaustive and you may see some when contexts for specific VS Code UI in the Default Keyboard Shortcuts.
当然,我想要确定快捷方式范围的上下文不在列表中;)
因此,我想知道是否有办法在 VS Code panel/view 中找到特定 panel/view 的上下文名称 UI。
为了说明这一点,假设我只想在列出可用 NPM 脚本的面板获得焦点时激活快捷方式...应该使用什么上下文名称来实现?
我试过了 - 没想到它会起作用 - 但它似乎:
"when": "focusedView == npm"
类似的信息是 active/focussed view context clauses。
一般来说,您可以:
- 打开开发者工具:
Help/Toggle Developer Tools
并转到控制台 - 在 VS 代码命令面板中选择
Inspect Context Keys
- 单击 vscode window 中的一个元素
- 查看工具控制台并展开其中的最后一项以显示所有当前上下文(when 子句)。
但是当我这样做时,我没有发现任何有用的东西,而且 focusedView = ""
在那里,所以没有帮助。
所以我试过了
{
"key": "alt+i",
"command": "workbench.action.terminal.sendSequence",
"args": { "text": "howdy" },
"when": "focusedView == npm"
},
只是将 howdy
打印到终端进行测试。我让它工作的唯一方法是当 npm scripts
viewlet header 或其内容具有焦点时。