diff options
author | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2007-04-27 02:55:52 +0000 |
---|---|---|
committer | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2007-04-27 02:55:52 +0000 |
commit | ee1ad53c4c2710aa7ded61bdc56f3a8cce514f22 (patch) | |
tree | 85914bbbf7ac596f0fc001071c91f4e31db0b49e /doc/plugins | |
parent | 80aa0336e692ba9c63cb934d91bf5f1962507700 (diff) | |
download | ikiwiki-ee1ad53c4c2710aa7ded61bdc56f3a8cce514f22.tar ikiwiki-ee1ad53c4c2710aa7ded61bdc56f3a8cce514f22.tar.gz |
* pagespec_match() has changed to take named parameters, to better allow
for extended pagespecs. The old calling convention will still work for
back-compat for now.
* The calling convention for functions in the IkiWiki::PageSpec namespace
has changed so they are passed named parameters.
* Plugin interface version increased to 2.00 since I don't anticipate any
more interface changes before 2.0.
Diffstat (limited to 'doc/plugins')
-rw-r--r-- | doc/plugins/write.mdwn | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/doc/plugins/write.mdwn b/doc/plugins/write.mdwn index 4dd057074..d9f25641d 100644 --- a/doc/plugins/write.mdwn +++ b/doc/plugins/write.mdwn @@ -20,6 +20,8 @@ being edited. ## Registering plugins All plugins should `use IkiWiki` to import the ikiwiki plugin interface. +It's a good idea to include the version number of the plugin interface that +your plugin expects: `use IkiWiki 2.00` Plugins should, when imported, call `hook()` to hook into ikiwiki's processing. The function uses named parameters, and use varies depending on @@ -316,12 +318,15 @@ page created from it. (Ie, it appends ".html".) Makes the specified page depend on the specified [[PageSpec]]. -#### `pagespec_match($$;$)` +#### `pagespec_match($$;@)` -Passed a page name, a [[PageSpec]], and the location the [[PageSpec]] should -be matched against, returns true if the [[PageSpec]] matches the page. (If -the third parameter is not passed, relative PageSpecs will match relative to -the top of the wiki.) +Passed a page name, and [[PageSpec]], returns true if the [[PageSpec]] +matches the page. + +Additional named parameters can be passed, to further limit the match. +The most often used is "location", which specifies the location the +PageSpec should match against. If not passed, relative PageSpecs will match +relative to the top of the wiki. #### `bestlink($$)` @@ -441,6 +446,6 @@ It's also possible to write plugins that add new functions to [[PageSpecs|PageSpec]]. Such a plugin should add a function to the IkiWiki::PageSpec package, that is named `match_foo`, where "foo()" is how it will be accessed in a [[PageSpec]]. The function will be passed -three parameters: The name of the page being matched, the thing to match -against, and the page that the matching is occuring on. It should return +two parameters: The name of the page being matched, and the thing to match +against. It may also be passed additional, named parameters. It should return true if the page matches. |