VSCode 更新后 Cmd(Ctrl)+点击终端地址在编辑器内部打开?一个设置帮你搞定

VSCode 更新后 Cmd+点击终端地址在编辑器内部打开?一个设置帮你搞定

一个小小设置项的变化,差点让我以为 VSCode 出了什么 bug

背景

最近 VSCode 更新后,我发现了一个很别扭的变化:

以前在终端里看到 http://localhost:5173/ 这样的地址,Cmd + 点击 就会自动在系统默认浏览器(比如 Chrome 或 Safari)中打开。但更新之后,点击链接却直接在 VSCode 编辑器内部打开了,体验非常割裂。

排查了一圈,发现是 VSCode 新增的一个默认设置项在作祟。

问题现象

终端输出如下:

当我像往常一样按住 Cmd 点击 http://localhost:5173/ 时,链接在 VSCode 内置的 Webview 面板中打开了,而不是我想要的系统浏览器。

问题原因

VSCode 在近几个版本中新增了一个默认启用的设置项:

Terminal › Integrated: Local Link Open In Webview

顾名思义,这个设置的作用就是将终端中的 localhost 链接强制在 VSCode 内部的 Webview 面板打开。官方可能是为了方便开发者在编辑器内快速预览,但对于习惯了使用系统浏览器的开发者来说,这个改动反而增加了操作成本。

解决方案

方法一:通过设置界面关闭(推荐)

  1. 按下 Cmd + , 打开 VSCode 设置
  2. 在搜索框中输入 Open Localhost LinkslocalLinkOpenInWebview
  3. 找到 Terminal › Integrated: Local Link Open In Webview 选项
  4. 取消勾选 (将 true 改为 false

修改后无需重启 VSCode,再次点击终端中的 localhost 链接即可在系统默认浏览器中打开。

方法二:直接修改 settings.json

如果习惯直接编辑配置文件,可以在 settings.json 中添加:

json 复制代码
{
  "terminal.integrated.localLinkOpenInWebview": false
}

方法三:检查是否安装了 Browser Tab 插件

如果你安装了 Browser Tab 插件(AdiEfrat.vscode-browser-tab),它也可能会拦截终端链接。可以检查该插件的 terminalLinks 设置是否启用,如有必要也可一并关闭。

延伸思考:用户设置 vs 工作区设置

在修改设置的过程中,你可能会发现 VSCode 的设置面板分为 "用户""工作区" 两个标签页,而且需要分别修改。

这其实是 VSCode 设计上的一个灵活特性,而非缺陷:

特性 用户设置 (User) 工作区设置 (Workspace)
作用范围 全局生效,影响所有项目 仅对当前项目生效
配置文件位置 用户目录下 项目根目录的 .vscode/settings.json
优先级 较低 较高(会覆盖用户设置)
是否提交 Git ❌ 不提交 ✅ 建议提交,方便团队共享

即使你的电脑只有你一个人使用,工作区设置仍然有它的价值:

  • 项目隔离:不同项目可能使用不同的代码规范(缩进、格式化工具等),工作区设置可以让 VSCode 在切换项目时自动适配
  • 可迁移性 :将 .vscode 文件夹提交到 Git 后,换新电脑时只需 git clone,所有项目配置就能自动生效

如果你觉得工作区设置对你来说是多余的,直接删除项目根目录下的 .vscode 文件夹,只使用用户设置即可。

总结

  1. 核心问题 :VSCode 更新后默认开启 terminal.integrated.localLinkOpenInWebview,导致终端 localhost 链接在编辑器内部打开
  2. 解决方法:在设置中关闭该选项即可恢复原有行为
  3. 延伸知识:用户设置和工作区设置各有不同的作用范围和优先级,理解它们的区别可以更好地管理 VSCode 配置

希望这篇文章能帮你解决类似的小困扰。如果你也有其他 VSCode 使用技巧或踩坑经历,欢迎在评论区分享交流!


💡 本文首发于稀土掘金,欢迎点赞、收藏、评论三连 🙏

相关推荐
慢功夫2 天前
开篇:VS Code 为什么不是一个普通 React App
前端·visual studio code
慕容引刀2 天前
告别Commit信息纠结:使用Git AI Commit插件实现规范化提交
人工智能·git·github·visual studio code·visual studio
慢功夫7 天前
💡【调试】按下 F5 后,mini-vscode 到底做了什么
前端·visual studio code
慢功夫7 天前
按下 F5 后,mini-vscode 到底做了什么?
visual studio code
TT_Close14 天前
别劝退了!5秒搞定 Flutter 鸿蒙 FVM 起跑线
flutter·harmonyos·visual studio code
Flynt21 天前
装上TypeScript 7.0 RC之后,最让我意外不是10倍提速
typescript·visual studio code
golang学习记25 天前
VSCode 1.124 新特性:使用快捷键重构AI协作的“心流”
visual studio code
WonderThink1 个月前
AI编程:Claude Code + VSCode + CC-Switch
visual studio code
armwind1 个月前
claude code接入deepseek报 “API Error: 400“
visual studio code