[self-follow-up; I neglected to explain a detail of new output]
At 2025-05-10T08:19:01-0500, G. Branden Robinson wrote:
> What we're about to do will produce JSON-formatted output to the
> standard error so let's (1) suppress other output and (2) pipe that
> JSON stuff to jq(1) to pretty-print it.
>
> $ tg -Wreg -z ATTIC/oliver-set-register-in-macro.groff 2>&1 | jq
> {
> "name": "pageno",
> "file name": "ATTIC/oliver-set-register-in-macro.groff",
> "starting line number": 4,
> "length": 43,
> "contents": "\\$1:\u001c \n.nr xx \\$1 \n0 \n",
> "node list": []
> }
>
> We can observe a few things.We see a U+001C character in the macro contents. Looking at an ASCII chart, that's "FILE SEPARATOR". What's that? It's how GNU troff encodes special token types. In this case, it's `ESCAPE_c`. You can look up the meanings of these specially encoded tokens in the "src/roff/troff/input.h" source file. https://git.savannah.gnu.org/cgit/groff.git/tree/src/roff/troff/input.h?id=0cd44362696c9d65ab59f6014f15221ac53b57f3 Regards, Branden
signature.asc
Description: PGP signature
