]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - IkiWiki/Plugin/table.pm
table: Fix misparsed links in external files
[git.ikiwiki.info.git] / IkiWiki / Plugin / table.pm
index e782fc238dbd40b628f8675fefa36942d9be520c..dd124929d6bbacf704dfc9cab0cdd1d1b597c6be 100644 (file)
@@ -4,22 +4,22 @@ package IkiWiki::Plugin::table;
 use warnings;
 use strict;
 use Encode;
-use IkiWiki 2.00;
+use IkiWiki 3.00;
 
-sub import { #{{{
+sub import {
        hook(type => "getsetup", id => "table", call => \&getsetup);
        hook(type => "preprocess", id => "table", call => \&preprocess);
-} # }}}
+}
 
-sub getsetup () { #{{{
+sub getsetup () {
        return
                plugin => {
                        safe => 1,
                        rebuild => undef,
                },
-} #}}}
+}
 
-sub preprocess (@) { #{{{
+sub preprocess (@) {
        my %params =(
                format  => 'auto',
                header  => 'row',
@@ -50,22 +50,18 @@ sub preprocess (@) { #{{{
                        defined $params{delimiter} ? $params{delimiter} : ",",);
                # linkify after parsing since html link quoting can
                # confuse CSV parsing
-               if (! exists $params{file}) {
-                       @data=map {
-                               [ map {
-                                       IkiWiki::linkify($params{page},
-                                               $params{destpage}, $_);
-                               } @$_ ]
-                       } @data;
-               }
+               @data=map {
+                       [ map {
+                               IkiWiki::linkify($params{page},
+                                       $params{destpage}, $_);
+                       } @$_ ]
+               } @data;
        }
        elsif (lc $params{format} eq 'dsv') {
                # linkify before parsing since wikilinks can contain the
                # delimiter
-               if (! exists $params{file}) {
-                       $params{data} = IkiWiki::linkify($params{page},
-                               $params{destpage}, $params{data});
-               }
+               $params{data} = IkiWiki::linkify($params{page},
+                       $params{destpage}, $params{data});
                @data=split_dsv($params{data},
                        defined $params{delimiter} ? $params{delimiter} : "|",);
        }
@@ -102,16 +98,16 @@ sub preprocess (@) { #{{{
        else {  
                return $html;
        }            
-} #}}}
+}
 
-sub is_dsv_data ($) { #{{{
+sub is_dsv_data ($) {
        my $text = shift;
 
        my ($line) = split(/\n/, $text);
        return $line =~ m{.+\|};
 }
 
-sub split_csv ($$) { #{{{
+sub split_csv ($$) {
        my @text_lines = split(/\n/, shift);
        my $delimiter = shift;
 
@@ -137,9 +133,9 @@ sub split_csv ($$) { #{{{
        }
 
        return @data;
-} #}}}
+}
 
-sub split_dsv ($$) { #{{{
+sub split_dsv ($$) {
        my @text_lines = split(/\n/, shift);
        my $delimiter = shift;
        $delimiter="|" unless defined $delimiter;
@@ -150,9 +146,9 @@ sub split_dsv ($$) { #{{{
        }
     
        return @data;
-} #}}}
+}
 
-sub genrow ($@) { #{{{
+sub genrow ($@) {
        my %params=%{shift()};
        my $elt = shift;
        my @data = @_;
@@ -190,6 +186,6 @@ sub genrow ($@) { #{{{
        push @ret, "\t\t</tr>";
 
        return @ret;
-} #}}}
+}
 
 1