1. 程式人生 > 實用技巧 >iTerm2 + oh-my-zsh 教程(7000字長文)

iTerm2 + oh-my-zsh 教程(7000字長文)

之前寫了一篇文章「適合程式設計師的 MacBook 配置」, 裡面有介紹 iTerm2 + oh-my-zsh 打造炫酷終端,讀者看到後,問我能不能出一個詳細的教程,現在給安排上。

對於長期使用終端和 Vim 的人來說,iTerm2 和 oh-my-zsh 就是兩大神器。

把 iTerm2 和 oh-my-zsh 配置好,不僅可以給自己打造一個舒適的開發環境,養養眼,還能大大的提升效率。

不過在講解具體的操作步驟之前,我們先了解先 iTerm2 和 oh-my-zsh 是什麼?

要不你一頓操作,都不知道自己在幹嘛。

在做什麼之前要先了解是什麼。

在作業系統核心外有一層殼,而這層殼就是 shell,它是使用者和作業系統互動的橋樑。

這很好理解,shell 包住了系統,使用者想要跟系統互動,就必須經過shell。

後來,shell 還慢慢變成了核心與使用者互動的指令碼語言的總稱。

我們常見的 shell 有:bash、zsh、csh、ksh、ash 等等。

Linux 下預設的是 bash ,macOS 在 Catalina 之前的版本預設也是 bash ,後面隨著 zsh 越來越流行,macOS 開始將 zsh 作為預設的直譯器了。

但是預設的 zsh 配置有點煩,於是有個大牛在 Github 上製作了一個配置檔案 oh-my-zsh ,從此免去了我們一頓複雜的配置,這也讓 oh-my-zsh 成為了目前最流行的 zsh 配置。

oh-my-zsh Github 地址:https://github.com/ohmyzsh/ohmyzsh/projects
複製程式碼

到這裡,大家對 shell 和 oh-my-zsh 應該有了初步的瞭解。

那 iTerm2 呢?

shell 作為系統核心的殼,是一種抽象的概念,是一個直譯器,但作為使用者並不能很好的操作。

於是有了終端這樣的軟體,macOS 系統的預設終端是 terminal,這些終端不再是抽象的概念,是一個視覺化的軟體,很方便使用者操作。

而 iTerm2 也是這樣的一款軟體。

它們既可以讓我們輸入 shell 命令,也能反饋輸出結果給我們看。

好了,吹了一大堆,下面是具體的操作。

1、 Vim 的基礎操作

對 Vim 操作進行初步的瞭解,下面會用到。

就幾個簡單的操作命令:

vim <file name>  開啟檔案
i                        insert 編輯模式
esc           退出編輯模式
shift+zz        儲存並退出
複製程式碼

2、 安裝 iTerm2

iTerm2 的安裝,直接在官網下載安裝。

官網地址: http://iterm2.com/downloads.html
複製程式碼

3、安裝 oh-my-zsh

要安裝一個東西,肯定是先找官網啊。

一手資料總比經過加工的二手資料更有價值。

 oh-my-zsh 的官網地址:https://ohmyz.sh/
複製程式碼

在官網中點選按鈕「Install oh-my-zsh」,就可以看到如何安裝了。

安裝 oh-my-zsh 的方式有兩種,使用 curl 或 wget ,看你自己的環境和喜歡進行選擇了。

curl 安裝方式:

$ sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
複製程式碼

wget 安裝方式:

$ sh -c "$(wget https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"
複製程式碼

安裝完成後會顯示這樣:

4、修改預設的 shell

安裝完成之後,在 /bin 目錄下會多出一個 zsh 的檔案。

你可以通過以下命令來檢視:

cat /etc/shells  
複製程式碼

注意,cat 後面是有個空格的。

其次,macOS 在 Catalina 版本之前都是使用 dash 作為終端,

如果你想修改為 zsh ,可以使用以下命令:

chsh -s /bin/zsh
複製程式碼

當然,你後悔了,想改回原來的 dash ,同樣使用上面的 chsh 命令就可以。

chsh -s /bin/bash
複製程式碼

5、修改主題

該裝的軟體都裝完了,現在主要就是選擇自己喜歡的風格了。

那麼有哪些主題風格可以選呢?

可以通過下面的 Github 地址來檢視。

Github 地址:https://github.com/ohmyzsh/ohmyzsh/wiki/themes
複製程式碼

裡面的主題非常多,各種各樣的風格都有,看你個人的喜好了。

比如有云,有閃電的可愛主題 cloud 。

還有非常簡潔的的 steeef。

也有官方推薦的 ys 。

選好了主題,下一步就是配置主題了,怎麼配置呢?

此刻你可以在 iterm2 中輸入以下命令

vim ~/.zshrc
複製程式碼

找到 ZSH_THEME 欄位,可以看到 oh-my-zsh 的預設主題是 robbyrussell ,如果要做修改,具體操作如下:

要在 Vim 裡修改檔案,要先按 i 進入編輯模式,把 ZSH_THEME的值修改為你喜歡的那個主題,修改完成之後按 esc (電腦最左上)退出編輯模式,最後 shift+zz 儲存並退出。

當然,你不太熟悉上面的操作,可以直接開啟 .zshrc 的檔案,然後用普通的編輯器直接修改那個 ZSH_THEME 的值,最後儲存就好。

上面介紹的都是 oh-my-zsh預設自帶了一些預設主題,存放在 ~/.oh-my-zsh/themes 目錄中。

你可以在終端輸入 cd ~/.oh-my-zsh/themes && ls 就可以觀察到。

除了這些自帶的主題,還有很多很酷,很炫的定製主題。

比如,powerlevel9k 。

powerlevel9k 真的是一個很酷的東西。

那麼你想用這些主題要怎麼操作呢?

也很簡單,比用自帶的主題多了一步操作而已。

就是先把主題給下載下來。

用 powerlevel9k 為例,通過 git clone 下載到 oh-my-zsh 放置第三方主題的目錄中。

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

最後就跟上面的操作一樣,開啟配置檔案,把主題設定進去。

最後記得 source 一下。

source ~/.zshrc
複製程式碼

6、安裝 powerline 和 PowerFonts

powerline 是 oh my zsh 依賴的一個外掛。

這個外掛主要解決很多關於 oh my zsh 主題中的字型問題。

當然,這個外掛不一定要求裝啊,如果你遇到有亂碼問題,就需要裝上了。

為什麼會出現亂碼的情況呢?

因為有些特殊的主題,有特殊的表情和符號。比如上面提到的 powerlevel9k。

廢話不多說了,直接上官網。

官網地址:https://powerline.readthedocs.io/en/latest/installation.html
複製程式碼

如果你去看了 powerline 的官網,會發現 powerline 是用 python 寫的,所以安裝起來也很方便,只需要一條命令就好了。

pip install powerline-status
複製程式碼

當然安裝之前要確保你已經安裝了 python 環境和 pip , python 環境一般 Mac 系統都會自帶的,所以如果你在安裝過程中遇到:

zsh: command not found: pip。
複製程式碼

那就是 pip 沒有安裝了。

你也可以通過命令來安裝。

sudo easy_install pip
複製程式碼

如果還有亂碼,那是因為 PowerFonts 還沒有安裝。

PowerFonts 是一個字型庫,要安裝字型庫需要先把 git clone 到本地,然後執行原始碼中的 install.sh

具體的流程如下:

# git clone
git clone https://github.com/powerline/fonts.git --depth=1
# install
cd fonts
./install.sh
# clean-up a bit
cd ..
rm -rf fonts
複製程式碼

安裝完成之後,就可以設定 iTerm2 的字型,具體的操作是 iTerm2 -> Preferences -> Profiles -> Text,在 Font 區域選中 Change Font,看個人喜歡,選擇字型,字型名字帶有 for powerline 的就不會亂碼了。

7、色彩預設

itme2 支援各種色彩主題。

可以從官網那裡看到各種介紹,這裡就不再做詳細的介紹了,主要還是講下詳細的步驟。

官網地址:https://iterm2colorschemes.com/
複製程式碼

你可以先把色彩主題檔案下載下來。

在官網中直接點選圖示下載

當然,也可以通過執行命令來下載

git clone https://github.com/mbadolato/iTerm2-Color-Schemes ~/Downloads/itemcolor
複製程式碼

注意,這裡的 ~/Downloads/itemcolor 是指放置下載檔案的目錄地址,可自行修改。

我是通過官網直接下載的,下載完成後,可以看到有很多資料夾,這裡主要關注 schemesscreenshots 就好。

schemes 資料夾裡主要是放置色彩主題檔案的。

screenshots 則是各種色彩主題預設的預覽圖。

大家可以根據個人的喜好選自己喜歡的色彩主題,然後在 iterm2 中選擇 Preference -> Profiles -> Colors ,匯入色彩主題,並勾上就可以。

8、命令補全

zsh-autosuggestion 是一個 zsh 命令補全,提示的外掛。

具體的流程如下:

cd ~/.oh-my-zsh/custom/plugins/
git clone https://github.com/zsh-users/zsh-autosuggestions
vi ~/.zshrc
複製程式碼

然後找到 pluginszsh-autosuggestions 加上就行。

當然你也可以直接開啟 .zshrc 這個檔案,找到 pluginszsh-autosuggestions 加上。

記得儲存。

安裝完成後,具體的效果如下,只要打 op ,它就會自動提示我之前打過的命令 open ~/.zshrc,非常方便。

像這種外掛還有很多,比如 zsh-syntax-highlighting 語法高亮的外掛,都非常擁有,這裡就不一一介紹了。

9、 iTerm2 的其他優化設定

設定下快捷鍵,比如你可以通過 keys 那裡設定快速影藏和顯示 iterm2 的快捷鍵。

設定背景圖片

也可以任意設定背景透明度和模糊度, 就看你的愛好進行裝逼了。


作者:兩點水
連結:https://juejin.im/post/6894432073491152910
來源:掘金
著作權歸作者所有。商業轉載請聯絡作者獲得授權,非商業轉載請註明出處。