安装posh-git后PowerShell终端图标显示方框问号如何解决
PowerShell终端oh-my-posh图标显示方框修复方案
核心故障原因:终端配置的字体未正确指向带Nerd Font补丁的字体版本,原生Fira Code未内置oh-my-posh M365Princess主题所需的图标字形,导致部分图标无法渲染,显示为带问号的方框。
具体操作步骤
- 确认系统识别的正确字体名
打开Windows系统的字体设置面板(开始菜单直接搜索「字体设置」即可进入),搜索已安装的Fira Code Medium Nerd Font Complete Windows Compatible,点击进入字体详情页,页面顶部显示的完整名称就是系统可识别的准确字体名,通常该版本字体的注册名为FiraCode Nerd Font或FiraCode Nerd Font Mono。 - 修改VS Code终端配置
打开VS Code的settings.json配置文件,将原有的"terminal.integrated.fontFamily": "Fira Code"配置项替换为正确的Nerd Font名称,参考配置如下:"terminal.integrated.fontFamily": "FiraCode Nerd Font Mono", "terminal.integrated.gpuAcceleration": "canvas"说明:优先选择带Mono后缀的等宽Nerd Font版本,终端字符对齐效果更好;添加gpu渲染配置可以规避部分Windows环境下的字形渲染兼容问题。
- 生效验证
完全退出VS Code(关闭所有窗口,确保后台无残留进程)后重新启动,打开PowerShell终端即可看到所有图标正常渲染。
异常兜底排查
如果完成上述操作后仍有图标缺失,按以下顺序排查:
- 确认安装的Nerd Font版本为v2.3.0以上,旧版本缺少部分新主题用到的图标字形,重新安装最新稳定版字体即可,安装时右键字体文件选择「为所有用户安装」,避免权限问题导致系统无法识别字体。
- 如果单独使用Windows Terminal打开PowerShell也存在图标异常,需要同步修改Windows Terminal的配置文件,将对应PowerShell配置项的字体改为相同的Nerd Font,不要使用系统默认字体。
- 终端字体配置列表中不要把无Nerd补丁的普通字体放在优先级更高的位置,普通字体未内置对应图标字形,必然会出现方框或问号占位。
内容的提问来源于stack exchange,提问作者avishekdr
相关产品推荐
相关产品推荐

