131 Commits

Author SHA1 Message Date
G. Branden Robinson
c48dde4811 PROBLEMS: Indulge a speculation. 2025-12-06 08:11:51 -06:00
G. Branden Robinson
0792fdee7a PROBLEMS: Fix disordered punctuation. 2025-10-01 05:00:43 -05:00
G. Branden Robinson
de6d3118aa PROBLEMS: Document the damnable pnmcrop warning. 2025-09-25 19:53:03 -05:00
G. Branden Robinson
1484f4978a PROBLEMS: Fix English style nits. 2025-06-26 01:27:49 -05:00
G. Branden Robinson
1f9c59cc25 PROBLEMS: Update man page char remapping item.
* Favor active voice over passive.
* Explain tradeoff involved with remapping ' and `.
2025-06-19 10:31:38 -05:00
G. Branden Robinson
7445ff02a0 PROBLEMS: Recast item. 2025-06-07 19:45:44 -05:00
G. Branden Robinson
a1277a1e0e PROBLEMS: Fix example numeric expression.
*roff has no operator precedence; parenthesize appropriately.
2025-06-07 19:45:44 -05:00
G. Branden Robinson
3305d96eb8 PROBLEMS: Add item regarding man SY w/ groff 1.24. 2025-05-29 21:57:39 -05:00
G. Branden Robinson
2514dc63e0 Adapt tests to feeble systems.
...lacking a shell or grep conforming to POSIX Issue 4 (1994).

* src/roff/groff/tests/msoquiet-request-works.sh:
* src/roff/groff/tests/soquiet-request-works.sh:
* tmac/tests/an_UR-works.sh: Do it.

* tmac/tests/an_UR-works.sh: Also cope with versions of pdftotext(1)
  that transcribe "fi" as a ligature.

* HACKING:
* PROBLEMS: Update advice.
2024-12-04 06:44:29 -06:00
G. Branden Robinson
9b426f27bc PROBLEMS: Document macOS/Homebrew/uchardet issue.
Add item and document workaround under "groff 1.22.4" because it likely
affected that release as well; Bertrand added uchardet as an optional
dependency in 2017, and the next groff release was in December 2018.

Fixes <https://savannah.gnu.org/bugs/?66143>.  Thanks to Sven Schober
for the report and for determining the workaround.
2024-10-21 18:24:20 -05:00
G. Branden Robinson
e114a9c3b2 PROBLEMS: Clarify item (move modifier). 2024-09-16 19:41:55 -05:00
G. Branden Robinson
2504c708a5 PROBLEMS: Drop caveats about grohtml/netpbm.
The solution to this appears to be party^Wwrite for Netpbm as if it's
_not_ 1999 (or 2001).  See Savannah #65960 and #65961.
2024-07-09 15:13:50 -05:00
G. Branden Robinson
fa7ac31abb PROBLEMS: Fix missing word. 2024-06-21 09:11:11 -05:00
G. Branden Robinson
ad2538ad31 PROBLEMS: Expand and clarify Netpbm/pnmcrop issue.
Observed via a groff build on OpenBSD build running Netpbm 11.3.5.  The
images are fine.
2024-03-24 15:52:06 -05:00
G. Branden Robinson
3980bf5841 PROBLEMS: Note pnmcrop/netpbm 11.01.00 anomaly. 2024-01-31 04:37:56 -06:00
G. Branden Robinson
40739d1497 [gdiffmk]: Skip tests if "diff -D" not supported.
* contrib/gdiffmk/tests/runtests.sh: Test for "diff -D" support as
  gdiffmk itself does, and skip test if such support is lacking.

* ANNOUNCE:
* PROBLEMS: Drop caveat about potential test failures.
2023-12-25 19:13:03 -06:00
G. Branden Robinson
173588377b [gdiffmk]: Refactor to stop using expr(1).
* contrib/gdiffmk/gdiffmk.sh (RequiresArgument): Refactor to use shell
  parameter expansion instead of expr(1), to avoid potential use of
  external command and quirk in FreeBSD's implementation.

* ANNOUNCE:
* PROBLEMS: Drop caveat.
2023-12-23 17:50:46 -06:00
G. Branden Robinson
5956b88504 PROBLEMS: Drop caveat about GNU diffutils 3.9.
GNU diffutils 3.10 has been out for a while now.

ANNOUNCE: Ditto.
2023-12-23 13:17:56 -06:00
G. Branden Robinson
1cadb8b45c [docs]: Revise discussion of paper format.
* PROBLEMS:
* doc/groff.texi:
* src/roff/groff/groff.1.man: Do it.
2023-08-17 07:36:58 -05:00
G. Branden Robinson
e0d68fa359 PROBLEMS: Fix extraneous word.
Continues commit c1593cc066, 11 August.
2023-08-16 21:38:29 -05:00
G. Branden Robinson
4a0240b4e7 PROBLEMS: Vary wording. 2023-08-13 09:30:07 -05:00
G. Branden Robinson
c1593cc066 PROBLEMS: Drop reference to "fixmacros.sed".
Continues commit 94d6725d8a, 2 August.
2023-08-13 09:30:07 -05:00
G. Branden Robinson
94d6725d8a tmac/fixmacros.sed: Delete.
Drop tmac/fixmacros.sed.  We hadn't ever actually installed it; it was
provided only in our distribution archives, as far back as our history
indicates.

* tmac/fixmacros.sed: Delete.
* tmac/tmac.am (EXTRA_DIST): Stop shipping it.
* PROBLEMS: Recast and update relevant item description.  This is the
  only place the file was documented.
2023-08-02 10:47:50 -05:00
G. Branden Robinson
00b503e3bc PROBLEMS: Update discussion of paper format.
Use contemporary terminology and reflect modern output driver
repertoire.  Clarify (I hope).  Elaborate cross references to man pages.

Admit to the variation in macro packages' handling of related matters.
2023-07-28 05:52:21 -05:00
G. Branden Robinson
e3596e7f55 PROBLEMS: Recast some old items.
* Say "GNU troff" instead of "gtroff".
* Use quotation marks when inlining formatter instructions.
* Tighten wording.
* Say "AT&T troff" instead of "Unix troff".  BSD Unix was Unix (it's
  right there in the name!) and it adopted groff as its troff in 1990.
* Migrate terminology: "point size" -> "type size".
* Correct claim: GNU troff throws an error, not a warning, when reading
  a tab after a request or macro name on a control line, and this action
  is not potential, but real.
* Use more idiomatic English.
2023-07-27 00:56:25 -05:00
G. Branden Robinson
3a3c086b47 [libxutil]: Fix Savannah #63831.
* src/libs/libxutil/XFontName.c (utoa): Rename function from this...

  (xu_utoa): ...to this, to avoid name collision when using "newlib"
  portability library.

  (XFormatFontName): Update call site.

* PROBLEMS: Drop item.

Fixes <https://savannah.gnu.org/bugs/?63831>.  Thanks to Brian Inglis
for the report.
2023-07-10 03:19:30 -05:00
G. Branden Robinson
f60452a44c [pdfpic]: Fix Savannah #64061.
* tmac/pdfpic.tmac: Refactor to make comprehensible some woefully
  undocumented cleverness and improve efficiency.

  (PDFPIC): Break out flaming-hoop-leaping "clever" bit of `sy` usage
  into its own macro, calling from here and relocating its requests from
  here...

  (pdfpic@get-image-dimensions): ...to here.  When using `sy` request to
  collect and munge output of pdfinfo(1), (a) disable the escape
  character while defining the macro; (b) construct the command in a
  roff string, appending to it in discrete, hopefully comprehensible
  chunks; (c) disable the escape character during macro interpretation
  wherever possible (most of it); (d) retain doubled backslashes so that
  they survive subsequent string interpolation; (e) stop using grep(1)
  in the pipeline when sed(1) is perfectly capable of performing its own
  input filtering; (f) invoke sed with '-n' option and emit output only
  upon a successful substitution; (g) replace unportable(!) POSIX BRE
  character class '[:digit:]' in substitution match text with '[0-9]';
  and most importantly (h) replace multi-line sed 's' replacement text
  (see below for the reason we can't use it) with single roff control
  line employing the groff extension escape sequence `\R` to assign
  multiple registers.  Annotate portability and escaping challenges.
  Tested on GNU/Linux, macOS 12, and (with simulated pdfinfo(1) output)
  Solaris 11.

There is a problem with trying to embed true newlines into the arguments
of a `sy` request.  The C++ function that GNU troff uses to assemble the
command string (character by character) _does not recognize C/C++ string
literal escape sequences_.  This means that you _cannot_ embed "\n" in
`sy`'s arguments and have it survive, as a newline character, into the
command string passed to the standard C library's system(3) function.
("A\nB" gets encoded as 'A', '\\', 'n', 'B', not 'A', '\n', 'B'.)
Unfortunately, this appears to be AT&T troff-compatible behavior.  But
it means that you _cannot_ portably construct multi-line replacement
text for sed's 's' command.  (Other sed commands like 'a', 'c', and 'i'
will be similarly affected.)  See Savannah #64071.

* PROBLEMS: Drop item.

Fixes <https://savannah.gnu.org/bugs/?64061>.  Thanks to Bruno Haible
for the report, and to him and Ralph Corderoy for the discussion of
portable and efficient sed constructs.
2023-07-10 03:19:30 -05:00
G. Branden Robinson
dbd2b20072 PROBLEMS: Update expected diagnostic text.
Thanks to Dave Kemper for catching this.
2023-04-24 20:34:42 -05:00
G. Branden Robinson
6ee42a18c3 PROBLEMS: Clarify Solaris/macOS portability items. 2023-04-20 03:39:52 -05:00
G. Branden Robinson
08fbe2c290 PROBLEMS: Fix indentation in answer. 2023-04-16 20:13:36 -05:00
G. Branden Robinson
49243465e1 PROBLEMS: Annotate a control character land mine. 2023-04-16 20:13:36 -05:00
G. Branden Robinson
954d6c99de PROBLEMS: Update Hurd item and some shebangs.
Per Bruno Haible, GNU/Hurd is passing all tests as of 1.23.0.rc4.

Regarding shebangs, groff has unfortunately done its part in spreading a
myth.  See <https://savannah.gnu.org/bugs/?64058>.
2023-04-16 20:13:36 -05:00
G. Branden Robinson
3fa6ce5889 PROBLEMS: Update discussions.
* Advise reader to not necessarily take "/usr/local" literally.
* Admit that SunOS employed non-standard extensions to man(7) as well.
2023-04-16 20:13:32 -05:00
G. Branden Robinson
d1d77c2b0e PROBLEMS: Coalesce gdiffmk items.
Also borrow wording from "ANNOUNCE".
2023-04-16 20:00:52 -05:00
G. Branden Robinson
65f6713c54 PROBLEMS: Replace commit IDs with version numbers. 2023-04-16 20:00:52 -05:00
G. Branden Robinson
16deaeb7d2 PROBLEMS: Resequence file.
Explain the order that it's in, to aid readers and, I hope, help
maintainers keep it in order.

Still to do: replace Git commit info with groff release info.
2023-04-16 20:00:47 -05:00
G. Branden Robinson
49e56c59c1 PROBLEMS: Fix typo. 2023-04-01 10:33:39 -05:00
G. Branden Robinson
405fe32847 PROBLEMS: Warn about gdiffmk/expr/FreeBSD problem. 2023-03-06 14:01:02 -06:00
G. Branden Robinson
c70e3c4bfb [groff]: Revise a test to be more revealing.
* src/roff/groff/tests/initialization_is_quiet.sh: Stop using "set -e".
  Instead use `fail` variable and `wail` function (and lowercase names
  for our internal variables) like many of our other tests.  If the
  "unset" shell built-in fails, skip the test (prompted by
  /usr/xpg4/bin/sh on Solaris).  Attempt every groff locale, with and
  without compatibility mode initially enabled, instead of stopping at
  the first failure.  Report standard error and standard output content
  separately.  Use groff's `-a` flag to prepare the standard output, for
  readability.

* PROBLEMS: Document that this test might be skipped rather than failing
  on Solaris.  (What actually happens depends on which shell you run it
  with, and we advise a variety of approaches.)

Thanks to Bruno Haible for feedback regarding mysterious failures of
this test on GNU/Hurd and NetBSD systems.
2023-03-06 14:01:02 -06:00
G. Branden Robinson
0ed0e3548a PROBLEMS: Improve advice. 2023-03-01 01:57:32 -06:00
G. Branden Robinson
80586c14f8 PROBLEMS: Fix content and style nits.
* Qualify claim about the Solaris 11 shell's POSIX-conformance.
* Drop garbage words.
2023-02-25 14:07:44 -06:00
G. Branden Robinson
981eb64cd5 PROBLEMS: Update foundry test failure discussion. 2023-02-25 06:21:20 -06:00
G. Branden Robinson
4fecf105c3 PROBLEMS: Note newlib/utoa/XFontName.c problem.
Thanks to Brian Inglis for the report.

See <https://savannah.gnu.org/bugs/?63831>.
2023-02-25 05:43:05 -06:00
G. Branden Robinson
92b1d963d7 PROBLEMS: Note expected Solaris 10 test failures.
Commit b2157f22b5, 22 February, exposed this.
2023-02-25 04:04:47 -06:00
G. Branden Robinson
3e7d2b1b24 PROBLEMS: Document Solaris 10/11 testing issues. 2023-02-22 03:28:24 -06:00
G. Branden Robinson
434e2b0606 PROBLEMS: Explain "check foundry" test failures.
Thanks as ever to Deri James for the extensive discussions.
2023-02-22 03:28:24 -06:00
G. Branden Robinson
4ee8309ce7 PROBLEMS: Drop incorrect statement.
The tmac/tests/latin2_works.sh failure happens for a stranger reason,
not yet determined.
2023-02-19 11:30:44 -06:00
G. Branden Robinson
3b04beb92e PROBLEMS: Add more macOS and Solaris advice. 2023-02-19 10:46:33 -06:00
G. Branden Robinson
ea9ba7e11f PROBLEMS: Correct wording. 2023-02-11 11:47:11 -06:00
G. Branden Robinson
10274fb69e ANNOUNCE, PROBLEMS: Update diffutils 3.9 problem. 2023-02-11 11:47:11 -06:00