Windows Terminal 簡單美化

guojikun發表於2023-11-24

需要用到的軟體/外掛

  • oh-my-posh
  • posh-git
  • PSReadLine

安裝 oh-my-posh

oh-my-posh 是 shell 主題引擎,使用 winget 來安裝 oh-my-posh

winget serach oh-my-posh # 找到對應的 id 方便在下一步使用(具體見下圖)
winget install JanDeDobbeleer.OhMyPosh # 等該命令執行完成就安裝好了

image.png

安裝字型

由於 oh-my-posh 主題一般都有一些比較特殊的符號,如果安裝後 powershell 提示符出現方框類的字元就需要安裝字型了。

oh-my-posh font install # 如果安裝 oh-my-posh 時是全域性安裝則需要管理員許可權去執行這條命令

image.png

安裝 posh-git

PowerShellGet\Install-Module posh-git -Scope CurrentUser # -Scope CurrentUser 表示當前使用者

安裝/升級 PSReadLine

PowerShellGet\Install-Module posh-git -Scope CurrentUser 
# -Scope CurrentUser 表示當前使用者
# Install-Module 安裝模組
# Update-Module 升級模組

安裝之後的效果(灰色部分為之前輸入過的命令,可以按方向鍵的上下進行切換):

image.png

這個工具主要做命令提示管理等操作;安裝操作可選的( 這個模組是自帶的,如果不可用時需要解除安裝並重新安裝)

配置檔案

notepad $profile # 有 vscode 可以使用 code $prifile 來配置

在彈出的視窗中將下面的內容複製進入即可

Import-Module posh-git  # 在當前開啟的 PowerShell 終端中引入 posh-git(已安裝,這裡只是引入)
Import-Module PSReadLine  # 這個工具主要做命令提示管理等操作,預設整合在 PowerShell 中,不需要安裝
Set-PSReadlineKeyHandler -Key Tab -Function Complete  # 設定 Tab 鍵補全
Set-PSReadLineKeyHandler -Key "Ctrl+d" -Function MenuComplete  # 設定 Ctrl+D 為選單補全和 Intellisense
Set-PSReadLineKeyHandler -Key "Ctrl+z" -Function Undo  # 設定 Ctrl+Z 為撤銷
Set-PSReadLineKeyHandler -Key UpArrow -Function HistorySearchBackward  # 設定向上鍵為後向搜尋歷史記錄
Set-PSReadLineKeyHandler -Key DownArrow -Function HistorySearchForward  # 設定向下鍵為前向搜尋歷史記錄

# 啟動時載入 ohMyPosh
# --config 是載入 oh-my-posh 配置的
oh-my-posh init pwsh --config D:\Software\oh-my-posh\conf\pure.omp.json | Invoke-Expression
Import-Module scoop-completion

最後重啟終端就可以看到效果了。

參考/附錄

相關文章