作为一个 Mac 程序员,我每次打开 VS Code,看着顶部那个把菜单栏和代码标签页强行揉在一起的“缝合怪”标题栏,心里总有点别扭。如果你用过 Mac 的 Safari 这类原生窗口,大概也会有同感。

VS Code 默认用的是 Electron 绘制的“自定义标题栏”。这套东西最大的毛病在于:当你用 Rectangle 或 Magnet 这类第三方软件做拖拽分屏时,它偶尔会卡顿,甚至干脆拖不动,简直逼死强迫症。
为了解决这个“水土不服”的问题,VS Code 早就提供了 window.titleBarStyle: native 设置项,可以换回原生标题栏体验。但问题来了:标题栏是原生了,下方的代码标签页却仍然是 VS Code 自己绘制的。看着还是不够 Mac,而且标签页之间没法像 Safari 那样随意拖拽合并。
好在 VS Code 团队里绝大多数开发者本身就是 Mac 用户,对这一点深有体会,于是他们专门增加了让 VS Code 适配 macOS 原生窗口的配置。
只要在设置里把 "window.nativeTabs": true 打开,VS Code 的标签页就彻底“从良”了——直接接入 macOS 的原生标签页系统。

这个功能有多爽?不开不知道,开了就像发现新大陆,连日常使用 VS Code 的方式都跟着变了。
现在你可以像拖拽 Safari 标签页一样,直接把 VS Code 的一个代码标签拖出来,瞬间变成一个独立窗口。我觉得最绝的是,以前零散的多窗口,现在可以合并成同一个窗口里的多个标签。这套操作丝滑得让人想哭。

以前按三指上推,VS Code 的十几个标签页像一盘散沙铺满屏幕,找文件如同大海捞针。现在它们会乖乖地聚拢在同一个原生窗口组里,清清爽爽,完美治好了我的窗口选择焦虑症。

如此一来,Mac 上双指左右滑动切换标签页的传统艺能也回来了。另外,你还可以点击标签栏右侧的加号来新建一个窗口,点一下就能直接打开新项目,体验相当不错。
当然,开启这个功能后,系统菜单栏和代码标签页会分家,可能会多占用一丢丢垂直空间。但这可是纯正的“苹果味”,值得。
如果你也希望打开新应用时默认使用原生标签页,还需要在 Mac 系统设置里把“打开文稿时首选标签页”(Prefer tabs when opening documents)设为“始终”(Always)。

对于日常在 macOS 上做开发的朋友来说,这个配置改动几乎零成本,却能让窗口管理顺手不少。如果你也是 Mac 用户,我很推荐试试这个操作。关于 VS Code 在 macOS 上的更多配置技巧和避坑经验,云栈社区里也有不少开发者分享过,遇到问题不妨去翻一翻。
|