从 Windows 迁到 Mac 的开发环境与键位配置

刚从 Windows 切到 Mac 时,最别扭的往往不是系统功能,而是手已经习惯了另一套键位。

复制、搜索、刷新、锁屏、终端中断、鼠标滚动、触摸板手势,这些动作每天会重复很多次。只要有一个按键不顺,就会一直打断工作节奏。

这篇不是「Mac 必装软件大全」,只是当时把 Mac 调顺手的一份记录。大方向是:外接 Windows 键盘尽量保留原来的手感,Mac 自己好用的地方也别硬拧回去。

截图来自当时的系统版本。不同 macOS 版本的设置入口可能会变,按同样思路找对应选项就行。

先把键位想清楚

Mac 的键盘逻辑和 Windows 不一样。Windows 上最常按的是 Ctrl;Mac 上大量快捷键都落在 Command 上。外接 Windows 键盘接到 Mac 后,Win 键通常对应 Command,Alt 对应 Option,Ctrl 仍然对应 Control。

最先处理两个地方:

  • 自带键盘上,怎样把常用键放到更顺手的位置。
  • 外接 Windows 键盘上,怎样让 Ctrl/Win/Alt 更接近原来的肌肉记忆。

macOS 自带「键盘 -> 修饰键」设置,但能力比较有限:

macOS 自带修饰键设置

只调换几个修饰键时,它够用。想给内置键盘和外接键盘分别配置,就要上 Karabiner-Elements。

Karabiner-Elements:按键映射的主力

Karabiner-Elements 是 Mac 上很常用的键盘定制工具。主要用它做两类映射。

第一类是内置键盘。

会把左边的 fn 改成 Command,让左手更容易按到常用快捷键:

Karabiner 中把内置键盘 fn 映射为 Command

同时把右边的 Command 改成 Fn,这样需要用功能键时仍然有入口:

Karabiner 中把内置键盘右 Command 映射为 Fn

第二类是外接 Windows 键盘。

外接键盘上,会把左侧 Control 和 Command 调换,让 Windows 上 Ctrl 所在的位置,在 Mac 上承担更多 Command 快捷键:

Karabiner 中配置外接键盘修饰键

这样做之后,复制、粘贴、搜索、切换 tab 这些高频动作会接近原来的手感。

代价也有:终端里中断进程本来是 Control + C,如果把外接键盘左下角改成了 Command,就要重新适应一下实际按键位置。

这类配置没有绝对正确。取舍是高频动作优先,低频动作让路。

MOS:把鼠标滚动和触摸板拆开

Mac 默认的「自然滚动」对触摸板很自然,但对传统鼠标不一定顺手。麻烦的是,系统设置里鼠标和触摸板的滚动方向很容易互相影响。对同时使用触摸板和鼠标的人来说,这会很别扭。

macOS 鼠标自然滚动设置

MOS 可以单独控制鼠标滚动方向,并提供平滑滚动。会把它调成这样:

  • 触摸板保留 Mac 的自然滚动。
  • 鼠标滚轮接近 Windows 手感。
  • 鼠标滚动不要太生硬。

只用触摸板的话,可以不装 MOS。经常在触摸板和鼠标之间切换时,它能明显减少割裂感。

触摸板:保留好用的,关掉误触的

Mac 触摸板很好用,但默认设置不一定适合每个人。会先调整点按和查找相关设置:

macOS 触摸板点按设置

这里主要看两件事:

  • 要不要开启轻点来点按。
  • 要不要保留用力点按查词。

更希望触摸板稳定触发点击,不希望误触查词,所以会把容易干扰工作的项关掉。

浏览器里双指左右滑动会触发前进/后退。这个手势本身很好理解,但写代码或查资料时误触一次很影响节奏,所以会关掉对应选项:

macOS 触摸板关闭页面前进后退手势

如果你很依赖这个手势,可以保留。这个配置没必要统一,关键是别让它反复打断你。

通知:先保证重要 App 能提醒

很多 App 初次安装后,通知权限不一定按你预期打开。

尤其是 Chrome、聊天工具、日历、邮箱这类应用,如果通知没开,很容易错过消息。

macOS 通知设置

习惯是只打开需要及时看到的通知。其他 App 能关就关。

通知太少会漏消息,通知太多会切碎注意力。Mac 设置好之后,顺手整理一下这块很值。

菜单栏时间:显示日期和秒

Mac 默认菜单栏时间不够直观。希望不用点开也能看到日期,某些调试场景还希望看到秒。

可以用「万年历」这类菜单栏日历 App:

菜单栏日历显示日期

这个 App 可以在 Mac App Store 下载:

Mac App Store 中的万年历

安装后,可以在设置里打开秒:

万年历中打开秒显示

这样菜单栏可能会出现两个时间。系统自带时间不一定能完全隐藏,可以把它改成模拟时钟,尽量减少占位:

macOS 把系统时间改成模拟时钟

菜单栏最后会更紧凑:

菜单栏时间和日期效果

这不是必需配置,但经常看日志、对时间戳、录屏复盘时挺方便。

F1 到 F12、F5 刷新和锁屏

外接键盘上,更习惯让 F1 到 F12 直接作为功能键,而不是先触发亮度、音量这类系统功能。

可以在「键盘」设置里打开这个选项:

macOS 中把 F1 到 F12 当作标准功能键

Chrome 在 Mac 上默认用 Command + R 刷新。Windows 习惯里,F5 刷新更自然。

可以在「键盘 -> 键盘快捷键 -> App 快捷键」里给 Chrome 单独加一条:

  • 应用程序:Google Chrome
  • 菜单标题:重新加载此页
  • 键盘快捷键:F5

菜单标题要和 Chrome 菜单里的文字完全一致,否则不会生效。

给 Chrome 添加 F5 刷新快捷键

锁屏也可以用类似思路调整。

会把锁定屏幕设置成外接键盘上接近 Win + L 的位置。不一定要和 Windows 一模一样,但每天都会用的动作最好别重新想。

程序坞和常驻应用

程序坞中间有一道分隔线。

左侧是固定在程序坞里的应用,打开或关闭都会在;右侧是最近打开或正在运行的应用。

想让应用顺序稳定,就把常用 App 固定到左侧。右侧会按打开顺序变化,不适合拿来做固定入口。

这件事很小,但刚切 Mac 时容易困惑。高频 App 固定好之后,系统会清爽很多。

常用软件

这一段更像个人清单,不需要照抄。

开发和调试:

日常效率:

这些工具不用一次装全。长期留下来的,通常都是每天能少打断你一次的东西。

Chrome 扩展

浏览器扩展也一样,少而稳定比装一堆更舒服。

很久没用的扩展,会直接删掉。浏览器扩展权限通常不小,没必要长期留着吃灰。

Tampermonkey 脚本

会保留少量脚本:

脚本类工具更要谨慎。能不用就不用;要用也尽量看清源码和权限范围。

字体

字体也可以顺手调一下。

字体很主观。判断标准只有一个:长时间看代码和中文文档时,眼睛别累。

写在最后

从 Windows 切到 Mac,不一定要强迫自己完全接受默认习惯。更愿意把系统调成「高频动作顺手,低频差异能接受」。

键位、滚动、刷新、锁屏、通知、菜单栏时间,这些配置都不大,但每天都会出现。把这些地方调顺之后,Mac 才更像工作工具,而不是一个一直需要适应的新系统。