Skip to content

Windows 11安装Oh My Posh指南

约 739 字大约 2 分钟

oh-my-poshpowershellwindows-terminalnerd-fonts

2025-02-20

本文档提供在Windows 11系统上安装和配置Oh My Posh来美化PowerShell终端的完整步骤。

1. 安装Oh My Posh模块

首先,打开Windows Terminal并执行以下PowerShell命令:

Install-Module oh-my-posh -Scope CurrentUser

2. 配置Oh My Posh

Oh My Posh安装成功后,还需要进行额外配置才能在PowerShell中启用它。

查看并创建配置文件

在命令行中输入以下命令查看PowerShell的配置文件路径:

$profile

在显示的路径下创建或编辑Microsoft.PowerShell_profile.ps1文件,添加以下内容:

oh-my-posh init pwsh | Invoke-Expression

3. 安装Nerd Fonts

Oh My Posh的主题需要特殊字体才能正确显示图标,推荐安装Nerd Fonts:

oh-my-posh font install Hack Nerd Font

配置Windows Terminal字体

打开Windows Terminal,使用快捷键Ctrl+Shift+,打开配置文件,在profiles部分添加以下内容:

"defaults": {
    "font": {
        "face": "Hack Nerd Font"
    }  
}

注意

  • "face"对应的键值为你在Nerd Fonts中下载的字体名称
  • 如果你曾在Windows Terminal单独给PowerShell设置过字体,你可以将PowerShell的字体配置注释掉或直接修改
  • 配置完成后保存并重启Windows Terminal

配置VSCode终端字体

如果你使用VSCode,也需要配置终端字体以正确显示图标。在VSCode的settings.json中添加:

"terminal.integrated.fontFamily": "Hack Nerd Font"

4. 安装和配置主题

Oh My Posh提供了多种主题可供选择。默认主题位置:

C:\Users\<用户名>\AppData\Local\Programs\oh-my-posh\themes

要更改主题,编辑Microsoft.PowerShell_profile.ps1文件:

oh-my-posh init pwsh --config 'C:\Users\<用户名>\AppData\Local\Programs\oh-my-posh\themes\jandedobbeleer.omp.json' | Invoke-Expression

例如,使用robbyrussell主题:

oh-my-posh init pwsh --config 'C:\Users\<用户名>\AppData\Local\Programs\oh-my-posh\themes\robbyrussell.omp.json' | Invoke-Expression

5. 安装PSReadLine增强模块

PSReadLine提供了命令行编辑体验增强功能,推荐安装:

Install-Module -Name PowerShellGet -Force
Install-Module PSReadLine -AllowPrerelease -Force

效果预览

安装并配置完成后,你的PowerShell终端将拥有:

  • 彩色提示符
  • Git状态信息
  • 执行时间统计
  • 错误代码显示
  • 丰富的图标和提示

故障排除

  1. 字体图标不显示:确保正确安装了Nerd Fonts并在终端中配置
  2. 配置文件未加载:运行.$profile手动加载配置
  3. 权限问题:可能需要以管理员身份运行Set-ExecutionPolicy RemoteSigned

自定义配置

Oh My Posh支持高度自定义,你可以:

  • 修改现有主题
  • 创建自定义主题
  • 配置特定模块的显示行为
  • 调整颜色和图标

查看更多自定义选项:Oh My Posh官方文档