Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!cs.utexas.edu!uunet!mcvax!ukc!warwick!anduk!lee From: lee@anduk.co.uk (Liam R. Quin) Newsgroups: comp.text Subject: Re: What features would you like in GNU troff? Summary: long names need not break old documents Message-ID: <24@nx32s.anduk.co.uk> Date: 11 Jun 89 23:14:44 GMT References: <622@rna.UUCP> <22@nx32s.anduk.co.uk> <763@dtscp1.UUCP> Reply-To: lee@nx32s.UUCP (0000-Liam R. Quin) Distribution: comp Organization: Unixsys (UK) Ltd, Warrington, England Lines: 78 In article <763@dtscp1.UUCP> scott@dtscp1.UUCP (Scott Barman) writes: >In article <22@nx32s.anduk.co.uk> lee@nx32s.UUCP (Liam R. Quin) writes: >>I prefer "\[...]", (e.g. for things like \\*[array.\\n[index]]). >The problem with this is with the older versions of troff it will interpret >the string named "[" then append "array" to it and the number register >of "[" then "index]]" appended. Obviously this happens if you use \n{ as well. The difference is that \[ is not already wired into troff, and is therefore useable for extensions; this isn't true for \{. But if you use the old versions of troff, you are not likely to use the new extensions. >Once you do this, you have to sit and >re-edit many megabytes of documentation already in existance. Only if it uses \[ in the input (which wouldn't have done anything!), or if you have used a string or number register called [, and you don't have a "disable long names" command-line option. Even then, it is a very, very easy sed-script to turn \*[ into \*[[] everywhere. Remember that your old documents do not use long names, because troff didn't have them at your site when you wrote them. No-one is suggesting that you be forced to discard or edit megabytes of documentation. >This is >not fair to those of us who has [sic] been doing this for a few years! Doing what? Sorry, not following you here. >Didn't Berkeley do something like this for long names? I think they took >great pains in keeping the compatibility! Yes... >Their method was to use the >space as the delimeter. Not that I am aware of. In article <252@ucbopal.CC.Berkeley.ARPA> (Edward Moy) wrote (on the 3rd Jul 1985), that they used square brackets, as in \*[string]: Strings, number registers and fonts of any length name may be called with \*[x..x], \n[x..x] and \f[x..x], respectively. Special characters may also be called with \[x..x]. The format of a number register may be accessed with \g[x..x], and the current input-line horizontal position may be recorded in register x..x with \k[x..x]. Size changes of any number of digits may be called with `s[x..x]. This only happened if you set the EXPANDED environmant variable, or if you used -x on the command line. If there was another version of ditroff which used spaces, I don't know of it (and would like to know more). But it sounds like it would have been a pain! >[...] AND IT DOES NOT BREAK ALL >THE OLD DOCUMENTS! Neither do \{ \[, \<, \C'...' or any of the other schemes. Perhaps you are being a trifle alarmist? At most these break a very few documents, and a few macro packages (not, for example, -mm in either case) need very slight editing. >PLEASE STOP TRYING TO BREAK OUR *MEGABYTES* OF DOCUMENTATION!!! No-one is doing this. You can stop shouting now [0.5 :-)]. If you still need convincing, though, send me some mail! >*AND* we (read: me, >the part-time sys admin., full time programmer) do not want to maintain >N versions of troff! I did it once and it was not fun or easy! No-one seems to be about to force you to use GNU troff. If you prefer to walk, walk. We'll take the `plane. [:-) :-) :-)] lee -- Lee Russell Quin, Unixsys UK Ltd, The Genesis Centre, Birchwood, Warrington, ENGLAND, WA3 7BH; Tel. +44 925 828181, Fax +44 925 827834 lee%anduk.uucp@ai.toronto.edu; {utzoo,uunet}!utai!anduk!lee UK: uu.warwick.ac.uk!anduk.co.uk!lee