如何构建加入终端的`When`条件?

问题描述

加入终端的命令:workbench.action.terminal.joinInstance

我能想到的必要条件:

  1. Terminal tabs 专注。
  2. 在终端选项卡中选择了两个或多个终端。

我想到的最好的是:

terminalProcessSupported && terminalTabsFocus && !terminalTabsSingularselection

但以上与terminalTabsMultipleSelections(不存在)不同。

解决方法

根据 Daniel Imms 的 comment

我们在内部使用使其在上下文菜单中工作terminalProcessSupported && !terminalTabsSingularSelection

还有 source code 在这方面:

precondition: ContextKeyExpr.and(
  KEYBINDING_CONTEXT_TERMINAL_PROCESS_SUPPORTED,KEYBINDING_CONTEXT_TERMINAL_TABS_SINGULAR_SELECTION.toNegated(),)

所以现在最好还是使用 terminalProcessSupported && terminalTabsFocus && !terminalTabsSingularSelection