Hi Robert,

At 2024-08-30T16:29:03+1000, Robert Thorsby wrote:
> I wouldn't call myself a typographer but I refuse to allow hyphens to
> break, usually via '.hy 0' or by using '\%'. I then kern the tripe out
> of any offending line, often using Ted Harding's "poor man's kerning"
> trick.

Ooh, that sounds like something good to remind the youngsters of.  Have
a link handy?

> However, no matter what you do, you simply *cannot* end the last line
> of a column or page with a hyphen.

That, too, is a policy choice, and a sound one, but neither AT&T nor GNU
troff mandate it in the formatter's own defaults.

groff(7):
     Several requests influence automatic hyphenation.  Because
     conventions vary, a variety of hyphenation modes is available to
     the .hy request; these determine whether hyphenation will apply to
     a word prior to breaking a line at the end of a page (more or less;
     see below for details), and at which positions within that word
     automatically determined hyphenation points are permissible.  The
     localization macro files loaded by troffrc configure a default
     hyphenation mode appropriate to the language.

     0      disables hyphenation.

     1      enables hyphenation except after the first and before the
            last character of a word.

     The remaining values “imply” 1; that is, they enable hyphenation
     under the same conditions as “.hy 1”, and then apply or lift
     restrictions relative to that basis.

     2      disables hyphenation of the last word on a page.
            (Hyphenation is prevented if the next page location trap is
            closer to the vertical drawing position than the next text
            baseline would be.  See section “Traps” below.)

AT&T troff's default was 1, as has groff's been, but we have a NEWS item
in the forthcoming 1.24 release.

NEWS:

  * A new request, `hydefault`, and read-only register, `.hydefault`,
    manage the default automatic hyphenation mode of an environment.
    This resolves a long-standing problem of *roff formatting.

      When processing input like this,
      .nh
      and we temporarily shut off automatic hyphenation,
      .hy
      the foregoing request would not do exactly what we expect.

    AT&T and other troffs would set the hyphenation mode to 1 instead of
    the previous value; for GNU troff this was not an appropriate value
    for the English hyphenation patterns.  (For example, "alibi" would
    break as "ali-bi" instead of "al-ibi" after this argumentless `hy`
    invocation.)  With updates to groff's localization files
    accompanying this release, the foregoing input now works as desired.

(All of that said, hyphenation modes of 6 and 14 have long been common
in troff documents or macro packages.)

> So IMHSHO your question does not arise.

IMO, it _does_.  ;-)

Regards,
Branden

Attachment: signature.asc
Description: PGP signature

Reply via email to