Test /
DefinitionLists
Pm is clearly up to something very cool. The definition list that he has on the Notify page is no ordinary definition list. While it appears to use standard definition list markup, it renders an html definition list that includes all sorts of additional attributes that cause the term to be rendered as escaped code that links to an anchor at the current postion.
Observe:
Here is a portion of the definition list copied from PmWiki/Notify
- %apply=item id=NotifySubjectFmt?%
$NotifySubjectFmt
- The subject line of the mail to be sent.
- %apply=item id=NotifyHeaders?%
$NotifyHeaders
- String of extra mail headers to be passed to the mail() function.
- %apply=item id=NotifyParameters?%
$NotifyParameters
- String of additional parameters to be passed to PHP's mail() function [1].
- %apply=item id=NotifyFile?%
$NotifyFile
- The scratch file where Notify keeps track of recent posting information. Defaults to
"$WikiDir/.notifylist"
. Note that this file must generally be writable by the webserver process. - %apply=item id=NotifyListPageFmt?%
$NotifyListPageFmt
- The name of the page containing
notify=
lines for use by notify.php. Defaults to{$SiteGroup}.NotifyList
. - %apply=item id=NotifyList?%
$NotifyList
- An array of
notify=
specifications that can be specified from a local customization file (used in addition to entries in Site.NotifyList).
# send notifications to alice@example.com
$NotifyList
[] = 'notify=alice@example.com'
Copy the first link and change the term name
The link no longer works
- %apply=item id=NotifySubjectFmtNewText?%$NotifySubjectFmtNewText
- The subject line of the mail to be sent.
Create a new term from scratch
No link, just an ordinary definition list
- New Term1
- New Term1 Definition
- New Term2
- New Term2 Definition
Lets have a look at the html source
Looking at the first items, in their original and modified forms, we see the following:
<h3>Here is a portion of the definition list copied from <span class='wikiword'>PmWiki</span>/Notify</h3> <dl><dt><a name='NotifySubjectFmt' id='NotifySubjectFmt'></a><a class='varlink' href='http://pmwiki.org/wiki/PmWiki/Notify#NotifySubjectFmt'><code class='varlink'>$NotifySubjectFmt</code></a></dt><dd>The subject line of the mail to be sent. <h3>Copy the first link and change the term name</h3> <p>The link no longer works </p> <div class='vspace'></div><dl><dt><a name='NotifySubjectFmtNewText' id='NotifySubjectFmtNewText'></a>$NotifySubjectFmtNewText</dt><dd>The subject line of the mail to be sent. </dd></dl><div class='vspace'></div><h3>Create a new term from scratch</h3> <p>No link, just an ordinary definition list </p><dl><dt>New Term1</dt><dd>New Term1 Definition </dd><dt>New Term2</dt><dd>New Term2 Definition