注: 惭愧惭愧,最终发现只需要一条语句即可搞定, 修改 winucs.c 中函数 wc_to_mb 直接在进入函数后设置 codepage=936; 即可无障碍显示GBK中文,如要显示BIG5则修改为950.
putty 中如果一种不支持中文字符集的 monospace 字体,一般选择了就没法输入中文了。UTF8编码倒是配置字符集,但是ANSI的 GB2312 & BIG5 字符集一直不支持,除非选择支持GB2312&BIG5字符集的字体,比如 "Fixedsys" “NSimSun” 与其他中文字体。以下这个补丁就是给putty添加 GB2312 & BIG5 字符集支持,用VC编译后选择其中所需的字符集即可.
--- putty-src-orig/windows/winucs.c 2015-07-25 11:22:48.000000000 +0800
+++ putty-src/windows/winucs.c 2015-08-21 10:47:56.350800800 +0800
@@ -429,7 +429,8 @@
{"CP819", 28591},
{"CP852", 852},
{"CP878", 20866},
-
+ {"BIG5", 950},
+ {"GB2312", 936},
+ {"GB18030", 54936},
{"Use font encoding", -1},
{0, 0}
注:
如果使用UTF8编码,有一个快速方法选择UTF-8字符集,即在putty命令窗口输入
echo -ne '\e%G\e[?47h\e%G\e[?47l'
即可快速选择UTF-8字符集,输入查看UTF-8中文.
参考 :
快速选择UTF-8字符集 http://planetozh.com/blog/2007/08/how-to-display-utf8-in-your-putty-bash-shell/
windows 字符编码表 https://msdn.microsoft.com/en-us/library/windows/desktop/dd317756(v=vs.85).aspx