diff options
author | Joey Hess <joey@kodama.kitenet.net> | 2008-07-26 19:10:11 -0400 |
---|---|---|
committer | Joey Hess <joey@kodama.kitenet.net> | 2008-07-26 19:10:11 -0400 |
commit | 52bbdbb1a5ce994c9afac253c1d9bfd94acf4d1d (patch) | |
tree | 798d8593ef3d780b93fda50d9fbcba3af47e956f /IkiWiki.pm | |
parent | f892cc8c50ea6117fcc908838be58c6c34e1d0ea (diff) | |
download | ikiwiki-52bbdbb1a5ce994c9afac253c1d9bfd94acf4d1d.tar ikiwiki-52bbdbb1a5ce994c9afac253c1d9bfd94acf4d1d.tar.gz |
load all plugins when generating setup
Diffstat (limited to 'IkiWiki.pm')
-rw-r--r-- | IkiWiki.pm | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/IkiWiki.pm b/IkiWiki.pm index 4410fc985..a2b9a3e24 100644 --- a/IkiWiki.pm +++ b/IkiWiki.pm @@ -417,6 +417,26 @@ sub checkconfig () { #{{{ return 1; } #}}} +sub listplugins () { #{{{ + my %ret; + + foreach my $dir (@INC, $config{libdir}) { + next unless defined $dir; + foreach my $file (glob("$dir/IkiWiki/Plugin/*.pm")) { + my ($plugin)=$file=~/.*\/(.*)\.pm$/; + $ret{$plugin}=1; + } + } + foreach my $dir ($config{libdir}, "$installdir/lib/ikiwiki") { + next unless defined $dir; + foreach my $file (glob("$dir/plugins/*")) { + $ret{basename($file)}=1 if -x $file; + } + } + + return keys %ret; +} #}}} + sub loadplugins () { #{{{ if (defined $config{libdir}) { unshift @INC, possibly_foolish_untaint($config{libdir}); |