Would it be possible to add an option to only generate the index files for the html output and not place the markdown files in the wiki source? > Or better still, add a mechanism for ikiwiki to hold transient source > pages in memory and render them as if they existed, without actually > writing them out, as [[JoeRayhawk]] suggests below? I think > add_autofile would be the way to do this. > I've added this to [[todo]] as [[todo/autoindex should use add__95__autofile]] > and [[todo/transient in-memory pages]]. --[[smcv]] The reason being that I have a lot of directories which need to be autoindexed, but I would prefer if the index files didn't clutter up my git repository. even without that feature the plugin is a great help, thanks ------ If you just don't want to clutter your git repo, below it's a patch does the following: * If you set autoindex_commit to 0 in your ikiwiki.setup file, we *do* place auto-generated markdown files in the **wiki source** but *not* in the **repo** * If you set autoindex_commit to 1 (this is the default), auto-generated index files will be put in the repo provided you enabled rcs backend. [[!toggle id="patch-for-autoindex_commit" text="patch for autoindex_commit"]] [[!toggleable id="patch-for-autoindex_commit" text="""
--- autoindex.pm.orig 2009-10-01 17:13:51.000000000 +0800 +++ autoindex.pm 2009-10-01 17:21:09.000000000 +0800 @@ -17,6 +17,13 @@ safe => 1, rebuild => 0, }, + autoindex_commit => { + type => 'boolean', + default => 1, + description => 'commit generated autoindex pages into RCS', + safe => 0, + rebuild => 0, + }, } sub genindex ($) { @@ -25,7 +32,7 @@ my $template=template("autoindex.tmpl"); $template->param(page => $page); writefile($file, $config{srcdir}, $template->output); - if ($config{rcs}) { + if ($config{rcs} and $config{autoindex_commit}) { IkiWiki::rcs_add($file); } } @@ -94,13 +101,13 @@ } if (@needed) { - if ($config{rcs}) { + if ($config{rcs} and $config{autoindex_commit}) { IkiWiki::disable_commit_hook(); } foreach my $page (@needed) { genindex($page); } - if ($config{rcs}) { + if ($config{rcs} and $config{autoindex_commit}) { IkiWiki::rcs_commit_staged( gettext("automatic index generation"), undef, undef);"""]] Warning: I guess this patch may work, but I *haven't tested it yet*. -- [[weakish]] ------ `autoindex_commit => 0` would be nice, but uncommited files are definitely not.
remote: From /srv/git/test3 remote: 3047077..1df636c master -> origin/master remote: error: Untracked working tree file 'test.mdwn' would be overwritten by merge. Aborting remote: 'git pull --prune origin' failed: at /usr/share/perl5/IkiWiki/Plugin/git.pm line 201.It'd be nice if we were able to notice directories with no associated compilable markup files and compile a simple map directive straight to HTML without any intermediate markup file being involved at all. -- JoeRayhawk