1.安装 oh-my-posh
- 在powershell里运行
winget install JanDeDobbeleer.OhMyPosh -s winget
2. 设置powershell的profile
打开一个powershell窗口,执行 New-Item -Path $PROFILE -Type File -Force
来创建一个新的profile,
再执行 notepad $PROFILE
用记事本打开它。
写入以下行:
& ([ScriptBlock]::Create((oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\jandedobbeleer.omp.json" --print) -join "`n"))
用来执行每次打开新的pwsh窗口都应用此主题的命令。
jandedobbeleer.omp.json是一个主题,你可以直接去网上找一个库预览各个主题的效果,选自己喜欢的。
3. 修改pwsh执行scrip权限
你此时打开一个新的powershell窗口大概率会显示错误,说没有权限执行scrip之类的。
用Admin权限新打开一个powershell窗口,然后执行:Set-ExecutionPolicy RemoteSigned
这时你再开新的powershell窗口应该就不会报错了(即可自动执行步骤3的那一行命令了)。
4. 安装一个带图标的字体
-
Windows上你可以直接下载Powerline repo里的某个ttf字体文件,双击打开然后点安装即可,nerd font 同理。安装完后的字体可以在系统设置的字体文件夹(Control Panel\Appearance and Personalization\Fonts)内看到。
5. 修改powershell的设置选择字体
在powershell的窗口里按下CTRL + SHIFT + , 打开文本格式的设置。
在“profiles”的"defaults"里面进行如下修改
"profiles":
{
"defaults": {
"font":
{
"face": "AnonymicePro Nerd Font"
}
},
即让powershell用AnonymicePro Nerd Font这个字体。
保存这个json文件以后应该瞬间应用。
如果你看不到图标,都显示的方框,那就尝试换一个powerline或者nerd字体,我发现有的字体在系统powershell里不显示图标但是在VScode的terminal里却可以,搞不懂。只能多试试。
6 VSCode terminal设置
vscode的设置可以覆盖系统设置,在settings.json里修改如下:
"editor.fontFamily": "DejaVu Sans Mono for Powerline, AnonymicePro Nerd Font, Menlo, Monaco, 'Courier New', monospace",
我VSCode这里用的就是DejaVu Sans Mono for Powerline字体,但是系统powershell用的第一顺位是AnonymicePro Nerd Font。