YaST/yastdoc
From openSUSE
yastdoc is a man(1)-like utility for YaST developers inspired by perldoc and pydoc. It is also a set of rules about directory layout so that the utility knows where to look for the documentation.
YaST has quite some development documentation but it is not very organized. This is where the yastdoc structuring rules should help.
| YCP construct | place in yastdoc |
|---|---|
| y2milestone("Hello, world"); | base/ycp/y2milestone.html |
| m = float::ceil(x * 0.42); | base/ycp/float/ceil.html |
| Popup::Error("No cheese"); | base/ycp/Popup/Error.html |
| UI::OpenDialog(`PushButton("DWIM")); | base/ui/PushButton.html |
| a = SCR::Read(.etc.fstab); | base/scr/etc/fstab.html |
| `ag_ini(weird stuff) -- agents referenced in scrconf/*.scr | base/components/ag_ini.html |
| (TODO an example for CWM) | base/cwm/foo/bar.html |
The base is /usr/share/doc/yastdoc/html on your local system if you have *-devel or *-devel-doc RPMs installed (very recent, newer than openSUSE 11.1 Alpha 1: yast2-core-devel-2.17.7), or (TODO) somewhere on the web. Once enough of the docs have been adjusted to conform to yastdoc, we will put it to the usual place.
For better hyperlinking among documentation that is built separately, we propose a Uniform Resource Name of the form urn:x-yastdoc:section:namespaces:name, as in "urn:x-yastdoc:ycp:float:ceil". When building the docs, the generator program will replace it with URLs to the actual place.

