Ubuntu 下 Oh My Zsh 的最佳實踐「安裝及配置」

雪中亮發表於2018-06-13

Oh My Zsh 是一款社群驅動的命令列工具,是基於 Zsh 命令列的一個擴充套件工具集,提供了豐富的擴充套件功能,如:主題配置,外掛機制,內建的便捷操作等,可以給我們一種全新的命令列使用體驗。下文對 Oh My Zsh 的安裝及配置方法進行總結,只總結最佳的實踐。

1. 安裝 Oh My Zsh

第一步:安裝 Zsh

# 安裝 Zsh
sudo apt install zsh

# 將 Zsh 設定為預設 Shell
chsh -s /bin/zsh

# 可以通過 echo $SHELL 檢視當前預設的 Shell,如果沒有改為 /bin/zsh,那麼需要重啟 Shell。
複製程式碼

第二步:安裝 Oh My Zsh

# 安裝 Oh My Zsh
wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | sh
# 以上命令可能不好使,可使用如下兩條命令
wget https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh
bash ./install.sh
複製程式碼

2. Zsh 的配置

2.1 字型的安裝

推薦在終端使用 Powerline 型別的主題,該型別主題可以使用圖形表示儘可能多的資訊,方便使用者的使用。推薦安裝使用者量最大的 Powerlevel9k

Powerlevel9k 中需要使用較多的圖形符號,字型大多不會自帶這些符號,所以需要使用專門的 Powerline 字型。

不推薦安裝官方預設的 Powerline Fonts,理由是圖形符號不全,符號處會有亂碼。推薦安裝 Nerd-Fonts 系列字型,因為該系列字型附帶有儘可能全的符號,並且更新非常頻繁,專案地址在這裡。例如直接下載 Ubuntu Font Family 中的 Ubuntu Nerd Font Complete.ttf ,然後直接在Ubuntu下安裝。

2.2 主題及字型的配置

如果要在  Oh My Zsh中安裝 Powerlevel9k ,只需執行如下指令:

git clone https://github.com/bhilburn/powerlevel9k.git ~/.oh-my-zsh/custom/themes/powerlevel9k
複製程式碼

3. 外掛配置

3.1 autojump

更快地切換目錄,不受當前所在目錄的限制。

安裝:

sudo apt install autojump
複製程式碼

用法:

# 跳轉到目錄
j dir
# 可以通過GUI檔案管理器開啟指定目錄,執行命令:
jo dir
複製程式碼

3.2 fasd

快速訪問檔案或目錄,功能比前一個外掛強大。

安裝:

sudo apt install fasd
複製程式碼

用法:

alias f='fasd -f'          # 檔案
alias d='fasd -d'        # 目錄
alias a='fasd -a'        # 任意
alias s='fasd -si'       # 顯示並選擇

alias sd='fasd -sid'        # 選擇目錄
alias sf='fasd -sif'          # 選擇檔案
alias z='fasd_cd -d'       # 跳轉至目錄
alias zz='fasd_cd -d -i'  # 選擇並跳轉至目錄
複製程式碼

3.3 zsh-autosuggestions

命令列命令鍵入時的歷史命令建議外掛

按照官方文件提示,直接執行如下命令安裝:

git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
複製程式碼

3.4 zsh-syntax-highlighting

命令列語法高亮外掛

按照官方文件提示,直接執行如下命令安裝:

 git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
複製程式碼

3.5 外掛最終配置

# autojump 功能弱,fasd 功能強,但是沒 autojump 實用
# 值得注意的是,根據官方文件,zsh-syntax-highlighting 外掛需放在最後
plugins=(
  git extract autojump zsh-autosuggestions zsh-syntax-highlighting
)
複製程式碼

4.「.zshrc」檔案完整修改

Oh My Zsh 配置檔案的完整修改結果,只有對配置檔案進行如下修改,才能使上述配置生效。

# 設定字型模式以及配置命令列的主題,語句順序不能顛倒
POWERLEVEL9K_MODE='nerdfont-complete'
ZSH_THEME="powerlevel9k/powerlevel9k"

# 以下內容去掉註釋即可生效:
# 啟動錯誤命令自動更正
ENABLE_CORRECTION="true"

# 在命令執行的過程中,使用小紅點進行提示
COMPLETION_WAITING_DOTS="true"

# 啟用已安裝的外掛
plugins=(
  git extract fasd zsh-autosuggestions zsh-syntax-highlighting
)
複製程式碼

常用命令

下面總結 Oh My Zsh 配置相關的其他 bash 命令:

#  檢視當前所用的 Shell
echo $SHELL

# 檢視系統內已安裝的 Shell
cat /etc/shells

# 用 GUI 檔案管理器或編輯器開啟指定的的檔案或目錄
xdg-open fileOrDir
複製程式碼

參考資料

  1. Zsh + Oh My Zsh 全程指南「程式設計師必備」
  2. Zsh 全程指南
  3. Ubuntu 16.04 下安裝 Zsh 和 Oh My Zsh

相關文章