前幾天發(fā)現(xiàn)同事的終端窗口(terminal)比較漂亮,于是我就問了一下原來是安裝了oh-my-zsh,于是趁著今天周日我就開始折騰了,現(xiàn)在把這個(gè)過程記錄下來分享一下。開始之前先上兩張圖來體現(xiàn)一下目標(biāo)與現(xiàn)狀
這就是今天的目標(biāo),假設(shè)你不喜歡這個(gè)界面,那也沒關(guān)系,oh-my-zsh有140多個(gè)主題,任君選擇,當(dāng)然你也可以定制自己的主題。
這個(gè)是我現(xiàn)在的終端窗口界面,好像也不難看,但是太單調(diào)了感覺。
I. 安裝oh-my-zsh
安裝是有一些先決條件的:
- Unix-like操作系統(tǒng)(如 macOS, Linux)
- 確保Zsh已安裝,且是v4.3.9及以上版本,可通過命令
zsh --version
確認(rèn),我現(xiàn)在的版本是zsh 5.2 (x86_64-apple-darwin16.0)
,如果你沒有安裝或者版本過低,請(qǐng)點(diǎn)這里 Installing ZSH - 已安裝curl或者wget(我的mac系統(tǒng)默認(rèn)已安裝了curl)
- 已安裝git
根據(jù)你自己的情況在終端執(zhí)行如下命令進(jìn)行安裝:
通過 curl 安裝(我選擇的方式)
sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"
通過 wget 安裝
sh -c "$(wget https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"
安裝過程中有一個(gè)步驟需要輸入密碼(是切換默認(rèn)shell解釋器的命令需要授權(quán)chsh -s /bin/zsh
,因?yàn)槲业膍ac默認(rèn)shell解釋器是bash,所以要切換到zsh),你可以通過cat /etc/shells
來查看你的機(jī)器安裝了哪些shell解釋器,到這oh-my-zsh安裝完成,終端界面已經(jīng)發(fā)生了改變,使用了默認(rèn)的主題(robbyrussell)。
II. 切換主題
使用vi編輯器打開~/.zshrc
這個(gè)文件
vi ~/.zshrc
將
ZSH_THEME="robbyrussell"
改為
ZSH_THEME="agnoster"
后保存,然后執(zhí)行
source ~/.zshrc
III. 配置顏色方案
我采用的是 Solarized Dark 配色方案。
- 首先你需要Solarized下載配色方案,可以在執(zhí)行如下命令通過git來下載(你也可以直接到這個(gè)網(wǎng)址下載你想要的文件:https://github.com/altercation/solarized)
git clone git://github.com/altercation/solarized.git
這樣在你執(zhí)行這個(gè)命令的目錄就會(huì)創(chuàng)建一個(gè)solarized文件夾,我們要的配色方案就下載這里面,按照如下步驟導(dǎo)入/solarized/osx-terminal.app-colors-solarized/Solarized Dark ansi.terminal
這個(gè)文件。
導(dǎo)入完成之后,設(shè)置為默認(rèn)的描述文件。另外還需要設(shè)置一下啟動(dòng)時(shí)使用的的描述文件為“Solarized Dark ansi”,設(shè)置完成后關(guān)閉終端重新打開。
IV. 安裝Powerline字體
由于agnoster主題使用的是Powerline字體,所以我們要安裝至少一個(gè)這樣的字體庫。依次執(zhí)行下面的命令即可完成安裝。
# clone
git clone https://github.com/powerline/fonts.git --depth=1
# install
cd fonts
./install.sh
# clean-up a bit
cd ..
rm -rf fonts
參考資料 https://github.com/powerline/fonts
V. 更改shell的字體
- 選中終端窗口,點(diǎn)擊左上角的 終端-->偏好設(shè)置-->描述文件-->文本-->字體,點(diǎn)擊更改
- 選擇一個(gè)powerline字體(我選擇的是Anonymous Pro for Powerline ,常規(guī)體,14pt)
到這里基本完成了,只是還有一些細(xì)節(jié)要修改,上一張效果圖看看
還有兩個(gè)細(xì)節(jié)需要修改
①yangsheng@yangshengdeMacBook-Pro
這個(gè)東西太長,并且沒什么用,我想把它隱藏掉。這個(gè)就要修改agnoster主題的配置文件了。打開~/.oh-my-zsh/themes/agnoster.zsh-theme
vi ~/.oh-my-zsh/themes/agnoster.zsh-theme
找到下面的內(nèi)容
prompt_context() {
if [[ "$USER" != "$DEFAULT_USER" || -n "$SSH_CLIENT" ]]; then
prompt_segment black default "%(!.%{%F{yellow}%}.)$USER@%m"
fi
}
將prompt_segment black default "%(!.%{%F{yellow}%}.)$USER@%m"
這一行用“#”注釋掉即可。保存后執(zhí)行一下source ~/.zshrc
重新加載配置,你會(huì)發(fā)現(xiàn)那一串文字不見了。
②這個(gè)藍(lán)色不好,連字都看不清楚。處理這個(gè)問題前,我推薦mac用戶下載一個(gè) iterm2(也許你會(huì)愛上它,進(jìn)而拋棄terminal),下載地址 http://www.iterm2.com/downloads.html
-
下載安裝完成之后,打開它,選擇左上角的iterm2-->preferences-->Profiles-->color-->color Presets..,選擇import我們下載的配色方案
/solarized/iterm2-colors-solarized/Solarized Dark.itermcolors
導(dǎo)入配色方案 選擇Powerline字體(我選擇的是Anonymous Pro for Powerline ,常規(guī)體,14pt)
打開一個(gè)新的iterm2,已經(jīng)實(shí)現(xiàn)了我們今天的目標(biāo),很帥。如果你愿意使用iterm2替代terminal,你就不用往下看了。
作為有一點(diǎn)強(qiáng)迫癥的我,現(xiàn)在要把 terminal 的顏色改成與 iterm2 一致。
拿著小筆盡情地吸吧,修改完成后,terminal的外觀與iterm2就一致了。關(guān)于oh-my-zsh的內(nèi)容實(shí)在太多,插件、主題都比較多,后續(xù)再慢慢體會(huì)。
oh-my-zsh開源地址: https://github.com/robbyrussell/oh-my-zsh