{
    "href": "/post/2005/06/28/solar-documentation-binge/",
    "relId": "2005/06/28/solar-documentation-binge",
    "title": "Solar: Documentation Binge",
    "author": "pmjones",
    "markup": "html",
    "tags": [
        {
            "href": "/tag/php/",
            "relId": "php",
            "title": "PHP",
            "author": null,
            "created": null,
            "updated": [],
            "markup": "markdown"
        },
        {
            "href": "/tag/solar/",
            "relId": "solar",
            "title": "Solar",
            "author": null,
            "created": null,
            "updated": [],
            "markup": "markdown"
        }
    ],
    "created": "2005-06-28 15:00:37 UTC",
    "updated": [
        "2005-06-28 15:00:37 UTC"
    ],
    "html": "<p>I've been working on new end-user documentation for <a href=\"http://solarphp.com\">Solar</a>, both for the general principles (in the Main area) and for the various classes (in the Solar* areas).  You can see the results of these efforts here:</p>\n<p>* <a href=\"http://solarphp.com/home/index.php?area=Main&amp;page=SolarDocs\">http://solarphp.com/home/index.php?area=Main&amp;page=SolarDocs</a></p>\n<p>* <a href=\"http://solarphp.com/home/index.php?area=Solar\">http://solarphp.com/home/index.php?area=Solar<br>\n</a></p>\n<p>* <a href=\"http://solarphp.com/home/index.php?area=Solar_Error\">http://solarphp.com/home/index.php?area=Solar_Error</a></p>\n<p>* <a href=\"http://solarphp.com/home/index.php?area=Solar_Locale\">http://solarphp.com/home/index.php?area=Solar_Locale</a></p>\n<p>One of the really nice things about using <a href=\"http://yawiki.com\">YaWiki</a> for end-user docs is that you can very easily link to methods and properties of other classes simply by typing the name of that element.  For example, typing \"Solar::get()\" automatically links to the page named \"get()\" in the \"Solar\" area of the wiki; similarly, typing \"Solar::$config\" goes to the \"$config\" page in the Solar area.  No need to remember a complex hierarchy of pages every time you want to reference a method or property, as with (say) DocBook.  ;-)</p>\n<p>To get that auto-linking behavior, I created a custom <a href=\"http://pear.php.net/Text_Wiki\">Text_Wiki</a> rule based on the default Interwiki rule.  In that custom rule, all I did was edit the regular expression to accept double-colons as the area/page separator.  Then I told YaWiki, via the config file, that custom rules were in a specific directory.  Voila: auto-linking of  class-named areas with pages names for methods and properties.</p>\n<p>So, who says wikis are not for documentation?  ;-)</p>\n"
}
