[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug #57601] .hy 8 inhibits some breakpoints that it should not
From: |
Dave |
Subject: |
[bug #57601] .hy 8 inhibits some breakpoints that it should not |
Date: |
Wed, 15 Jan 2020 02:00:56 -0500 (EST) |
User-agent: |
Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:71.0) Gecko/20100101 Firefox/71.0 |
URL:
<https://savannah.gnu.org/bugs/?57601>
Summary: .hy 8 inhibits some breakpoints that it should not
Project: GNU troff
Submitted by: barx
Submitted on: Wed 15 Jan 2020 01:00:55 AM CST
Category: Core
Severity: 3 - Normal
Item Group: Incorrect behaviour
Status: None
Privacy: Public
Assigned to: None
Open/Closed: Open
Discussion Lock: Any
Planned Release: None
_______________________________________________________
Details:
This bug is present in a groff built from a recent pull from git. It's not
the absolute latest code, but was pulled and built within the past month:
$ groff --version
GNU groff version 1.22.4.74-b400-dirty
The effect of ".hy 8" is documented to be "Do not hyphenate the first two
characters of a word." And usually, this is its only effect. But for a few
words, it inhibits other breakpoints later in the word that should not be
affected.
To find out how groff hyphenates a word, you can use the command line posted
in http://lists.gnu.org/archive/html/groff/2018-11/msg00023.html. For
instance, to see the division of the word "behavioral":
$ printf ".ll 1u\n%s\n" behavioral | nroff 2> /dev/null | sed '/^$/d'
be-
hav-
io-
ral
The documentation of ".hy 8" means the first hyphenation point should
disappear -- "be-" is only two letters, and .hy 8 disallows that break -- and
the other breakpoints should remain the same. But in fact, one of the other
breakpoints disappears as well:
$ printf ".hy 8\n.ll 1u\n%s\n" behavioral | nroff 2> /dev/null | sed '/^$/d'
behav-
ioral
A trawl through a 20,000-entry word list reveals that each of the following
words exhibits the same odd behavior:
architectural
arrival
calliope
collegiate
conjectural
consular
creosote
espionage
guttural
hereafter
hereinafter
immutable
inequitable
inescapable
insignia
rebellious
revival
ruinous
saltpeter
scriptural
sculptural
structural
survival
thereafter
tumultuous
verbiage
virginal
voltmeter
voluptuous
wastewater
(This is not meant to be a comprehensive list; my script only looked for a
specific subset of failing patterns. But these are all words that exhibit the
bug when used in the example command lines above.)
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?57601>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/
- [bug #57601] .hy 8 inhibits some breakpoints that it should not,
Dave <=