macOS 效率系列 04: 快捷键是所有人的必修课

2019年8月13日 · 5 years ago

欢迎大家留言或者邮件 justin@justinyan.me 分享你喜欢的效率工具或者效率技巧。

〇、快捷键是提高效率的捷径

不管使用哪一个 App 或者操作系统,掌握快捷键永远提高效率最简单的方法。就像它的名字"shortcuts"一样,它的设计就是为了让你节省时间的捷径。

macOS 系统自带许多有用的快捷键,有全局的也有各个 App 自己的。Mac App 的特色是 Menubar 上的菜单如果是重要操作一般都会带有匹配的快捷键,而且实现起来非常简单。所以 macOS 生态里的快捷键非常统一。用户只需要学习一套快捷键操作,就可以复制到其他 App 里面。

大部分使用 macOS 的读者朋友应该都习惯了相当一部的快捷键,但可能还有些有用的快捷键没有用到。我在写作此文的时候也发现有些快捷键之前都不知道,整理的过程也是我学习的过程。

本文整理 macOS 几个大类的快捷键,希望能对读者朋友们有所帮助。更多主流 App 快捷键大家随时可以通过 Google 关键字: App Name + Shortcuts 或者是 App Name + Cheatsheat 来找到。

一、系统全局类

系统自带的快捷键有一部分可以从 System Preferences -> Keyboard -> Shortcuts 里面直接找到:

这里我们介绍几个比较常用到的全局快捷键:

Key Action
cmd + tab 在已经打开的 App 之间进行切换,按住 shift 可以反向选择
ctrl + left/right 左右切换 Workspace
ctrl + up 显示 Mission Control
ctrl + down 显示当前 App 所有 Windows
option + cmd + l 在 Finder 打开 Downloads 目录
option + cmd + d 显示/隐藏 Dock
option + cmd + esc 打开 Force Quit App 列表
shift + option + cmd + esc 直接 Force Quit 当前 App

即使有上一篇文章介绍的 Alfred我也经常使用这些快捷键,比键入关键字搜索要快。当我同时需要打开多个应用或者多个窗口时也配合第一篇关于窗口管理的工具进行多窗口排布,可以大大提高工作效率。

二、窗口类

Key Action
cmd + ` 在当前 App 的多个窗口直接切换
cmd + m 最小化当前窗口
cmd + h 隐藏当前 App
cmd + opt + h 隐藏除了当前 App 以外的所有窗口
cmd + ctrl + f 进入/退出最大化
cmd + w 关掉当前窗口或者当前 Tab
cmd + opt + w 关掉当前 App 的所有窗口

三、文本编辑操作

对于开发者或者文字工作者,每天都在敲键盘打开,能够不用鼠标就完成选择文本、替换文本之类的操作是最好的。以下是文本编辑常用的快捷键:

Key Action
ctrl + a 跳到当前行的最前面
ctrl + e 跳到当前行的最后面
cmd + left/right 跳转到当前行的开头/结尾
cmd + up/down 跳转到当前文档的最顶部或最底部
cmd + del 删掉当前光标到行首之间的所有文本
shift + up/down/left/right 按住 shift 和上下左右可以选中文本
鼠标点击某处,再按住 shift 点击另外一处 可以直接选中两次点击之间的所有文本
alt + left/right 向左/右跳一个单词
双击鼠标 选中最靠近的一个单词
三击鼠标 选中当前行

文本选择小技巧

当我们按下 shift 之后我们就可以通过上下左右方向键来选择文本。这时候按住 cmd + 方向键的效果就带上了选择效果。比如 cmd + left 本来是跳转到光标所在行的最前面,加上了 shift 就自带了选中效果。

所以如果你想选择当前光标所在的位置到文本最底部,按住 shift + cmd + down 就可以了,非常方便。

这里的文本编辑快捷键是针对通用的文本编辑器而言的,喜欢 Vim/Emacs 的朋友也可以安装对应的插件,实现更加高效的操作。

比如在 Vim 里面,跳转到文档最顶部只需键入 gg 即可。选中当前光标到最顶部则只需 vgg,理论上是要更加省时间的做法。只是学习曲线要高得多,如非码农,一般也用不上。

四、截图类操作

Key Action
shift + cmd + 3 截当前全屏并存文件到桌面
ctrl + shift + cmd + 3 截当前全屏并保存到剪贴板
shift + cmd + 4 按下后拖拽鼠标选择截图区域,或者按下 space 直接截取当前窗口并保存到文件
ctrl + shift + cmd + 4 按下后拖拽鼠标选择截图区域,或者按下 space 直接截取当前窗口并保存到剪贴板

系统自带的截图已经非常之好用,但是藏得比较深。绝大多数人都使用第三方 App 来截图我觉得也无可厚非。

我自己一般只用系统截图,只有需要对图片进行标注时会使用第三方 App。一般用: ‎Annotate - Capture and Share on the Mac App Store

它的快捷键和系统的一致,我无需再学一套快捷键,截图后会弹出主窗口用于编辑。

五、大多数 App 标准快捷键

Key Action
cmd + , 打开当前 App 的 Preferences 窗口
cmd + w 关闭当前窗口
cmd + 1/2/3 选中当前第 n 个窗口
ctrl + tab 切换到下一个窗口
shift + ctrl + tab 切换到上一个窗口
cmd + l 在 Safari/Chrome 中直接选中地址栏
cmd + r 在 Safari/Chrome 中刷新当前页
cmd + f 大部分支持搜索的 App 的搜索快捷键
cmd + opt + f VSCode/Sublime 之类的 App 可以支持完整 Workspace 搜索
cmd + t 大部分多 Tab 应用支持以此创建新 Tab
cmd + shift + [ 大部分多 Tab 应用支持以此往左切换 tab
cmd + shift + [ 大部分多 Tab 应用支持以此往右切换 tab
cmd + shift + n 在 Finder 中创建新文件夹

Apple 官方有一份非常详尽的快捷键列表,有兴趣的朋友可以到这里查看: Mac keyboard shortcuts - Apple Support

六、如何自学快捷键

开发一个带 UI 的 Mac App 一般都会有一个 MainMenu 的 Storyboard,这个东西在创建工程的时候由 Xcode 生成,自带大量官方的操作和快捷键。开发者开发 Mac App 的时候只需往菜单上增加快捷键和对应的 Action 就能实现 App 内快捷键了,非常方便。有一个叫做 CheatSheet 的 App 就是遍历当前 App 的所有 menu 然后把得到的快捷键列出来给你。

我们即使不用这个 App,自己点一下菜单也能知道大部分的快捷键。对于常用的 App 和操作,我觉得花几秒钟时间学习一下是非常划算的投资。

至于主流 App,通常只需 Google App Name + Shortcuts 或者是 App Name + Cheatsheat 就可以得到别人整理好的列表。

有些比较重的 Web App 比如 Trello 也是自带了大量快捷键。但是大家的快捷键都不是瞎定的,比如 Trello 的许多操作都和 Vim 相仿(通过按下 ? 可以看到 Trello 的全部快捷键)。所以只要学会了一套快捷键逻辑,基本上在多数 App 都是可以复刻的,这也是 Mac 生态非常优秀的地方。

参考资料

相关链接