URL:
  <https://savannah.gnu.org/bugs/?55070>

                 Summary: [wishlist] Next-generation hyphenation control
                 Project: GNU troff
            Submitted by: gbranden
            Submitted on: Wed 21 Nov 2018 08:00:51 PM UTC
                Category: Core
                Severity: 1 - Wish
              Item Group: Wishlist
                  Status: None
                 Privacy: Public
             Assigned to: None
             Open/Closed: Open
         Discussion Lock: Any
         Planned Release: None

    _______________________________________________________

Details:

See comments on <https://savannah.gnu.org/bugs/index.php?55066> for
background.  Someone may be willing to add comments linking to past mailing
list discussions as well.

In summary:

Three orthogonal ideas are intermixed in the semantics of the roff .hy
request.  Quoting CSTR #54:

"Automatic hyphenation is turned on for N ≥ 1, or off for N = 0. If N = 2,
last lines (ones that will cause a trap) are not hyphenated. For N = 4 and 8,
the last and first two characters respectively of a word are not split off.
These values are additive; i.e., N = 14 will invoke all three restrictions."

However this design does not scale to languages which permit hyphenation after
the first or before the last letter of a word.

There should therefore be 3 separate controls:

* minimum left-length before hyphenation occurs;
* minimum right-length before hyphenation occurs;
* whether hyphenation of the last line of a page or column is permitted.

And in fact, the last item could also be split in two; column-hyphenated
orphans could be permitted when page ones are not (or, _very_ perversely, vice
versa).

The orthogonality of these concepts is not theoretically perfect, as in the
case where left-minimum + right-minimum > word-length, there is some
ambiguity, but this is only in theory.  In practice the result is that such a
word is not hyphenated.




    _______________________________________________________

Reply to this item at:

  <https://savannah.gnu.org/bugs/?55070>

_______________________________________________
  Message sent via Savannah
  https://savannah.gnu.org/


_______________________________________________
bug-groff mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-groff

Reply via email to