From: Douglas McIlroy Date: 15/03/2026, 06:54 To: Kristaps Dzonsons Subject: Re: History of UNIX manpages: TH vs th -man macros You are correct. I did a major revision of the man-page macros for v7. Every macro name was in caps, a custom pioneered by -ms. The alternating-font macros, e.g. .BR, were a generalization of the font-change macros in -ms, that brought to light (and to intuitive order) the second and third arguments of .B. The indented-paragraph macros, .HP, .TF, etc., filled a lacuna in the historic -man, where the ubiquitous tagged indented paragraphs had to be handled on a case-by-case basis. Sometimes .BR-style macros are insufficient and need \f in some argument, but I couldn't think of any intuitive 2-letter names for what could be called .BRI and the like in groff. .EX/.EE provided uniformity in presenting examples, and encouragement to do so. I was particularly proud of adding the "literal" font,.L, to the normal budget of .R, .I, .B. It made synopses look like real code--preferable, I think, to the Algol gimmick of a distinct publication language with bold keywords. It has been a great disappointment that the rest of the world dropped this innovation while adopting the rest of the package. You are welcome to quote these remarks. Doug On Sat, Mar 14, 2026 at 6:44 PM Kristaps Dzonsons wrote: > > > > Hello Doug, > > > > This is Kristaps Dzonsons: I wrote to you what feels like a long time > > ago about UNIX troff history, https://manpages.bsd.lv/history.html. > > It's been a long while! > > > > In looking over all this again quite recently, I realised that while > > I've documented the tooling history, I didn't say much about the > > *format*, and I'd like to address that by reaching out to you and others > > involved in its inception (Cynthia Livingston for mdoc.7, Ken Thompson > > for his work on the original Programmer's Manual, etc.). > > > > If you have a moment, do you think I might e-mail you a few questions > > about your role in the roff -man macros, specifically in formulating the > > new macros TH-based macros for V7 UNIX? > > > > Specifically, and as a way of getting into it: > > > > - From what I read, you were responsible for re-writing the pre-V7 > > macro set (the original used `th` instead of `TH` as its first macro), > > writing man.7, *and* migrating the existing manpage macros to use the > > new format. Is that correct? Can you comment on what inspired you into > > this huge effort? There were a lot of manpages! > > > > - While V7 has all of its tmacs in place, I can't find the actual > > macro definitions for the `th` -man used in V4--V6. In at least V6, I > > can find the -ms and -mr macros in /usr/lib, but not the proto-man ones. > > Is there any reference or source code you know of for the original > > `th` macros? > > > > If it's alright with you, like with the original history website, I'll > > retain (redacted) e-mails with any response so as to keep a first-person > > account. No worries if you'd rather I not include them! > > > > Thank you, > > > > Kristaps