解决 VSCode 调试面板中隐藏调试配置选择器后没法重新显示的问题

解决方式
在【运行和调试】面板右侧的 齿轮) 或者 更多···) 按钮上右键,勾选【开始调试】即可。

恢复显示操作示意图

昨天在思否遇到一个问题 👉 VSCode启动调试控件被不小心隐藏了,如何恢复显示?
开始以为是一个很初级的问题,就是问题主把【活动面板】中的【调式面板】隐藏了,不知道如何恢复显示了。

那么直接在【活动面板】中右键然后在弹出的菜单中勾选【运行和调试】就行了。

按照这个理解下,会以为OP可能会把【活动面板】也给隐藏了,所以也贴了如何显示【活动面板】的操作。
vscode_show_actions_bar

但其实并不是这个问题,而是OP在【配置下拉菜单】上边右键后点选了【隐藏“开始调试”】选项,隐藏掉了【配置下拉菜单】。
等OP隐藏掉了下拉菜单之后,发现不知道怎么切换调试配置,也不知道应该如何恢复显示了……
hidden_configuration_dropdown


确实,我隐藏之后也不知道如何恢复显示下拉菜单了😂。
翻遍了所有配置项,都没有找到对应可以直接修改的配置项,所以只能去 VSCode 的仓库中寻找解决办法……

很快找到了两个相关的 Issues:

但是! 第一个 Issue 中的解决方案,看似非常简单直接的解决了问题。
可是这个操作需要你右键在齿轮()或者更多(···)按钮上才行,其他位置右键并不会打开对应的菜单。

恢复显示操作示意

😭 所以我第一次尝试打开菜单发现并没有对应的选项,并且第二个 Issue 中也有人说没有找到对应的选项。
就以为是错误的回答,就开始顺着第二个 Issue 中提供的操作解决 state.vscdb 方式来尝试了。


注意:以下内容可以忽略不进行阅读,后续内容只是对我自己的尝试进行描述,正确的解决方案在上方!

第二个 Issue 提供了2个解决方式:

  • 一个是操作 VSCode 的状态数据DB文件 state.vscdb
  • 第二个唤起【命令面板】之后选择【查看:重置所有菜单】重置所有菜单配置。

使用【查看:重置所有菜单】肯定是没问题的,但是我觉得可能会影响到我在VSCode中配置的其他规则,所以即使第一种解决办法会更麻烦我还是愿意尝试的。

其实也很简单,在 globalStorage 目录中找到 state.vscdb 文件,使用DB编辑器操作数据即可。
因为只是临时修改,所以选择在 VSCode 中安装一个 SQLite 扩展来操作 .vscdb 文件。

  • 我安装的 SQLite3 Editor - Visual Studio Marketplace 这个扩展,它可以直接编辑 BD 文件。
  • 如果提示 此文件是二进制文件或使用了不受支持的文本编码,所以无法在文本编辑器中显示。 在 VSCode 的【资源管理器】中右键 state.vscdb 文件选择【打开方式…】,再选择使用【SQLite3 Editor】打开。

state.vscdb 文件的位置:

  • Mac 系统中位于 ~/Library/Application Support/Code/User/globalStorage 目录下;
  • Win 系统中位于 %appdata%\Code\User\globalStorage 目录下;

找到 keymenu.hiddenCommands 的项目(可以在 key 列中右键菜单中筛选 menu)双击编辑,修改右侧 value 中的值,把 ViewContainerTitle 这一项的 keyvalue 全部删除。
比如说我打开之后对应的 value 值是 {"CommandCenter":["workbench.action.quickOpenWithModes"],"ViewContainerTitle":["workbench.action.debug.start"]},删除后就是 {"CommandCenter":["workbench.action.quickOpenWithModes"]} 然后提交修改(Ctrl + Enter)。然后重新打开 VSCode 调试模式下的配置选择器就会恢复显示了(如果打开了多个 VSCode 需要全部关闭)。

😫 等我这一系列的操作全部操作完,确实也恢复了下拉菜单的显示。但是总觉得应该那么蠢,都那么多年过去了这个问题还是没解决。

就又仔细阅读了一下其他的回复内容,发现是我自己快速阅读的时候配合上下文理解错了:

Sorry for the confusion. You can right click on either other button in the menu (the gear or the ...) to get it back or run the command “Reset All Menus”
- roblourens on Jul 19, 2023

When I right click on the gear or the ..., I don’t see an item for “Reset All Menus”. I only see Hide (grayed out), Start Debugging, and Open ‘launch.json’. The solution @Hauntec provided worked though.
- StarkillerX42 on Jul 21, 2023

跳着读的时候粗心的以为后续回复中的 [ I don’t see an item for “Reset All Menus” ] 是和我一样的情况,其实并不是。回复中提到的选项是和我不一样的,所以我按照 roblourens 的回答,又尝试了右键在齿轮()和 ··· 按钮上之后整个人都不好了……

以上


相关阅读