From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=MAILING_LIST_MULTI, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 11463 invoked from network); 8 Jan 2024 05:11:04 -0000 Received: from minnie.tuhs.org (50.116.15.146) by inbox.vuxu.org with ESMTPUTF8; 8 Jan 2024 05:11:04 -0000 Received: from minnie.tuhs.org (localhost [IPv6:::1]) by minnie.tuhs.org (Postfix) with ESMTP id B231F43E81; Mon, 8 Jan 2024 15:10:57 +1000 (AEST) Received: from freecalypso.org (freecalypso.org [195.154.163.71]) by minnie.tuhs.org (Postfix) with ESMTPS id 7D05543E75 for ; Mon, 8 Jan 2024 15:10:51 +1000 (AEST) Received: by freecalypso.org (Postfix, from userid 1001) id 7643537404E9; Mon, 8 Jan 2024 05:10:49 +0000 (UTC) Date: Sun, 07 Jan 2024 21:10:38 -0800 From: Mychaela Falconia To: tuhs@tuhs.org, g.branden.robinson@gmail.com References: <20240108032428.co3ozmlneoop6sa2@illithid> In-Reply-To: <20240108032428.co3ozmlneoop6sa2@illithid> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Message-Id: <20240108051049.7643537404E9@freecalypso.org> Message-ID-Hash: HJT6ZG6S5SHK5WPV2UKQDNFRW6MR6POG X-Message-ID-Hash: HJT6ZG6S5SHK5WPV2UKQDNFRW6MR6POG X-MailFrom: falcon@freecalypso.org X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: groff@gnu.org X-Mailman-Version: 3.3.6b1 Precedence: list Subject: [TUHS] Re: Original print of V7 manual? / My own version of troff List-Id: The Unix Heritage Society mailing list Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: G. Branden Robinson wrote: > This sort of broad, nonspecific, reflexive derogation of groff (or GNU > generally) is unproductive and frequently indicative of ignorance. I don't have enough spoons to engage in political fights any more, so I'll just focus on technical aspects. > The C/A/T's fonts did not even exist in the digital domain. They were > produced from photographic plates. Their reproduction is consequently > something of a pickle. I am very keenly aware of this fact! > But if you are going for pixel-perfect reproduction of documents that > used fonts you don't have, you're going to need to recreate the fonts > somehow--perfectly (at least for the glyphs that a given document uses). The problem you are describing is one which I am *not* actively working on presently. I am _contemplating_ this problem, but not actively working on it. In my current stage of 4.3BSD document set reprinting, I am willing to accept that hyphenations, line breaks and page breaks will be different from the original because of slightly different font metrics, and accept the use of only fi and fl ligatures (in running text, outside of explicit demonstrations) because Adobe's version dropped ff, ffi and ffl. (In places where original troff docs explicitly demonstrate the use of all 5 ligatures, I have a hack that pulls the missing ligs from a different, not-really-matching font.) I am willing to accept this imperfection because it is fundamentally no different from what UCB/Usenix themselves did in 1986: they took Bell Labs docs that were originally written for CAT and troffed them on their APS-5 ditroff setup - but those two typesetters also had slight diffs in their font metrics, causing line and page breaks to move around! OTOH I am very willing to entertain, as an intellectual exercise, what would it take to produce a new font set that would *truly* replicate the CAT font set at Bell Labs. The spacing widths of the original fonts (the key determinant of where breaks will land) are known, right here: https://www.tuhs.org/cgi-bin/utree.pl?file=V7/usr/src/cmd/troff/tab3.c Back in 2004 in one afternoon I threw together a quick-hack program that takes the output of original troff (CAT binary codes) and prints it in PostScript, using standard Adobe fonts. The character positioning is that of original troff, but because the actual font characters don't perfectly match these metrics, the result is not pretty - but the non-pretty result does show *exactly* where every line and page break lands per original intent! So what would it take to do such a re-creation properly? My feeling is that the task would require hiring a professional typeface designer to produce a modified version of Times font family: modify the fonts to produce good visual results (change actual characters as needed) to fit the prescribed, unchangeable metrics as in spacing widths. And design all 5 f-ligatures while at it. I have no slightest idea how much it would cost to hire a professional typeface designer to do what I just described, hence I have no idea whether or not it is something that the hobbyist community could potentially afford, even collectively. But it is an interesting idea to ponder nonetheless - which is where I leave it for now. > There is a third problem, whose resolution is in progress, when > producing PDF output from this document; slanted Greek symbols are > present but "not quite right". This is because unlike PostScript, PDF > font repertoires generally don't provide a "slanted symbol" face. Can you please elaborate? I personally hate PDF with a passion, but I concede that in order to make my documents readable by people other than me, I have to rcp my .ps file from the 4.3BSD machine to a semi-modern-ish (Slackware) Linux box and run ps2pdf on the file. But what "slanted symbol" font are you talking about that exists in PostScript but not in PDF? The only PostScript fonts whose existence I take as a given (as opposed to downloading the font explicitly) are the standard 14: 4 Times family fonts, 4 Helvetica family fonts, 4 Courier family fonts, Symbol and ZapfDingbats. Which of these 14 is missing in PDF, and how does "standard" ps2pdf (Ghostscript) handle it? > Like AT&T troff, groff attempts to be a practical typesetting system. I wrote *my* version of troff with exact same goals, and I've been using it as my personal everyday TPS report formatter for the past 20 y. It's just that for deeply personal reasons which I would rather not go into on this list, I chose to develop my own tool instead of using one that bears GNU branding. I also wanted my troff to run under 4.3BSD, using only K&R C, which I reason would probably be impossible with groff. (I recall reading somewhere that groff is written in C++ - so it is completely out of consideration for something that needs to run under 4.3BSD.) > But there is room in the world for such things, particularly if they are > Free Software. I was unable to determine that qjtroff is, except for a > few portions retaining UC Regents' copyright notices from the 1980s,[3] My software is written BY a pirate (me) FOR other pirates. If you are not a pirate, my sw is not for you. M~