刚开始使用windows开发的时候一直使用的git bash,但这个工具长久以来是真的一点没考虑过外观的优化,特别是那个白边现在真的无法接受,于是就有了终端美化的念头,最终选择powershell + oh-my-posh
oh-my-posh提供了太多的主题,能满足大多数人的需求,可以先看下有没有喜欢的再考虑要不要阅读这篇文章:主题
先看我的最终效果:
安装 powershell
-
官方推荐使用 Winget 安装
搜索最新版本的 PowerShell
winget search Microsoft.PowerShell
输出下面内容
Name Id Version Source -------------------------------------------------------------- PowerShell Microsoft.PowerShell 7.3.4.0 winget PowerShell Preview Microsoft.PowerShell.Preview 7.4.1.0 winget
使用 id 安装指定版本
winget install --id Microsoft.Powershell.Preview --source winget
安装成功
如果 winget 安装失败可以使用 MSI 包安装
安装成功后通过window的搜索:powershell 就可以看到这个图标,我习惯把常用应用固定到开始菜单,这样每次按一下window键即可看到所有应用
使用 oh My Posh
-
打开powershell,安装 oh My Posh
winget install JanDeDobbeleer.OhMyPosh -s winget
-
安装好需要修改一下 oh My Posh 的配置文件
// 打开配置文件 notepad $PROFILE // 在配置文件中添加配置并保存 oh-my-posh init pwsh | Invoke-Expression // 重新载入配置文件 . $PROFILE // 这时候 oh My Posh 默认主题就生效了
配置完我重启了一下 powershell,发现刚才的配置不生效了,我重新打开配置文件,发现刚才写入的内容不见了,最后我直接在磁盘中找到 oh My Posh 的配置文件目录,从这里打开重新编辑后,这个问题就解决了,下面是配置文件地址:
C:\Users\<username>\Documents\PowerShell\Microsoft.PowerShell_profile.ps1
-
安装字体
现在主题虽然生效了,但是图标都出不来,因为 Oh My Posh 使用的是 Nerd 字体,如果不用 Nerd 字体,会导致图标出不来,下面链接里全是 Nerd 字体,可以选择自己喜欢的款式安装,选择字体:www.nerdfonts.com/font-downlo…
-
设置 powershell 字体
点击 powershell 头部下拉箭头,设置 -> 默认值 -> 外观 -> 字体,选择刚才安装的 Nerd 字体,点击保存
这时候主题图标就能正常显示了
-
修改主题
本地 oh My Posh 的主题都存放在这个目录(等会修改配置文件时要用):
C:\Users\<username>\AppData\Local\Programs\oh-my-posh\themes
oh My Posh 官方提供了很多主题,可以在这里查看:ohmyposh.dev/docs/themes
选择自己喜欢的主题,然后修改 powershell 配置文件:
// 我使用的是 1_shell 主题 oh-my-posh init pwsh --config 'C:\Users\<username>\AppData\Local\Programs\oh-my-posh\themes\1_shell.omp.json' | Invoke-Expression
保存后重新加载配置文件,命令行输入:. $PROFILE,主题就生效了
. \$PROFILE
修改 powershell 启动时打开的目录
打开 powershell 配置文件,写入以下内容
set-location D:\code
保存后重新加载配置文件,命令行输入:. $PROFILE,重新打开powershell就可以看到效果了