如何在 neovim 中获得可读的 Data::Printer 输出?
How to get readable Data::Printer output inside neovim?
我不确定我需要在这里调整什么。当我从 neovim
中执行我的 Perl 文件时,我得到了不可读的输出。我正在使用 Data::Printer
1.000004
nvim --version
NVIM v0.7.0-dev+1135-gfdea15723
cat ~/.dataprinter
array_max = 5000
end_separator = 1
filters = DB, DateTime, JSON, URI
hash_separator = ' => '
index = 1
scalar_quotes = '
#!/usr/bin/env perl
use strict;
use warnings;
use feature qw( state );
use List::SomeUtils qw( part );
my $i = 0;
my @part = part { $i++ % 2 } 1 .. 8;
use DDP;
p @part;
~
~
~
~
~
~
~
~
~
~
~
~
~
~
:call ExecFile()
:!"/Users/olafalders/Documents/perl/part.pl"
^[[0;38;2;102;217;239m[^[[0m
^[[0;38;2;161;187;197m[0] ^[[0m^[[0;38;2;102;217;239m[^[[0m
^[[0;38;2;161;187;197m[0] ^[[0m^[[0;38;2;247;140;106m1^[[0m^[[0;38;2;102;217;239m,^[[0m
^[[0;38;2;161;187;197m[1] ^[[0m^[[0;38;2;247;140;106m3^[[0m^[[0;38;2;102;217;239m,^[[0m
^[[0;38;2;161;187;197m[2] ^[[0m^[[0;38;2;247;140;106m5^[[0m^[[0;38;2;102;217;239m,^[[0m
^[[0;38;2;161;187;197m[3] ^[[0m^[[0;38;2;247;140;106m7^[[0m^[[0;38;2;102;217;239m,^[[0m
^[[0;38;2;102;217;239m]^[[0m^[[0;38;2;102;217;239m,^[[0m
^[[0;38;2;161;187;197m[1] ^[[0m^[[0;38;2;102;217;239m[^[[0m
^[[0;38;2;161;187;197m[0] ^[[0m^[[0;38;2;247;140;106m2^[[0m^[[0;38;2;102;217;239m,^[[0m
^[[0;38;2;161;187;197m[1] ^[[0m^[[0;38;2;247;140;106m4^[[0m^[[0;38;2;102;217;239m,^[[0m
^[[0;38;2;161;187;197m[2] ^[[0m^[[0;38;2;247;140;106m6^[[0m^[[0;38;2;102;217;239m,^[[0m
^[[0;38;2;161;187;197m[3] ^[[0m^[[0;38;2;247;140;106m8^[[0m^[[0;38;2;102;217;239m,^[[0m
^[[0;38;2;102;217;239m]^[[0m^[[0;38;2;102;217;239m,^[[0m
^[[0;38;2;102;217;239m]^[[0m
实际输出应如下所示:
[
[0] [
[0] 1,
[1] 3,
[2] 5,
[3] 7,
],
[1] [
[0] 2,
[1] 4,
[2] 6,
[3] 8,
],
]
Data::Printer
自我描述为:
colored & full-featured pretty print of Perl data structures and objects
您看到的垃圾是程序包用来为输出着色的转义序列,执行脚本的 shell 无法理解。
要解决 script/environment 级别的问题,我建议阅读 the documentation of the package,其中提到了 colored
属性 和 ANSI_COLORS_DISABLED
环境多变的。这应该是你的第一步。
为了在编辑器级别解决它,我建议使用 built-in :help :terminal
,它支持 ANSI 颜色,而不是 :!
,后者不支持。
另外,这里不涉及quickfix window。
我不确定我需要在这里调整什么。当我从 neovim
中执行我的 Perl 文件时,我得到了不可读的输出。我正在使用 Data::Printer
1.000004
nvim --version
NVIM v0.7.0-dev+1135-gfdea15723
cat ~/.dataprinter
array_max = 5000
end_separator = 1
filters = DB, DateTime, JSON, URI
hash_separator = ' => '
index = 1
scalar_quotes = '
#!/usr/bin/env perl
use strict;
use warnings;
use feature qw( state );
use List::SomeUtils qw( part );
my $i = 0;
my @part = part { $i++ % 2 } 1 .. 8;
use DDP;
p @part;
~
~
~
~
~
~
~
~
~
~
~
~
~
~
:call ExecFile()
:!"/Users/olafalders/Documents/perl/part.pl"
^[[0;38;2;102;217;239m[^[[0m
^[[0;38;2;161;187;197m[0] ^[[0m^[[0;38;2;102;217;239m[^[[0m
^[[0;38;2;161;187;197m[0] ^[[0m^[[0;38;2;247;140;106m1^[[0m^[[0;38;2;102;217;239m,^[[0m
^[[0;38;2;161;187;197m[1] ^[[0m^[[0;38;2;247;140;106m3^[[0m^[[0;38;2;102;217;239m,^[[0m
^[[0;38;2;161;187;197m[2] ^[[0m^[[0;38;2;247;140;106m5^[[0m^[[0;38;2;102;217;239m,^[[0m
^[[0;38;2;161;187;197m[3] ^[[0m^[[0;38;2;247;140;106m7^[[0m^[[0;38;2;102;217;239m,^[[0m
^[[0;38;2;102;217;239m]^[[0m^[[0;38;2;102;217;239m,^[[0m
^[[0;38;2;161;187;197m[1] ^[[0m^[[0;38;2;102;217;239m[^[[0m
^[[0;38;2;161;187;197m[0] ^[[0m^[[0;38;2;247;140;106m2^[[0m^[[0;38;2;102;217;239m,^[[0m
^[[0;38;2;161;187;197m[1] ^[[0m^[[0;38;2;247;140;106m4^[[0m^[[0;38;2;102;217;239m,^[[0m
^[[0;38;2;161;187;197m[2] ^[[0m^[[0;38;2;247;140;106m6^[[0m^[[0;38;2;102;217;239m,^[[0m
^[[0;38;2;161;187;197m[3] ^[[0m^[[0;38;2;247;140;106m8^[[0m^[[0;38;2;102;217;239m,^[[0m
^[[0;38;2;102;217;239m]^[[0m^[[0;38;2;102;217;239m,^[[0m
^[[0;38;2;102;217;239m]^[[0m
实际输出应如下所示:
[
[0] [
[0] 1,
[1] 3,
[2] 5,
[3] 7,
],
[1] [
[0] 2,
[1] 4,
[2] 6,
[3] 8,
],
]
Data::Printer
自我描述为:
colored & full-featured pretty print of Perl data structures and objects
您看到的垃圾是程序包用来为输出着色的转义序列,执行脚本的 shell 无法理解。
要解决 script/environment 级别的问题,我建议阅读 the documentation of the package,其中提到了 colored
属性 和 ANSI_COLORS_DISABLED
环境多变的。这应该是你的第一步。
为了在编辑器级别解决它,我建议使用 built-in :help :terminal
,它支持 ANSI 颜色,而不是 :!
,后者不支持。
另外,这里不涉及quickfix window。