in reply to New pmdev-only documentation infrastructure

As a sort of first half-step in this direction, I've added the ability to attach sitedoclets to the following additional nodetypes (with more to come):

In the case of the above (10 nodetypes, so far), the sitedoclet, if any, is shown on the default view of the node (i.e. ;displaytype=display).

In addition — and perhaps most radically of all — I've also added the ability to attach sitedoclets to any node for which ;displaytype=viewcode works (except patches). That is, in addition to most of the above, the following nodetypes:

Again — the sitedoclets (if any) belonging to such nodes can be accessed when viewing the node with the viewcode display type.

And as usual, if there is no sitedoclet currently attached, a link labeled Create sitedoclet appears where the Edit sitedoclet link would be.

And I suppose this is a good a time as any to explain to those of you who may not know, there are really two different uses for sitedoclets: one is a way to attach a documentary node to some other node, with an implicit (though very binding) association by node title. For example, if we wish to make an internal document for quest display page, the doclet would be named quest display page sitedoclet, and it would be visible when viewing the node in question. The other use for sitedoclets is to store fragments of HTML content intended to be shown to the user. For example, the text at the top of SoPW is pulled in from a sitedoclet, and the content of several of the nodelets is stored in sitedoclets. There are two different functions for these two use cases: for the former, use showsitedoclet, and for the latter, use get_sitedoclet. Functionally, the differences are small: showsitedoclet will render a Create or Edit link (along with the actual content, if any), while get_sitedoclet returns html intended to be embedded in some containing context (or an empty string, if doclet no existe). get_sitedoclet provides a way to retrieve only delineated parts of a doclet, and a way to expand macros within a doclet. The use of get_sitedoclet does not have the strict naming convention that showsitedoclet does.

showsitedoclet is only used in the display pages of certain nodetypes, as detailed above.

Ergo:

It seems rather natural to convert the one use of sitedoclet - the showsitedoclet case - into the proposed new nodetype!

Update: Done!

What is the sound of Windows? Is it not the sound of a wall upon which people have smashed their heads... all the way through?