PowerShell 5.1 控制台,使用 Powerline 字体和 Starship

PowerShell 5.1 控制台,使用 Powerline 字体和 Starship

我想尝试重新提出几年前的一个问题。那里有一些推测性的评论,认为这可能不起作用,但我感觉这里有几十/几百个天才轻松破解了这个问题,现在在他们的普通 PS 5.1 控制台上有了带有 Powerline 字体的 Starship(即不是Windows 终端)。从这个问题提出已经过去了 2 年零 4 个月,如果有人能解决这个问题我将不胜感激......(我要指出的是,在我的工作环境中,在 Server 2012/2016 环境中,我将在未来至少 4-5 年内使用 PS 5.1 控制台,虽然这远非关键,但尝试构建一个舒适/功能齐全的环境还是不错的)。请注意,这是不是关于 Windows 终端的一个问题。

https://stackoverflow.com/questions/62113888/starship-symbols-in-powershell

答案1

Windows 默认控制台 (conhost.exe) 不支持打印所有 Unicode 字符。例如,每个缓冲区单元格仅限于16 位字符数据。问题不仅仅出在字体或编码上

以下是一些可以正常工作的随机字符:

« »
ᐊ ᐅ
҂ ҈

您可以使用类似这样的方法生成完整列表,并查看您的字体中呈现的代码:

0x20..0x1600 | %{[pscustomobject]@{code=$_;char=[char]$_}}

code char
---- ----
  32
  33    !
  34    "
  35    #
  36    $
  37    %
  38    &
  39    '

Starship 的其他一切似乎在 5.1 终端上运行良好

相关内容