1

我正在使用Sublime Text 4 的 Terminus 包并尝试在 Sublime 的面板视图中打开多个终端会话。

在此处输入图像描述

在 VSCode 中它看起来像这样:

在此处输入图像描述

我能得到的最接近的是在网格布局的单独选项卡中打开每个会话,这工作正常,但我得到了不需要的小地图,而且我失去了切换打开和关闭而不是面板的能力:

在此处输入图像描述

在做了一些研究并观看了这个视频之后,我在评论中看到了以下问题和答案:

Q:有什么办法可以在面板中打开多个Terminus实例?我可以在选项卡视图中打开它的几个实例,但不能在底部面板中打开。

A:您可以在名为“panel”的终端命令中使用一个参数;为创建的面板命名。如果您不提供它,则有默认值。使用不同的面板名称可让您创建或切换额外的面板。

所以我一直在测试 Terminus 的设置,但到目前为止还没有运气。

总站键绑定:

{ 
    "keys": ["ctrl+alt+p"], 
    "command": "toggle_terminus_panel", 
    "args": {
        "panel": "git",
        "cwd": "${file_path:${folder}}"
    }
}

如上所述,终端确实从面板打开,但始终使用一个会话,如果我添加另一个具有不同面板名称的键绑定,它仍然会打开和关闭与另一个键绑定相同的会话。也尝试过"command": "terminus_open"代替"command": "toggle_terminus_panel",但不适用于面板作为参数。添加另一个面板名称,如下所示:

"args": {
    "panel": "git",
    "panel": "server",
}

这实际上是可能的还是我错过了什么?

4

1 回答 1

1

正如对您问题的评论中所述,如果您的目标是同时打开多个面板,每个面板具有不同的可见名称(即选项卡式面板界面),这是不可能的,因为目前 Sublime 一次只支持一个可见面板。

但是,如果目标是让您通过键绑定调用多个面板,那确实是可能的。您尝试的方法不起作用,因为参数名称实际上是panel_name而不是panel(抱歉造成混淆;我也编辑了我的视频上的评论以反映这一点)。

所以你可以做这样的事情:

    { "keys": ["alt+`"], "command": "toggle_terminus_panel", "args": {
        "panel_name": "first-panel"
    }, },

    { "keys": ["shift+alt+`"], "command": "toggle_terminus_panel", "args": {
        "panel_name": "other-panel"
    }, },

重要的考虑是所有键绑定都需要包含panel_name在其中;如果您不提供参数 Terminus 默认查找并打开最近活动的面板,无论它发生了什么。

因此,如果您总是想转到最新的绑定,则可以使用第三个绑定,如果这也很有趣的话。

另请注意,在您的问题中,您提到将其放入 Terminus 设置中;适当的位置在您的键绑定 ( Preferences > Key Bindings) 中。

于 2021-07-09T16:53:27.293 回答