Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83 (MC830713); site mcvax.UUCP Path: utzoo!linus!philabs!mcvax!jaap From: jaap@mcvax.UUCP Newsgroups: net.unix-wizards Subject: Re: Broff and a proposed net project Message-ID: <5301@mcvax.UUCP> Date: Mon, 25-Jul-83 15:22:09 EDT Article-I.D.: mcvax.5301 Posted: Mon Jul 25 15:22:09 1983 Date-Received: Tue, 26-Jul-83 23:29:30 EDT References: <852@rlgvax.UUCP> Organization: Math.Centre, Amsterdam Lines: 62 - for example, Knuth's TeX seems more powerful and seems to have a less baroque and difficult language. Maybe TeX is more powerful, but it is still a difficult language. One should read some TUG-boat newsletter (TeX user group bulletin of advanced typesetting ?) and see all the articles about how to do things, how the Branching Mechanics really works, Basic Kludges etc. The newsletter looks like an anti-propaganda bulletin... Also the error messages are quite cryptic. The first one I got was: "Whoaa, you can't do this before that." Hm, talking about user friendly systems... So far the "Joy of TeX". ... "broff" would be useful for programmers and other people working at shops which make heavy use of "nroff" and don't want to convert ... That's another reason for not changing \n to \#. In general, keep it full upward compatible with the existing implementations of n/troff. Hardly anything is so frustrating than something that is just about compatible. You might want to post something about hypnenation.... Just a short remark, from what I remember from two years ago, the last time I looked to it. The routine hyphen() in n8.c expect a pointer to a word. As far as I remember, it returns a pointer to the same word, but with a bit set (0200) at each character before which the hyphenation may take place. See also suftab.c. It refuses to hyphenate words with numbers, local motions or other funny non-ascii things inside. So it also refuses to hyphenate words with ligatures! There is still an old plan remove this last limitation, but the road to hell is paved with good intentions, so... If you know how the ".ht" (Hyphenation Threshhold) request works (from what I can see, there's some value assigned to each digram, and only digrams with values at or above the threshhold are hyphenated), you might post that too... The .ht request is for debugging the hyphenation algorithm. Diagram values are calculated by looking in the hytab.c values. There are tables that look like char bxh[26][13]{ 0000, 0050, .... etc. I guess these values give the chance that hyphenating between `b' and `h' for certain characters might be correct. So to hyphenate f.i. frysk, you have to adjust these values accordingly, and maybe change the table(-names) to f.i. char fxr[26][8]. For Dutch we just put a complete different algorithm in, which is smaller faster and need less tables. (It's a spin off from an old research project, which dealed with word frequences in newspapers.) So we have nroff and nlroff (for Dutch hyphenation). I planned (again) a new reguest .lawhich will allow dynamic change of the hyphenation algorithm. Hope this information is useful for someone out there. Jaap Akkerhuis Mathematisch Centrum (soon to be Centrum voor Wiskunde en Informatica) Amsterdam PS An apology. I know this article should have gone in net.text, but we don't get it (yet).