Windows PowerShell 美化
本文最后更新于:2022年6月28日星期二晚上11点14分
简介
这是属于颜狗的胜利,丑不拉几的都不是咱们颜狗想要的,终端也是可以花里胡哨的,人家 linux 可以使用 oh-my-zsh,将他们的 terminal 打扮的花里胡哨的,咱们 windows 下的 terminal 也要站起来。所以大佬们就站出来了,他们做出来了 oh-my-posh,让咱们 windows 也可以使用漂漂亮亮的终端。
windows terminal也可以装饰咱们的终端,但是,不够呀,咱们想要做成oh-my-zsh那样的漂漂亮亮。知道提示符(Prompt)也需要烧烧的。
Oh My Posh —— A prompt theme engine for any shell.
Oh My Posh 正是这样一款终端 Prompt 个性化工具,虽然肇始于同类工具 Oh My Zsh,但当更新到 5.0 版本时,重新设计的 Oh my posh 已经摆脱平台的桎梏,支持了 Windows、GNU/Linux(WSL)、macOS 三个系统上的 PowerShell、bash、zsh 等终端。
需要使用 WindowsTerminal。
安装 Oh My Posh
官方文档上写到,Oh My Posh 在 windows 下有三种安装途径:winget、scoop、manual。本文通过 scoop 进行安装。
想使用其他方法的可进官方文档查看 —— Windows Install Oh My Posh
Scoop
在安装 Oh My Posh 之前,还需要安装一个 Windows 下的包管理工具 —— Scoop。
Scoop 是 Windows 下的一款十分强大的包管理器,可以用来下载和管理各种软件包
首次需要打开并运行PowerShell terminal(version 5.1 or later)。
然后使用下列命令进行安装:
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
# Optional: Needed to run a remote script the first timeInvoke-WebRequest get.scoop.sh | Invoke-ExpressionOh My Posh
通过 scoop 进行安装:
scoop install https://github.com/JanDeDobbeleer/oh-my-posh/releases/latest/download/oh-my-posh.json
当出现图示内容(绿色)时,说明安装成功。
除了使用官方文档提到的方式进行安装。还可以使用
scoop install oh-my-posh进行安装。
这是 scoop apps中所提到的。
使用此种方法时,要跟着文档的方法走哦。
安装成功截图:
如果想要卸载 Oh My Posh 的话,可以使用命令
scoop uninstall oh-my-posh,进行卸载。
卸载成功截图:
字体

Oh My Posh 提示到** 要显示所有图标,我们建议使用 Nerd Font。**
所以咱就下载 Nerd Font 字体吧。
如果不适用 Nerd Font 的话,就会出现这种情况:

可见 icon 们均没有正常显示,而是显示的方框,这也是为什么要使用 Nerd Font 的原因了。
人家自己也说了—— “To display all icons, we recommend the use of a Nerd Font.”

进入官网后选择一个中意的字体下载就行。我自己使用的 Hack Nerd Font(点击可直接下载该字体)
然后进行安装啦,打开压缩包,选择喜欢的(细、粗)字体,然后点击安装。

也可以使用
scoop安装Nerd Font字体:scoop bucket add nerd-fonts再在 nerd fonts 字体库 找到需要安装的字体。
然后就执行命令:scoop install Hack-NF安装完成后需要重启 Windows Terminal 才可以设置字体哦,否则会设置失败。
最后,在 windows terminal 中将字体选择为 Hack Nerd Font,即可。

posh-git
posh-git 可以在 PowerShell 中显示 Git 状态的摘要信息并自动补全 Git 命令。
通过 scoop 来安装,依次执行命令:
scoop bucket add extras
scoop install posh-git
Terminal-Icons

Terminal-Icons 可以在 PowerShell 中显示项目图标并以颜色区分。让你的 Powershell 变得更加的花哨。
通过 scoop 来安装,依次执行命令:
scoop bucket add extras前文中已执行过该命令,此次可不在执行。
scoop install terminal-icons
安装完成后,还贴心的提示了如何使用呢。
配置 Oh My Posh
完成上述的安装后,启动 PowerShell 时并不会默认加载个性化后的配置,因此需要修改 PowerShell 配置文件来让每次启动都加载。
执行命令打开配置文件:
notepad $PROFILE若提示不存在文件,且提示是否创建文件,则直接创建,否则需要手动在 PowerShell 目录下创建一个配置文件再进行编辑。
若需手动创建配置文件,则依次执行命令:
mkdir ~\Documents\WindowsPowerShell
# 创建文件夹
echo "" > ~\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1
# 创建配置文件最后向配置文件中添加:
# 使用 oh my posh
oh-my-posh init pwsh | Invoke-Expression
# 使用 Terminal-Icons
Import-Module Terminal-Icons
# 使用 posh-git
Import-Module posh-git最后重新启动 PowerShell,或者是输入命令 powershell 即可查看美化后的界面。

配置主题
完成全部安装和配置后,使用的是默认主题,如果想要切换成其它主题,可以去 官方主题目录 查看各种主题的效果,同时这些主题也被安装在 Oh My Posh 的主题目录下。
通过 scoop 安装后的主题目录为:
~\scoop\apps\oh-my-posh\current\themes所有主题配置文件都放在这里,并以 .omp.json 结尾,从其它地方下载的主题配置文件也需要放在这里。
在终端中执行以下命令,就可以查看所有主题在终端中的效果:
Get-PoshThemes ~\scoop\apps\oh-my-posh\current\themes
选择一个主题的名字,如 paradox,然后编辑 PowerShell 的配置文件,执行命令:
notepad $PROFILE将其中的 oh-my-posh init pwsh | Invoke-Expression 加上 --config [主题路径] 参数:
oh-my-posh init pwsh --config ~\scoop\apps\oh-my-posh\current\themes\paradox.json | Invoke-Expression最后重新启动 PowerShell,或者是输入命令 powershell 即可查看美化后的界面。
配置 VS code
在 VS code 中也能打开 PowerShell 终端,但是由于没有配置终端字体,因为 icon 们还是没有正常显示,而是显示的方框。
因此需要设置 VSCode 的终端字体为 Hack Nerd Font 才能正常显示。
首先打开设置,搜索 Terminal > Integrated > Font Family。

然后添加 Hack Nerd Font。
最后重新打开终端,或是执行 powershell,即可查看美化界面。

成品
完成上述配置,以及对 Windows Terminal 的配置文件进行修改后,咱就获得了一个花哨的 PowerShell:



