summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--IkiWiki.pm17
-rw-r--r--IkiWiki/Plugin/bzr.pm3
-rw-r--r--IkiWiki/Plugin/git.pm3
-rw-r--r--IkiWiki/Plugin/mercurial.pm3
-rw-r--r--IkiWiki/Plugin/monotone.pm3
-rw-r--r--IkiWiki/Plugin/svn.pm3
-rw-r--r--IkiWiki/Plugin/tla.pm3
7 files changed, 10 insertions, 25 deletions
diff --git a/IkiWiki.pm b/IkiWiki.pm
index 6a6e93e7e..bfa85343d 100644
--- a/IkiWiki.pm
+++ b/IkiWiki.pm
@@ -412,13 +412,6 @@ sub checkconfig () { #{{{
$config{wikistatedir}="$config{srcdir}/.ikiwiki"
unless exists $config{wikistatedir};
-
- if ($config{rcs}) {
- loadplugin($config{rcs});
- }
- else {
- loadplugin("norcs");
- }
if (defined $config{umask}) {
umask(possibly_foolish_untaint($config{umask}));
@@ -455,6 +448,16 @@ sub loadplugins () { #{{{
}
loadplugin($_) foreach @{$config{default_plugins}}, @{$config{add_plugins}};
+
+ if ($config{rcs}) {
+ if (exists $IkiWiki::hooks{rcs}) {
+ error(gettext("cannot use multiple rcs plugins"));
+ }
+ loadplugin($config{rcs});
+ }
+ if (! exists $IkiWiki::hooks{rcs}) {
+ loadplugin("norcs");
+ }
run_hooks(getopt => sub { shift->() });
if (grep /^-/, @ARGV) {
diff --git a/IkiWiki/Plugin/bzr.pm b/IkiWiki/Plugin/bzr.pm
index e7b22f3c5..99025a973 100644
--- a/IkiWiki/Plugin/bzr.pm
+++ b/IkiWiki/Plugin/bzr.pm
@@ -8,9 +8,6 @@ use Encode;
use open qw{:utf8 :std};
sub import { #{{{
- if (exists $IkiWiki::hooks{rcs}) {
- error(gettext("cannot use multiple rcs plugins"));
- }
hook(type => "checkconfig", id => "bzr", call => \&checkconfig);
hook(type => "getsetup", id => "bzr", call => \&getsetup);
hook(type => "rcs", id => "rcs_update", call => \&rcs_update);
diff --git a/IkiWiki/Plugin/git.pm b/IkiWiki/Plugin/git.pm
index b683e4ec3..d1c1165e0 100644
--- a/IkiWiki/Plugin/git.pm
+++ b/IkiWiki/Plugin/git.pm
@@ -11,9 +11,6 @@ my $sha1_pattern = qr/[0-9a-fA-F]{40}/; # pattern to validate Git sha1sums
my $dummy_commit_msg = 'dummy commit'; # message to skip in recent changes
sub import { #{{{
- if (exists $IkiWiki::hooks{rcs}) {
- error(gettext("cannot use multiple rcs plugins"));
- }
hook(type => "checkconfig", id => "git", call => \&checkconfig);
hook(type => "getsetup", id => "git", call => \&getsetup);
hook(type => "rcs", id => "rcs_update", call => \&rcs_update);
diff --git a/IkiWiki/Plugin/mercurial.pm b/IkiWiki/Plugin/mercurial.pm
index b05c954dc..d2c34fa6a 100644
--- a/IkiWiki/Plugin/mercurial.pm
+++ b/IkiWiki/Plugin/mercurial.pm
@@ -8,9 +8,6 @@ use Encode;
use open qw{:utf8 :std};
sub import { #{{{
- if (exists $IkiWiki::hooks{rcs}) {
- error(gettext("cannot use multiple rcs plugins"));
- }
hook(type => "checkconfig", id => "mercurial", call => \&checkconfig);
hook(type => "getsetup", id => "mercurial", call => \&getsetup);
hook(type => "rcs", id => "rcs_update", call => \&rcs_update);
diff --git a/IkiWiki/Plugin/monotone.pm b/IkiWiki/Plugin/monotone.pm
index a591ecec5..4b9be316a 100644
--- a/IkiWiki/Plugin/monotone.pm
+++ b/IkiWiki/Plugin/monotone.pm
@@ -11,9 +11,6 @@ use Date::Format qw(time2str);
my $sha1_pattern = qr/[0-9a-fA-F]{40}/; # pattern to validate sha1sums
sub import { #{{{
- if (exists $IkiWiki::hooks{rcs}) {
- error(gettext("cannot use multiple rcs plugins"));
- }
hook(type => "checkconfig", id => "monotone", call => \&checkconfig);
hook(type => "getsetup", id => "monotone", call => \&getsetup);
hook(type => "rcs", id => "rcs_update", call => \&rcs_update);
diff --git a/IkiWiki/Plugin/svn.pm b/IkiWiki/Plugin/svn.pm
index 262fca99a..51683704c 100644
--- a/IkiWiki/Plugin/svn.pm
+++ b/IkiWiki/Plugin/svn.pm
@@ -7,9 +7,6 @@ use IkiWiki;
use POSIX qw(setlocale LC_CTYPE);
sub import { #{{{
- if (exists $IkiWiki::hooks{rcs}) {
- error(gettext("cannot use multiple rcs plugins"));
- }
hook(type => "checkconfig", id => "svn", call => \&checkconfig);
hook(type => "getsetup", id => "svn", call => \&getsetup);
hook(type => "rcs", id => "rcs_update", call => \&rcs_update);
diff --git a/IkiWiki/Plugin/tla.pm b/IkiWiki/Plugin/tla.pm
index fe5965259..6faaecccc 100644
--- a/IkiWiki/Plugin/tla.pm
+++ b/IkiWiki/Plugin/tla.pm
@@ -6,9 +6,6 @@ use strict;
use IkiWiki;
sub import { #{{{
- if (exists $IkiWiki::hooks{rcs}) {
- error(gettext("cannot use multiple rcs plugins"));
- }
hook(type => "checkconfig", id => "tla", call => \&checkconfig);
hook(type => "getsetup", id => "tla", call => \&getsetup);
hook(type => "rcs", id => "rcs_update", call => \&rcs_update);