要让 ctrl+shift+h 不再打开默认欢迎页,需在 keybindings.json 中添加禁用规则:{ "key": "ctrl+shift+h", "command": "-workbench.action.showwelcomepage" },并确认无扩展(如 custom welcome page)劫持该快捷键,同时检查 workbench.startupeditor 未设为 welcomepage 或 welcomepageinemptywindow。

VSCode 没有“欢迎页面的快捷方式”这个概念,所谓“修改欢迎页面快捷方式”,本质是控制启动行为或重映射命令触发逻辑——不是改一个图标属性就能生效,而是得动 workbench.startupEditor、keybindings.json 或扩展配置。
怎么让 Ctrl+Shift+H 不再打开默认欢迎页?
VSCode 默认没有把 Ctrl+Shift+H 绑定到欢迎页;它实际绑定的是 workbench.action.showWelcomePage,但这个命令在新版中已被弱化。如果你发现按了它还是弹出欢迎页,说明有扩展或自定义键位覆盖了默认行为。
- 打开命令面板(
Ctrl+Shift+P),执行Preferences: Open Keyboard Shortcuts (JSON) - 搜索
workbench.action.showWelcomePage,看是否有自定义条目;若有,删掉或注释掉 - 确认没有其他扩展(如 Custom Welcome Page)把该快捷键劫持为打开自己的 HTML 页面
- 如果想彻底禁用该命令响应,可加一条禁用规则:
{ "key": "ctrl+shift+h", "command": "-workbench.action.showWelcomePage" }
如何用快捷键直接打开自定义欢迎页(HTML/Markdown)?
VSCode 原生命令不支持直接打开本地 HTML 文件,必须靠扩展桥接。推荐用 Command Runner 配合系统命令,或用 Custom Welcome Page 扩展暴露的命令。
- 安装
Command Runner扩展后,在settings.json中添加任务:"command-runner.commands": { "open-custom-welcome": { "command": "open ${workspaceFolder}/.vscode/welcome/index.html" } } - 再在
keybindings.json中绑定:{ "key": "ctrl+shift+h", "command": "command-runner.run", "args": { "command": "open-custom-welcome" } } - 注意:
open命令在 Windows 上应换为start,macOS/Linux 保持open;路径必须是绝对或基于${workspaceFolder}的相对路径 - 如果只用 Markdown,
Custom Welcome Page提供customWelcomePage.open命令,可直接绑定快捷键,无需 shell 调用
为什么改了快捷键还是跳转到内置欢迎页?
常见原因不是快捷键本身错了,而是 VSCode 启动流程优先级更高——比如你设置了 workbench.startupEditor: "welcomePage",那么哪怕没按快捷键,一启动就强制加载,看起来就像“快捷键无法屏蔽”。
- 检查
settings.json中是否显式设了"workbench.startupEditor": "welcomePage"或"welcomePageInEmptyWindow" - 远程开发(SSH/WSL)时,该设置必须出现在「User」设置块里,写在「Remote」里无效
-
workbench.welcomePage.enabled: false只禁用欢迎页内容可访问性,不影响showWelcomePage命令执行——它只是让页面空白,而非取消加载 - 某些主题或 UI 扩展(如 Customize UI)会注入 DOM 并监听命令,导致快捷键被二次拦截,建议临时禁用排查
真正容易被忽略的是:VSCode 的欢迎页行为由至少三个独立开关叠加控制——workbench.startupEditor 决定启动时做什么,workbench.welcomePage.enabled 控制内容是否渲染,而快捷键绑定只是触发命令的一条路径。三者不一致时,就会出现“明明改了键位,却还是看到旧页面”的情况。











