我最近为我的程序安装了gem Win32Console。该程序有波兰语“界面”,其中包括波兰语特殊字符。它可以很好地为每个
puts "Ciekawym polskim słowem jest: żółć"然而,使用转义字符来着色测试(这是有效的)似乎改变了编码,并且Windows 7 CMD错误地显示了这样的变音符号:
green = "\e[1;32;40m"
puts "#{green}Ciekawym polskim słowem jest: żółć"老实说,由于我对Ruby处理不同编码的了解有限,我真的不知道从哪里开始-这是Ruby、Win32Console或命令提示符本身的问题吗?
发布于 2014-08-07 20:58:21
Windows控制台根本不支持ASCII转义序列(\e[...)。(ANSI escape code - Wikipedia)。
发布于 2014-08-11 03:54:24
原来是我装的宝石。后来我发现Ruby 2.0和更高版本内置了对转义代码的支持,并且它在UTF-8上工作得很好。
https://stackoverflow.com/questions/25182990
复制相似问题