You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Windows Terminal中Oh-My-Posh初始化后乱码问题求助

解决Oh-My-Posh图标显示为随机Unicode字符的问题

排查与修复步骤

1. 确认Windows Terminal字体配置

  • 打开Windows Terminal设置(快捷键Ctrl+,)
  • 找到PowerShell 7.4.4的专属配置文件,在外观选项卡中:
    • 确保字体选择的是Lilex Nerd Font(必须是带Nerd Font后缀的版本,而非普通Lilex字体)
    • 同时检查终端全局默认配置的字体是否也设置为该字体,避免配置继承冲突
  • 保存设置后完全重启Windows Terminal

2. 切换到Nerd Font适配主题

  • 执行oh-my-posh get shell查看当前使用的主题
  • 如果主题未适配Nerd Font,切换到官方推荐的兼容主题测试:
    oh-my-posh init powershell --config "$env:POSH_THEMES_PATH\jandedobbeleer.omp.json" | Invoke-Expression
    
  • 若图标恢复正常,可将该主题配置写入$PROFILE永久生效

3. 检查终端输出编码

  • 在PowerShell中执行以下命令,确认输出编码为UTF-8:
    [Console]::OutputEncoding
    
  • 若输出不是System.Text.Utf8Encoding,执行命令设置编码并重启终端:
    [Console]::OutputEncoding = [System.Text.Encoding]::Utf8
    
  • 如需永久生效,将上述命令添加到$PROFILE文件中

4. 重置Oh-My-Posh缓存与配置

  • 清理缓存文件:
    Remove-Item -Path $env:POSH_CACHE_PATH -Recurse -Force
    
  • 重新执行初始化命令:
    oh-my-posh init powershell | Invoke-Expression
    
  • 打开$PROFILE文件(执行notepad $PROFILE),确认初始化命令已正确写入

5. 验证字体安装完整性

  • 打开Windows字体设置,查找Lilex Nerd Font,确认全字重(Regular、Bold等)均已安装
  • 若安装不完整,重新下载最新版本的Lilex Nerd Font,选择“为所有用户安装”后重启终端

内容的提问来源于stack exchange,提问作者Dylan Barton

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 09:10:56