1. 概述

以前一直用的windows,后来公司发了mac之后,用了大半年,终于感受到mac系统作为程序员工作系统的优势。类UNIX环境、很多优秀的工具、强大的触摸板和手势让我外接显示器的时候,多窗口操作的效率得到大大提升。

这里简单对自己开发环境的配置做个介绍,分享给大家,主要从以下几方面来说明:

  1. 系统配置: 主要是为了关闭一些效果,减少散热;另外一些方便的配置可以提升效率
  2. 开发工具配置

以下是我的mac,用的2017款mac pro 带touch bar,平时外接2台4K显示器,P2715Q

2. 系统配置

2.1 关闭效果(MAC降温)

关闭菜单栏效果,减少资源占用和产生的热量
系统偏好设置->辅助功能->显示器,勾选以下两项

关闭dashboard
系统偏好设置->Mission Control

PS: 如果不外接显示器还可以把"显示器具有单独的space关掉"

2.2 提升效率

提升dock栏的弹出速度
打开终端输入以下命令

defaults write com.apple.dock autohide-delay -int 0

开启触摸板轻点即单机
系统偏好设置-> 触摸板

触发角
配置触发角,把光标移动到角落即可触发特定事件
系统偏好设置->MissionControl-> 触发角

可以根据自己的需要来设置

dashboard行数和列数修改
原来的dashboard里面太稀疏了,不方便查看,终端输入以下命令来调整行数列数,我这里是8列7行

defaults write com.apple.dock springboard-columns -int 8; defaults write com.apple.dock springboard-rows -int 7; defaults write com.apple.dock ResetLaunchPad -bool TRUE; killall Dock

2.3 一些小技巧

  1. 关于剪切:finder里面需要剪切的时候先command+c复制,粘贴的时候command+option+v即可完成
  2. 菜单返回上级的快捷键: command+[
  3. finder里面排序的快捷键:command+option+1(按照名字),command+option+2(按照类别)
  4. finder里面重命名: 直接回车即可修改

3. 开发环境配置

3.1 安装brew

# 安装brew
curl -LsSf http://github.com/mxcl/homebrew/tarball/master | sudo tar xvz -C/usr/local --strip 1
# 替换brew源
cd "$(brew --repo)"
git remote set-url origin https://mirrors.ustc.edu.cn/brew.git
# brew update 

中间如果遇到一些错误请自行google

3.2 安装zsh shell

默认bash shell不够好用好看,安装zsh

# 安装
curl -L https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh | sh 
# 创建配置文件(环境变量等信息以后都更新到.zshrc)
cp ~/.oh-my-zsh/templates/zshrc.zsh-template ~/.zshrc
# 启用zsh
chsh -s /bin/zsh

我用的主题是ys,效果如下,另外我的配置可以看gist

我的zsh配置增加了以下内容:

  1. jenv: 管理java版本,具体可以参考我的另外一篇文章[jenv来管理多个版本的java

](http://kaimingwan.com/post/gong-ju/jenvlai-guan-li-duo-ge-ban-ben-de-java)

  1. auto jump(建议用iterm2的自带历史命令搜索): 可以用于跳转到以前的历史目录,通过brew install autojump来安装,然后在zshrc里面配置即可.PS:其实用iterm2的ctrl+r搜索历史命令感觉更有效率
  2. grep color的设置
  3. 默认使用vim

PS: 默认开启vim的高亮和行号

  vi ~/.vimrc
  # 进入insert模式,在最后加二行
  syntax on
  set nu!

3.3 安装lrzsz

  1. 安装:brew install lrzsz
  2. iterm2配置: 参考iterm2-zmodem

4. 效率软件

4.1 bettertouchtool(必备)

买了正版,挺便宜的,但是功能强大到逆天,触摸板编程,用了这个软件才特别觉得mac的触摸板太好用。我主要用双击tap,还有双指滑动,配合command来使用,下面是我的配置:

4.2 alfread

我把spotlight的快捷键关了,然后把alfread设置了command+空格
系统偏好设置->spotlight->键盘快捷键

web search
这个我主要用他的feature里面的web search,可以自定义URL对应的关键字,以后直接输入关键字就能到相应的网站:

clipboard
在Feature里面的clipboard也挺好用,复制的记录都可以再使用,支持模糊匹配:

finder中直接打开iterm2
alfred 可以使用下面的工作流,在finder指定路径下直接打开iterm2,也可以直接在iterm2某路径下直接打开finder

https://github.com/LeEnno/alfred-terminalfinder

4.3 atext

alfread也有这样的文本替换功能snippets,但是我用了下无法使用,用atext来替换了,atext可以在任何窗口,只要你输入了特定的key,即把你替换成value,以下比较长的常用命令可以用这个atext非常好用。
具体可以参考官网:http://www.trankynam.com/atext/

4.4 其他开发软件

以下是我用到的一些开发工具:

  1. IDEA:主力IDE
  2. datagrip:数据库连接
  3. sublime: 文本编辑器
  4. virtual box:虚拟机,运行WIN
  5. eclipse:为了用MAT,MAT在high sierra上有BUG,只能用eclipse里面的插件了
  6. shadowsocksX-NG:科学上网
  7. postman: 接口测试工具
  8. wireshark: 抓包
  9. json wizard: 查看json
  10. edrawmx: 画图
  11. charles: HTTP抓包分析工具
  12. quiver: 笔记记录
  13. iStat Menus: 监控系统,比如温度啥的
  14. office套件、钉钉等