【发布时间】:2016-10-15 09:21:55
【问题描述】:
VSCode 中是否有任何可以隐藏资源管理器的键绑定,例如 Ctrl+Shift+E 可以用来显示它?
我讨厌伸手去拿鼠标,而且我没有足够的屏幕空间来让 Explorer 始终打开。
【问题讨论】:
标签: visual-studio-code keyboard-shortcuts
VSCode 中是否有任何可以隐藏资源管理器的键绑定,例如 Ctrl+Shift+E 可以用来显示它?
我讨厌伸手去拿鼠标,而且我没有足够的屏幕空间来让 Explorer 始终打开。
【问题讨论】:
标签: visual-studio-code keyboard-shortcuts
【讨论】:
Ctrl + /。如果有人想知道keybinds.json 的实际名称,那就是workbench.action.toggleSidebar。
Ctrl+B 的vim 插件,Shift+B 是workbench.action.toggleSidebar 的更好选择
一些澄清:通常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 以集中注意力。
【讨论】:
我正在使用 Visual Studio 键盘映射。 在我的键盘快捷键中,Toggle Side Bar Visibility 设置为 CTRL+B 但不起作用。
我确实重新映射到 CTRL+B 并且工作正常。
文件 > 首选项 > 键盘快捷键
【讨论】:
切换“侧边栏”又名“资源管理器”的 VSCode 默认键绑定是 CTRL+B。 只需 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”!
【讨论】:
在 Mac 中为 cmd+B,在 Windows 中为 ctrl+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 可以在VSCODE Accurate keybinding, want to know current context. How to do? 上找到。同样的信息也可以在documentation 上找到。
所以,长话短说,我通过在命令托盘中运行 Developer: Inspect Context Keys 并观察 Developer Tools 来找到上下文。
Help > Toggle Developer Tools)。Developer: Inspect Context Keys
activeViewlet的值)的侧边栏。现在,在 when 键中添加这些上下文(例如 workbench.view.explorer、workbench.view.search、workbench.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'"
}
【讨论】:
我不得不说CTRL+B代表叫出侧边栏。
要隐藏侧边栏,您应该输入:CTRl+\
【讨论】: