Hi Ingo, > Yves Cloutier wrote: > > The short answer is that those macros are too level even for me. > > I don't understand what "too level" means.
`too (high|low) level'? > Roff is both a typesetting system and a programming language. So the > way to do what you want to do with roff is by writing the program you > are trying to write - in roff. In other words, write a macro set. We're not entirely sure what he wants. He may not know himself at this early stage of MVP and experimentation. Perhaps troff syntax, even with mainly light-noise macros, would be off-putting to his users and so he's wanting a pre-processor that produces troff. The input language could be largely based on indentation, for example. > In general, generating code in one programming language by a program > in a different language is often a second-best approach, to put my > opinion mildly. All programs that generate troff are written in a different language AFAICS ‒ all those preprocessors ‒ with macros being the only exception, and then they're normally accompanied by prologue that sets up the environment rather than being self-contained. > Besides, whith a macro set, advanced users can use roff(7) requests > between the macros when the need arises. With your approach, even > mildly adanced users will soon hit walls where your stuff is not good > enough - and they can't complement it by directly resorting to > low-level roff(7) where needed either. Yves should consider an `escape' such that troff can be poked through. -- Cheers, Ralph. https://plus.google.com/+RalphCorderoy