]> sipb.mit.edu Git - ikiwiki.git/blobdiff - doc/todo/varioki_--_add_template_variables___40__with_closures_for_values__41___in_ikiwiki.setup.mdwn
update diff (one redundant hunk removed)
[ikiwiki.git] / doc / todo / varioki_--_add_template_variables___40__with_closures_for_values__41___in_ikiwiki.setup.mdwn
index 426e169ef32457d1be2b16b6609843835c0f38f8..b28469993864708a54e16520440a64ba8dfc271b 100644 (file)
@@ -15,7 +15,7 @@ ManojSrivastava
 
 > I think you could now implement "toplvl" using [[conditionals|/plugins/conditional]]:
 >
->     \[[if test="destpage(/index)" then="""...""" else="""..."""]]
+>     \[[!if test="destpage(/index)" then="""...""" else="""..."""]]
 >
 > --[[JoshTriplett]]
 
@@ -39,7 +39,7 @@ ManojSrivastava
                         'hashvar'  => '{1, 1, 2, 2}',
                         'toplvl'   => 'sub {return $page eq "index"}',
                         'isblog'   => 'sub {return $page =~ m,blog/.*,}',
-                        'category' => 'sub { return " " unless $page=~ m,^blog/,; my  $p=""; my $i="<a href=\"$config{url}/blog\">Top::</a>"; my @a=split ("/",$page); shift @a; pop @a; foreach my $dir (@a) { $p.=$dir; $i.="<a href=\"$config{url}/tag/$p\">$dir</a>::"; $p.="/"; }; return $i }',
+                        'category' => 'sub { return " " unless $page=~ m,^blog/,; my  $p=""; my $i="&lt;a href=\"$config{url}/blog\"&gt;Top::&lt;/a&gt;"; my @a=split ("/",$page); shift @a; pop @a; foreach my $dir (@a) { $p.=$dir; $i.="&lt;a href=\"$config{url}/tag/$p\"&gt;$dir&lt;/a&lt;::"; $p.="/"; }; return $i }',
                         'date'     => 'sub { return POSIX::strftime("%d", gmtime((stat(srcfile($pagesources{$page})))[9])); }',
                         'year'     => 'sub { return POSIX::strftime("%Y", gmtime((stat(srcfile($pagesources{$page})))[9])); }',
                         'month'    => 'sub { return POSIX::strftime("%B", gmtime((stat(srcfile($pagesources{$page})))[9])); }',
@@ -47,6 +47,15 @@ ManojSrivastava
                       },
 </pre>
 
+> > I'd argue in favour of this plugin; it's true that a simple plugin can be
+> > used to set a template variable, but that makes it necessary to write a new
+> > plugin for every variable (or set of variables) that are needed. In that
+> > kind of situation, I don't think bypassing the plugin mechanism is a bad
+> > thing, unless an ever-growing collection of plugins to set one or two
+> > variables is a good thing.
+> >
+> > --[[bma]]
+
 ----
 
 <pre>
@@ -148,9 +157,9 @@ ManojSrivastava
 +=cut
 +
 +
-+sub import { #{{{
++sub import {
 +      hook(type => "pagetemplate", id => "varioki", call => \&pagetemplate);
-+} # }}}
++}
 +
 +
 +=pod
@@ -166,7 +175,7 @@ ManojSrivastava
 +
 +=cut
 +
-+sub pagetemplate (@) { #{{{
++sub pagetemplate (@) {
 +      my %params=@_;
 +      my $page=$params{page};
 +      my $template=$params{template};
@@ -198,7 +207,7 @@ ManojSrivastava
 +             $template->param("$var" =>"$value");
 +           }
 +        }
-+} # }}}
++}
 +
 +1;
 +
@@ -254,4 +263,4 @@ ManojSrivastava
 +
 </pre>
 
-[[tag patch]]
+[[!tag patch]]