checkmm revisited
kollar <[email protected]>
| Newsgroups | gmane.comp.printing.groff.general |
|---|---|
| Message-ID | <[email protected]> |
I’ve been going through UTP, getting ready to start UTP Revisited, and came across `checkmm` in the -mm chapter again. I searched the mailing list archive, and found the primary mention was a thread I started during UTP Revival[1], again asking about availability. So, as one does in 2026, I asked the magic box (AI) about availability. It said that (paraphrased) "checkmm was made a part of DWB, which was never placed under an open license, but copies of the source are available on TUHS for Ultrix 3.1 and SVR4." Doing a web search “site:tuhs.org checkmm” turned up a copy of the source at: https://www.tuhs.org/cgi-bin/utree.pl?file=Ultrix-3.1/src/cmd/troff/checkmm/ OK, there’s some progress. The copyright statement is “Copyright (c) Digital Equipment Corporation 1984, 1985, 1986. All Rights Reserved.” HP owns DEC’s IP now; I don’t suppose anyone knows anyone who could ask HP to donate 11K of 40 year old code? (Or heck, open all of Ultrix’s code.) The magic box, which does often talk nonsense, went on to say (direct quote this time. minus Markdown markup): > Modern Linux systems use GNU Troff (groff). Instead of a standalone checkmm > binary, groff implements macro checking natively. When you run > "groff -mm -b -w w yourfile.mm", the -b (backtrace) and -w w (enable all warnings) flags > will automatically detect and print syntax errors, unmatched macros, or structural issues. I expect there’s some “start with a fact, then heap BS on BS” going on here. Groff’s diagnostics are useful, but can it detect unclosed macro pairs and structural issues? Now if it really can, putting “alias checkmm groff -mm -b -ww” in our .profile would give us an easy replacement. Is anyone using -mm a lot and willing to test this? — Larry [1] How the **** did 20 years go by that fast?