-
Notifications
You must be signed in to change notification settings - Fork 253
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
是否要将代码页从 GBK 切换到 UTF-8?(只支持 Windows 10 和 11) #73
Labels
Comments
larryli
changed the title
是否要将默认代码页从 GBK 切换到 UTF-8?(只支持 Windows 10 和 11)
是否要将代码页从 GBK 切换到 UTF-8?(只支持 Windows 10 和 11)
Mar 1, 2024
另外,如果不切换代码页。那么从下一版本开始,会利用 activeCodePage 解决 Windows 11 下非 GBK 936 代码页的乱码问题。 |
目前来说,两个方案都存在问题:
|
更新了 utf-8 分支,调整 ActiveCodePage 为 UTF-8,修正了 GetTextExtentExPoint 返回值为字符数而不是字节数的 bug。 对于命令行程序,即 plink、pscp、psftp 目前的处理方式是直接设定 ConsoleCP 和 ConsoleOutCP 为 CP_UTF8。 |
😂 遇到第二个坑:UTF-8 代码页下 GetMenuItemInfo 返回中文不完成。 |
0.81 增加了 UTF-8 版本发布。 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
中文 Windows 默认都是采用 GBK 代码页 936。而从 Windows 10 开始,支持默认代码页设置为 UTF-8(Windows 区域设置为”Beta版:使用 Unicode UTF-8 提供全球语言支持“)(参见知乎问题)。
所以会存在当前打包的 PuTTY 在 UTF-8(代码页 65001)下乱码的情况,参见 #64
对于 Windows 10/11 来说,应用程序可以指定代码页为 UTF-8 来兼容代码页为 GBK(或是其他代码页)的系统。
这样,对于 PuTTY 这种基于 Code Page 而 Unicode 的应用程序,也能在不同代码页的 Windows 不产生乱码。但缺点是只支持 Windows 10 和 11。
The text was updated successfully, but these errors were encountered: