# [Dev-luatex] Trouble with hyphenation.

Hans Hagen pragma at wxs.nl
Sat Feb 18 13:28:15 CET 2012

```On 18-2-2012 12:08, Paul Isambert wrote:
> Hello all,
>
> I've found some strange behavior with hyphenation; but since hyphenation
> has been discussed frequently, and might involve some settings in conf
> files somewhere I'm not aware of, I wouldn't like to submit an unnecessary
> tracker item in case the problem is well known. The code is:
>
>        \hsize=0pt \overfullrule=0pt
>        \hyphenation{W-h-a-t-e-v-e-r}
>
>        \uchyph=1
>        Acceptation Behavior Dying Expression Whatever
>
>        \uchyph=0
>        Acceptation Behavior Dying Expression Whatever
>        \bye
>
> And comparing the plain TeX compilation in PDFTeX and LuaTeX (all
> from TL2011, except LuaTeX, which is rev 4358), I notice that:
>
> - LuaTeX doesn't obey \uchyph=0; it does hyphenate the words, although
>    not as completely as when \uchyph=1.

I must admit that I never used \uchyph (and even wonder if we really
need it as it's a kind of tweaking that seldom is done at the document
level). I would have expected this primitive to do nothing at all in
luatex.

> - "Acceptation" is hyphenated in LuaTeX even though it's the first word,
>    and a hyphenable word should be preceded by a glue (see TeXbook p.256);
>    it is not hyphenated in PDFTeX.

luatex hyphenates the whole list in one go and does not do this delayed
and partial as in traditional tex ... this is on purpose as it provides
callback code with the whole lot (in luatex the hyphenation / ligature
building and justification steps are separated) ... also, there is no
reason not to hyphenate the first word if you have real narrow columns.

> - As shown by the hyphenation of "Whatever", LuaTeX disregards
>    \lefthyphenmin and \righthypenmin.

Explicit \hyphenation always wins and is not influenced by the *min
values (after all, it is mostly meant as a an escape for providing
exceptions and not for extending the patterns so obeying the *min
parameters would defeat that purpose).

Hans

-----------------------------------------------------------------