前言
本章的旨在教会你美化自己的终端,powershell需要以管理员运行
经过我的测试,不同的电脑可能会有不同的报错,具体操作根据官方为主https://ohmyposh.dev/docs
效果展示
Oh My Posh:提供美观的 PowerShell 提示符主题
1.安装 Oh My Posh
# 安装 oh-my-posh
Install-Module oh-my-posh -Scope CurrentUser -AllowClobber -Force
# 确保 oh-my-posh 模块已正确安装且可以加载
Get-Module -ListAvailable oh-my-posh
2. PowerShell设置配置文件
notepad
是使用记事本打开(后续使用),code
是使用vscode打开,后续我只会说配置文件,打开,保存我就不重复说了,聪明的你肯定早会了。
Q:为什么要设置配置文件?
每次开启终端,保存到配置文件,就会长期配置,输入命令只会临时配置
# 打开你的 PowerShell 配置文件:
notepad $PROFILE
- 记事本
# 加载 Oh My Posh 模块
Import-Module oh-my-posh
# 设置 Oh My Posh 主题路径,theme是要修改的,跟着我的命令走,就不用改了
$themePath = "$HOME\<theme>.omp.json"
# 设置 Oh My Posh 主题
oh-my-posh --init --config $themePath | Invoke-Expression
# 保存并关闭配置文件,然后在 PowerShell 中运行以下命令以重新加载配置文件
. $PROFILE
3. 使用主题
Oh My Posh主题, 其他主题都有自己的下载方式,请自行领悟,基本在github都有使用的文档
- 这里以
blueish
主题为例
Invoke-WebRequest -Uri "https://raw.githubusercontent.com/JanDeDobbeleer/oh-my-posh/main/themes/blueish.omp.json" -OutFile "$HOME\blueish.omp.json"
修改配置文件的
# 设置 Oh My Posh 主题路径
$themePath = "$HOME\blueish.omp.json"
验证主题应用,重启 PowerShell,你应该会看到已应用 blueish 主题。但是你使用的主题有些图标还是看不见。应该是如图效果
下载并安装 Cascadia Code Nerd Font
Q:为什么要使用 Nerd Font 字体
因为它们包含了大量的开发者常用的符号,还有一些特殊的图标不适用该字体都无法显示。
方法1. 命令下载
- 建议这里使用手动下载,使用命令容易出错,当然幸运的你可能使用命令就会成功(´︶`)
# 下载字体文件
Invoke-WebRequest -Uri "https://github.com/ryanoasis/nerd-fonts/releases/download/v2.3.3/CascadiaCode.zip" -OutFile "$HOME\CascadiaCode.zip"
# 解压字体文件
Expand-Archive -Path "$HOME\CascadiaCode.zip" -DestinationPath "$HOME\CascadiaCode"
# 检查解压后的文件
Get-ChildItem -Path "$HOME\CascadiaCode"
# 安装字体
$fontFiles = Get-ChildItem -Path "$HOME\CascadiaCode" -Filter "*.ttf"
foreach ($fontFile in $fontFiles) {
Write-Output "Installing $($fontFile.Name)"
$shell = New-Object -ComObject Shell.Application
$folder = $shell.Namespace($fontFile.Directory.FullName)
$item = $folder.ParseName($fontFile.Name)
$item.InvokeVerb("Install")
}
- 如果失败,就卸载文件吧੧| ‾́︶ ‾́ |੭
# 使用以下命令删除字体文件
$fontFiles = Get-ChildItem -Path "C:\Windows\Fonts" -Filter "Caskaydia*.*"
foreach ($fontFile in $fontFiles) {
Remove-Item -Path $fontFile.FullName -Force
}
- 检查并删除残留文件
检查用户字体目录:打开文件资源管理器,导航到C:\Users\<YourUsername>\AppData\Local\Microsoft\Windows\Fonts
。
删除任何与 Nerd Fonts 相关的文件。
方法2. 手动下载
解压文件,安装字体(我只安装了前七个,剩下的看自己选),安装在ttf
打开后的左上角
设置文件字体,背景
设置完成后,重新启动ps就可以看见图标了,
你会找到背景的,透明度等,自行调整
此时效果,可以看见特殊图标了。
其余设置补充:
这些命令用于在 PowerShell 终端中显示文件和文件夹的图标。
Install-module -Name Terminal-Icons -Repository PSGallery
Import-Module -Name Terminal-Icons
PSReadLine:增强 PowerShell 的命令行编辑和历史记录功能。
Install-Module PSReadLine -Force -Scope CurrentUser
Posh-Git:在 PowerShell 中集成 Git 的提示符和自动补全
Install-Module posh-git -Force -Scope CurrentUser
配置文件总结:
# 加载 Oh My Posh 模块
Import-Module oh-my-posh
# 设置 Oh My Posh 主题路径
$themePath = "$HOME\blueish.omp.json"
# 设置 Oh My Posh 主题
oh-my-posh init pwsh --config $themePath | Invoke-Expression
# 加载 posh-git 模块
Import-Module posh-git
# 加载 PSReadLine
Import-Module PSReadLine
Set-PSReadLineOption -EditMode Windows
Set-PSReadLineOption -PredictionSource History
# 加载 Terminal-Icons
Import-Module -Name Terminal-Icons
没有总结
参考:
bilibili(1)
bilibili(2)