Windows Terminal 配置oh-my-posh主題

  • 2019 年 11 月 13 日
  • 筆記

撰寫本文日期是在2019年11月12日,Windows系統版本是1903,Windows Terminal 與剛開始出預覽版時也有了很多改進。

Windows Terminal需要在MS store裡面下載

預覽圖

Fira code字體

powershell對字體要求比較嚴格,因此並不是所有的等寬字體都可以直接在裡面使用。

而Fira code 字體我個人覺得是Windows上很好看的一個英文渲染字體。

傳統方法安裝時下載字體文件,右鍵安裝,但這裡我們 也可以 選擇chocolatey來安裝Fira code。

並且也後續步驟也需要用chocolatey安裝一些東西。

管理員許可權打開powershell,輸入

Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))

然後安裝Fira Code 字體:

choco install firacode

會提示是否運行腳本,輸入A即可。

然後在profiles.json(設置文件)文件裡面設置該字體

如果你也像我一樣打開.json文件默認是用記事本打開的話:

可以另存為,然後複製其路徑,然後在資源管理器裡面有其他軟體打開:

安裝oh-my-posh主題

Mac/Linux下有oh-my-zsh主題,終於,Windows Terminal的PowerShell也有oh-my-posh主題了。

oh-my-posh 是一個強大的powerline主題,類似於 Linux下的 oh-my-zsh .

相應的github官方項目中其實有具體的操作步驟,見:

JanDeDobbeleer/oh-my-posh: A prompt theming engine for Powershell running in ConEmu

https://github.com/JanDeDobbeleer/oh-my-posh

查看策略組的執行許可權

首先,我們需要查看當前的許可權,以便後續正常安裝,以管理員許可權打開的powershell中這麼執行指令:

Get-ExecutionPolicy -List

此時,我們需要輸入以下命令,將CurrentUserExecutionPolicy(執行許可權)從原來的Undefined更改成RemoteSigned,需要輸入命令:

Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

按提示輸入Y即可。

使用choco 安裝終端模擬器 – ConEmu

以下所有步驟基本都在管理員下的Powershell執行命令,請牢記這點。

推薦你使用ConEmu在Windows上獲得出色的終端體驗。 眾所周知的是Windows下的命令行體驗不是很好,而ConEmu可以說是彌補這些體驗的,也可以說是它模擬了Linux Bash下的一些命令,以此可以在Windows上運行某些命令。

choco install ConEmu

完整安裝過程截圖:

接下來,你需要使用PowerShell Gallery 來安裝 oh-my-posh.

Install-Module posh-git -Scope CurrentUser  Install-Module oh-my-posh -Scope CurrentUser

都安裝好之後,還需要更新配置文件$PROFILE,類似於Linux Bash的.bashrc, 這是全局修改,而不是臨時的設置喔~

輸入:

$PROFILE

繼續輸入:

if (!(Test-Path -Path $PROFILE )) { New-Item -Type File -Path $PROFILE -Force }  notepad $PROFILE

在打開的文件中添加:

Import-Module posh-git  Import-Module oh-my-posh  Set-Theme Honukai

保存後關閉記事本。 其中Set-Theme Honukai是設置主題的,其他可選主題有 AgnosterAvitDarkbloodFishHonukaiParadoxSorintehrob,可自行選擇。

最後更新配置:

C:UsersKuanDocumentsWindowsPowerShellMicrosoft.PowerShell_profile.ps1

上面的Kuan是你的電腦的用戶名,不要照抄。也即前面運行$PROFILE命令後的結果。 重啟powershell後會發現已經生效。

優化 PowerShell 的配色

接下來,我們可以使用微軟提供的一個方便更改默認終端配色的工具 colortool來優化powershell中的顏色,下載地址:

https://github.com/microsoft/terminal/releases/download/1904.29002/ColorTool.zip

這個工具也支援讀取 iTerm 主題文件。

  • 首先,使用上面的地址將 ColorTool 下載至本地,並解壓
  • 打開Windows terminalPowershell Tab

ColorTool 使用非常簡單,該工具自帶了幾種配色主題,我們可以利用下面這個命令進行查看:

.ColorTool.exe -s

其中前面列出的幾個 .ini.itermcolors 就是主題配置文件,我們可以直接通過下面這個命令設置主題:

# 臨時查看  colortool <主題名稱>  # 定義默認值  colortool -d <主題名稱>

比如我們希望將主題配色更換為 OneHalfDark.itermcolors,只需要輸入下面這個命令就可以更換並預覽更新:

.ColorTool.exe solarized_light.itermcolors