Closed lixxu closed 2 weeks ago
你好,@lixxu
还没遇到过这种情况。上图中是第二次运行时有问题。所以,是每次打开终端后,第二次运行chsrc
才有问题吗?
不是, 运行chsrc get py
时每次都有问题, 其它的貌似没问题.
我这边配置跟你一样的,也是 windows11 + powershell + starship
应该是你的 python3 的输出导致 chsrc
乱码了。你看下你的 python3
命令的
可能把第三点调成 UTF-8
就没问题了
用pyenv安装的, 默认编码好像已经是utf8了.
你的 python3
确认是和 python
相同吗?
你用 Get-Command python
和 Get-Command python3
分别看下
我恰巧开发了 rbenv-for-Windows
,所以我怀疑 pyenv
是导致问题的原因。 pyenv
如果我没记错,是按着 rbenv
实现的。所以你看下 pyenv
管理下的 python3
命令是 .bat
还是 .exe
? 我怀疑可能是 pyenv
的存在导致第一层编码是 GBK,然后才是你Python3的编码UTF-8
是的, 确实是.bat导致的.
不知道 pyenv
为啥要设置为 1250
. rbenv-for-windows 的实现就完全没有这个问题。
可以联系 pyenv-win 的开发者询问一下原因,以及解决方法。因为它这么设置以后,chsrc
肯定就乱码了,我这边无能为力。
这个 issue 暂时保持开启
ok, 我尝试把python.bat, python3.bat, python3.11.bat, pip.bat都改成了utf-8, 仍然不起作用. 我去pyenv那边看看, 谢谢解惑.
把pyenv.bat里的编码改成utf-8就可以了, issue可以关了.
恭喜终于解决了 💯
pyenv.bat
里咋还有一个 chcp
呢,哈哈。若以后你知道为什么,可以在这里留言,我也学习了解一下。
我看到pyenv-win里的issue有人在讨论chcp这个问题才去试一下, 应该和这个issue有关. https://github.com/pyenv-win/pyenv-win/issues/344
windows11, powershell终端, 集成了starship