HTMLテーブルを生成するための小さなラッパーサブルーチンを作成しましたがHTML::Table
、同時に使用するutf8::all
と、奇妙な警告が生成されます。
utf8 "\xE4" does not map to Unicode at /usr/share/perl5/HTML/Table.pm line 756.
756行目はPODの真ん中にあるので、何が悪いのかわかりません。
問題を再現するためのスクリプト例:
use 5.012;
use utf8::all;
use HTML::Table;
my @head = qw(col1 col2 col3);
my @table = (
[ qw( yks kaks kolm) ],
[ qw( neli viis kuus) ],
);
say table_draw( table => \@table, header => \@head );
sub table_draw {
my (%args) = @_;
$args{border} ||= 0;
$args{padding} ||= 1;
$args{width} ||= '95%';
my $table = new HTML::Table(
-head=> $args{header},
-data=> $args{table},
-width=> $args{width},
-border=> $args{border},
-padding=> $args{padding},
);
return $table;
}
編集:5.10では警告も表示されなかったため、Perlの最小バージョンを変更しました。