From: William Uther Date: Thu, 11 Sep 2008 21:05:51 +0000 (-0400) Subject: patch plugin documentation to refer to directive pages X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/commitdiff_plain/c69a7f758590c91bd137a8d1cfa99f37bf28045a?hp=4f0ac7fe59c196a602e07cc6c4abfc248999ec6b patch plugin documentation to refer to directive pages --- diff --git a/doc/ikiwiki/directive.mdwn b/doc/ikiwiki/directive.mdwn index a0a4e1fa8..4ab9a2076 100644 --- a/doc/ikiwiki/directive.mdwn +++ b/doc/ikiwiki/directive.mdwn @@ -37,3 +37,15 @@ above as the preferred alternative. However, ikiwiki still supports wikis using the older syntax, if the `prefix_directives` option is not enabled. For backward compatibility with existing wikis, this option currently defaults to off, so ikiwiki supports the old syntax. + +[[!if test="enabled(shortcut)" then=""" +The [[/ikiwiki/directive/shortcut]] directive allows defining simple wikilinks to +remote wikis. See the [[shortcuts]] page for a list of these shortcuts. +"""]] + +[[!if test="enabled(listdirectives)" then=""" +Here is a list of available (non-[[shortcut|shortcuts]]) directives: + +[[!listdirectives]] +"""]] + diff --git a/doc/plugins/aggregate.mdwn b/doc/plugins/aggregate.mdwn index ecca0232e..9bedab1cb 100644 --- a/doc/plugins/aggregate.mdwn +++ b/doc/plugins/aggregate.mdwn @@ -1,23 +1,7 @@ [[!template id=plugin name=aggregate author="[[Joey]]"]] [[!tag type/useful]] -This plugin allows content from other feeds to be aggregated into the wiki. -Aggregate a feed as follows: - - \[[!aggregate name="example blog" dir="example" - feedurl="http://example.com/index.rss" - url="http://example.com/" updateinterval="15"]] - -That example aggregates posts from the specified RSS feed, updating no -more frequently than once every 15 minutes, and puts a page per post under -the example/ directory in the wiki. - -You can then use ikiwiki's [[ikiwiki/blog]] support to create a blog of one or -more aggregated feeds. For example: - - \[[!inline pages="internal(example/*)"]] - -## setup +This plugin implements the [[ikiwiki/directive/aggregate]] [[ikiwiki/directive]]. New users of aggregate should enable the `aggregateinternal => 1` option in the .setup file. If you don't do so, you will need to enable the [[html]] plugin @@ -41,36 +25,6 @@ visit is `http://whatever/ikiwiki.cgi?do=aggregate_webtrigger`. Anyone can visit the url to trigger an aggregation run, but it will only check each feed if its `updateinterval` has passed. -## usage - -Here are descriptions of all the supported parameters to the `aggregate` -directive: - -* `name` - A name for the feed. Each feed must have a unique name. - Required. -* `url` - The url to the web page for the feed that's being aggregated. - Required. -* `dir` - The directory in the wiki where pages should be saved. Optional, - if not specified, the directory is based on the name of the feed. -* `feedurl` - The url to the feed. Optional, if it's not specified ikiwiki - will look for feeds on the `url`. RSS and atom feeds are supported. -* `updateinterval` - How often to check for new posts, in minutes. Default - is 15 minutes. -* `expireage` - Expire old items from this feed if they are older than - a specified number of days. Default is to never expire on age. -* `expirecount` - Expire old items from this feed if there are more than - the specified number total. Oldest items will be expired first. Default - is to never expire on count. -* `tag` - A tag to tag each post from the feed with. A good tag to use is - the name of the feed. Can be repeated multiple times. The [[tag]] plugin - must be enabled for this to work. -* `template` - Template to use for creating the aggregated pages. Defaults to - aggregatepost. - -Note that even if you are using subversion or another revision control -system, pages created by aggregation will *not* be checked into revision -control. - ## internal pages and `aggregateinternal` This plugin creates a page for each aggregated item. diff --git a/doc/plugins/brokenlinks.mdwn b/doc/plugins/brokenlinks.mdwn index 25c44fef1..f2e80d51f 100644 --- a/doc/plugins/brokenlinks.mdwn +++ b/doc/plugins/brokenlinks.mdwn @@ -1,13 +1,5 @@ [[!template id=plugin name=brokenlinks author="[[Joey]]"]] [[!tag type/link type/meta]] -This plugin generates a list of broken links on pages in the wiki. This is -a useful way to find pages that still need to be written, or links that -are written wrong. - -The optional parameter "pages" can be a [[ikiwiki/PageSpec]] specifying the -pages to search for broken links, default is search them all. - -If this plugin is turned on, here's a list of broken links on this wiki: - -[[!brokenlinks pages="* and !recentchanges"]] +This plugin implements the [[ikiwiki/directive/brokenlinks]] [[ikiwiki/directive]]. +The directive generates a list of broken links on pages in the wiki. diff --git a/doc/plugins/calendar.mdwn b/doc/plugins/calendar.mdwn index 20da26400..dd60fa3b3 100644 --- a/doc/plugins/calendar.mdwn +++ b/doc/plugins/calendar.mdwn @@ -1,77 +1,6 @@ [[!template id=plugin name=calendar author="[[ManojSrivastava]]"]] [[!tag type/chrome]] -This plugin displays a calendar, similar to the typical calendars shown on +This plugin implements the [[ikiwiki/directive/calendar]] [[ikiwiki/directive]]. +The directive displays a calendar, similar to the typical calendars shown on some blogs. - -# examples - - \[[!calendar ]] - - \[[!calendar type="month" pages="blog/* and !*/Discussion"]] - - \[[!calendar type="year" year="2005" pages="blog/* and !*/Discussion"]] - -This plugin is inspired by the calendar plugin for Blosxom, but -derives no code from it. This plugin is essentially a fancy front end -to archives of previous pages, usually used for blogs. It can produce -a calendar for a given month, or a list of months for a given year. - -Since ikiwiki is a wiki compiler, to keep the calendar up-to-date, -wikis that include it need to be preiodically refreshes, typically by cron -at midnight. Example crontab: - - 0 0 * * * ikiwiki -setup ~/ikiwiki.setup -refresh - -The month format calendar simply links to any page posted on each -day of the month. The year format calendar links to archive pages, with -names like `archives/2007` (for all of 2007) and `archives/2007/01` -(for January, 2007). For this to work, you'll need to create these archive -pages. They typically use [[inline]] to display or list pages created in -the given time frame. - -## usage - -* `type` - Used to specify the type of calendar wanted. Can be one of - "month" or "year". The default is a month view calendar. -* `pages` - Specifies the [[ikiwiki/PageSpec]] of pages to link to from the - month calendar. Defaults to "*". -* `archivebase` - Configures the base of the archives hierarchy. The - default is "archives". Note that this default can also be overridden - for the whole wiki by setting `archivebase` in ikiwiki's setup file. -* `year` - The year for which the calendar is requested. Defaults to the - current year. -* `month` - The numeric month for which the calendar is requested, in the - range 1..12. Used only for the month view calendar, and defaults to the - current month. -* `week_start_day` - A number, in the range 0..6, which represents the day - of the week that the month calendar starts with. 0 is Sunday, 1 is Monday, - and so on. Defaults to 0, which is Sunday. -* `months_per_row` - In the annual calendar, number of months to place in - each row. Defaults to 3. - -## CSS - -The output is liberally sprinkled with classes, for fine grained CSS -customization. - -* `month-calendar` - The month calendar as a whole. -* `month-calendar-head` - The head of the month calendar (ie,"March"). -* `month-calendar-day-head` - A column head in the month calendar (ie, a - day-of-week abbreviation). -* `month-calendar-day-noday`, `month-calendar-day-link`, - `month-calendar-day-nolink`, `month-calendar-day-future`, - `month-calendar-day-this-day` - The day squares on the month calendar, - for days that are not in the month (before or after the month itself), that - don't have links, that do have links, that are in the future, or are that - are the current day, respectively. -* `Sunday`, `Monday`, `Tuesday`, ... - Each day square is also given a class - matching its (localised) day of week, this can be used to highlight - weekends. -* `year-calendar` - The year calendar as a whole. -* `year-calendar-head` - The head of the year calendar (ie, "2007"). -* `year-calendar-subhead` - For example, "Months". -* `year-calendar-month-link`, `year-calendar-month-nolink`, - `year-calendar-month-future`, `year-calendar-this-month` - The month - squares on the year calendar, for months with stories, - without, in the future, and currently selected, respectively. diff --git a/doc/plugins/color.mdwn b/doc/plugins/color.mdwn index b85551cca..6e516096c 100644 --- a/doc/plugins/color.mdwn +++ b/doc/plugins/color.mdwn @@ -1,24 +1,5 @@ [[!template id=plugin name=color core=0 author="[[ptecza]]"]] [[!tag type/chrome]] -This plugin can be used to color a piece of text on a page. -It can be used to set the foreground and/or background color of the text. - -You can use a color name (e.g. `white`) or HTML code (e.g. `#ffffff`) -to define colors. - -## examples - -Here the foreground color is defined as a word, while the background color -is defined as a HTML color code: - - \[[!color foreground=white background=#ff0000 text="White text on red background"]] - -The background color is missing, so the text is displayed on default -background: - - \[[!color foreground=white text="White text on default color background"]] - -The foreground is missing, so the text has the default foreground color: - - \[[!color background=#ff0000 text="Default color text on red background"]] +This plugin implements the [[ikiwiki/directive/color]] [[ikiwiki/directive]]. +The directive can be used to color a piece of text on a page. diff --git a/doc/plugins/conditional.mdwn b/doc/plugins/conditional.mdwn index 5793cb30e..c93bbda41 100644 --- a/doc/plugins/conditional.mdwn +++ b/doc/plugins/conditional.mdwn @@ -1,47 +1,5 @@ [[!template id=plugin name=conditional core=1 author="[[Joey]]"]] [[!tag type/format]] -With this plugin, you can make text be conditionally displayed on a page. -For example: - - \[[!if test="enabled(smiley)" - then="The smiley plugin is enabled :-)" - else="No smiley plugin here.."]] - -If the specified `test` succeeds, the `then` text will be displayed, -otherwise the `else` text will be displayed. The `else` part is optional. - -The `then` and `else` values can include any markup that would be allowed -in the wiki page outside the template. Triple-quoting the values even allows -quotes to be included. - -The `test` is a [[ikiwiki/PageSpec]]; if it matches any page in the wiki -then it succeeds. So you can do things like testing for the existence of a -page or pages, testing to see if any pages were created in a given month, -and so on. - -If you want the [[ikiwiki/PageSpec]] to only match against the page that -contains the conditional, rather than matching against all pages in the -wiki, set the "all" parameter to "no". - -The regular [[ikiwiki/PageSpec]] syntax is expanded with the following -additional tests: - -* enabled(plugin) - - Tests whether the specified plugin is enabled. - -* sourcepage(glob) - - Tests whether the glob matches the name of the page that contains the - conditional. - -* destpage(glob) - - Tests whether the glob matches the name of the page that is being built. - That might be different than the name of the page that contains the - conditional, if it's being inlined into another page. - -* included() - - Tests whether the page is being included onto another page. +This plugin implements the [[ikiwiki/directive/if]] [[ikiwiki/directive]]. +With this directive, you can make text be conditionally displayed on a page. diff --git a/doc/plugins/cutpaste.mdwn b/doc/plugins/cutpaste.mdwn index a5dff08ab..90c5ccfb9 100644 --- a/doc/plugins/cutpaste.mdwn +++ b/doc/plugins/cutpaste.mdwn @@ -1,55 +1,6 @@ [[!template id=plugin name=toggle author="[[Enrico]]"]] [[!tag type/chrome]] -With this plugin you can store and recall pieces of text. It defines three -preprocessing commands: - - * `\[[!cut id=name text="text"]]` memorizes the text allowing to recall it - using the given ID. The text being cut is not included in the output. - * `\[[!copy id=name text="text"]]` memorizes the text allowing to recall it - using the given ID. The text being cut *is* included in the output. - * `\[[!paste id=name]]` is replaced by the previously memorized text. - -The text being cut, copied and pasted can freely include wiki markup, including -more calls to cut, copy and paste. - -You do not need to memorize the text before using it: a cut directive can -follow the paste directive that uses its text. In fact, this is quite useful -to postpone big blocks of text like long annotations and have a more natural -flow. For example: - - This plugin provides three directives: - - * \[[!toggle id="cut" text="cut"]] that cuts text - * \[[!toggle id="copy" text="copy"]] that copies text - * \[[!toggle id="paste" text="paste"]] that pastes text - - \[[!toggleable id="cut" text="\[[!paste id=cutlongdesc]]"]] - \[[!toggleable id="copy" text="\[[!paste id=copylongdesc]]"]] - \[[!toggleable id="paste" text="\[[!paste id=pastelongdesc]]"]] - - \[...some time later...] - - \[[!cut id=cutlongdesc text=""" - blah blah blah - """]] - \[[!cut id=copylongdesc text=""" - blah blah blah - """]] - \[[!cut id=pastelongdesc text=""" - blah blah blah - """]] - -This can potentially be used to create loops, but ikiwiki is clever and breaks -them. - -Since you can paste without using double quotes, copy and paste can be used to -nest directive that require multiline parameters inside each other: - - \[[!toggleable id=foo text=""" - \[[!toggleable id=bar text="\[[!paste id=baz]]"]] - """]] - - \[[!cut id=baz text=""" - multiline parameter! - """]] +This plugin implements the [[ikiwiki/directive/cut]], +[[ikiwiki/directive/copy]] and [[ikiwiki/directive/paste]] [[ikiwiki/directive]]s. +With these directives you can store and recall pieces of text. diff --git a/doc/plugins/edittemplate.mdwn b/doc/plugins/edittemplate.mdwn index 674bdc863..646fc9af7 100644 --- a/doc/plugins/edittemplate.mdwn +++ b/doc/plugins/edittemplate.mdwn @@ -1,33 +1,6 @@ [[!template id=plugin name=edittemplate author="[[Joey]]"]] [[!tag type/useful]] -This plugin allows registering template pages, that provide default -content for new pages created using the web frontend. To register a -template, insert a [[ikiwiki/directive]] on some other page. - - \[[!edittemplate template="bugtemplate" match="bugs/*"]] - -In the above example, the page named "bugtemplate" is registered as a -template to be used when any page named "bugs/*" is created. - -Often the template page contains a simple skeleton for a particular type of -page. For the bug report pages in the above example, it might look -something like: - - Package: - Version: - Reproducible: y/n - Details: - -The template page can also contain [[!cpan HTML::Template]] directives, -similar to other ikiwiki [[templates]]. Currently only one variable is -set: `` is replaced with the name of the page being -created. - ----- - -It's generally not a good idea to put the `edittemplate` directive in -the template page itself, since the directive would then be included as -part of the template on new pages, which would then in turn be registered -as templates. If multiple pages are registered as templates for a new page, -an arbitrary one is chosen, so that could get confusing. +This plugin implements the [[ikiwiki/directive/edittemplate]] [[ikiwiki/directive]]. +This directive allows registering template pages, that provide default +content for new pages created using the web frontend. diff --git a/doc/plugins/fortune.mdwn b/doc/plugins/fortune.mdwn index c47c02e6f..854d13364 100644 --- a/doc/plugins/fortune.mdwn +++ b/doc/plugins/fortune.mdwn @@ -1,15 +1,5 @@ [[!template id=plugin name=fortune author="[[Joey]]"]] [[!tag type/fun]] -This just uses the `fortune` program to insert a fortune into the page. -Usage: - - \[[!fortune ]] - -[[!if test="enabled(fortune)" then=""" -Here's a fortune for you: - ----- - -[[!fortune ]] -"""]] +This plugin implements the [[ikiwiki/directive/fortune]] [[ikiwiki/directive]]. +This directive uses the `fortune` program to insert a fortune into the page. diff --git a/doc/plugins/graphviz.mdwn b/doc/plugins/graphviz.mdwn index f8cf094f4..51b06ebab 100644 --- a/doc/plugins/graphviz.mdwn +++ b/doc/plugins/graphviz.mdwn @@ -1,13 +1,8 @@ [[!template id=plugin name=graphviz author="[[JoshTriplett]]"]] [[!tag type/chrome type/format]] -This plugin allows embedding [graphviz](http://www.graphviz.org/) graphs in a -page. Example usage: - - \[[!graph src="a -> b -> c; a -> c;"]] - -Note that graphs will only show up in previews if your browser has -[[!wikipedia data: URI]] support, or if the same graph already exists on that +This plugin implements the [[ikiwiki/directive/graph]] [[ikiwiki/directive]]. +This directive allows embedding [graphviz](http://www.graphviz.org/) graphs in a page. Security implications: graphviz does not seem to have any syntax exploitable to @@ -20,22 +15,4 @@ already do these things with just the core of ikiwiki, but the graphviz plugin allows for an amplification attack, since users can send less data to use large amounts of processing time and disk usage. -The `graph` directive supports the following parameters: - -- `src` - The graphviz source to render. -- `type` - The type of graph to render: `graph` or `digraph`. Defaults to - `digraph`. -- `prog` - The graphviz program to render with: `dot`, `neato`, `fdp`, `twopi`, - or `circo`. Defaults to `dot`. -- `height`, `width` - Limit the size of the graph to a given height and width, - in inches. You must specify both to limit the size; otherwise, graphviz will - choose a size, without any limit. - -[[!if test="enabled(graphviz)" then=""" -Some example graphs: - -[[!graph src="a -> b -> c; a -> b;"]] -[[!graph src="a -- b -- c -- a;" prog="circo" type="graph"]] -"""]] - This plugin uses the [[!cpan Digest::SHA1]] perl module. diff --git a/doc/plugins/haiku.mdwn b/doc/plugins/haiku.mdwn index ac340e42d..f01e2f0f3 100644 --- a/doc/plugins/haiku.mdwn +++ b/doc/plugins/haiku.mdwn @@ -1,17 +1,8 @@ [[!template id=plugin name=haiku author="[[Joey]]"]] [[!tag type/fun]] -This plugin allows inserting a randomly generated haiku into a wiki page. -Just type: - - \[[!haiku hint="argument"]] - -[[!haiku hint="argument test"]] - -The hint parameter can be omitted, it only provides the generator a hint of -what to write the haiku about. If no hint is given, it might base it on the -page name. Since the vocabulary it knows is very small, many hints won't -affect the result at all. +This plugin implements the [[ikiwiki/directive/haiku]] [[ikiwiki/directive]]. +The directive allows inserting a randomly generated haiku into a wiki page. As a special bonus, enabling this plugin makes any error messages ikiwiki should display be written in haiku. diff --git a/doc/plugins/img.mdwn b/doc/plugins/img.mdwn index 6da80b7e7..04077d065 100644 --- a/doc/plugins/img.mdwn +++ b/doc/plugins/img.mdwn @@ -1,7 +1,8 @@ [[!template id=plugin name=img author="Christian Mock"]] [[!tag type/chrome]] -This is an image handling plugin. While ikiwiki supports inlining full-size +This plugin implements the [[ikiwiki/directive/img]] [[ikiwiki/directive]]. +This is an image handling directive. While ikiwiki supports inlining full-size images by making a [[ikiwiki/WikiLink]] that points to the image, using this plugin you can easily scale down an image for inclusion onto a page, providing a link to a full-size version. @@ -11,33 +12,3 @@ This plugin uses the [ImageMagick](http://www.imagemagick.org/) tools via Note that this is a stripped down version of Christian Mock's [[original_img_plugin|contrib/img]]. - -## usage - - \[[!img image1.jpg size="200x200" alt="clouds"]] - -The image file will be searched for using the same rules as used to find -the file pointed to by a [[ikiwiki/WikiLink]]. - -The `size` parameter is optional, defaulting to full size. Note that the -original image's aspect ratio is always preserved, even if this means -making the image smaller than the specified size. You can also specify only -the width or the height, and the other value will be calculated based on -it: "200x", "x200". - -You can also pass `alt`, `title`, `class` and `id` parameters. These are -passed through unchanged to the html img tag. If you include a `caption` -parameter, the caption will be displayed centered beneath the image. - -The `link` parameter is used to control whether the scaled down image links -to the full size version. By default it does; set "link=somepage" to link -to another page instead, or "link=no" to disable the link, or -"link=http://url" to link to a given url. - -You can also set default values that will be applied to all later images on -the page, unless overridden. Useful when including many images on a page. - - \[[!img defaults size=200x200 alt="wedding photo"]] - \[[!img photo1.jpg]] - \[[!img photo2.jpg]] - \[[!img photo3.jpg size=200x600]] diff --git a/doc/plugins/inline.mdwn b/doc/plugins/inline.mdwn index 1ea401c6a..e4587117e 100644 --- a/doc/plugins/inline.mdwn +++ b/doc/plugins/inline.mdwn @@ -1,10 +1,5 @@ [[!template id=plugin name=inline core=1 author="[[Joey]]"]] +This plugin implements the [[ikiwiki/directive/inline]] [[ikiwiki/directive]]. This is a [[ikiwiki/directive]] that allows including one wiki page -inside another. For example: - - \[[!inline pages="blog/*"]] - -The most common use of inlining is generating blogs and RSS or Atom feeds. -See [[ikiwiki/blog]] for details. - +inside another. diff --git a/doc/plugins/linkmap.mdwn b/doc/plugins/linkmap.mdwn index 935f3d3cd..b52a87da9 100644 --- a/doc/plugins/linkmap.mdwn +++ b/doc/plugins/linkmap.mdwn @@ -1,29 +1,7 @@ [[!template id=plugin name=linkmap author="[[Joey]]"]] [[!tag type/meta]] [[!tag type/slow]] -This plugin uses [graphviz](http://www.graphviz.org/) to generate a graph showing the links between a -set of pages in the wiki. Example usage: - \[[!linkmap pages="* and !blog/* and !*/Discussion"]] - -Only links between mapped pages will be shown; links pointing to or from -unmapped pages will be omitted. If the pages to include are not specified, -the links between all pages (and other files) in the wiki are mapped. For -best results, only a small set of pages should be mapped, since otherwise -the map can become very large, unweildy, and complicated. Also, the map is -rebuilt whenever one of the mapped pages is changed, which can make the -wiki a bit slow. - -Here are descriptions of all the supported parameters to the `linkmap` -directive: - -* `pages` - A [[ikiwiki/PageSpec]] of the pages to map. -* `height`, `width` - Limit the size of the map to a given height and width, - in inches. Both must be specified for the limiting to take effect, otherwise - the map's size is not limited. - -[[!if test="enabled(linkmap)" then=""" -Here is an example link map, of the index page and all pages it links to: - -[[!linkmap pages="index or (backlink(index) and !*.png)"]] -"""]] +This plugin implements the [[ikiwiki/directive/linkmap]] [[ikiwiki/directive]]. +The directive uses [graphviz](http://www.graphviz.org/) to generate a graph showing the links between a +set of pages in the wiki. diff --git a/doc/plugins/listdirectives.mdwn b/doc/plugins/listdirectives.mdwn index 0f33855f5..761138917 100644 --- a/doc/plugins/listdirectives.mdwn +++ b/doc/plugins/listdirectives.mdwn @@ -1,21 +1,9 @@ [[!template id=plugin name=listdirectives author="Will"]] [[!tag type/meta]] -This plugin generates a list of available -[[directives|ikiwiki/directive]]. - - \[[!listdirectives]] +This plugin implements the [[ikiwiki/directive/linkmap]] [[ikiwiki/directive]]. +The linkmap directive inserts a list of currently available directives into the page. Each directive links to a wiki page with the same name. The location of the pages in the wiki can be controlled via the `directive_description_dir` setting in the setup file. - -There is one optional keyword argument, `generated`. Normally the `listdirectives` directive will -list all built in directives and directives directly registered by [[plugins]]. With this keyword, -`listdirectives` will also list directives generated later. For example, all [[shortcuts]] are -directives generated in turn by the `shortcut` directive. They will only be listed if the `generated` argument is -supplied. - - \[[!listdirectives generated]] - -This extended list is often quite long, and often contains many undocumented directives. diff --git a/doc/plugins/map.mdwn b/doc/plugins/map.mdwn index 9283eb4cf..f4dd91e48 100644 --- a/doc/plugins/map.mdwn +++ b/doc/plugins/map.mdwn @@ -1,24 +1,5 @@ [[!template id=plugin name=map author="Alessandro Dotti Contra"]] [[!tag type/meta]] -This plugin generates a hierarchical page map for the wiki. Example usage: - - \[[!map pages="* and !blog/* and !*/Discussion"]] - -If the pages to include are not specified, all pages (and other files) in -the wiki are mapped. - -By default, the names of pages are shown in the map. The `show` parameter -can be used to show the titles or descriptions of pages instead (as set by -the [[meta]] plugin). For example: - - \[[!map pages="* and !blog/* and !*/Discussion" show=title]] - -Hint: To limit the map to displaying pages less than a certain level deep, -use a [[ikiwiki/PageSpec]] like this: `pages="* and !*/*/*"` - -[[!if test="enabled(map)" then=""" -Here's an example map, for the plugins section of this wiki: - -[[!map pages="(plugins or plugins/*) and !*/*/*"]] -"""]] +This plugin implements the [[ikiwiki/directive/map]] [[ikiwiki/directive]]. +The directive generates a hierarchical page map for the wiki. diff --git a/doc/plugins/meta.mdwn b/doc/plugins/meta.mdwn index 599d9cbd8..a4f708ee3 100644 --- a/doc/plugins/meta.mdwn +++ b/doc/plugins/meta.mdwn @@ -1,146 +1,5 @@ [[!template id=plugin name=meta author="[[Joey]]"]] [[!tag type/meta]] -This plugin allows inserting arbitrary metadata into the source of a page. -Enter the metadata as follows: - - \[[!meta field="value"]] - \[[!meta field="value" param="value" param="value"]] - -The first form sets a given field to a given value, while the second form -also specifies some additional sub-parameters. - -The field values are treated as HTML entity-escaped text, so you can include -a quote in the text by writing `"` and so on. - -Supported fields: - -* title - - Overrides the title of the page, which is generally the same as the - page name. - - Note that if the title is overridden, a "title_overridden" variable will - be set to a true value in the template; this can be used to format things - differently in this case. - -* license - - Specifies a license for the page, for example, "GPL". Can contain - WikiLinks and arbitrary markup. - -* copyright - - Specifies the copyright of the page, for example, "Copyright 2007 by - Joey Hess". Can contain WikiLinks and arbitrary markup. - -* author - - Specifies the author of a page. - -* authorurl - - Specifies an url for the author of a page. - -* description - - Specifies a "description" of the page. You could use this to provide - a summary, for example, to be picked up by the [[map]] plugin. - -* permalink - - Specifies a permanent link to the page, if different than the page - generated by ikiwiki. - -* date - - Specifies the creation date of the page. The date can be entered in - nearly any format, since it's parsed by [[!cpan TimeDate]]. - -* stylesheet - - Adds a stylesheet to a page. The stylesheet is treated as a wiki link to - a `.css` file in the wiki, so it cannot be used to add links to external - stylesheets. Example: - - \[[!meta stylesheet=somestyle rel="alternate stylesheet" - title="somestyle"]] - -* openid - - Adds html <link> tags to perform OpenID delegation to an external - OpenID server (for `openid` and `openid2`). An optional `xrds-location` - parameter lets you specify the location of any [eXtensible Resource - DescriptorS](http://www.windley.com/archives/2007/05/using_xrds.shtml). - - This lets you use an ikiwiki page as your OpenID. Example: - - \\[[!meta openid="http://joeyh.myopenid.com/" - server="http://www.myopenid.com/server" - xrds-location="http://www.myopenid.com/xrds?username=joeyh.myopenid.com""]] - -* link - - Specifies a link to another page. This can be used as a way to make the - wiki treat one page as linking to another without displaying a user-visible - [[ikiwiki/WikiLink]]: - - \[[!meta link=otherpage]] - - It can also be used to insert a html <link> tag. For example: - - \[[!meta link="http://joeyh.myopenid.com/" rel="openid.delegate"]] - - However, this latter syntax won't be allowed if the [[htmlscrubber]] is - enabled, since it can be used to insert unsafe content. - -* redir - - Causes the page to redirect to another page in the wiki. - - \[[!meta redir=otherpage]] - - Optionally, a delay (in seconds) can be specified. The default is to - redirect without delay. - - It can also be used to redirect to an external url. For example: - - \[[!meta redir="http://example.com/"]] - - However, this latter syntax won't be allowed if the [[htmlscrubber]] is - enabled, since it can be used to insert unsafe content. - - For both cases, an anchor to jump to inside the destination page may also be - specified using the common `PAGE#ANCHOR` syntax. - -* robots - - Causes the robots meta tag to be written: - - \[[!meta robots="index, nofollow"]] - - Valid values for the attribute are: "index", "noindex", "follow", and - "nofollow". Multiple comma-separated values are allowed, but obviously only - some combinations make sense. If there is no robots meta tag, "index, - follow" is used as the default. - - The plugin escapes the value, but otherwise does not care about its - contents. In particular, it does not check the values against the set of - valid values but serves whatever you pass it. - -* guid - - Specifies a globally unique ID for a page. This guid should be a URI - (in particular, it can be `urn:uuid:` followed by a UUID, as per - [[!rfc 4122]]), and it will be used to identify the page's entry in RSS - and Atom feeds. If not given, the default is to use the page's URL as its - guid. - - This is mostly useful when a page has moved, to keep the guids for - pages unchanged and - [[avoid_flooding_aggregators|tips/howto_avoid_flooding_aggregators]]. - -If the field is not one of the above predefined fields, the metadata will be -written to the generated html page as a <meta> header. However, this -won't be allowed if the [[htmlscrubber]] is enabled, since it can be used to -insert unsafe content. +This plugin implements the [[ikiwiki/directive/meta]] [[ikiwiki/directive]]. +The directive allows inserting arbitrary metadata into the source of a page. diff --git a/doc/plugins/more.mdwn b/doc/plugins/more.mdwn index a17e78eb2..252fed534 100644 --- a/doc/plugins/more.mdwn +++ b/doc/plugins/more.mdwn @@ -1,15 +1,6 @@ [[!template id=plugin name=more author="Ben"]] [[!tag type/format]] -This plugin provides a way to have a "more" link on a page in a blog, that -leads to the full version of the page. Use it like this: - - \[[!more linktext="click for more" text=""" - This is the rest of my post. Not intended for people catching up on - their blogs at 30,000 feet. Because I like to make things - difficult. - """]] - -If the `linktext` parameter is omitted it defaults to just "more". - -Note that you can accomplish something similar using a [[toggle]] instead. +This plugin implements the [[ikiwiki/directive/more]] [[ikiwiki/directive]]. +The directive provides a way to have a "more" link on a page in a blog, that +leads to the full version of the page. diff --git a/doc/plugins/orphans.mdwn b/doc/plugins/orphans.mdwn index 136ce42a7..e50ee25d0 100644 --- a/doc/plugins/orphans.mdwn +++ b/doc/plugins/orphans.mdwn @@ -1,20 +1,6 @@ [[!template id=plugin name=orphans author="[[Joey]]"]] [[!tag type/meta]] -This plugin generates a list of possibly orphaned pages -- pages that no +This plugin implements the [[ikiwiki/directive/orphans]] [[ikiwiki/directive]]. +The directive generates a list of possibly orphaned pages -- pages that no other page links to. - -The optional parameter "pages" can be a [[ikiwiki/PageSpec]] specifying the -pages to check for orphans, default is search them all. - -Note that it takes [[BackLinks]] into account, but does not count inlining a -page as linking to it, so will generally count many blog-type pages as -orphans. - -[[!if test="enabled(orphans)" then=""" -Here's a list of orphaned pages on this wiki: - -[[!orphans pages="* and !news/* and !todo/* and !bugs/* and !users/* and -!recentchanges and !examples/* and !tips/* and !sandbox/* and !templates/* and -!wikiicons/* and !plugins/*"]] -"""]] diff --git a/doc/plugins/pagecount.mdwn b/doc/plugins/pagecount.mdwn index 84a02c3f1..f5b0a915f 100644 --- a/doc/plugins/pagecount.mdwn +++ b/doc/plugins/pagecount.mdwn @@ -1,14 +1,5 @@ [[!template id=plugin name=pagecount author="[[Joey]]"]] [[!tag type/meta]] -Provides a \\[[!pagecount ]] [[ikiwiki/directive]] that is -replaced with the total number of pages currently in the wiki. - -The optional parameter "pages" can be a [[ikiwiki/PageSpec]] specifying the -pages to count, default is to count them all. - -This plugin is included in ikiwiki, but is not enabled by default. - -If it is turned on it can tell us that this wiki includes -[[!pagecount pages="* and !recentchanges"]] -pages, of which [[!pagecount pages="*/Discussion"]] are discussion pages. +This plugin implements the [[ikiwiki/directive/pagecount]] [[ikiwiki/directive]]. +The directive displays number of pages currently in the wiki. diff --git a/doc/plugins/pagestats.mdwn b/doc/plugins/pagestats.mdwn index ab32fb002..3b7bc0255 100644 --- a/doc/plugins/pagestats.mdwn +++ b/doc/plugins/pagestats.mdwn @@ -1,14 +1,5 @@ [[!template id=plugin name=pagestats author="Enrico Zini"]] [[!tag type/meta type/tags]] -This plugin can generate stats about how pages link to each other. It can -produce either a del.icio.us style cloud, or a table counting the number of -links to each page. - -Here's how to use it to create a [[tag]] cloud: - - \[[!pagestats pages="tags/*"]] - -And here's how to create a table of all the pages on the wiki: - - \[[!pagestats style="table"]] +This plugin implements the [[ikiwiki/directive/pagestats]] [[ikiwiki/directive]]. +The directive can generate stats about how pages link to each other. diff --git a/doc/plugins/pagetemplate.mdwn b/doc/plugins/pagetemplate.mdwn index 57d78483d..b81f0a4d7 100644 --- a/doc/plugins/pagetemplate.mdwn +++ b/doc/plugins/pagetemplate.mdwn @@ -1,14 +1,10 @@ [[!template id=plugin name=pagetemplate author="[[Joey]]"]] [[!tag type/chrome]] -This plugin allows a page to be created using a different -[[template|wikitemplates]]. The page text is inserted into the template, so -the template controls the overall look and feel of the wiki page. This is -in contrast to the [[template]] plugin, which allows inserting templates -_into_ the body of a page. +This plugin implements the [[ikiwiki/directive/pagetemplate]] [[ikiwiki/directive]]. +The directive allows a page to be created using a different +[[template|wikitemplates]]. This plugin can only use templates that are already installed in /usr/share/ikiwiki/templates (or wherever ikiwiki is configured to look for -them). You can choose to use any .tmpl files in that directory. Example: - - \[[!pagetemplate template=my_fancy.tmpl]] +them). You can choose to use any .tmpl files in that directory. diff --git a/doc/plugins/pinger.mdwn b/doc/plugins/pinger.mdwn index f2dd12e62..f9b8e7bcb 100644 --- a/doc/plugins/pinger.mdwn +++ b/doc/plugins/pinger.mdwn @@ -7,14 +7,7 @@ plugin to set up a loosely coupled mirror network, or a branched version of a wiki. By pinging the mirror or branch each time the main wiki changes, it can be kept up-to-date. - \[[!ping from="http://mywiki.com/" - to="http://otherwiki.com/ikiwiki.cgi?do=ping"]] - -The "from" parameter must be identical to the url of the wiki that is doing -the pinging. This is used to prevent ping loops. - -The "to" parameter is the url to ping. The example shows how to ping -another ikiwiki instance. +See the [[ikiwiki/directive/ping]] [[ikiwiki/directive]] page for usage details. The [[!cpan LWP]] perl module is used for pinging. Or the [[!cpan LWPx::ParanoidAgent]] perl module is used if available, for added security. diff --git a/doc/plugins/poll.mdwn b/doc/plugins/poll.mdwn index 17b1c4efc..db9737f10 100644 --- a/doc/plugins/poll.mdwn +++ b/doc/plugins/poll.mdwn @@ -1,24 +1,5 @@ [[!template id=plugin name=poll author="[[Joey]]"]] [[!tag type/useful]] -This plugin allows you to create online polls in the wiki. Here's an -example use: - - \[[!poll 0 "red" 0 "green" 0 "blue"]] - -The numbers indicate how many users voted for that choice. When a user -votes for a choice in the poll, the page is modified and the number -incremented. - -While some basic precautions are taken to prevent users from accidentially -voting twice, this sort of poll should not be counted on to be very -accurate; all the usual concerns about web based polling apply. Unless the -page that the poll is in is locked, users can even edit the page and change -the numbers! - -Parameters: - -* `open` - Whether voting is still open. Set to "no" to close the poll to - voting. -* `total` - Show total number of votes at bottom of poll. Default is "yes". -* `percent` - Whether to display percents. Default is "yes". +This plugin implements the [[ikiwiki/directive/poll]] [[ikiwiki/directive]]. +The directive allows you to create online polls in the wiki. diff --git a/doc/plugins/polygen.mdwn b/doc/plugins/polygen.mdwn index 09195e694..fa4aa0bf7 100644 --- a/doc/plugins/polygen.mdwn +++ b/doc/plugins/polygen.mdwn @@ -1,29 +1,5 @@ [[!template id=plugin name=polygen author="Enrico Zini"]] [[!tag type/fun]] -This plugin allows inserting text generated by polygen into a wiki page. -For example: - - \[[!polygen grammar="genius"]] - -It's also possible to specify a starting nonterminal for the grammar by -including `symbol="text"` in the directive. - -[[!if test="enabled(polygen)" then=""" ----- - -Here are a few notes about ikiwiki, courtesy of polygen: - -Ikiwiki is internally based on a [[!polygen grammar="designpatterns"]] -coupled to a [[!polygen grammar="designpatterns"]], as described in -"[[!polygen grammar="paper"]]" by [[!polygen grammar="nipponame"]] of -[[!polygen grammar="boyband"]]. - -Ikiwiki reviews: - - -"""]] +This plugin implements the [[ikiwiki/directive/polygen]] [[ikiwiki/directive]]. +The directive allows inserting text generated by polygen into a wiki page. diff --git a/doc/plugins/postsparkline.mdwn b/doc/plugins/postsparkline.mdwn index 73c6801a1..b94a310bf 100644 --- a/doc/plugins/postsparkline.mdwn +++ b/doc/plugins/postsparkline.mdwn @@ -1,48 +1,10 @@ [[!template id=plugin name=postsparkline author="[[Joey]]"]] [[!tag type/chrome]] -This plugin uses the [[sparkline]] plugin to create a sparkline of +This plugin implements the [[ikiwiki/directive/postsparkline]] [[ikiwiki/directive]]. +It uses the [[sparkline]] plugin to create a sparkline of statistics about a set of pages, such as posts to a blog. -# examples - - Post interval: - \[[!postsparkline pages="blog/* and !*/Discussion" max=100 - formula=interval style=bar barwidth=2 barspacing=1 height=13]] - - Posts per month this year: - \[[!postsparkline pages="blog/* and !*/Discussion" max=12 - formula=permonth style=bar barwidth=2 barspacing=1 height=13]] - -# usage - -All options aside fron the `pages`, `max`, `formula`, `time`, and `color` -options are passed on to the sparkline plugin. - -You don't need to specify any data points (though you can if you want to). -Instead, data points are automatically generated based on the creation -times of pages matched by the specified `pages` [[ikiwiki/PageSpec]]. A -maximum of `max` data points will be generated. - -The `formula` parameter controls the formula used to generate data points. -Available forumlae: - -* `interval` - The height of each point represents how long it has been - since the previous post. -* `perday` - Each point represents a day; the height represents how - many posts were made that day. -* `permonth` - Each point represents a month; the height represents how - many posts were made that month. -* `peryear` - Each point represents a day; the height represents how - many posts were made that year. - -The `time` parameter has a default value of "ctime", since forumae use -the creation times of pages by default. If you instead want -them to use the modification times of pages, set it to "mtime". - -To change the color used to draw the sparkline, use the `color` parameter. -For example, "color=red". - # adding formulae Additional formulae can be added without modifying this plugin by writing diff --git a/doc/plugins/progress.mdwn b/doc/plugins/progress.mdwn index 987d1ec06..af48e569c 100644 --- a/doc/plugins/progress.mdwn +++ b/doc/plugins/progress.mdwn @@ -1,19 +1,5 @@ [[!template id=plugin name=progress author="[[Will]]"]] [[!tag type/meta]] -Provides a \\[[!progress ]] [[ikiwiki/directive]] that displays a -progress bar. - -There are two possible parameter sets. The first is a single parameter -`percent` which holds a percentage figure for how complete the progress bar is. - -The second possible set of parameters is a pair of [PageSpecs|[ikiwiki/PageSpec]], -`totalpages` and `donepages`. The progress plugin counts the number of -pages in each pagespec and shows the percentage of the total pages that are -done. - -This plugin is included in ikiwiki, but is not enabled by default. - -If it is turned on it can show what percentage of pages have discussion pages: - - \[[!progress totalpages="* and !*/Discussion" donepages="*/Discussion"]] +This plugin implements the [[ikiwiki/directive/progress]] [[ikiwiki/directive]]. +The directive that displays a progress bar. diff --git a/doc/plugins/shortcut.mdwn b/doc/plugins/shortcut.mdwn index e879debbd..095c4785f 100644 --- a/doc/plugins/shortcut.mdwn +++ b/doc/plugins/shortcut.mdwn @@ -1,7 +1,8 @@ [[!template id=plugin name=shortcut author="[[Joey]]"]] [[!tag type/format]] -This plugin allows external links to commonly linked to sites to be made +This plugin implements the [[ikiwiki/directive/shortcut]] [[ikiwiki/directive]]. +It allows external links to commonly linked to sites to be made more easily using shortcuts. The available shortcuts are defined on the [[shortcuts]] page in diff --git a/doc/plugins/sparkline.mdwn b/doc/plugins/sparkline.mdwn index 19b07b812..5f5d08b5e 100644 --- a/doc/plugins/sparkline.mdwn +++ b/doc/plugins/sparkline.mdwn @@ -1,9 +1,8 @@ [[!template id=plugin name=sparkline author="[[Joey]]"]] [[!tag type/chrome]] -This plugin allows for easily embedding sparklines into wiki pages. A -sparkline is a small word-size graphic chart, that is designed to be -inlined alongside text. +This plugin implements the [[ikiwiki/directive/sparkline]] [[ikiwiki/directive]]. +The directive allows for easily embedding sparklines into wiki pages. # requirements @@ -22,55 +21,3 @@ On a Debian system, this can be accomplished by installing these packages: This plugin also uses the [[!cpan Digest::SHA1]] perl module. -# examples - - \[[!sparkline 1 3 5 -3 10 0 width=40 height=16 - featurepoint="4,-3,red,3" featurepoint="5,10,green,3"]] - -This creates a simple line graph, graphing several points. -[[!if test="enabled(sparkline)" then=""" -[[!sparkline 1 3 5 -3 10 0 width=40 height=16 -featurepoint="4,-3,red,3" featurepoint="5,10,green,3"]] -"""]] -It will be drawn 40 pixels wide and 16 pixels high. The high point in the -line has a green marker, and the low point has a red marker. - - \[[!sparkline 1 -1(red) 1 -1(red) 1 1 1 -1(red) -1(red) style=bar barwidth=2 - barspacing=1 height=13]] - -This more complex example generates a bar graph. -[[!if test="enabled(sparkline)" then=""" -[[!sparkline 1 -1(red) 1 -1(red) 1 1 1 -1(red) -1(red) -style=bar barwidth=2 barspacing=1 height=13]] -"""]] -The bars are 2 pixels wide, and separated by one pixel, and the graph is 13 -pixels tall. Width is determined automatically for bar graphs. The points -with negative values are colored red, instead of the default black. - -# usage - -The form for the data points is "x,y", or just "y" if the x values don't -matter. Bar graphs can also add "(color)" to specify a color for that bar. - -The following named parameters are recognised. Most of these are the same -as those used by the underlying sparkline library, which is documented in -more detail in [its wiki](http://sparkline.wikispaces.com/usage). - -* `style` - Either "line" (the default) or "bar". -* `width` - Width of the graph in pixels. Only needed for line graphs. -* `height` - Height of the graph in pixels. Defaults to 16. -* `barwidth` - Width of bars in a bar graph. Default is 1 pixel. -* `barspacing` - Spacing between bars in a bar graph, in pixels. Default is - 1 pixel. -* `ymin`, `ymax` - Minimum and maximum values for the Y axis. This is - normally calculated automatically, but can be explicitly specified to get - the same values for multiple related graphs. -* `featurepoint` - Adds a circular marker to a line graph, with optional - text. This can be used to label significant points. - - The value is a comma-delimited list of parameters specifying the feature - point: X value, Y value, color name, circle diameter, text (optional), - and text location (optional). Example: `featurepoint="3,5,blue,3"` - - Available values for the text location are: "top", "right", "bottom", and - "left". diff --git a/doc/plugins/table.mdwn b/doc/plugins/table.mdwn index 2dccb9458..ec6e34f55 100644 --- a/doc/plugins/table.mdwn +++ b/doc/plugins/table.mdwn @@ -1,46 +1,8 @@ [[!template id=plugin name=table author="[[VictorMoral]]"]] [[!tag type/format]] -This plugin can build HTML tables from data in CSV (comma-separated values) +This plugin implements the [[ikiwiki/directive/table]] [[ikiwiki/directive]]. +The directive can build HTML tables from data in CSV (comma-separated values) or DSV (delimiter-separated values) format. It needs the perl module [[!cpan Text::CSV]] for the CSV data. - -## examples - - \[[!table data=""" - Customer|Amount - Fulanito|134,34 - Menganito|234,56 - Menganito|234,56 - """]] - - \[[!table class="book_record" format=csv file="data/books/record1"]] - -In this second example the `record1` page should be similar to: - - "Title","Perl Best Practices" - "Author","Damian Conway" - "Publisher","O’Reilly" - -To make a cell span multiple columns, follow it with one or more empty -cells. For example: - - \[[!table data=""" - left||right| - a|b|c|d - this cell spans 4 columns||| - """]] - -## usage - -* `data` - Values for the table. -* `file` - A file in the wiki containing the data. -* `format` - The format of the data, either "csv", "dsv", or "auto" - (the default). -* `delimiter` - The character used to separate fields. By default, - DSV format uses a pipe (`|`), and CSV uses a comma (`,`). -* `class` - A CSS class for the table html element. -* `header` - By default, or if set to "row", the first data line is used - as the table header. Set it to "no" to make a table without a header, or - "column" to make the first column be the header. diff --git a/doc/plugins/tag.mdwn b/doc/plugins/tag.mdwn index c197ae53f..02e84763c 100644 --- a/doc/plugins/tag.mdwn +++ b/doc/plugins/tag.mdwn @@ -1,21 +1,9 @@ [[!template id=plugin name=tag author="[[Joey]]"]] [[!tag type/tags type/link]] -This plugin allows tagging pages. List tags as follows: - - \[[!tag tech life linux]] - -The tags work the same as if you had put a (hidden) [[ikiwiki/WikiLink]] on -the page for each tag, so you can use a [[ikiwiki/PageSpec]] match all -pages that are tagged with a given tag, for example. The tags will also -show up on blog entries and at the bottom of the tagged pages, as well as -in RSS and Atom feeds. - -If you want a visible [[ikiwiki/WikiLink]] along with the tag, use taglink -instead: - - \[[!taglink foo]] - \[[!taglink tagged_as_foo|foo]] +This plugin implements the [[ikiwiki/directive/tag]] and +[[ikiwiki/directive/taglink]] [[ikiwiki/directive]]s. +These directives allow tagging pages. This plugin has a configuration option. Set --tagbase=tags and links to tags will be located under the specified base page. If ikiwiki is configured @@ -23,14 +11,3 @@ this way, then the example above actually tags the page with the tags tags/tech, tags/life, and tags/linux. This is a useful way to avoid having to write the full path to tags, if you want to keep them grouped together out of the way. - -If you want to override the tagbase for a particular tag, you can use -something like this: - - \[[!tag ./foo]] - \[[!taglink /foo]] - -[[!if test="enabled(tag)" then=""" -This wiki has the tag plugin enabled, so you'll see a note below that this -page is tagged with the "tags" tag. -"""]] diff --git a/doc/plugins/template.mdwn b/doc/plugins/template.mdwn index 9652bf8ee..9bdef91bf 100644 --- a/doc/plugins/template.mdwn +++ b/doc/plugins/template.mdwn @@ -1,6 +1,7 @@ [[!template id=plugin name=template author="[[Joey]]"]] [[!tag type/format]] +This plugin implements the [[ikiwiki/directive/template]] [[ikiwiki/directive]]. With this plugin, you can set up templates, and cause them to be filled out and inserted into pages in the wiki. It's documented and existing templates are listed in the [[templates]] page. diff --git a/doc/plugins/testpagespec.mdwn b/doc/plugins/testpagespec.mdwn index a173f5a96..cd777fa1c 100644 --- a/doc/plugins/testpagespec.mdwn +++ b/doc/plugins/testpagespec.mdwn @@ -1,23 +1,6 @@ [[!template id=plugin name=testpagespec author="[[Joey]]"]] [[!tag type/useful]] -This plugin allows testing a [[ikiwiki/PageSpec]] to see if it matches a +This plugin implements the [[ikiwiki/directive/testpagespec]] [[ikiwiki/directive]]. +The directive allows testing a [[ikiwiki/PageSpec]] to see if it matches a page, and to see the part that matches, or causes the match to fail. - -Example uses: - - \[[!testpagespec pagespec="foopage and barpage" match="foopage"]] - -This will print out something like "no match: barpage does not match -foopage", highlighting which part of the [[ikiwiki/PageSpec]] is causing -the match to fail. - - \[[!testpagespec pagespec="foopage or !bar*" match="barpage"]] - -This will print out something like "no match: bar* matches barpage", since -the part of the [[ikiwiki/PageSpec]] that fails is this negated match. - - \[[!testpagespec pagespec="foopage or barpage" match="barpage"]] - -This will print out something like "match: barpage matches barpage", -indicating the part of the [[ikiwiki/PageSpec]] that caused it to match. diff --git a/doc/plugins/teximg.mdwn b/doc/plugins/teximg.mdwn index 07ebb6d99..cf9fb5c6d 100644 --- a/doc/plugins/teximg.mdwn +++ b/doc/plugins/teximg.mdwn @@ -1,32 +1,10 @@ [[!template id=plugin name=teximg author="[[PatrickWinnertz]]"]] [[!tag type/chrome type/slow]] -This plugin renders LaTeX formulas into images. +This plugin implements the [[ikiwiki/directive/teximg]] [[ikiwiki/directive]]. +The directive renders LaTeX formulas into images. -Of course you will need LaTeX installed for this to work. The plugin -also uses mhchem.sty, which in Debian is in the texlive-science package and -may not be part of a regular texlive installation. - -## examples - - \[[!teximg code="\ce{[Cu(NH3)3]^{2+}}"]] - \[[!teximg code="\frac{1}{2}"]] - \[[!teximg code="E = - \frac{Z^2 \cdot \mu \cdot e^4}{32\pi^2 \epsilon_0^2 \hbar^2 n^2}" ]] - -To scale the image, use height=x: - - \[[!teximg code="\ce{[Cu(NH3)3]^{2+}}" height="17"]] - \[[!teximg code="\ce{[Cu(NH3)3]^{2+}}" height="8"]] - -If no height is choosen the default height 12 is used. Valid heights are: 8, 9, -10, 11, 12, 14, 17, 20. If another height is entered, the closest available -height is used. - -To add an alt text to the image, use alt="text": - - \[[!teximg code="\frac{1}{2}" alt="1/2"]] - -See [this site](http://www.der-winnie.de/opensource/gsoc2007) for rendered images. +Of course you will need LaTeX installed for this to work. ## configuration diff --git a/doc/plugins/toc.mdwn b/doc/plugins/toc.mdwn index 149ac041e..7e265fcec 100644 --- a/doc/plugins/toc.mdwn +++ b/doc/plugins/toc.mdwn @@ -1,20 +1,5 @@ [[!template id=plugin name=toc author="[[Joey]]"]] [[!tag type/chrome]] -Add a table of contents to a page: - - \[[!toc ]] - -The table of contents will be automatically generated based on the -headers of the page. By default only the largest headers present on the -page will be shown; to control how many levels of headers are shown, use -the `levels` parameter: - - \[[!toc levels=2]] - -The toc plugin will take the level of the first header as the topmost -level, even if there are higher levels seen later in the file. - -The table of contents will be created as an ordered list. If you want -an unordered list instead, you can change the list-style in your local -style sheet. +This plugin implements the [[ikiwiki/directive/toc]] [[ikiwiki/directive]]. +The directive adds table of contents to a page. diff --git a/doc/plugins/toggle.mdwn b/doc/plugins/toggle.mdwn index 5eac6e4a1..3dbdbac73 100644 --- a/doc/plugins/toggle.mdwn +++ b/doc/plugins/toggle.mdwn @@ -1,33 +1,7 @@ [[!template id=plugin name=toggle author="[[Joey]]"]] [[!tag type/chrome]] -With this plugin you can create links on pages that, when clicked, toggle +This plugin implements the [[ikiwiki/directive/toggle]] and +[[ikiwiki/directive/toggleable]] [[ikiwiki/directive]]s. +With these directives you can create links on pages that, when clicked, toggle display of other parts of the page. - -It uses javascript to accomplish this; browsers without javascript will -always see the full page content. - -Example use: - - \[[!toggle id="ipsum" text="show"]] - - \[[!toggleable id="ipsum" text=""" - Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do - eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim - ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut - aliquip ex ea commodo consequat. - - [[!toggle id="ipsum" text="hide"]] - """]] - -Note that you can include wiki markup in the toggleable text, -including even additional toggles, as shown in the above example. - -Also, the toggle and the togglable definitions do not need to be next to -each other, but can be located anywhere on the page. There can also be -mutiple toggles that all toggle a single togglable. - -The id has a default value of "default", so can be omitted in simple cases. - -If you'd like a toggleable to be displayed by default, and toggle to -hidden, then pass a parameter "open=yes" when setting up the toggleable. diff --git a/doc/plugins/version.mdwn b/doc/plugins/version.mdwn index 7c076362e..67c2a4e40 100644 --- a/doc/plugins/version.mdwn +++ b/doc/plugins/version.mdwn @@ -1,11 +1,5 @@ [[!template id=plugin name=version author="[[Joey]]"]] [[!tag type/useful]] -This plugin allows inserting the version of ikiwiki onto a page. - -Whenever ikiwiki is upgraded to a new version, the page will be rebuilt, -updating the version number. - -Use is simple: - - \[[!version ]] +This plugin implements the [[ikiwiki/directive/version]] [[ikiwiki/directive]]. +It inserts the version of ikiwiki into a page.