diff options
| -rwxr-xr-x | .ikiwiki/IkiWiki/Plugin/pandoc.pm | 14 | 
1 files changed, 12 insertions, 2 deletions
| diff --git a/.ikiwiki/IkiWiki/Plugin/pandoc.pm b/.ikiwiki/IkiWiki/Plugin/pandoc.pm index 7551215..adff519 100755 --- a/.ikiwiki/IkiWiki/Plugin/pandoc.pm +++ b/.ikiwiki/IkiWiki/Plugin/pandoc.pm @@ -42,6 +42,12 @@ my @list_meta_keys = qw/      author      /; +my @hash_meta_keys = qw/ +    experiment +    /; + +my @list_hash_meta_keys = qw/ +    references      /;  sub debug_get_filename_prefix { @@ -564,7 +570,8 @@ sub htmlize ($@) {      $scalar_meta{$_.'_template'} = undef for @format_keys;      my %bool_meta = map { ("generate_$_"=>0) } keys %extra_formats; -    my %list_meta = map { ($_=>[]) } @list_meta_keys; +    my %list_meta = map { ($_=>[]) } ( +        @list_meta_keys, @list_hash_meta_keys, @hash_meta_keys);      $list_meta{$_.'_extra_options'} = [] for @format_keys;      my $have_bibl = 0; @@ -594,6 +601,7 @@ sub htmlize ($@) {          $list_meta{$k} = unwrap_c($meta->{$k});          $list_meta{$k} = [$list_meta{$k}] unless ref $list_meta{$k} eq 'ARRAY';          $have_bibl = 1 if $k eq 'references'; +        $pagestate{$page}{meta}{$k} = $list_meta{$k};          $pagestate{$page}{meta}{"pandoc_$k"} = $list_meta{$k};      }      # Try to add other keys as scalars, with pandoc_ prefix only. @@ -752,7 +760,9 @@ sub pagetemplate (@) {      foreach my $k (keys %{$pagestate{$page}{meta}}) {          next unless -            (grep {/^$k$/} (@scalar_meta_keys, @list_meta_keys)) || +            (grep {/^$k$/} ( +                 @scalar_meta_keys, @list_meta_keys, +                 @hash_meta_keys, @list_hash_meta_keys)) ||              ($k =~ /^(pandoc_)/);          $template->param($k => $pagestate{$page}{meta}{$k});      } | 
