MacOS : 大前端必備姿勢(工作環境)

CRPER發表於2017-11-13

前言

加快剛入手MacBook的小夥伴上手速度…

其實對於熟悉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?

若是兼顧混合開發,安卓開發首選Android Studio, IOS開發首選XCode

具體可以參考Flutter for MacOS


姿勢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
複製程式碼

姿勢11: exa:更現代化的ls命令,用Rust寫的`

A modern version of ‘ls’. the.exa.website/

brew install exa
複製程式碼

姿勢12: 免費好用的系統維護工具

很多人去找什麼clean的付費版,其實國內的鵝廠還是挺良心的

-Tencent Lemon Cleaner : 監控和清除垃圾,省了兩個app的錢


軟體推薦

可以用 brew cask# , 付費用 $ 表示 , 免費則沒有任何符號, $$代表付費服務

  • motrix : 全平臺的下載工具,底層用的aria,速度賊快
  • KeepingYouAwake: 很讚的一個小工具,讓你的本本不被睡眠(時間可控)
  • VS Code - #: 非常棒的程式碼編輯器
  • MindNode2 - $: 思維導圖軟體,很簡潔,官方計劃年末升級到5
  • VMware Fusion- $/#: 非常好用的虛擬機器軟體
  • FileZilla - #: 開源免費好用的 FTP 軟體(全平臺)
  • DBeaver -$/# : 非常實用的GUI資料庫管理,支援多種資料庫
  • VirtualBox - # : 開源全平臺的虛擬機器
  • Camtasia - $: 知名的螢幕錄製工具,用來做視訊教程妥妥的
  • Magnet - $:視窗快速排版工具
  • eagle - $: 設計師必備,素材管理工具,很強大
  • Navicat permium - $: 全平臺的多資料庫管理工具(很強大)
  • SourceTree: 全平臺的 GUI git 管理客戶端
  • 智圖 : 騰訊出品的圖片壓縮平臺,有客戶端!!
  • Robo 3T: MongoDB資料庫的本地管理工具
  • 微信開發者工具:基於nw.js 的,但是隻打包了 win 和 mac 端!!不解
  • Trello - #/$$ : 辦公協助軟體,用過都說好..我單純用來做個人列表清單規劃(個人免費),有客戶端
  • Dr.Unarchive: 解壓縮軟體,類似 win 上的好壓,就是不知道有沒有後x(appstore 有)
  • wiznote - $$:全平臺的筆記軟體,十多年的國產老牌..值得信賴
  • Calibre - #: 很強大的圖書管理(全平臺),可以用來建立一個本地圖書庫
  • [Gifox](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....)這些, 功能大同小異(更多的是引數上的區別!!!)

軟體不在多,夠用就好... 有一些比較敏感的就不推薦了(世界那麼大,你不想看看!知識怎麼學習的快!) 倘若盲目的去找工具,裝那麼一大坨很少用或者基本不會用到.純屬浪費生命和電腦磁碟空間

MacOS : 大前端必備姿勢(工作環境)

相關文章