乐趣区

关于终端:powershell-终端美化-git-分支名乱码解决办法

之前通过 on-my-posh 曾经丑化过一次了然而 如果我 git 分支名中有中文那么他显示的还是乱码,所以当初想让他失常显示

通过如下命令找到主题文件

关上之后搜查一番发现

ps 脚本我不太懂,看这个文件大抵能够猜出来终端中下面那一行就是 $prompt 输入后的后果,当初的问题放大到如何让 $prompt 内蕴含的中文输入后失常显示?

通过尝试上图红框出输出中文输入的也是乱码,网上搜查无果,忽然想起来 gb2312 这个货色,将该文件应用 gb2312 编码保留代码内的中文能够输入了

但右侧分支名还是乱码,猜想应该是一样的问题,那么应该会有这几种解决方案

  1. 让 powershell 反对 utf-8。这个因为其余问题之前试过,尽管 utf-8 的是失常显示了但导致原本中文能失常输入的反而不行了
  2. 最好的办法应该是间接让这个脚本能够输入 utf- 8 的字符
  3. 分支名转 gb2312 再输入

接下来就是去网上找文档看有没有方法解决或者能实现我下面提出的两个计划

在 https://www.zhihu.com/question/54724102/answer/1035566559 发现了解决方案 1 的实现办法

步骤如下

  1. 输出 $profile 失去 powershell 配置文件地址

  1. 增加 $OutputEncoding = [console]::InputEncoding = [console]::OutputEncoding = New-Object System.Text.UTF8Encoding

中文分支名正确显示!

另外的问题,显示 emoji

我想在最后面放一个 emoji

在线编码工具 http://tools.jb51.net/transcoding/decode_encode_tool

这个三角形的编码就是 0x1F4D0 但打印进去后后面多了问号,不晓得什么起因,但前四位为 0 的 emoji 是能够失常显示的, 可能是因为组合字的缘故。

这个问题没有想到比拟好的办法,望理解者不吝赐教 (´▽`ʃ♡ƪ)。我只能临时先用单个码点的 emoji 了

退出移动版