logo
2 min read

客製 Mac 的 CLI

logoon mac, 環境設定

UPDATE:

後來我改用 prezto 來取代 ohmyzsh,功能跟佈景主題比較少,但啟動速度較快.

Further Update:

再後來就用純 zshrc + zshenv 改了。可以參考 我的 dotfiles


之前答應的事欠很久,就用這篇來還吧。

身為 Ruby/Rails 開發者,每天跟 Command Line Interface (CLI) 混在一起是再正常也不過的了。

之所以買 Mac,就是因為 Mac 的 CLI 跟 Windows 渣一般的命令提示字元不是同一個等級的東西。即使如此,要是每次打開內建的終端機,都看到是下圖這個樣子,也很難不心生畏懼一下的。

Original OSX CLI

既然是每天拿來吃飯的工具,我自己用了 iTerm2,Oh My ZSH,再選一個喜歡的 monospace 字體,把它弄成這樣:

Prettier OSX CLI

monospace 字體

好用的 monospace 字體其實蠻多的,可以從這裡挑一個。基本上就是 1lI0oO 要分的清楚,其它就是個人喜好了。我目前用的是 Source Code Pro,之前則是 Bitstream vara sans mono

iTerm2

iTerm2 不是必要的,但它提供了原生的 Terminal.app 所沒有的幾個好用功能:

  1. command + click to open file
  2. Split pane view
  3. Hotkey Instant terminal anywhere
  4. Highlight word when searching
  5. Mouseless copy
  6. Paste history

官網下載後解壓縮,然後丟到 Application 裡。

執行 iTerm2,到 Preference 改 Profiles => Default => Text 選擇你剛裝好的字體。

進階自訂選項

SMYCKrailscasts theme 都是蠻不錯的配色。下載後點兩下匯入,再去 Preference 改 Profiles => Default => Colors。

oh-my-zsh

oh-my-zsh 讓你可以不用再辛苦的手刻 config file,就內建一堆好用的 plugin(*註), 還提供一堆主題讓你挑選。因為我比較喜歡 zsh 的補完功能,如果你還是想用 Mac 預設的 bash,bash-it 看來可以做到類似的事。但因為我沒用過,所以請自行踩雷。

安裝 oh-my-zsh 的方式,就是打開剛剛裝好的 iTerm2 ( Terminal.app 也可以),貼上這行指令:

curl -L http://install.ohmyz.sh | sh

更多 Oh My ZSH 的設定可以參考 RailsCasts 的影片

進階自訂選項

zshthem 挑一個順眼的主題,記下上方的名字。(裡面沒有列出全部可用的主題,像是很多人愛用,但是需要特殊字體的 agnoster)。我用的是 af-magic。

修改 ~/.zshrc ,把 ZSH-THEME="xxxxx" 的xxxxx改成你剛剛記下來的字,儲存。然後回到 iTerm2,輸入 source ~/.zshrc


提醒

  • ~/.zshrc 底下的 plugins="(.....)" 千萬要慎選。看清楚 ~/.oh-my-zsh/plugins/ 裡的相應的檔案內容。我曾經被 bundler plugin 搞掉好幾個小時。

  • 指令上色是用 zsh-syntax-highlighting 做的。 想要的話就參考連結裡的說明。