bugGNU troff - Bugs: bug #55070, want next-generation hyphenation...


bug #55070: want next-generation hyphenation control

Submitted by:  G. Branden Robinson <gbranden>
Submitted on:  Wed 21 Nov 2018 08:00:51 PM UTC  
Category:  Core Severity:  3 - Normal
Item Group:  Feature change Status:  None
Privacy:  Public Assigned to:  None
Open/Closed:  Open Planned Release:  None

Add a New Comment (Rich Markup)

You are not logged in

Please log in, so followups can be emailed to you.


Wed 05 Aug 2020 10:36:34 PM UTC, comment #2: 

Actually all these bug reports are feature requests involving the low-level hyphenation mechanism.

For completeness (rounding up all the bugs dealing with hyphenation), these bugs document changes needed within the existing hyphenation framework, independent of any of the upgrades above:

And, for good measure, one bug dealing not with hyphenation per se, but with line breaking around hyphens in the document text:

Besides creating a new category, which I don't think is appropriate here, I don't know if this bug tracker offers a convenient way to group all these bugs together (or if anyone even thinks that's important).  Few if any are dependent on the others.  Maybe open a master "hyphenation issues" bug that has all these as dependencies?

Dave <barx>
Project Member
Wed 15 Jan 2020 09:32:28 PM UTC, comment #1: 

Bug #53837 is another request for more advanced control over hyphenation.  The issues are not strongly related, but both involve an overhaul in fundamental ways hyphenation is controlled, so perhaps should be considered in tandem.

Dave <barx>
Project Member
Wed 21 Nov 2018 08:00:51 PM UTC, original submission:  

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.

G. Branden Robinson <gbranden>
Project Administrator


(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:

No files currently attached


Depends on the following items: None found

Items that depend on this one: None found


Carbon-Copy List
  • -email is unavailable- added by barx (Posted a comment)
  • -email is unavailable- added by bgarrigues (Updated the item)
  • -email is unavailable- added by gbranden (Submitted the item)

    Do you think this task is very important?
    If so, you can add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.




    Follow 2 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2022-01-11 gbranden Summary[wishlist] Next-generation hyphenation control => want next-generation hyphenation control
    2018-11-26 bgarrigues Severity1 - Wish => 3 - Normal

    Back to the top

    Powered by Savane 3.7