VSCode 隐藏资源管理器的快捷键

VSCode keybinding to hide Explorer

VSCode 中是否有任何可以隐藏资源管理器的键绑定,例如 Ctrl+Shift+E 可以显示它?

我讨厌伸手去拿鼠标,而且我没有足够的屏幕 space 无法让 Explorer 始终打开。

切换边栏可见性:Ctrl+B (Windows/Linux)

如果您是 MacOS 用户,则为 + b.

Visual Studio Code Key Bindings

我正在使用 Visual Studio 键盘映射。 在我的键盘快捷键上,Toggle Side Bar Visibility 设置为 CTRL+B 但不起作用.

我重新映射到 CTRL+B 并且工作正常。

文件 > 首选项 > 键盘快捷方式

如果您是 MacOS 用户,则为 + b.

没有 GIF 我不会离开你。

不得不说CTRL+B代表叫侧边栏

要隐藏边栏,您应该键入:CTRl+\

一些说明:通常 Ctrl+B 用于关闭侧边栏(默认情况下不切换)。因此,如果您没有侧边栏并想打开它 - 请按以下组合:Ctrl+Shift+E(使用活动资源管理器打开侧边栏)或 Ctr+Shift+F(使用活动搜索)等。现在如果你想摆脱侧边栏按 Ctrl+B。请注意,如果您正在使用 vim 插件并想要关闭侧边栏但当前正在处理您的代码 - 首先通过按 (Ctrl+Shift+E) 激活侧边栏,然后通过 Ctrl+B 将其关闭.

更新:最近我发现 Ctrl+Shift+E 不适合我的 neo vim 插件,所以为了克服它,还有另一个打开侧边栏资源管理器的快捷方式:单击Ctrl+0 打开它,再按一次 Ctrl+0 聚焦它。

VSCode 切换 "Side Bar" 又名 "Explorer" 的默认键绑定是 CTRL+B。 仅 CTRL+B 即可。

在 Mac 中是 cmd+B,在 windows 中是 ctrl+B

如果您想使用 cmd+b 打开和关闭资源管理器,请将这些行添加到您的 keybindings.json

    {
        "key": "cmd+e",
        "command": "workbench.view.explorer"
    },
    {
        "key": "cmd+e",
        "command": "-workbench.view.explorer"
    },
    {
        "key": "cmd+e",
        "command": "workbench.action.toggleSidebarVisibility",
        "when": "explorerViewletVisible"
    },
    {
        "key": "cmd+e",
        "command": "-workbench.action.toggleSidebarVisibility",
        "when": "explorerViewletVisible"
    },

当然,你必须把“e”换成“b”!

这是@tsm 回答的扩展。

如果您想使用 ctrl+e 切换 Explorer,请使用以下键绑定。

{
    "key": "ctrl+e",
    "command": "-workbench.action.quickOpen"
},
{
    "key": "ctrl+e",
    "command": "-workbench.action.quickOpenNavigateNextInFilePicker",
    "when": "inFilesPicker && inQuickOpen"
},
{
    "key": "ctrl+b",
    "command": "-workbench.action.toggleSidebarVisibility"
},
{
    "key": "ctrl+e",
    "command": "workbench.view.explorer"
},
{
    "key": "ctrl+e",
    "command": "workbench.action.toggleSidebarVisibility",
    "when": "activeViewlet == 'workbench.view.explorer' || activeViewlet == 'workbench.view.search'|| activeViewlet == 'workbench.view.scm'|| activeViewlet == 'workbench.view.debug'|| activeViewlet == 'workbench.view.extensions' || activeViewlet == 'workbench.view.extension.test'|| activeViewlet == 'workbench.view.extension.bookmarks'|| activeViewlet == 'workbench.view.extension.project-manager' || activeViewlet == 'workbench.view.extension.gitlens'|| activeViewlet == 'workbench.view.extension.todo-tree-container'|| activeViewlet == 'snippet-explorer'"
}

这里,前两个键绑定是解除绑定ctrl+e。因此,这取决于您当前在 ctrl+e.

中使用的命令

第三个键绑定是取消绑定 ctrl+b,因为您将不再需要 ctrl+b切换边栏可见性

第四个键绑定是使用ctrl+e查看资源管理器。

现在是有趣的部分。第五键绑定。在这里,我是说:“如果侧边栏打开并且我按 ctrl+e 然后关闭侧边栏。”

请理解,打开 Sidebar 的方法之一是单击其中一个 Sidebar Icons。当我们点击一​​个特定的 Sidebar Icon 时,我们得到它对应的 Sidebar View.

要创建此键绑定,我们必须获取每个 Sidebar Views.

的所有 Contexts(在本例中为 activeViewlet 的值)

如何获得 Contexts 可以在 . This same information can also be found on the documentation 上找到。

所以,长话短说,我在命令托盘中通过 运行 Developer: Inspect Context Keys 找到了上下文,并观察了 Developer Tools.

  1. 打开 VSCode 调试器(单击 Help > Toggle Developer Tools)。
  2. 运行 Developer: Inspect Context Keys 命令托盘
  3. 打开你想知道上下文(activeViewlet的值)的侧边栏。
  4. 从开发人员工具的控制台获取上下文。

现在,在 when 键中添加这些上下文(例如 workbench.view.explorerworkbench.view.searchworkbench.view.scm 等)。

更新 1:

其实你不需要找上下文。您可以只使用:

{
    "key": "ctrl+e",
    "command": "workbench.action.toggleSidebarVisibility",
    "when": "activeViewlet != ''"
}

而不是

{
    "key": "ctrl+e",
    "command": "workbench.action.toggleSidebarVisibility",
    "when": "activeViewlet == 'workbench.view.explorer' || activeViewlet == 'workbench.view.search'|| activeViewlet == 'workbench.view.scm'|| activeViewlet == 'workbench.view.debug'|| activeViewlet == 'workbench.view.extensions' || activeViewlet == 'workbench.view.extension.test'|| activeViewlet == 'workbench.view.extension.bookmarks'|| activeViewlet == 'workbench.view.extension.project-manager' || activeViewlet == 'workbench.view.extension.gitlens'|| activeViewlet == 'workbench.view.extension.todo-tree-container'|| activeViewlet == 'snippet-explorer'"
}