使用 Oh My Posh 美化 Windows 指令視窗 外觀設定

在上一篇我們介紹了 比命令提示字元還好用的 指令視窗「Windows Terminal」,本篇繼續來讓指令視窗更好看

註: 下面的操作都是使用 Windows Terminal 和 PowerShell

安裝 Oh My Posh

我們使用到的工具叫做 Oh My Posh,最簡單的安裝方式就是在 Windows 開啟這個會跳轉到 Microsoft Store 的連結,然後點選安裝
安裝過程中會跳出視窗,選擇安裝在當前使用者還是所有使用者上
安裝完成後記得關閉所有指令視窗,不然可能會出現類似下列的錯誤訊息
    
 oh-my-posh 不是內部或外部命令
    
    
oh-my-posh : 無法辨識 'oh-my-posh' 詞彙是否為 Cmdlet、函數、指令檔或可執行程式的名稱。請檢查名稱拼字是否正確,如果包
含路徑的話,請確認路徑是否正確,然後再試一次。
    

開始使用

開啟 PowerShell,輸入下列指令就可以在當前指令視窗使用 Oh My Posh
    
        oh-my-posh init pwsh | Invoke-Expression
    

如果出現亂碼,則表示有些特殊符號在預設的字體中沒有。我們需要去下載有特殊符號的字體

含有特殊符號的字體下載

Nerd Fonts 官網,有整理很多大家常用的特殊符號,例如 git、檔案總管、之類的圖示,然後加在一些開源字體上面
點選 Downloads 進到字體列表頁面。
選擇喜歡的字體下載,筆者這裡以 JetBrainsMono Nerd Font 做示範,找到想要的字體之後點選 Download 來下載
將下載的字體解壓縮,在裡面找到喜歡的,筆者這裡使用的是 JetBrains Mono Medium Nerd Font Complete.ttf,滑鼠左鍵雙擊字體開啟
點選「安裝」

回到指令視窗,點選右上角向下的箭頭 > 設定

點選 預設值 > 外觀

點選字體 > 顯示所有字體,找到剛剛安裝的那一個,點選「儲存」
再回到剛剛的指令視窗就會發現不是亂碼了

變更主題

目前已經在 Oh My Posh 中了,在當前的指令視窗中輸入下列指令可以查看內建的各種主題
    
        Get-PoshThemes
    

每個主題就會慢慢捲動顯示,如果看到喜歡的就按下 Ctrl + C 停止 (或是等全部出現再往上滾動),然後複製主題名稱
在執行 oh-my-posh 的時候增加參數以指定主題啟動即可,筆者這裡選的主題是 night-owl,請自行更換
    
oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\night-owl.omp.json" | Invoke-Expression
    

將主題儲存到設定檔中

目前所有變更都只有在當前的指令視窗中生效,如果想要儲存,那只要編輯設定檔就好

使用記事本開啟設定檔:
    
notepad $Profile
    

若記事本出現下面的「找不到指定的路徑」,則代表未曾建立過 PowerShell 設定檔

預設是建立在「文件」資料夾下的 WindowsPowerShell\Microsoft.PowerShell_profile.ps1 ,可以透過直接輸入下面這行來直接建立:

New-Item -Path $profile -ItemType "file" -Force



在裡面輸入:
(就是啟動的那一行)
  
oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\night-owl.omp.json" | Invoke-Expression


這樣每次開啟時就會自動使用使用 Oh My Posh 和主題了 註: 若出現「因為這個系統上已停用指令碼執行,所以無法載入 C:\Users\ruyut\Documents\WindowsPowerShell\Microsoft.PowerShell_profil e.ps1 檔案。」等錯誤訊息,可以查看這篇來解決

延伸閱讀:自訂 Oh My Posh,打造獨一無二的指令視窗

留言