ikiwiki/doc/todo/fortune:_select_options_via...

35 lines
1.3 KiB
Markdown

diff -up fortune.pm.ORIG fortune.pm.MODIFIED
--- fortune.pm.ORIG 2008-01-11 19:07:48.000000000 +0100
+++ fortune.pm.MODIFIED 2008-01-12 07:58:44.000000000 +0100
@@ -1,5 +1,11 @@
#!/usr/bin/perl
-# Include a fortune in a page
+# Include a fortune in a page.
+# If the environment variable IKIWIKI_FORTUNE_COMMAND is defined, use it.
+# This allows to run e.g.:
+# $IKIWIKI_FORTUNE_COMMAND='fortune ~/.fortune/myfortunes' \
+# ikiwiki -setup ~/.ikiwiki/ikiwiki.setup
+# Combining this with cron could make regenerated wiki content.
+# This may or may not be a good thing wrt. version control.
package IkiWiki::Plugin::fortune;
use warnings;
@@ -12,7 +18,13 @@ sub import {
sub preprocess (@) {
$ENV{PATH}="$ENV{PATH}:/usr/games:/usr/local/games";
- my $f = `fortune 2>/dev/null`;
+ my $f;
+ if (exists ($ENV{'IKIWIKI_FORTUNE_COMMAND'})) {
+ $f = `$ENV{'IKIWIKI_FORTUNE_COMMAND'} 2>/dev/null`
+ }
+ else {
+ $f = `fortune 2>/dev/null`;
+ }
if ($?) {
return "[[".gettext("fortune failed")."]]";
> An environment variable is not the right approach. Ikiwiki has a setup
> file, and plugins can use configuration from there. --[[Joey]]