]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - doc/plugins/write.mdwn
* Add a html plugin, which can be used to write wikis in raw html,
[git.ikiwiki.info.git] / doc / plugins / write.mdwn
index 245f7c9ee8dad10063c050bb90d416d1927bcc3c..5be90efdfb73be9a286ce234e0aad5e3fba367a2 100644 (file)
@@ -35,10 +35,12 @@ This is probably the most common use of a plugin.
 Replace "foo" with the command name that will be used inside brackers for
 the preprocessor directive.
 
 Replace "foo" with the command name that will be used inside brackers for
 the preprocessor directive.
 
-Each time the directive is processed, the referenced function (`preprocess` in the example above) is called, and is passed named parameters. A
-"page" parameter gives the name of the page that embedded the preprocessor directive. All parameters included in the directive are included
-as named parameters as well. Whatever the function returns goes onto the
-page in place of the directive.
+Each time the directive is processed, the referenced function (`preprocess`
+in the example above) is called, and is passed named parameters. A "page"
+parameter gives the name of the page that embedded the preprocessor
+directive. All parameters included in the directive are included as named
+parameters as well. Whatever the function returns goes onto the page in
+place of the directive.
 
 ## Error handing
 
 
 ## Error handing
 
@@ -53,7 +55,8 @@ Note that if the [[htmlscrubber]] is enabled, html in
 [[PreProcessorDirective]] output is sanitised, which may limit what your
 plugin can do. Also, the rest of the page content is not in html format at
 preprocessor time. Text output by a preprocessor directive will be passed
 [[PreProcessorDirective]] output is sanitised, which may limit what your
 plugin can do. Also, the rest of the page content is not in html format at
 preprocessor time. Text output by a preprocessor directive will be passed
-through markdown along with the rest of the page.
+through markdown (or whatever engine is used to htmlize the page) along
+with the rest of the page.
 
 # Other types of hooks
 
 
 # Other types of hooks
 
@@ -77,14 +80,14 @@ Runs on the raw source of a page, before anything else touches it, and can
 make arbitrary changes. The function is passed named parameters `page` and
 `content` and should return the filtered content.
 
 make arbitrary changes. The function is passed named parameters `page` and
 `content` and should return the filtered content.
 
-## sanitize
+## htmlize
 
 
-       IkiWiki::hook(type => "filter", id => "foo", call => \&sanitize);
+       IkiWiki::hook(type => "htmlize", id => "ext", call => \&filter);
 
 
-Use this to implement html sanitization or anything else that needs to
-modify the content of a page after it has been fully converted to html.
-The function is passed the page content and should return the sanitized
-content.
+Runs on the raw source of a page and turns it into html. The id parameter
+specifies the filename extension that a file must have to be htmlized using
+this plugin. This is how you can add support for new and exciting markup
+languages to ikiwiki.
 
 ## pagetemplate
 
 
 ## pagetemplate
 
@@ -97,6 +100,15 @@ be used to generate the page. It can manipulate that template, the most
 common thing to do is probably to call $template->param() to add a new
 custom parameter to the template.
 
 common thing to do is probably to call $template->param() to add a new
 custom parameter to the template.
 
+## sanitize
+
+       IkiWiki::hook(type => "sanitize", id => "foo", call => \&sanitize);
+
+Use this to implement html sanitization or anything else that needs to
+modify the content of a page after it has been fully converted to html.
+The function is passed the page content and should return the sanitized
+content.
+
 ## delete
 
        IkiWiki::hook(type => "delete", id => "foo", call => \&dele);
 ## delete
 
        IkiWiki::hook(type => "delete", id => "foo", call => \&dele);