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

送分小仙女□ 提交于 2019-12-07 01:13:50

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

装机必备软件

iTerm2

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

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下面。。
摘自官方安装命令:

brew tap caskroom/cask

git

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

brew install git

zsh

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

chsh -s /bin/zsh

oh-my-zsh

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

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

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

atom ~/.zshrc

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

plugins=(git brew npm svn node osx autojump)

其中autojump需要brew install autojump来安装。具体有哪些插件以及这些插件的功能请打开上面的超链接自己去查看。

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

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,可以参考下。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!