【发布时间】:2022-01-05 04:38:13
【问题描述】:
我有一个 .NET Core 应用程序。它唯一的作用是:
System.Console.Out.WriteLine("\x1b%G????");
当我在 Windows 终端的“新”Powershell 选项卡上运行它时,它会输出
??
当我在同一个选项卡中第二次运行它时,它会正确输出:
????(拉面表情)
在一个进程中运行同一行两次不起作用 - 它是 ?? 两次。
(如果我不包含\x1b%G 转义序列,它“永远不会”显示为拉面表情符号)
我想要做什么
弄清楚是什么为终端“启用”表情符号(无论是 Windows 终端、Windows 11 中的新主机等)。
我认为可能是\x1b%G,启用 UTF-8 的 xterm 转义序列。也许是? ...但是为什么不等到进程退出并在 powershell 中再次启动?
其他说明
如果我不使用空白的 Powershell 配置文件,而是使用提供精美提示的配置文件(例如Set-PoshPrompt -Theme powerlevel10k_rainbow)...那么表情符号将被“激活”/“启用”。那么,Powershell 或 posh prompt 的某些功能是否可以复制?
这个问题的正确答案是……
...告诉我我需要做什么才能让表情符号正确显示在我的终端中,而无需运行两次。
【问题讨论】:
标签: unicode terminal emoji windows-terminal