一个前端开发者的mac装机清单

我是一名前端开发工程师,最近入手了一台MacBook Pro,以前用的是win10,上面却是跑着一个mac虚拟机。。对于mac的操做基本仍是从零开始。趁机捂着脸赶忙捡起博客!!很久很久没写博客了。。真是要不得!!
P.S.mac真心棒啊。。屏幕超级喜欢啊。。已经脱离鼠标啦。。但是也真是贵啊。。。-_-php

装机必备软件

iTerm2

听说是mac下面最好用的命令行工具。
由于后面不少软件的安装要依赖命令行,因此把这个放前面了。我的使用感受确实比自带的要方便。不过我主要用的也就是几个快捷键和cmd + t建立同学口下的标签页。毕竟主要工做不是在终端下面,若是有显示器分屏的话应该还好些。我还从这个网站下了主题,,后来发现有了oh-my-zsh以后就用不上这个主题了。。
更多信息及快捷键请参考: 这个html

Homebrew

包管理工具。相似于node下的npm。能够用来安装管理大部分的无界面的工具,如node,git,Python等。
摘自官网的安装命令:前端

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Homebrew Cask

至关于homebrew上面的一个扩展,装这个以后,能安装大部分有界面的软件,如QQ,teamviewer这种。
其实不安装也能够安装那些软件,可是要麻烦一些。输入软件以前要先搜索出软件的路径,通常都在caskroom下面。。
摘自官方安装命令:java

brew tap caskroom/cask

git

开发者必备。也是众多安装方法的依赖。node

brew install git

zsh

被誉为终极终端的终端。在bash的基础上改进了一些实用的功能。详细(中文)介绍请戳这里
mac中自带zsh,可是好像不是最新版本,因此我用brew install zsh升级了一下。
可是这个时候你的iTerm2用的仍是原来系统自带的bash,这个时候能够输入如下命令切换成zsh:linux

chsh -s /bin/zsh

oh-my-zsh

光用zsh是不够的!你还须要一套综合的管理工具~~它让zsh复杂的设置变得简单~摘自官方安装命令:android

sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"

安装好了以后编辑配置文件(我装了atom,因此用atom打开了):webpack

atom ~/.zshrc

在这个文件中能配置主题插件,还能自定义别名。
我看了下github上的主题,也体验了下默认的主题,感受默认的还能够,就暂时没换。
个人插件配置:ios

plugins=(git brew npm svn node osx autojump)

其中autojump须要brew install autojump来安装。具体有哪些插件以及这些插件的功能请打开上面的超连接本身去查看。 nginx

配置中的别名配置是我感受超好用的。好比:

alias ll='ls -l'
alias ibi='ionic build ios'

下次敲这些命令的时候直接用别名就能够了。

oh-my-zsh还有不少其余配置,在配置文件中都有注释和例子。参考连接:这个(知乎)这个(简书)这个

shadowsocksx

额。。这是经过shadowsocks科学上网的工具。。。关于这个改天我会专门写篇博客。这个东西是跨平台的,我从年初就开始在用。先是买帐号,用了两个月本身就在亚马逊的云平台上搭了个服务器,用本身的帐号。比VPN好用。

SwitchyOmega

说到shadowsocks就不得不提SwitchyOmega了。这是chrome上的插件。额。。好像还没说chrome,,由于感受Safari自己也很好用,若是不是开发人员不必非用chrome。。因此打算下个大目录下放chrome的(不知道Safari中有没有这个插件,个人连接是chrome的)。。
shadowsocksx自己有全局模式和pac模式,当处于pac模式的时候,你访问一个网站他会先去pac文件中查找这个网站需不须要走科学上网的途径,若是须要,才会经过代理服务器去访问。可是有一些网站理论上是没有被GFW关注的,可是国内的网络访问它就是慢,代理服务器反而快一些。这个时候你确定也想走代理服务器啊。。可是若是没有SwitchyOmega的话,你就只能打开全局模式或者手动改pac文件了。。可是pac文件是要更新的,你不可能每次更新就改一次啊。。
这个时候就轮到SwitchyOmega出马了。它本身有pac文件,当他判断你当前的网页网址在pac中时,会访问shadowsocksx软件的默认代理127.0.0.1:1080,经过这个默认代理来科学上网。若是不在,你能够经过这个插件向pac中添加规则,来达到在shadowsocksx不是全局模式下一科学上网的形式访问这个网址的效果。
个人配置图以下:
SwitchyOmega
注意这个代理协议,我在Windows10中使用的时候代理协议选的是http,这是由于在Windows下,迅雷最近的版本中某个代理影响了shadowsocks对socks5协议的使用,因此在Windows下选socks5会常常失效,而在Windows下的shadowsocks客户端默认经过privoxy转换提供了一个http协议的代理。因此Windows下采用http协议仍然能用。然而我同步到Mac上就不能用了。。一开始我还觉得是shadowsocksx的问题。。

proxychain

因为shadowsocks是基于socks5协议的代理,因此当你的软件没有内置支持socks5协议的代理配置时,它是不能为这个软件提供科学上网服务的。因此若是你想让你的mac上除了浏览器其余的软件(好比命令行终端)也能科学上网时,就要想办法帮他转换成http代理。这种想法当你在iTerm2中用brew安装软件或者环境时就变得十分迫切。
以前说的在Windows上的软件privoxy也有mac版本, 可是我没有选择它。更强大的还有proxifier
我选择的是proxychain,由于shadowsocks的wiki上示例就是这个。(shadowsocks系列工具的做者被约谈以后整个项目就剩这个wiki了。。。)安装命令:

brew install proxychains-ng

而后打开它的配置文件:

atom ~/.proxychains/proxychains.conf

个人配置(也是扒的wiki的):

strict_chain
proxy_dns 
remote_dns_subnet 224
tcp_read_time_out 15000
tcp_connect_time_out 8000
localnet 127.0.0.0/255.0.0.0
quiet_mode

[ProxyList]
socks5  127.0.0.1 1080

嗯,这个配置基本OK了。可是你会发现还不能用!你照着官方的示例

proxychains4 curl https://www.twitter.com/

会发现不能用,提示好像是file not found。。当时我也是一脸懵逼的。。在万能的Google上查了下,发现是osx10.11以后才出现的问题。在该项目的issue中已经有人提了。也说了解决方法。

  1. 首先,点击右上角的小苹果,重启电脑。重启的时候按住键盘上的cmd+r进入recovery mode。
  2. 进入恢复界面以后,点击左上角的工具,启动终端shell。
  3. 在终端中输入csrutil disable; reboot,而后回车。

而后在重启以后的电脑中输入csrutil status,看到有enabled就OK了。
这时候再去实验下:

proxychains4 telnet www.twitter.com

应该是没问题的。
这只是让命令行中的命令科学上网。让其余软件科学上网是同理的。好比:

proxychains4 open -a Thunder

这个时候会打开迅雷(若是你电脑装了的话),若是用这个迅雷下载东西,走的都是shadowsocks的代理。
可是打开有的软件会崩溃失败。。不知道为何。。
同时比较方便的是:

proxychains4 zsh

这样接下来你用zsh执行什么命令都是经过代理的。我把这个命令起了别名放到了~/.zshr

alias pxyzsh='proxychains4 zsh'

说的有点啰嗦了,,应该放到关于shadowsocks的博客中的。。。怪我以前过久没更博客。。。。。。
参考连接:这个(privoxy)这个

Thunder

上面提了迅雷、、下载种子或者磁链仍是有必要的。在Windows上使用的精简版,没有mac版本的。这个也还好,提供了浏览器插件,可是在Safari下好使在chrome不能使用。看到网上也有提这个问题的,但没有解决方案。哪位仁兄知道怎么解决记得评论下我啊。。

brew cask install thunder

P.S.相似这种平常软件我就不往上列举了,好比QQ, 微信,网易云音乐等等。。用brew cask就能安装。

keka

压缩/解压缩工具。有图形界面,可是基本也看不到。选择它是由于免费,支持格式多,中文不乱码。

brew cask install keka

欧陆词典

这个在APP store能搜到。有免费基础版。单词功能比有道更强大,有词根助记之类的。可是以前在Windows下用有道是由于他的生词本会根据艾宾浩斯来考研你的生词掌握状况,感受这个比较科学和方便。然而在mac下的有道没有这个功能。。

CleanMyMac 3

额。。这是一个收费软件。因为预算有限,买的256G的,因此硬盘空间就比较重要了。。我就下了这个,,能清理垃圾文件,好比系统无用的字体,缓存等。还有app卸载器,通常卸载后用户文件和配置要手动去删除,用了这个卸载器卸载不须要手动删除。
P.S.连接是正版的连接。

iStat Menus

用它主要是能看到当前网速和CPU使用状况。他会在电脑右上角的menu中加几个状态。
这个我用了网友分享的注册码

MPV

这是个视频播放软件。开源,前身是MPlayer和mplayer2,你可能像我同样也没听过这两个鬼,只须要知道也有点名气就是了~在mac上播放高清视频是比较难的一件事,没有Windows上那么成熟的解决方案。系统自带的播放效果能够,可是只支持不多的几种格式。经过看评测锁定了这个mpv和Moviest,可是Moviest是收费的,因此最终选择了这个。

brew install --with-bundle mpv

安装过程当中好像有报错,,好像须要安装xcode-select --install
安装mpv会自动安装不少依赖,要等一会,建议用proxychains4执行命令。安装成功后执行:

brew linkapps mpv

这样启动图标就被链进launchpad了,,虽然并不怎么用它启动。。
接下来是配置。官网提供了超多的配置。。配置文件都在~/.config/mpv/文件夹下。分为几种mpv.conf是播放器主要配置,input.conf是快捷键配置,lua-settings/osc.conf是播放器控制界面相关的配置,scripts/文件夹下是加–script参数播放时执行的脚本,经过这些脚本能够作一些带有选择性的配置,好比用电池播放用什么配置,用电源播放用什么配置等等。。配置太多了,我没有详细的一一去查看,粗略的看了下文档和别人共享的,下面把个人mpv.conf和参考资料共享出来。

#mpv.conf
# Video
profile=opengl-hq
hwdec=videotoolbox
display-fps=60
autofit-larger=98%x90%
autofit-smaller=30%x30%

# Volume
volume=100
af=drc

# OSD
osd-bar-h=1.5
osd-border-size=2
osd-color='#CCFFFFFF'
osd-border-color='#99000000'
osd-duration=2000
osd-font='PingFangSC-Regular'
sub-font='PingFangSC-Regular'
# Font pre El Capitan
#osd-font='STHeiti'
#sub-font='STHeiti'

# No window border
no-border

# Screenshots file name
screenshot-template=~/Desktop/mpv-screenshot-%n

# Save the current playback position on quit and resume on next run.
save-position-on-quit

# load config file from file directory, useful for overriding ass styles for entire series
use-filedir-conf=yes

# Subtitles
sub-auto=fuzzy
sub-font-size=48

#choose the default subtitle to chineses
lang=zh,chi
#for GB2312 GBK BIG5 charset, use enca convert them to utf8
sub-codepage=enca:zh:utf8

# Youtube
ytdl

input.conf就不贴了,就是改了几个快捷键。
这是官方的mpv.confinput.conf
参考连接:这个这个

you-get

这也是个神器,恰好配合mpv!!这个工具主要是检索指定连接资源内的视频or图片,下载下来或者直接用播放器播放。其实mpv的依赖是装了相似的工具youtube-dl的,可是播放国内网站如优酷并不能用。。这个you-get却能够。
用这个工具最主要的缘由是mac对flash的支持极其不友好。。而国内不少网站的pc端用的仍是flash,这就会致使用mac看的时候电脑CPU占用骤增,电脑变热,风扇都听获得声音了。。用这种方式能避免这个问题。
安装命令:

brew install you-get

官方的中文wiki说明,简单易懂~也能够手动的you-get help.
举个栗子~

you-get -p mpv http://www.iqiyi.com/v_19rr9ezldc.html?vfm=2008_aldbd

Airmail

以前在用mac自带的mail.app,感受能用,可是有两个缺点:

  1. 收发邮件速度很是慢。
  2. gmail邮箱常常连接失败。即使我开了科学上网。

在网上找了找,找到了这个邮件客户端。颜值很是高,可是听说中文搜索功能作的很差,我试了几个关键词,感受还能够。。收发邮件不是特别多的能够考虑。

Aria2

增长于2016.11.23

这是一个十分好用的下载工具。
优势:多线程多连接加速,可满速下载网盘资源,支持常见下载方式,占用资源少。
这个标题超连接是链到我另外一篇博客的,详细介绍及使用帮助请看那篇文章。

前端必备

我靠终于写到前端工具了!!!6000字了。。老子要写死了。。╭(╯^╰)╮12点半了,先睡觉了,,明天接着写!!!

嗯,,又来接着写了。。这几天还攒了一些解决的问题,也得找时间写上。

WebStorm

嗯,虽然atom、sublime党吵得叮当响,但是我仍是以为编辑器装了插件也没有IDE好用。除非这些插件都是你本身开发的。这些能方便快捷的安装插件的编辑器好处就是能本身折腾插件,可是插件质量参差不齐,并且也不会彻底符合本身的需求,除非你本身去修改插件的实现。我如今是没那个时间。并且WebStorm我以为是真心不错。这也是家特别棒的公司,旗下的IDE工具都很出色。还记的当时第一次接触idea的时候,感受eclipse简直弱爆了。。。
上面连接到的是官网,也能够命令行安装:

brew cask install webstorm

分享一个能激活的server:http://52.193.81.32:41017
这个是网友写的服务程序,跑在个人服务器上的,这台服务器运行到明年四月,会不会续费仍是未知。
P.S.请有能力的童鞋尽可能支持正版,不管是图书、影音仍是软件做品。我本身也朝着这个方向在努力。
哦,忘记说了。若是你是Windows的WebStorm用户转到mac平台,导入setting.jar的时候,千万别选快捷键设置!!!否则你发现它全部的快捷键还都是ctrl的时候会一脸懵逼的。。

Atom

相比于sublime,这是新近兴起的编辑器工具。由github那帮人捅咕出来的,开源,暂时免费,能够本身捅咕插件,作想要的扩展。然而到目前为止我都还只是用别人写的。。。关于它有哪些好用的插件也能写篇博客了。。。
不过这货还不成熟。跟他的老大哥sublime比还有不足。打开大文件会慢或者卡死。在Windows下表现就更糟糕了。。。
说到底,个人助理编程工具仍是WebStorm,它仍是只用来打开单个文件。[微笑脸]
我安装的插件截图:
atom的插件
P.S.改天可能会详细写用途。但感受仍是没有IDE好用,可是适合去折腾。话说去截这个图的时候Atom还卡死了一次。。。什么鬼。。。

chrome

其实感受Safari也挺好用的,尤为它的标签页管理功能。但做为一名前端工程师,怎么能不用chrome呢~chrome的优点在于插件齐全,全平台同步插件和我的资料。调试模式能模拟手机浏览器。
装了chrome顺便看下mac平台下的快捷键吧:

https://support.google.com/chrome/answer/157179?hl=zh-Hans&ref_topic=25799&visit_id=1-636137440736950726-2203571685&rd=1

改天一点要写篇安利下我装了哪些插件的博客!

Node.js

说Node.js开启了前端开发者的新时代真的不为过。不管有没有Node.js的项目,都要安装Node.js。可是有Node.js项目的能够安装nvm做为Node.js的版本管理器,防止新老版本切换出问题。
安装了Node.js以后,用它自带的npm包管理器去安装前端开发一系列的依赖环境,须要什么安什么,我就不一一列举了。记得命令行前加sudo

sudo npm i webpack -g

若是你用了上面的proxychain实现了命令行的科学上网,最好走这种代理进行npm下面一系列的安装,由于感受网速一直都不太稳定。
若是你没有进行科学上网,那么请先安装cnpm,他是淘宝的npm镜像,每十分钟同步一次,命令行跟npm基本一致,速度在国内没话说。
写到这里忽然想到前段时间Facebook退出了一套包管理系统Yarn,解决了npm一系列的痛点,不过暂时还没用到。

TeamViewer

Mac上的QQ不能远程共享,因此若是你要帮朋友看程序或者修电脑可能就要用到这个了。比QQ更稳定更流畅。

Microsoft 适用于 Mac 的远程桌面链接客户端

先贴下这货的地址,用连接跳过去会丢参数。

https://www.microsoft.com/zh-cn/download/details.aspx?id=18140

请粘贴打开。这是Windows上系统自带的那个工具。因为公司有的服务器用的是Windows系统,远程也一直用的这个工具,因此我下了这个。
相关连接:这个

Dash

这货是个API文档阅读器,提供了大多数开发文档,相中哪一个下哪一个。也有一些网友作的文档。好处是文档集中管理了,而且排版格式还不错,提供的搜索功能也挺棒!
Windows上也有相似的,VelocityZeal,好像一个很卡,一个下文档很慢,体验都不太好。可是那是去年的事了,当时感受体验很差就没再用了,如今不知道怎么样了。

Cornerstone

这是一个在mac上的带图形界面的SVN版本管理工具。并且是十分优雅的界面。mac中自带SVN命令行工具,敲命令行彷佛也更适合程序员,可是我仍是以为是这些优美的图形界面让个人生活丰富多彩。[微笑脸]
我用虚拟机中的mac时是敲命令行使用SVN的,但那真的是虚拟太卡,点开个软件得等半天,真心带不动。如今有条件了确定要换更好的方式~

SourceTree

带图形界面的git管理工具。这个好很差呀真不是很了解,可是看到不少人推荐,先写在这里吧。

Parallels Desktop

这个是mac上面的虚拟机。感受不免用的Windows才能用的软件,并且做为前端开发可能要调试IE浏览器,因此装了个虚拟机。mac下也有VM虚拟机,还有个免费的VirtualBox,可是看评测体验和性能都没有这个好。
这里有个福利,告诉你怎么能获取一年的体验激活码。我试了,还没到是个工做日,不知道能不能拿到,回头在这里补上结果。


离我填写这个调查问卷已经有11个工做日了,至今没有任何回复的邮件。我当时填了两次用了两个公司邮箱,目测这个方法是无效的。默哀一分钟。

其它

xcode

这个不上连接了,去App Store下去吧。。网速慢够下一会了。由于我有时候作hybrid app要编译iOS和Android端的app,因此要安装这个工具 。
想起以前还在用虚拟机的时候遇到的一个问题。个人app以前是用xcode7编译的,后来系统升级(虚拟机也能升级。。),带来了xcode8,用xcode8编译新版本,那些安装了老版本的就不能升级安装新版本的app!能下载就是不能安装。之前没发生过这个问题。而后删除了老版本的就能安装新版本了,而且再更新基于xcode8打包的app也能更新了。这是什么缘由?求大神解答。。

Java

额。。这个是为了安装Android-SDK作准备的。之前我是写Java的,可是很久不写了。
命令行输入:

java

系统会打开相应地址,自动安装。

Android-SDK

须要这个的理由同上,,我是经过brew安装的:

brew install android-sdk

可是注意,这其实只是安装了sdk管理工具。尚未安装platforms和tools。
想安装那些有两种方式:

  1. 经过android help命令查询安装方法,经过命令行安装。
  2. 经过android sdk打开sdk管理器的界面,在上面选择你要安装的版本进行安装。

后记

啊啊啊啊啊,终于写完了。。之后有好东西会陆续补近来。有好多话想说,就不在这里白话了,写到对应的版块去~晚安。


想起来要推荐两个连接。。

推荐一

这个是appshopper的网址,用邮箱注册,而后将你指望的app加入你的愿望清单,等app降价的时候会给你发邮件提醒。
虽然穷,但也尽可能支持正版啦~~

推荐二

这是github上的一个名为Best-App的项目清单,有推荐mac、ios、Android三个平台的收费和免费的app,能够参考下。