Hi Anton, Anton Shepelev wrote on Sat, Jul 30, 2011 at 04:10:26AM +0400: > Mike Bianchi: >> [...] To do even the simplest document requires >> much-too-much expertise for the rank beginner. >> >> What is missing is a Front Door that leads you >> gently into the Castle, teaches you the way >> through the rooms, closets and pantries, so you >> can live comfortably there with what is present. >> Then (and only then) should you be led down into >> the basement and shown how the electric, water, >> heat and sewage utilities work. Finally you >> should go into the workshop and start building >> your own mechanisms.
> This approach to learning Groff would only work if > there were a simple, high-level and self-contained > set of macros that would hide the underlying mecha- > nisms perfectly well, sparing the user the need to > intefere with the low-level stuff. There is at least on such package: mdoc(7). Of course, it only aims to support manual pages, not general text processing and layout. In that domain, it is so self-contained that it can even be implemented stand-alone - mandoc(1). Whenever somebody is using any macro except an mdoc macro in an mdoc document, i frown upon that as utterly bad style. Going down to the basement is just a bad idea and rarely portable. The only reasons why mandoc supports some low-level roff constructs are because some people still use man(7) for writing manuals, which is not self-contained in the same sense, and because a few people use low-level roff constructs in their manuals without a good reason, even in mdoc code, though rarely. [...] > From my own experince, the existing packages are > much stronger coupled with Groff and cannot be used > without good understanding of Groff itself. I didn't > try mom though. Maybe you didn't try mdoc(7), either - or only considered general purpose packages in this context. > What I was missing the most in the beginning was a > Groff tutorial that would deliver information in > learning order, as opposed to reference order, as > the info manual does. Admittedly, i still have to write that for mdoc(7); right now the best manual is the reference: http://mdocml.bsd.lv/mdoc.7.html Yours, Ingo