當我們安裝好 WSL/WSL2 之後,就可以在 Windows 上使用 Linux 的命令,請參考 Windows 與 Linux 的互通性 | Microsoft Docs,但卻沒有像 Powsershell 那樣的 InstelliSense / Completaion,搜尋了一下發現別的生態已經有非常完整的方案了,最後我選擇 zsh + zim + powerlevel10k,它們除了讓我們的 CLI 畫面變得更漂亮,還有以下功能 (我只知道這樣XD)
- 自動補完,按 Tab or 方向鍵就自動填上完整指令。
- 指令執行時間。
- 輸入部分指令,呈現之前輸入過的指令
工具介紹
- zsh:一款在 macOS、unix 上面運行的執行 shell 應用程式。Z shell - 維基百科,自由的百科全書 (wikipedia.org)
- powerlevel10k:是 zsh 主題,讓你的 zsh 變得更美。romkatv/powerlevel10k: A Zsh theme (github.com)
- zim:一款基於 zsh 實作的自動補完框架,效能號稱比其他的框架還要快。下圖出自:zimfw/zimfw: Zim: Modular, customizable, and blazing fast Zsh framework (github.com)
開發環境
- Windows 10 Pro 20H2
- WSL2
安裝請參考 在 Windows 10 上安裝 WSL | Microsoft Docs - Windows Terminal
安裝請參考 Windows 終端機安裝 | Microsoft Docs - Docker Desktop
安裝請參考
在 Windows 10 安裝 WSL2 + Docker | 余小章 @ 大內殿堂 - 點部落 (dotblogs.com.tw)
安裝步驟
開啟 Windows Terminal 的 Ubuntu
安裝 zsh
輸入以下命令
sudo apt install zsh
執行結果如下圖:
切換預設 Shell
chsh -s $(which zsh)
或是手動切換
exec zsh
切換到 zsh
安裝 zim
兩種方式可以安裝,參考:
zimfw/zimfw: Zim: Modular, customizable, and blazing fast Zsh framework (github.com)
With curl:
curl -fsSL https://raw.githubusercontent.com/zimfw/install/master/install.zsh | zsh
With wget:
wget -nv -O - https://raw.githubusercontent.com/zimfw/install/master/install.zsh | zsh
安裝畫面如下:
重啟 Windows Terminal
安裝 Powerlevel10k
編輯 ~/.zimrc,用編輯工具加入以下內容,比如:vim ~/.zimrc
zmodule romkatv/powerlevel10k
或者用 echo 命令
echo "zmodule romkatv/powerlevel10k" >> ~/.zimrc
然後輸入以下命令安裝 Powerlevel10k
zimfw install
執行結果如下:
重啟 Windows Terminal
配置 Powerlevel10k
依照互動介面一步一步設定
配置完成結果如下:
重新配置 Powerlevel10k
p10k configure
安裝特殊字型
官方建議使用以下字型
Download these four ttf files:
Windows Terminal 的字型配置如下圖:
自動補完效果
最後,在 Windows Terminal 輸入 docker i [tab],會列出符合的指令;images 顏色較淡,是曾經執行過的指令
執行結果如下圖:
參考資源
[Terminal] 使用 Zsh + Zim + Powerlevel10k 打造美觀又快速的 Terminal | by Raymond Lee | Medium
用 zsh + zim + powerlevel10k 讓你的 Terminal 潮又快 · dw's 小站 (dwye.dev)
若有謬誤,煩請告知,新手發帖請多包涵
Microsoft MVP Award 2010~2017 C# 第四季
Microsoft MVP Award 2018~2022 .NET