hook(type => "needsbuild", id => "foo", call => \&needsbuild);
-This allows a plugin to manipulate the list of files that need to be
-built when the wiki is refreshed. The function is passed a reference to an
-array of files that will be rebuilt, and can modify the array, either
-adding or removing files from it.
+This allows a plugin to observe or even manipulate the list of files that
+need to be built when the wiki is refreshed.
+
+As its first parameter, the function is passed a reference to an array of
+files that will be built. It should return an array reference that is a
+modified version of its input. It can add or remove files from it.
+
+The second parameter passed to the function is a reference to an array of
+files that have been deleted.
### scan
The function is passed named parameters "page" and "content". Its return
value is ignored.
-### rescan
-
- hook(type => "rescan", id => "foo", call => \&scan);
-
-This hook is called after the scan hook has been run, as well as the
-preprocess hook in scan mode. It is used to collect additional
-metadata that depends on a first scan to have been performed already.
-
-The function is passed named parameters "page" and "content". Its return
-value is ignored.
-
### filter
hook(type => "filter", id => "foo", call => \&filter);
the templates/ directory. If the page name starts with "/", a page
elsewhere in the wiki can be used.
+If the template is not found, or contains a syntax error, an error is thrown.
+
### `template_depends($$;@)`
Use this instead of `template()` if the content of a template is being