X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/f398ad035b973608d380c9939ea845d8e2a0cdc2..0fbcd69a1d3c0b62c895b4ff70ef396408d125dc:/IkiWiki/Plugin/table.pm diff --git a/IkiWiki/Plugin/table.pm b/IkiWiki/Plugin/table.pm index 2edd1eacd..7fea8ab1c 100644 --- a/IkiWiki/Plugin/table.pm +++ b/IkiWiki/Plugin/table.pm @@ -40,6 +40,9 @@ sub preprocess (@) { # scan that file too. return unless exists $params{file}; + # Preprocess in scan-only mode. + IkiWiki::preprocess($params{page}, $params{page}, $params{data}, 1); + IkiWiki::run_hooks(scan => sub { shift->( page => $params{page}, @@ -47,9 +50,6 @@ sub preprocess (@) { ); }); - # Preprocess in scan-only mode. - IkiWiki::preprocess($params{page}, $params{page}, $params{data}, 1); - return; } @@ -135,6 +135,7 @@ sub split_csv ($$) { my $csv = Text::CSV->new({ sep_char => $delimiter, binary => 1, + decode_utf8 => 1, allow_loose_quotes => 1, }) || error("could not create a Text::CSV object"); @@ -143,7 +144,7 @@ sub split_csv ($$) { foreach my $line (@text_lines) { $l++; if ($csv->parse($line)) { - push(@data, [ map { decode_utf8 $_ } $csv->fields() ]); + push(@data, [ $csv->fields() ]); } else { debug(sprintf(gettext('parse fail at line %d: %s'),