2017年的高考结束了,又一批少年们走出高中步入新的生活,从他们身上,我仿佛看到当年的自己。也是从那一年的此时到今天,我使用 Mac 作为主力机学习工作已经整整两年的时间。这期间,我使用电脑的方式被 macOS(旧 OS X)深深改变,并成为了一名资深果粉。随着时间、空间的转换,我身边使用 Mac 的朋友也越来越多。

我花费了大量的时间来提升我在 macOS 上的生产力,同时我也希望能帮助其他人提升他们在 macOS 上的生产力,尤其希望拥有一台 Mac 的人能理性地感受到 macOS 在生产力上的优势。为避免一次次向不同人重复这些内容并避免缺漏,我决定整理一篇文章。或许使用 macOS 的终是少数,但我仍会用心地更新这篇文章。

# 概述

第一次接触 MacBook 的时候,同大多数人一样,我抚摸着光滑的触控板,看着空无一物的桌面,甚至不知道它的「开始菜单」在哪里。然而在那一刻,纯粹的硬件的美,依然激起我对它的兴趣。哪怕是在今天,当 iPhone 已无法在硬件设计上称霸智能手机市场,乔布斯九年前从牛皮纸信封里抽出 MacBook Air (51:00 (opens new window))那一刻的掌声仍有余响 (opens new window)

macOS 是 Mac 的灵魂,它延续并发展了 Mac 在工业设计上的美。这种美是我在挑选自己的第一台电脑时,放弃 Windows 的最大理由。Microsoft 不是一家重视设计的公司(How Windows 10 killed design – Ryan Lau (opens new window))。即使在今天,Surface 系列已足以吸引我的目光,但当我站在真机面前,点亮屏幕后还是让人感叹「只要运行 Windows,就没什么不同」。

苹果是一家重视生产力的公司。佐证这点的最大理由就是这家公司里的员工都在使用着自己的产品,并展现出非凡的创造力。许多专业领域的用户也偏向于使用 Mac,以至于当 Mac Pro 产品线长期不更新时,这类用户发出了愤怒的声音。

我第一次了解 macOS 是在唠科的视频 (opens new window)里,他的视频叙述了许多 OS X 的历史和使用技巧。macOS 是直觉的,不同于 Windows,它不需要你刻意地学习,而我们之所以有开始的不习惯,只是因为 Windows 先入为主的一些概念。

在国内的环境下,选择 macOS 其实是选择了不同。选择不同,意味着你需要承受一些别人没有的压力,面对一些别人没有的问题,当然,也会看到一些别人看不到的风景。

# 软件

macOS 的软件大多具有优美严谨的设计和丰富清晰的功能,这是一种优良的血统,究其缘由,也许是因为 macOS 上的开发者都会受到整个大环境的指引,不希望自己的应用变得“鹤立鸡群”吧。

# 安装

安装 macOS 的软件通常有两种途径,一种是从官方的 App Store 安装,另一种是从应用的官网或一些非官方途径安装。由于 App Store 对应用开发者的严格限制,有些开发者会选择在官网上或其他途径上分发软件(同样是正版),或是选择在 App Store 分发一个阉割版,在网上分发一个完整版。甚至有的软件本身是免费的,但是由于 App Store 对开发者收取年费,作者会在 App Store 上提供一个付费版,同时也是一个捐赠途径。

从 App Store 安装就和 iPhone 安装软件一致,无须赘述,在这里我着重讲一下第二种安装的过程。

大多数从网络上下载下来的软件包都是 dmg 镜像形式的,这种文件在双击打开后会像一个磁盘(或 U盘)一样装载在你的系统上,我们在 Finder 的左侧菜单栏可以看见,点击弹出即可弹出。打开之后,我们一般会看到这样的画面:

alt

这样的 app 只需要我们把它的图标移动到 Applications 文件夹就算安装完毕。在上面的截图里,左边的红色图标表示的是一个完整的软件,右边的蓝色图标表示的是系统 Applications 文件夹的一个快捷方式,所以我们拖到这个快捷方式上的实质就是复制软件到 Finder 左侧菜单栏的 Applications 文件夹里。

有些软件是 pkg 格式的(即以.pkg为后缀),这类软件通常不只安装一个软件包到 Applications 文件夹,还会写一些系统配置,所以安装这类软件需要慎重。安装方式就是双击图标,在弹出的窗口里一直点下一步就可以了。

# 安装常见问题

在安装一些来源不明的软件之后,我们有时会打不开这样的软件,系统会提示安全原因,在新版的 macOS Sierra 还会出现提示软件损坏的现象。我们可以打开系统偏好设置中的隐私和安全面板

alt

点开左下角的设置锁之后,设置允许下载 APPs 来自任何来源即可解决,如果你刚刚遇到了安全情况,这里也会有相应的情况供你决策。

在 macOS Sierra 中,这个选项默认是隐藏的,我们需要在终端中键入以下命令开启

sudo spctl --master-disable

在进行以上行为时,你最好清楚你在做的事情。

接下来我会从自带软件和第三方软件方面分别推荐一些软件,这一部分或许会因为我自己的使用需要和习惯而显得主观,但我已尽力分享我所知,希望读者能得所需。我会在后面推荐更多了解信息的渠道。

# 自带软件

不同于 Windows 上的自带软件,macOS 上的自带软件往往具有罕见的高质量。以下我将挑选一些进行介绍:

# Preview

Preview(预览)无疑是 macOS 上最强的软件,有了它,你点中大多数文件图标并按下空格,都可以预览其中内容。

# iWork 套件

iWork 套件包括三个软件,分别对应 office 的三个软件。

  • Keynote(PowerPoint)
  • Pages (Word)
  • Numbers (Excel)

具体功能不详述,最实际的可能是他们都能打开 office 的对应格式文档,需要注意他们自己的文件格式在 Windows 上是无法打开的,导出 office 文件时推荐使用 PDF 导出,否则可能有格式问题。三个软件都有很大的价值,其中 Keynote 最值得好好学习,特别推荐许岑的教程 (opens new window)

不推荐安装 WPS 等软件来打开 Office 系列格式的文件,推荐下载 Office 套件以实现更严谨的格式编辑。

# Calendar

macOS 自带的日历软件十分美观易用,并且可以导入其他 CalDev 格式的日历,如 Google Calendar (opens new window),实现无缝双向同步。

# 第三方软件

macOS 上的优秀第三方软件有很多,以下推荐的都是我经过长时间使用的选择,类似 WeChat、QQ 这样的软件没有其他选择不赘述。希望大家支持正版,资金有限的童鞋可以关注 App Store 和一些其他软件包网站(打包出售,往往需要国外付款方式)的优惠信息,即使一时使用盗版也不要传播盗版。因为对正版独立开发者的支持才是对整个软件生态的保护,我们都不希望看到一个到处都是广告和劣质应用的世界。同时,我也推荐一干优秀的开源软件,即使你不是开源社区的一员,注册一个 GitHub 帐号,为他们的 repo 点一个 Star 也是对他们工作的宝贵支持。

# 浏览器:Chrome

被 Chrome 捆住的我很无奈,macOS 自带的 Safari 可以满足大部分需求,并且高效省电,然而 Chrome 繁荣的生态让人习惯后就很难脱身。

UPDATE

我现在主要使用 Safari 浏览器

# 终端: iTerm2

iTerm2 是 macOS 下最多人使用的终端模拟器(Terminal Simulator),很多人都在使用 iTerm2 但却不知道它到底好在哪里,这颇为一件憾事。

alt

上图演示的是 iTerm2 的 Shell Integration (opens new window) 功能,其中的一个小特性就是集成了 scp 功能,可以直接用 ssh 的服务器上下载和上传文件。

iTerm2 还能与本地或是服务器端的 tmux 完美 (opens new window)结合 (opens new window),让用户可以直接使用系统原生的操作控制 tmux。

像这样的功能在 iTerm2 里还有很多。

# 效率工具:Alfred

Alfred (opens new window) 很可能能评上最被推荐的 Mac 软件,它使你可以通过各种方法(包括编程)来增加工作的效率。最常用的功能包括:快速打开应用;快速搜索;管理剪切板历史等。在互联网上可以搜索到各种 Workflow 下载。此外有一些精美的主题 (opens new window)可以替换。

# 视频播放器:IINA

IINA 是一个现代的 macOS 视频播放器,开源,高能。

知乎 (opens new window)github (opens new window)

# 监控软件:iStat

iStat (opens new window) 是一个付费软件,它使你可以在状态栏查看 macOS 的系统运行情况。如果你需要一个网速监控器,CPU 负荷监控器,传感器温度及风扇转速查看器,它是最好的选择。

# PDF 阅读器:PDF Expert

在一般的使用场景下,自带的 Preview 应用已经可以满足 PDF 阅读、修改的需求,但当你需要更强大的 PDF 阅读器时,PDF Expert (opens new window) 是很好的一个选择。另一个经常被人拿来比较的 PDF 阅读器是 adobe 家的 Acrobat Pro DC (opens new window)。相较而言,PDF Expert 更为轻量一些,在功能性上也没有太多缺失。

# 微博:Maipo

Maipo 是一款免费的微博客户端,可以直接在 App Store (opens new window) 下载。

UPDATE

基本弃用

# 文档管理:Dash

macOS 下最强的文档查看器,推荐所有程序员购买。但由于其作者与 Apple 的纠纷,dash 在 App Store 下架,目前只能在其官网 (opens new window)购买。Alfred 和 VSCode 等软件都有对应的插件支持,配合使用更佳。

# 窗口大小调整:Moom

由于一些设计理念,macOS 在窗口管理上有很大缺失。在 Windows 上,我们习惯把窗口拉到屏幕的边缘就能进行分屏,但在 macOS 上,我们只能在全屏模式上支持左右两个软件的分屏。这对多窗口工作下的工具效率有极大的影响。

Moom (opens new window) 的价位在人民币50元左右,相较其多才多艺的功能,这个价位并不高。

# 软件语言转换:App Language Chooser

一般软件会维持系统默认的语言。如果你习惯使用英文操作系统,你可以会在与中文操作系统用户的交流之间出现一些问题。这个免费易用的软件可以解决这一问题,直接从 App Store (opens new window) 下载即可。

# 键位更改:Karabiner

Karabiner (opens new window) 是 macOS 最被推荐的修改键位和其他一些键盘设置(比如按键重复事件触发速度)的开源 (opens new window)软件。

我使用 Karabiner 修改了我的键位以支持 Vim 的移动习惯,参照此文 (opens new window)

我使用 Karabiner 修改了系统切换输入法的快捷键为 shift 键,参见此文 (opens new window)

# Touch Bar 神器: Pock

image.png

直接 (opens new window)看图。

UPDATE

已弃用

# 思维导图:MindNode

简单优雅的脑图软件,就是有点小贵,但是比起某些脑图软件 200 左右的价格还是很平民了。

# SS 代理:ShadowsocksX-NG

无需介绍。需要注意的是,其同时提供 SOCKS 和 HTTP 服务,但不像 Windows 上一样开在一个端口上。一个使用的小 tip 是其可以直接拷贝命令行挂代理的命令,右击顶栏图标查看其菜单就可以看到。

github repo (opens new window)

# 全局反代:Proxifier

无需介绍。对一些 Proxy 设置奇怪的软件,直接开 Proxifier (opens new window) 全局代理就好了。

# Gif 录屏:licecap

升级 macOS Catalina 后若不能使用重新安装即可

licecap 是一款开源软件,可以满足基本的 gif 录屏需求。

github repo (opens new window)

# 截图:Snipaste

虽然macOS自带截图功能,并且能在对窗口截图时达到很优美的效果,但Snipaste (opens new window)提供更多的功能。其中最具特色的就是“Paste”功能,可以把剪切板的内容粘贴在屏幕上,对于一些需要临时对照参考文档的情况非常实用。此外还有一些类似于标注、打码等实用的小功能。

# TeX Live

此文 (opens new window)

# 词典:欧路词典

欧路词典是一个全平台都很推荐的软件,在 Mac 上也不例外,导入一两个好质量词典文件,可用性极强。

附带收集的一些词典文件 https://pan.baidu.com/s/1HCW6GUK33CjzBwpnBJwQkw 提取码: xqaa

# 命令行工具

在拥有常用软件支持以外,一个全功能的 Terminal 是许多人购买 Mac 并坚持使用 macOS 的最大理由。

# 包管理器

homebrew (opens new window) 是 macOS 下首屈一指的包管理器,如同 Ubuntu 下的 apt 一样,我推荐用 homebrew 来做 CLI 下软件的管理。也就是说,所有能使用 homebrew 安装的软件,全部都应使用 homebrew 来安装、升级、卸载。

homebrew 的安装十分简单,如果说有一点要注意的话,就是建议在安装前挂上代理(因为首次安装可能会下载 xcode command line tool 体积较大)。

export http_proxy=http://yoururl
export https_proxy=http://yoururl

然后我们按照其官网上的命令即可。官网上也有关于其基本操作的介绍,以下不再赘述。

# brew cask

homebrew 拥有一个很强大的功能,就是它也能用来安装 GUI 的软件。

首次运行,输入brew cask

例如我要安装一个 Visual Studio Code,我会进行如下命令

brew cask search code

这条命令会模糊搜索 cask 仓库内所有匹配的软件,并作如下返回

==> Partial Matches
... ... ...
avocode                          codelite                         key-codes                        unicodechecker
biicode                          coderunner                       paintcode                        visual-studio-code

我们看到其中有 visual-studio-code 选项,于是我们执行

brew cask install visual-studio-code

稍等片刻 code 就安装好了。

# brew services

另一个 homebrew 拥有的强大功能是其能管理一些服务,例如 nginx、mysql,与 Linux 下的 service 命令相似。

首次运行,输入 brew services,注意输出的相关说明。

# homebrew 源

使用国内的 homebrew 源(如 TUNA (opens new window)) 能提高在国内使用 homebrew 的速度,具体替换方法见 tuna 的说明页。

# ZSH

zsh 是 *NIX 系统下人们广泛使用的 shell

推荐阅读 (opens new window)

# oh-my-zsh

oh-my-zsh (opens new window)是一个社区驱动的 zsh 配置框架。zsh 其实是开箱即用的,但是还有很多个性化的插件和主题可以让我们的体验更好。oh-my-zsh 为我们提供了一个更好管理这些插件和主题的工具。

以其中针对 macOS 的插件 (opens new window)为例,其提供了以下命令

Command Description
tab Open the current directory in a new tab
split_tab Split the current terminal tab horizontally
vsplit_tab Split the current terminal tab vertically
ofd Open the current directory in a Finder window
pfd Return the path of the frontmost Finder window
pfs Return the current Finder selection
cdf cd to the current Finder directory
pushdf pushd to the current Finder directory
quick-look Quick-Look a specified file
man-preview Open a specified man page in Preview app
showfiles Show hidden files
hidefiles Hide the hidden files
itunes Control iTunes. User itunes -h for usage details
spotify Control Spotify and search by artist, album, track and etc.

# 网络工具

由于这些工具的专业性较强,所以不在此描述细节,只做一个索引

# scutil

可以用来为指定域名指定 DNS 解析服务器 参考链接 (opens new window)

以下命令用于重置 DNS 缓存

sudo killall -HUP mDNSResponder

# More Info