# 終端機介面設定筆記 ![image](https://hackmd.io/_uploads/HJ7HqfekA.png) > 這是我的終端機介面,很讚吧! ## 前言 > 如果每天都需要盯著螢幕工作,何不花一點心思美化一下眼前所見呢? > 身為 macOS 開發者不能不知道 zsh,剛換蘋果筆電時偶然間看到其他工程師那又帥又潮的介面,好奇問了一下才知道 zsh 可以搞出這麼花俏的介面,因此自己也想來跟風設定一下,同時也記錄下來,以便未來換電腦時,可以快速調整成習慣的配置。 那麼本文會簡單介紹一下 `zsh`, `oh-my-zsh`, `powerlevel10k`,接著會以 macOS 的角度說明安裝設定流程。(有空再來補充 Ubuntu 的筆記 ## 什麼是`zsh`, `oh-my-zsh`, `powerlevel10k`? **Zsh (Z Shell)** Zsh 和 Bash 都是 Unix Shell,而 Zsh 的誕生是為了提供更高效、靈活的 Shell,相對於傳統的Bash shell,Zsh 更現代化,擁有更多進階功能,例如自動補字的體驗更佳、提供更多自定義的選項、可以顯示更多有用的資訊(當前目錄、時間戳、Git 狀態)等等。 **Oh-My-Zsh** Oh-My-Zsh 是一個管理 Zsh 配置的框架,擁有大量擴充套件和主題,使您可以輕鬆自定義 shell 環境,且簡化了安裝和管理 Zsh 插件和主題的流程,也因為他的誕生,讓 zsh 更加發揚光大了。 **Powerlevel10k** Powerlevel10k 是其中一個 Zsh 的擴充套件,提供自定義介面的選項以及漂亮的 icon。 ## 如何開始 * [iTerm2 安裝及常用設定](#iTerm2-安裝及常用設定) * [安裝 zsh](#安裝-zsh) * [安裝 oh-my-zsh](#安裝-oh-my-zsh) * [zsh theme: powerlevel10k 安裝及基礎設定](#zsh-theme-powerlevel10k-安裝及基礎設定) ## iTerm2 安裝及常用設定 ![image](https://hackmd.io/_uploads/HJhaJZb1C.png) > 取自[ iTerm2 官網](https://iterm2.com/)的自我介紹: > * iTerm2 is a replacement for Terminal and the successor to iTerm. > * iTerm2 brings the terminal into the modern age with features you never knew you always wanted. 雖然 macOS 已經有內建的終端機 app ,但 iTerm2 是更好用的替代方案,非常建議使用它! 1. 透過 homebrew 安裝 `brew install iterm2` 2. 點擊選項設定(基本上是叫做 Perferences,不知為何我的顯示舊版名稱 Settings ) ![image](https://hackmd.io/_uploads/rk-wtZWyR.png) 3. 將 Character encoding 修改成 Unicode (UTF-8),避免出現亂碼 ![image](https://hackmd.io/_uploads/r1Gj0-W1R.png) 4. 將 Report Terminal Type 修改為 xterm-256color,顯示更多色彩效果 ![image](https://hackmd.io/_uploads/B1QnAZZ10.png) 5. 修改顏色主題,這邊所有細項都能調整,字體顏色、反白顏色、反白顏色、對比度、透明度等等,我自己是比較懶,直接去抓別人的範本主題來套用。 ![image](https://hackmd.io/_uploads/ByS6U-bJR.png) > 套用範本主題待補充 6. 調整字型、字體大小 ![image](https://hackmd.io/_uploads/rkPP1fWk0.png) 以上就是我自己會調整的設定,其餘的有興趣再慢慢摸索吧! ## 安裝 zsh 新推出的 macOS 現在都會內建 zsh 了,可以檢查一下是否已安裝,如果沒有就用 Homebrew 安裝。 1. 檢查 zsh 指令 `which zsh` ![image](https://hackmd.io/_uploads/rJSdWMZJA.png) 出現安裝路徑就表示已安裝過囉 > 補充說明: > 系統預設的安裝路徑會在`/bin/zsh`,而 Homebrew 安裝的則會在`/usr/local/bin/zsh` 2. 安裝完輸入`chsh -s $(which zsh)`,把 zsh 設定為預設 shell,接著打開一個新視窗,以套用剛才的設定。 3. 如果是第一次使用 zsh 的電腦,會因為找不到 zsh 的設定檔(`~/.zshrc`)而進入 zsh 的設定介面,這邊就照著 recommended 設定走完流程就好,因為接著我們還需要更改它。 ## 安裝 oh-my-zsh ![image](https://hackmd.io/_uploads/SkxvwcfW1C.png) 據說在沒有這個套件出現之前,zsh 一直不受歡迎,即便他功能豐富多樣,但因為太難設定,令大多數人為之卻步。 直到 oh-my-zsh 的出現,才將 zsh 發揚光大! 1. 安裝 oh-my-zsh 的指令(擇一即可) ```bash= # via curl $ sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" # via wget $ sh -c "$(wget https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)" ``` 2. 如果上述指令沒有出現錯誤訊息就算成功了,根目錄下會出現新的資料夾`~/.oh-my-zsh`,Prompt 也套用了預設主題 ![image](https://hackmd.io/_uploads/rJQT2f-JC.png) ## zsh theme: powerlevel10k 安裝及基礎設定 1. 安裝指令 ```bash= git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k ``` 2. 跑完之後在這個目錄下`~/.oh-my-zsh/custom/themes/`會出現powerlevel10k ![image](https://hackmd.io/_uploads/BkPeymbkC.png) 3. 將 zsh theme 修改為 powerlevel10k ```bash= $ vi ~/.zshrc ## 找到 ZSH_THEME 改成以下: ZSH_THEME="powerlevel10k/powerlevel10k" ``` 4. 打開新的視窗,會自動跳出 Powerlevel10k的設定引導畫面(如果沒有跳進引導畫面,輸入指令`p10k configure`即可),接下來的流程我就不一一截圖了,基本上就是有好幾個樣式讓你選擇(顯示當前時間、時間格式、頭尾邊框形狀、分隔符號、字元集、行距調整之類的),然後下一步。 ![image](https://hackmd.io/_uploads/BkzcHE-1R.png) > 補充說明: > * 字元集的選擇需要特別注意,如果你想要能夠顯示花俏的 icon,一定要選擇`(1) Unicode` > * 如果隨時想重新設定風格,換換口味的話只需要執行`p10k configure`即可 > * 若想知道目前支援什麼 shell,可以輸入此指令`cat /etc/shells`檢查 ## 參考文件 [讓 macOS 的 Terminal 又潮又實用](https://www.onejar99.com/terminal-iterm2-zsh-powerlevel10k/#1-1) [iTerm2 詳細設定操作教學](https://onejar99.com/iterm2-mac-terminal-usage/#more-922) [iTerm2-color-Schemes](https://github.com/mbadolato/iTerm2-Color-Schemes/blob/master/README.md#extra) [Powerlevel10k](https://blog.csdn.net/qq_40125655/article/details/110430779)