From 30248df40a19dc03c0d8c07e136105f3c2299191 Mon Sep 17 00:00:00 2001 From: Jon Dowland Date: Sat, 16 May 2009 13:56:25 +0100 Subject: check for longname for each syntax plugin We build an array of [ plugin name, long name ] pairs, where long name is an optional argument to hook(). So, a syntax plugin could define long "friendly" name, such as "Markdown" instead of mdwn, and we would then pass this array to formbuilder to populate the drop-down on the edit page. --- IkiWiki/Plugin/editpage.pm | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'IkiWiki/Plugin/editpage.pm') diff --git a/IkiWiki/Plugin/editpage.pm b/IkiWiki/Plugin/editpage.pm index 0068a6b11..eb6a7bbcb 100644 --- a/IkiWiki/Plugin/editpage.pm +++ b/IkiWiki/Plugin/editpage.pm @@ -276,8 +276,14 @@ sub cgi_editpage ($$) { my @page_types; if (exists $hooks{htmlize}) { - @page_types=grep { !/^_/ } - keys %{$hooks{htmlize}}; + foreach my $key (grep { !/^_/ } keys %{$hooks{htmlize}}) { + my $pluginref = ${$hooks{htmlize}}{$key}; + if(${$pluginref}{'longname'}) { + push @page_types, [$key, ${$pluginref}{'longname'}]; + } else { + push @page_types, [$key, $key]; + } + } } $form->tmpl_param("page_select", 1); -- cgit v1.2.3 From eba9b862b2f7d346dfffcd5576cd96fce9dd239d Mon Sep 17 00:00:00 2001 From: Jon Dowland Date: Sat, 16 May 2009 14:44:23 +0100 Subject: tidy up new page_types code --- IkiWiki/Plugin/editpage.pm | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) (limited to 'IkiWiki/Plugin/editpage.pm') diff --git a/IkiWiki/Plugin/editpage.pm b/IkiWiki/Plugin/editpage.pm index eb6a7bbcb..af42097ba 100644 --- a/IkiWiki/Plugin/editpage.pm +++ b/IkiWiki/Plugin/editpage.pm @@ -277,12 +277,7 @@ sub cgi_editpage ($$) { my @page_types; if (exists $hooks{htmlize}) { foreach my $key (grep { !/^_/ } keys %{$hooks{htmlize}}) { - my $pluginref = ${$hooks{htmlize}}{$key}; - if(${$pluginref}{'longname'}) { - push @page_types, [$key, ${$pluginref}{'longname'}]; - } else { - push @page_types, [$key, $key]; - } + push @page_types, [$key, $hooks{htmlize}{$key}{longname} || $key]; } } -- cgit v1.2.3