Path: utzoo!utgpu!jarvis.csri.toronto.edu!rutgers!orstcs!mist!budd From: budd@mist.CS.ORST.EDU (Tim Budd) Newsgroups: comp.text Subject: Re: What features would you like in GNU troff? Message-ID: <10959@orstcs.CS.ORST.EDU> Date: 2 Jun 89 18:52:38 GMT References: <742@dtscp1.UUCP> Sender: usenet@orstcs.CS.ORST.EDU Reply-To: budd@mist.CS.ORST.EDU (Tim Budd) Distribution: comp Organization: Oregon State Univ. -- Computer Science Lines: 21 A few months ago I taught a two day course on troff. While reviewing all the various dark corners of the system that I had forgotten about in preparation for that course, it occurred to me that a large percentage of troff commands basically just set various internal values. I pondered at the time whether if one made more internal registers user accessible, one could define *macros* for most of these commands. Something like .sp, for example, would just issue a .br (if not given as a 'sp command, so the first char of the command would have to be accessible to the macro), followed by an increment of the ``space to put out before next text'' value. I think this could be done, and I think this would result in the troff system itself being relatively small, but having a relatively large macro package to come with it. There were only a dozen or so commands that I could think of that couldn't be rewritten as calls on simplier functions, given some additional assumptions (like accessibility of registers, ability to get first character of command line, ability to do better argument string processing, and so on). I didn't pursue this since I have far to many black holes sucking my time as it is, but if somebody is actually rewriting troff they might want to give this some consideration. --tim budd, budd@cs.orst.edu