X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/77136538788350ad2decaa445704ba5738074736..96c7e31c34b10e343afb3f17eb1ca7c34aaa4123:/IkiWiki/Plugin/shortcut.pm

diff --git a/IkiWiki/Plugin/shortcut.pm b/IkiWiki/Plugin/shortcut.pm
index dec8afdb5..0cedbe447 100644
--- a/IkiWiki/Plugin/shortcut.pm
+++ b/IkiWiki/Plugin/shortcut.pm
@@ -3,35 +3,42 @@ package IkiWiki::Plugin::shortcut;
 
 use warnings;
 use strict;
-use IkiWiki 2.00;
+use IkiWiki 3.00;
 
-sub import { #{{{
+sub import {
 	hook(type => "getsetup", id => "shortcut", call => \&getsetup);
 	hook(type => "checkconfig", id => "shortcut", call => \&checkconfig);
 	hook(type => "preprocess", id => "shortcut", call => \&preprocess_shortcut);
-} #}}}
+}
 
-sub getsetup () { #{{{
+sub getsetup () {
 	return
 		plugin => {
 			safe => 1,
 			rebuild => undef,
+			section => "widget",
 		},
-} #}}}
+}
 
-sub checkconfig () { #{{{
-	if (defined $config{srcdir}) {
+sub checkconfig () {
+	if (defined $config{srcdir} && length $config{srcdir}) {
 		# Preprocess the shortcuts page to get all the available shortcuts
 		# defined before other pages are rendered.
-		my $srcfile=srcfile("shortcuts.mdwn", 1);
+		my $srcfile=srcfile("shortcuts.".$config{default_pageext}, 1);
 		if (! defined $srcfile) {
-			error(gettext("shortcut plugin will not work without a shortcuts.mdwn"));
+			$srcfile=srcfile("shortcuts.mdwn", 1);
+		}
+		if (! defined $srcfile) {
+			print STDERR sprintf(gettext("shortcut plugin will not work without %s"),
+				"shortcuts.".$config{default_pageext})."\n";
+		}
+		else {
+			IkiWiki::preprocess("shortcuts", "shortcuts", readfile($srcfile));
 		}
-		IkiWiki::preprocess("shortcuts", "shortcuts", readfile($srcfile));
 	}
-} # }}}
+}
 
-sub preprocess_shortcut (@) { #{{{
+sub preprocess_shortcut (@) {
 	my %params=@_;
 
 	if (! defined $params{name} || ! defined $params{url}) {
@@ -46,9 +53,9 @@ sub preprocess_shortcut (@) { #{{{
 	#translators: First parameter is the name of the shortcut, the second
 	#translators: is an URL.
 	return sprintf(gettext("shortcut %s points to <i>%s</i>"), $params{name}, $params{url});
-} # }}}
+}
 
-sub shortcut_expand ($$@) { #{{{
+sub shortcut_expand ($$@) {
 	my $url=shift;
 	my $desc=shift;
 	my %params=@_;
@@ -85,6 +92,6 @@ sub shortcut_expand ($$@) { #{{{
 	}
 
 	return "<a href=\"$url\">$desc</a>";
-} #}}}
+}
 
 1