Terminal ANSI颜色在Inline::Perl5(Data::Printer)中失效问题
Perl 5与Perl 6中Data::Printer的输出差异
最近我在对比Perl 5和Perl 6下使用Data::Printer的表现时,发现了两处明显的差异,具体情况如下:
Perl 5 场景
使用如下Perl 5脚本:
use strict; use warnings; use Data::Printer; my @a = (1,2,3,4); p @a;
运行后,输出里的数字会以蓝色高亮显示。
Perl 6 场景
在Perl 6中我们通过from<Perl5>调用Perl 5版本的Data::Printer,脚本如下:
use Data::Printer:from<Perl5>; my @a = 1,2,3,4; p @a;
运行后的输出格式为:
[ [0] 1, [1] 2, [2] 3, [3] 4 ]
但这里的数字没有任何颜色高亮效果,同时数组的显示格式也和Perl 5有所不同,会额外输出每个元素的索引。
系统环境信息
Perl 5 版本详情
$ perl --version This is perl 5, version 29, subversion 3 (v5.29.3) built for x86_64-linux
Perl 6 及相关环境详情
$ perl6 -e '.say for $*DISTRO, $*VM, $*PERL.compiler.version' ubuntu (18.10.Cosmic.Cuttlefish) moar (2018.11) v2018.11
内容的提问来源于stack exchange,提问作者Håkon Hægland
相关产品推荐
相关产品推荐

