高效 MacBook 工作环境配置

// 本文来自 正鹏 & 隃墨 的合著分享,首发在隃墨的个人博客

工欲善其事,必先利其器,工具永远都是用来解决问题的,没必要为了工具而工具,一切工具都是为了能快速准确的完成工作和学习任务而服务。

本文记录 MacBook 整个配置过程,供新入手MacBook和觉得MacBook比较难用的同学参考。

 

1. 硬件提升

笔记本电脑的特点是携带方便,缺点是屏幕太小,因此你首先需要再申请领用一个外接显示器,多一个屏幕会大大减少你切换应用程序的次数,显著提升你的工作效率,别忘了同时申请一个Mini DP转VGA的转接头用于连接显示器。为了配合多显示器,后面会推荐一个软件来管理多显示器窗口。

如果你资金宽裕,可以买个机械键盘和无线鼠标,进一步提升工作效率。

2. 系统设置

2.1 将功能键(F1-F12)设置为标准的功能键

MacBook键盘最上面一排的功能键(F1-F12)默认是系统亮度和声音之类的快捷设置,当MacBook作为你的娱乐电脑时,这样的默认设置是非常方便的,但是对于将MacBook作为工作电脑而且需要频繁使用功能键(F1-F12)的人,最好将功能键(F1-F12)的行为设置为标准的功能键。

首先打开System Preferences,点击Keyboard图标,勾选上Use all F1, F2, etc. keys as standard function keys。以后如果你要调节音量,就按住键盘左下角的fn键再按F11或者F12。

211
图2.1-1

2.2 设置Trackpad(触摸板)轻触为单击

当你首次使用MacBook,是否会觉得触摸板一点都不顺滑?那是因为你需要做如下设置。
打开System Preferences,点击Trackpad图标,勾选Tap to click选项,现在手指轻轻一碰触摸板,就达到鼠标单击的顺滑效果。

2.3 将Dock停靠在屏幕左边

为什么要将Dock停靠在屏幕左边?MacBook的屏幕是一个长方形,如果你将Dock放在下面,那么屏幕的可用宽度就会减少,另外人眼阅读时的顺序是从左往右,因此Dock放在左边更适合将MacBook作为工作电脑的人。

打开System Preferences,点击Dock图标,

  1. 将图标的Size调到合适大小
  2. 关闭Magnification特效(即鼠标放到Dock上图标放大的效果,此效果干扰注意力)
  3. Position on screen一栏,选择Left
  4. 勾选Minimize window into application icon

231
图2.3-1

2.4 全键盘控制模式

全键盘控制模式是什么? 举一个例子,如下图所示,我正在写一个文档,此文档还没有保存,也没有文件名,如果不不小心点了关闭按钮,将会弹出一个对话框:

241
图2.4-1

当前,[Save]按钮处于默认激活状态,按回车将会弹出保存对话框。但是如果我不想保存呢? 只能通过鼠标或者触摸板来移动光标后点击[Don't Save]来取消保存。那我能不能通过键盘控制光标激活[Don't Save]按钮呢? 答案是肯定的,做一个简单设置就好。

如图,首先打开System Preferences,点击Keyboard图标,选择Shortcuts这个Tab, 选中All controls

242
图2.4-2

现在当我再次试图关闭一个未保存的文件时,新弹出的对话框如下,有了些许变化,在[Don't Save]按钮上多了一个蓝色的外框,当你按键盘上的tab键的时候,蓝色的外框会在3个按钮间切换。 假设现在蓝色的外框在[Don't Save]按钮上,你按下回车,却发现系统依然进入了保存文件对话框,为什么蓝色的外框不起作用呢?那是因为蓝色的外框选中的按钮是由空格键触发的,当你按下空格键,系统就会不保存文件直接退出。 这样当你不方便使用鼠标和触摸板的时候,可以更快速的和你的MacBook交互。

243
图2.4-3

2.5 快速锁定屏幕

如果你长时间离开电脑,最好锁定你的屏幕,以防止数据泄露。 那如何快速的锁定你的MacBook呢? 答案是只需要一摸触摸板或者一甩鼠标就可以了。

  • 打开System Preferences,点击Desktop & Screen Saver图标,选择Screen Saver这个Tab,再点击Hot Corners...,在弹出的如下界面里面,右下角选择Put Display to Sleep,点击OK确定。251
    图2.5-1
  • 再打开System Preferences,点击Security & Privacy图标,在GeneralTab内,勾选Require password[immediately] after sleep or screen save begins

252
图2.5-2

现在当你离开电脑前时,记得一摸触摸板或者一甩鼠标将光标快速的移到屏幕的右下角,MacBook将立刻进入Screen Saver模式并且需要密码才能进入桌面。

3. 系统常用快捷键

点击这个文档,学习系统快捷键,适当使用快捷键将会提升你的工作效率。

4. 日常软件推荐

4.1 中文输入法

系统自带的输入法不是很好用,推荐安装搜狗输入法或者RIME输入法。安装完成后,打开System Preferences,选择Keyboard,切换到Shortcuts这个Tab下,勾选Select the previous input source,并点击上述文字后面的空白处,设置快捷键为Ctrl+Space(即如图所示的^Space)。

411
图4.1-1

4.2 窗口管理软件 – SizeUp

  1. 你是否经常想让某个Word文档占满屏幕的左半部分,旺旺聊天占满屏幕的右半部分,从而一边对着文档一边和小伙伴聊需求?
  2. 终于搞好了外接显示器,你是否经常将某个窗口在笔记本和外接显示器屏幕之间直接来回拖动?

SizeUp快速解决这样的需求,该软件可以永久免费试用,下载安装后打开SizeUp,再打开旺旺,快捷键按下control+option+command + M,则旺旺就会立即进入全屏模式。

然而大部分情况下,你会看到如下这个提示,这是因为SizeUp需要你的授权才能控制窗口。

421
图4.2-1

直接点击Open System Preferences或者打开System Preferences,点击Security & Privacy图标,在PrivacyTab内,点击Accessibility,然后将SizeUp加到右边的列表里面。(提示:你可能需要先点击右下角的黄色锁,输入密码后才能编辑右边的列表。)

422
图4.2-2

如果你此时接上了外接显示器,快捷键按下control+option + 方向键右键,则当前左边显示器激活的最前端窗口将被立即发送到右边的显示器。

下面列举一些SizeUp常用的快捷键,更多的快捷键和使用方式请查询其官方网站

  • control+option+command + M : 使当前窗口全屏
  • control+option+command + 方向键上键 : 使当前窗口占用当前屏幕上半部分
  • control+option+command + 方向键下键 : 使当前窗口占用当前屏幕下半部分
  • control+option+command + 方向键左键 : 使当前窗口占用当前屏幕左半部分
  • control+option+command + 方向键右键 : 使当前窗口占用当前屏幕右半部分
  • control+option + 方向键左键 : 将当前窗口发送到左边显示器屏幕
  • control+option + 方向键右键 : 将当前窗口发送到右边显示器屏幕

4.3 查找文件和应用程序以及无限想象力 – Alfred

如果你曾经使用过MacBook,你应该接触过Spotlight,就是屏幕中间弹出一个长条输入框,你输入文件名或者应用程序名,Spotlight将模糊查找到对应的候选项,按回车快速的打开你需要的文件或程序。

Alfred的能力远远超过了Spotlight, 你可以直接下载免费版安装使用,Alfred另外还提供了更强大的工作流(Workflows)和剪切板(Clipboard)管理等高级功能,需要购买Powerpack。对于日常的操作,免费版已经足够使用了。

因为Alfred可以完全取代Spotlight,下面先删除Spotlight占用的快捷键command + 空格,以供Alfred将来使用。

打开System Preferences,选择Keyboard,切换到Shortcuts这个Tab下,点击Spotlight,取消对应的2个快捷键设置。

431
图4.3-1

打开Alfred,在菜单栏点击Alfred图标,打开Preferences...

432
图4.3-2

如下图所示,设置Alfred的快捷键为command + 空格

433
图4.3-3

现在按下快捷键command + 空格,输入dash,则Alfred不区分大小写的将所有包含dash的应用程序,文档以及历史网址都列出来了,如下图所示,回车打开Dashcommand+2打开本Dashboard,你还可以移动键盘上下键或者光标来选择目标。


图4.3-4

更多关于Alfred的使用方式和无限想象力,请参考官方网站或者网上现有的大量的教程。

下面简单演示一下剪切板管理厂内查人工作流的使用。如下图所示,我使用快捷键打开剪切板管理器,列出来我最近复制过的文本片段,我可以快速的选取这些文本片段或者输入部分字符来查找

435
图4.3-5

4.4 聪明又美丽的日历 — Fantastical 2

打开Fantastical 2的网站,你一定会被她漂亮的外表所吸引,最可贵的是Fantastical还很聪明,当你在日历里面新建一个提醒的时候,输入如下内容“HTML training at 7:30pm tomorrow alert 5 min”, 则Fantastical会自动将日期设置为明天,然后将开始时间设置为晚上7点半,并且提前5分钟提醒,是不是很聪明?

441
图4.4-1

4.5 来杯免费咖啡 — Caffeine

今天下午给大老板和重要客户演示PPT,你仿佛看到了升职加薪走上人生巅峰,当你打开MacBook接上投影仪,口若悬河的讲解,突然MacBook进入休眠模式了,画面太美了,我不敢想了。

你应该立刻安装这款免费的良心软件—Caffeine,设置开机启动,点一下状态栏的咖啡杯图标,当咖啡是满的时候,MacBook将不会进入休眠模式,再点一下咖啡杯空了就正常休眠,我默认设置开机启动,咖啡杯保持满满的状态。

4.6 快速切换和打开应用程序 — Manico

MacBook系统默认设置了一个快捷键来显示当前运行中的应用程序,同时按下tab + command,将看到如下图的样式:

461
图4.6-1

如果你想要却换到Firefox,需要再按一下tab,如果要切换到日历,需要按两下‘tab’,如果一次性打开10几个应用程序,你经常需要按十几下tab才能却换到想要的程序。

Manico专为这个场景而设计,安装好后打开,默认快捷键是按住option,如图所示,此时按下数字7就能快速打开编号为7地图

462
图4.6-2

另外,推荐设置Manico使用左手边的字母加数字做索引,方便仅仅用左手就能快速切换应用程序。在菜单栏点击Manico图标,打开Preferences..., 在AppearanceTab里面,选择Uses left hand areaUse numeric and alphabet

463
图4.6-3

4.7 随心所欲的复制粘贴以及无限想象 — PopClip

  • 日常工作中,你有多少次是从一个应用程序复制一段文本然后粘贴到另外一个地方?
  • 有多少次是复制一个网址然后打开浏览器粘贴到地址栏然后回车打开?
  • 有多少次是复制一个名词,然后打开浏览器找到搜索引擎来搜索?

这些重复的操作模式都是可以简化的,你唯一需要的就是PopClip,当你选中一段文字(如下图,选中“当日收益”),PopClip就会弹出来一个快捷操作栏,你可以复制,剪切或者粘贴,更为强大的是,PopClip提供了很多免费的插件,例如使用指定的搜索引擎搜索选中的文字,或者选中英文单词做大小写转换等等。

471
图4.7-1

需要注意的是,PopClip需要你的授权才能弹出快捷状态栏,直接点击Open System Preferences或者打开System Preferences,点击Security & Privacy图标,在PrivacyTab内,点击Accessibility,然后将PopClip加到右边的列表里面并且勾选前面的checkbook。(提示:你可能需要先点击右下角的黄色锁,输入密码后才能编辑右边的列表。)

4.8 增强资源管理器 — XtraFinder

MacBook自带的资源管理器(Finder)已经可以满足一般的需要,但是当你有大量文件维护操作后,你就需要一个更强大的Finder。XtraFinder完全集成到Finder里面,你根本感觉不出它是一个第三方的应用程序,同时还提供很多增强特性,比如:

  • 像浏览器那样的标签页(Tab)
  • 支持双操作面板(Panel)
  • 增强的全局快捷键,例如新建文件(New File)等
  • 多彩的侧边栏图标
  • 快速在当前文件夹打开终端
  • 快速在当前文件夹新建文件

481
图4.8-1

4.9 随心所欲的全键盘控制 – Shortcat

在系统设置里面,我介绍了全键盘控制模式,但是此模式只能做简单的按钮控制,无法达到随心所欲的控制。下面介绍一款比较geek的软件,Shortcat帮助你完全使用键盘来控制系统,供有键盘强迫症的同学使用。

491
图4.9-1

4.10 来杯鸡尾酒 — Bartender

如果你看到这里,相信你已经被我推(hu)荐(you)的安装了一排软件,你的系统状态栏已经人满为患,有时候会因为当前激活的应用程序的菜单比较多挡住你要点击的状态栏图标,这个时候你需要一个酒保来帮你调理一下状态栏,Bartender将是我推荐的最后一个日常使用的App,你可以自定义隐藏某些不常用的状态栏图标,特别适合处女座强迫症。

4101
图4.10-1

4.11 快速进入Shell

go2shell是一个对开发者来说非常有用的app, 使用它可以在Finder里快速进入shell环境.

图4.11-1

安装好以后, 打开Finder, 点击Finder上的图标即可进入terminal:

图4.11-2

4.12 快速录屏–QuickTimePlayer

QuickTime Player是一个自带的录屏软件, 你可以用它来录制视屏,音频,以及屏幕操作. 对于开发者, 可以用它来记录屏幕操作, 做成动态图或视频, 供其它人学习; 对于普通工作者, 可以用QuickTime Player录制PPT讲座视频.

4-12

4.13 好用的截屏工具-Snip

使用过QQ的朋友肯定用过上面的自带截图功能,非常好用, 支持添加圈,点,箭头甚至文字, 只要打开QQ, 任何时候都可以通过Ctrl+Command+a来截图, 但是本人平时不太常使用QQ, 截屏功能又非常常用,怎么办呢? 腾讯很贴心地把QQ里的截图功能完整地拆了出来, 成了一个新的App–Snip.

4-13-1

Snip完整地继承了QQ里截图功能, 设置为开机启动后, 任何时候都可以通过相同的快捷键–Ctrl+Command+a来截图, 此外,快捷键可以手动修改:

4-13-2

5. 开发环境配置

终于到了开发环境配置阶段,在配置开发环境前,建议先将OS X系统升级到最新版,同时去Mac App Store下载最新版的Xcode,然后使用下面的命令安装Xcode command line tools,这将为你安装很多终端下面常用的命令,将来很可能会使用到:

5.1 命令行终端Terminal

在用户界面没有发明前,终端Terminal曾经是计算机的唯一交互方式,就算到了今天,很多服务器仍然只提供终端登陆来操作,作为开发测试运维相关人员,在日常工作中合理使用终端将大大提高工作效率。

5.1.1 替换系统默认Shell — Oh My ZSH!

Bash作为大多数系统默认安装的Shell,大家都多少有所接触,Zsh和Bash类似都是一个Shell,但是Zsh更注重用户体验和与人的交互,OS X默认也安装好了Zsh,然而你想自己从头开始配置一个顺手的Zsh是比较浪费时间的,有人已经帮我们配置好了,这个流行的Zsh配置叫—Oh My ZSH!,直观的效果如下图所示,代码开源在github

5111
图5.1.1-1

  • 切换默认Shell到Zsh

Mac OS X默认已经安装好了Zsh,你可以打开终端,输入zsh --version来确认,如果没有安装,请参考这个文档

打开终端输入下面的命令,切换默认Shell为Zsh:

关闭终端重新打开后,你将默认使用zsh作为终端Shell。然而你会发现,终端并没有变得多酷炫,接着往下走,安装Oh My ZSH!

  • 安装Oh My ZSH!

打开终端输入下面的命令:

耐心等待一会儿,然后你就会发现你的终端变成了彩色的了。

5112
图5.1.1-2

你可以修改终端的Profile,选择深色背景profile,这样就比较炫酷了。如果你对默认的Oh My ZSH的配色不满意,请参考这里找到你喜欢的配色。

5.1.2 替换系统默认终端 — iTerm 2

如果你经常使用终端,那么推荐你使用iTerm 2来替代系统自带的终端。关于iTerm 2的特性,请看这里

这里我只介绍一个小技巧,我想设置一个快捷键假设为F12,在任意场合,我按一下快捷键F12就弹出终端,输入一些命令执行后,再按一下F12终端就自动隐藏,这对经常使用终端的人,例如经常ssh连接服务器的人来说实在太方便了。

设置过程如下:

  • 系统已经默认将F12分配给Show Dashboard,需要先取消这个设置。

打开System Preferences,选择Keyboard,切换到Shortcuts这个Tab下,点击Mission Control,取消对应F12的快捷键。
5121
图5.1.2-1

  • 打开iTerm的Preferences..., 在ProfilesTab里面,点击下面的[+]添加一个新的profile,为什么要新建一个profile?答案是为了定制将来弹出的终端样式和大小等等参数。新的profile假设命名为guake,(注:guake这个名称是为了向Linux下的Guake终端致敬),你可以自己任意起个名称,下面会用到。

5122
图5.1.2-2

再切换到WindowTab下,将StyleScreenSpace这3个值设置和下图一样。

5123
图5.1.2-3

再切换到KeysTab下,设置如下图所示的HotkeyF12。

5124
图5.1.2-4

现在你按下F12,就立即得到一个占满全屏的黑色命令行终端,再按一下F12隐藏终端,非常的方便。

5.2 终端下的命令管理 — Homebrew

Mac App Store你一定非常熟悉了,它可以帮你下载和安装大部分常见的软件。

在终端下,我们也需要一个App Store一样的管理程序,当你需要安装某个终端下的新命令的时候,这个程序可以帮助我们自动下载该命令以及相关的依赖,甚至在下载以后做必要的编译和环境设置。

Homebrew就是这样一款终端下的命令程序包管理器,安装非常简单,复制如下命令在终端下运行,按回车并输入密码后等待安装成功:

下面是安装截图:

521
图5.2-1

curl和wget是命令行下面常用的命令,其中curl已经默认安装在OS X中了,但是wget没有默认安装,下面演示如何使用Homebrew来安装wget。

下面是运行截图:
522
图5.2-2

5.3 终端下管理非终端软件 — Homebrew Cask

因为Apple不允许第三方的浏览器进入Mac App Store,如果你想要安装Google Chrome,只能去Google网站下载后运行安装文件。这一类App Store没有的非终端下的软件能不能享受Homebrew一样的命令行安装的便捷性呢?

Homebrew Cask就是这样一款终端下的程序管理器,它扩展了Homebrew,作为Mac App Store的有益补充,方便你快速维护日常软件的安装升级和卸载,复制如下命令在终端下运行,按回车后等待安装成功:

下面是运行截图:

531
图5.3-1

那如何使用Homebrew Cask来安装Google Chrome呢? 首先使用chrome作为关键字查找一下:

上面的命令运行后列出了4个候选项,很明显最后一个google-chrome就是我们要安装的,继续输入

下面只需要稍微等一会儿,最新版的Google Chrome就乖乖的安装在你的MacBook里面了。

5.4 Java开发环境搭建

5.4.1 安装Java和Maven

现在OS X没有默认安装JDK,如果你在终端输入java,系统会引导你到Oracle网站去下载,然后自己点击下载文件来安装,这个过程一点都不酷,而且不能自动化。现在你有了Homebrew Cask,只要输入如下命令,Java就可以自动安装好啦。

现在最近版本的JDK是1.8,Homebrew默认安装最新版软件,如果你要安装非最新版的JDK,那么去Oracle网站下载吧,Homebrew的多版本支持不是很好用。

同样的,输入如下命令来安装Maven最新版。

在开发中,你很可能会碰到这个错误java.security.InvalidKeyException: Illegal key size or default parameters,那是因为美国对出口软件加密算法长度的限制,你需要去如下链接下载补丁包:

补丁替换路径为${java.home}/jre/lib/security/,大约如下所示:

5.4.2 安装版本控制软件 — SmartGit & SmartSVN

如果代码就是生命,版本控制系统就是时光机。GitSubversion分别是现在最流行的2个版本控制系统,SmartGitSmartSVN分别是他们的一个第三方客户端,当然他们有很多第三方客户端,我觉得SmartGit和SmartSVN是最好用的。

5.4.3 安装和配置IDE — IntelliJ IDEA

IntelliJ IDEA作为最智能的Java IDE,推荐所有Java开发人员使用,你可以在这里下载安装文件,或者使用如下的Homebrew Cask命令来下载安装:

打开IDEA,推荐选择Darcula主题,快捷键映射选择I've never used IDEA, 一路确认下去进入主界面。

推荐使用版本控制客户端(SmartGit & SmartSVN)下载好源代码后,再使用IDEA导入源代码,原因是如果用IDEA来checkout源代码,一边checkout一边分析代码,对于有多个模块的Maven项目,IDEA动态检测Spring框架的配置文件可能会得不到及时而完整的依赖分析。

5421
图5.4.2-1

我们假设项目是基于Maven的,如下图,选择Maven
5422
图5.4.2-2

一路点击[Next]进入主界面,IDEA会帮我们自动检测到依赖的框架,如图IDEA发现我们使用了OSGI和Spring框架,点击[Configure],然后去除OSGI依赖,因为SOFA项目不是完全实现OSGI规范的,勾选Spring配置文件。

5423
图5.4.2-3

IDEA会在你首次导入一个项目的时候建立索引,耐心等待索引建立完成,之后的查找就会非常快速。

5.5 可视化版本控制客户端-SourceTree和Counerstone

5.5.1 SourceTree

SourceTree for mac是经典的可视化git客户端,支持创建、克隆、提交、push、pull 和合并等操作。SourceTree拥有一个精美简洁的界面,大大简化了开发者与代码库之间的Git操作方式,这对于那些不熟悉Git命令的开发者来说非常实用。