MacOS : 前端必备姿势(工作环境)

前言

用 Mac 有一段时间了,从一脸懵逼到轻车熟路...历经了多少"摩擦".

算是爬出来了...此篇的工作设备是(Macbook Pro 2017款,所以可能会说到 touchbar!)

其实对于熟悉Linux的小伙伴..MacOS 上手会更快;话不多说,直入主题.


快捷键篇

系统快捷键这种东西还需要写么? 官方快捷键文档 涵盖了文档操作,截图,窗口管理器等通用快捷键或者全局快捷键

  • touchbar : safari的 touchbar 可以定制,像网易云,QQ 音乐和 VSCode 这些都提供 touchbar 的一些功能快捷键
  • 调出 siri : Command-space , 长按
  • 调出 spotlight : Command-space , 一下(这是默认的,可以去配置那里关掉给 alfred用)

包管理器

brew 当之无愧为Mac下最好用的管理器. 各施其职, brew 用来安装redis,node这类带cli的程序; 而brew cask 是用来安装带GUI程序(图形化的程序);

brew可以当做类似 Debian 家族的apt-get或Redhat 家族的 yum

传送门 : brew

Bash可能会打印出来一大坨信息,一些没必要的我就删除不展示了.只说重要的...

用法:

/usr/local/etc/nginx » brew                                                         
Example usage:
  brew search [TEXT|/REGEX/]         // 搜索包
  brew (info|home|options) [FORMULA...]  // 查看对应的列表内包的信息或者主页这些
  brew install FORMULA...   // 最常用的,安装包
  brew update  // 更新源,就是索引包列表是否有更新什么的
  brew upgrade [FORMULA...] // 更新已经过期的包
  brew uninstall FORMULA...  // 卸载
  brew list [FORMULA...]  // 列出已经安装的包

Troubleshooting:
  brew config  // 打印当前的系统信息及环境信息
  brew doctor // 检测 brew 是否有损坏,配置文件是否丢失等
  brew install -vd FORMULA

Developers:
  brew create [URL [--no-fetch]]
  brew edit [FORMULA...]
  https://docs.brew.sh/Formula-Cookbook.html

Further help:
  man brew // 手册
  brew help [COMMAND] // 帮助
  brew home // 打开 brew 主页

这个能安装什么呢? 终端类的应用(就是有 cli 这些的), 比如jdk , node ,ruby,python,git;

差点忘记说了,用brew安装的一些服务如何启动重启这些呢? ,比如nginx ,

brew有一个服务的总控制器;看 bash 打印一目了然.

    brew services [-v|--verbose] [list | run | start | stop | restart | cleanup] [...]
 
    [sudo] brew services list  // 列出所有进程服务,包括运行,停止的!!!
    List all running services for the current user (or root)

    [sudo] brew services run formula|--all  // 运行对应的服务,不一定要登录!
    Run the service formula without starting at login (or boot).

    [sudo] brew services start formula|--all // 启用对应的服务
    Start the service formula immediately and register it to launch at login (or boot).

    [sudo] brew services stop formula|--all // 停止对应的服务
    Stop the service formula immediately and unregister it from launching at login (or boot).

    [sudo] brew services restart formula|--all // 重启对应的服务
    Stop (if necessary) and start the service immediately and register it to launch at login (or boot).

    [sudo] brew services cleanup  // 移除(结束)所有未使用的服务
    Remove all unused services.

传送门 : brew cask

这货已经索引的程序很多(也可以自己去提交), 谷歌浏览器,虚拟机,QQ 什么都有.

安装 brew cask 需要基于 brew , 终端执行 brew tap caskroom/cask;

看到tap是不是有一种熟悉感!没错,就是类似ubuntusudo add-apt-repository ppa:xxxxxx

也就是有些不在官方 cask 里面的,有第三方的软件源....不说废话,看看帮助文档

crper » brew cask help                                               


Commands:

    --version              displays the Homebrew-Cask version  // 当前的版本
    audit                  verifies installability of Casks // 检查是否可以安装,就是线上仓正常否!
    cat                    dump raw source of the given Cask to the standard output // 打印出你安装包的一些信息,包含卸载信息!!
    cleanup                cleans up cached downloads and tracker symlinks // 清除已经下载的缓存
    create                 creates the given Cask and opens it in an editor // 不用
    doctor                 checks for configuration issues // 检测配置文件
    edit                   edits the given Cask // 编辑包的信息,和 cat 的区别他是编辑的
    fetch                  downloads remote application files to local cache // 不言而喻,获取应用包到本地
    home                   opens the homepage of the given Cask // 打开 cask 的主页
    info                   displays information about the given Cask // 查看本地这个包的依赖和路径
    install                installs the given Cask // 最常用!安装
    list                   with no args, lists installed Casks; given installed Casks, lists staged files // 没有参数的情况下列出已经安装的所有应用
    outdated               list the outdated installed Casks // 查询已经安装的应用版本哪个过时了
    reinstall              reinstalls the given Cask // 重新安装某个应用
    search                 searches all known Casks // 搜索应用安装来源
    style                  checks Cask style using RuboCop
    uninstall              uninstalls the given Cask // 卸载brew cask 安装应用程序
    zap                    zaps all files associated with the given Cask



brew 推荐软件列表?没有,毕竟每个人喜好不一致;

比如 node有人喜欢用nvm ,我是默认使用 brew提供的最新包

python , php,redis我都是用最新的.用新不用旧..

若是brew cask,我倒是有几个推荐的

直接brew cask install wireshark这样就行

  1. wireshark --- 知名的抓包工具
  2. virtualbox --- 开源的虚拟机,我感觉够用了...
  3. postman --- 接口测试工具,必备
  4. alfred --- 快速跳转必备

咳咳,你觉得此篇文章就到此结束了么,不,还有一些姿势没说完...


工作流(花样姿势)

有了基础的包管理和服务管理,我们才能耍的更好

必要姿势: 允许安装任何来源程序

在 macos 10.12+开始,这个允许安装任何来源的应用功能就给安全机制(官方说为了安全,你信么!!)给屏蔽了...

但是有木有法子解开呢...我列出来肯定有了啦..姿势如下!

打开终端 -> sudo spctl --master-disable . 滴滴答答,输入你的管理员密码就解开了


姿势1: 快速预览

快速预览是 Macos内置的一个功能,就是你选中一个文件的时候,直接空格键(space)可以看到一些信息. 比如图片,文档!

但是内置的往往不够强大..万能的基友的社区就有人做了这么些插件来丰富快速预览;

传送门: quick-look-plugins;

装了这个可预览的功能起码丰富了一倍不止. 代码高亮,Markdown生成预览,excel,zip 包等等...


姿势2: 终端强化

内置的terminal说实在的,真不够友好...所以社区就造就了一个iterm2

传送门 : iterm2 : 提供了多套内置主题,可定制的东西多了.

你觉得我在推崇这个? 不不不,作为一个伪前端,有什么比用前端搞的终端更来的贴心....

这个,大佬们我推崇的是这个,看下面

传送门:** hyper **: 基于 electron搞得,高度自定义,配置就是一个 js(热更新),插件都是 npm 包,各种花样 style

1.x系列还有一些中文输入的 bug ,但是2.x 简直好用!!可以花时间去折腾下.用过都说好!

**好吧,丰富的定制化只是外在的..那么内在呢? **

我推崇的是这个(ZSH),有人说 fishshell!萝卜青菜各有所爱哈!

传送门: oh-my-zsh;

zsh推荐启用的几个插件(没有的都可以用 brew 安装):插件列表及介绍

打开.zshrc,找到 plugins 启用,名字就是插件,插件之间空格隔开

#必备的两个插件
brew install zsh-autosuggestions
brew install zsh-completions

复制代码
plugins=(git autojump node npm brew osx extract redis-cli autopep8 history last-working-dir

 pip python sudo web-search)

前几个属于必备的:

  1. git : 提供了丰富的 git alias
  2. autojump : 还在一直 cd xxx? 只要访问过的(会索引缓存路径),一键直达:j(autojump) xxx
  3. node : 打开 node api 文档
  4. npm : npm 智能提示
  5. brew: brew 的智能提示和补全

后面一些看着装了.有 python 和 redis,也有访问目录的,也有直接打开搜索引擎的


姿势3: 你喜欢 vim?

但又发现去配置一个成型的 vim 工作量太大,找各种各样的插件...

那么你可以试试这个...基于 neovim(自命是 vim 与时俱进的继承者) 基础上的傻瓜包

传送门: spacevim : 社区驱动的 vim 工作环境


姿势4: alfred

肯定会有人说系统内置的Spotlight不够用么? 能索引快速跳转的地方也很多

但是Alfred 的强大不仅仅文件的索引...而是可拓展性workflows;

传送门:workflows;

这货让Alfred的使用效率大大的提高;

这里我就推荐几个;

  • Dash : 快速索引跳转到 dash 手册的
  • CalireSearch : 索引 calibre 里面的书籍进行跳转
  • Github repos : 快速跳转到自己的一些 github 仓(需要配置 token)
  • NpmSearch : 快速搜索 npmjs.org 上的某个包,直接浏览器打开
  • StackOverflow: .so + question 筛选出问题列表,浏览器打开
  • Colors: 颜色处理

之前掘金还有人写了个搜索知乎的... 你动手能力够强也可以自己写一个工作流.


姿势5: 编辑器?IDE?


姿势6: 想看个本地视频,有什么播放器推荐!

足够强大,格式也丰富,功能比 appstore 一些付费的还多,除了稳定性还有待完善,其他完美了

传送门: IINA , 可以用brew cask安装brew cask install iina

姿势7: 修改 hosts?

会命令行的直接粗暴;

  • sudo vim /etc/hosts : 然后保存就行

那么有木有可视化工具管理!!有的..

传送门:SwitchHosts


姿势8: 快捷键有点多,有没有方便记忆的工具

有的,CheatSheet: 长按 Command 键即可调出应用程序的部分快捷键表(为什么是局部!因为有些 APP 的快捷键它读取不到)


姿势9: 如何远程控制协助!Mac QQ 木有这功能!

有时候遇到困难要抱好心大佬的大腿,怎么办!!

亦或者有时候看到一些菜鸟,心血来潮想"指点江山",怎么破!

这时候就需要这个闻名已久的软件了;

teamviewer: 全平台的远程会议或协助软件,非商用免费!!!!!!(你懂的)

macmac之间可以通过内置的远程控制来协助


姿势10: 让 MAC 更像 GNU ,命令行更加丰富

Coreutils - GNU core utilities The GNU Core Utilities are the basic file, shell and text manipulation utilities of the GNU operating system. These are the core utilities which are expected to exist on every operating system.

brew install coreutils

软件推荐

可以用 brew cask 用 # , 付费用

$代表付费服务

  • MindNode2 - $: 思维导图软件,很简洁,官方计划年末升级到5
  • FileZilla - #: 开源免费好用的 FTP 软件(全平台)
  • DBeaver -# : 非常实用的GUI数据库管理,支持多种数据库
  • VirtualBox - # : 开源全平台的虚拟机
  • Camtasia - $: 知名的屏幕录制工具,用来做视频教程妥妥的
  • Magnet - $:窗口快速排版工具
  • eagle - $: 设计师必备,素材管理工具,很强大
  • Navicat permium - $: 全平台的多数据库管理工具(很强大)
  • SourceTree: 全平台的 GUI git 管理客户端
  • 智图 : 腾讯出品的图片压缩平台,有客户端!!
  • Robo 3T: MongoDB数据库的本地管理工具
  • 微信开发者工具:基于 electron 的,但是只打包了 win 和 mac 端!!不解
  • trello - $$ : 办公协助软件,用过都说好..我单纯用来做个人列表清单规划(个人免费),有客户端
  • Dr.Unarchive: 解压缩软件,类似 win 上的好压,就是不知道有没有后x(appstore 有)
  • wiznote - $$:全平台的笔记软件,十多年的国产老牌..值得信赖
  • Calibre - #: 很强大的图书管理(全平台),可以用来建立一个本地图书库
  • [Gifox](https://gifox.io/ - $): 很喜欢这个 GIF 录制工具,小巧美观,也很便宜
  • Dash - $$ : 很全面的手册汇总
  • charles - $$ : http 的抓包分析

对于PS 全家桶ms office 全家桶这些就看人下载了.网上也有和谐的姿势(你懂的!)

像** QQ,优酷,腾讯视频,有道词典,QQ音乐,网易云音乐**这些, 在App store也有(部分应用可以直接brew cask), 但是啊,这里的版本可能不如他们推送的快.还有可能会有部分的功能限制.

macos 也可以编译安装一些软件的!!!!

也有可能想说 markdown这些的工具呢? VSCode 或者 Atom结合插件来写 markdown 我感觉已经很不错了,可以做到各种高亮,快捷键补全,导出 PDF 等.

有人说我喜欢做事有安排!有没有清单类的应用!有挺多的,但是感觉毫无卵用. 内置的待办事项(适合当天)+邮件里面的日程安排(重复,未来,整天的行程安排)已经完美了..


总结

哦,对了...有人可能也想知道 Linux或者 unix 的命令能不能直接在 macos 使用; 早期的 mac 是基于 bsd 搞的,所以有一定的 unix 血统... 虽有部分命令相同,但是还有一些参数上的差异.

还有一些需要额外去安装,比如 wget,htop这些

双方都有的命令(mv,cp,history,file,more....)这些, 功能大同小异(更多的是参数上的区别!!!)

软件不在多,够用就好... 有一些比较敏感的就不推荐了(世界那么大,你不想看看!知识怎么学习的快!) 倘若盲目的去找工具,装那么一大坨很少用或者基本不会用到.纯属浪费生命和电脑磁盘空间

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏北京马哥教育

22款神奇的Ubuntu软件,帮你的系统成为全场最佳

? 作者:PentonBin 来源: https://www.zhihu.com/question/19811112/answer/132006027 先讲一...

4015
来自专栏知晓程序

只要 5 分钟,让你立刻拥有自己的小程序 | 知晓云

Hello,各位知晓程序的读者们,我是犯迷糊的小羊。目前是 ifanr 的一只前端攻城狮,同时也是知晓云团队的一员。

1333
来自专栏静晴轩

大前端神器安利之 Puppeteer

Puppeteer(中文翻译”木偶”) 是 Google Chrome 团队官方的无界面(Headless)Chrome 工具,它是一个 Node 库,提供了一...

6366
来自专栏Windows Community

UWP 手绘视频创作工具技术分享系列 - 手绘视频导出

手绘视频最终的生成物是视频文件,前面几篇主要讲的是手绘视频的创作部分,今天讲一下手绘视频的导出问题。主要以 UWP 为例,另外会介绍一些 Web 端遇到的问题和...

3916
来自专栏用户2442861的专栏

必不可少的Firefox插件

Adblock Plus 去广告,包括youku的开头广告 All-in-One Sidebar 最大的好处就是省去书签栏 NoSquint :用firefo...

3761
来自专栏不二小段

【一起学Python】STEAM游戏评测爬虫

别催更,越催越懒得写。催更只接受赞赏…可惜我的微信还没有赞赏的功能… 今天刚接的需求&新鲜的代码… 有个大佬昨天跟我说 来给我爬一下Steam的游戏评测吧,我...

1.1K6
来自专栏轮子工厂

有哪些实用且堪称神器的Chrome插件?吐血推荐!!!

相信很多人都在使用 Chrome 浏览器,其流畅的浏览体验得到了不少用户的偏爱,但流畅只是一方面, Chrome 最大的优势还是其支持众多强大好用的扩展程序(E...

2.7K4
来自专栏FreeBuf

这玩意据说是“最先进的USB攻击平台”,只卖99.99美元

渗透测试人员其实都知道,只要能够直接接触到目标设备,并且选对了工具,那么任何设备都会成为“待宰的羔羊”。 早在2005年,Hak5就已经研发出了一款简单又暴力的...

2846
来自专栏逸鹏说道

漫谈前端优化

近几年,移动端站点和app、手游井喷式的发展,大大出乎了当初从业者的预料,2010年前后中国还处于3G网时代,各种3G宣传铺天盖地,如果你稍稍回忆一下,那个时候...

3649
来自专栏一个番茄说

iOS 开发安全那些事儿

​ 随着移动互联网的普及,被越来越多的心怀不轨的人觊觎,也越来越多的安全问题暴露了出来。开发者开发出来的应用被安装在设备上之后,用户并不具有专业的安全知识。...

1013

扫码关注云+社区

领取腾讯云代金券