A few weeks ago, I asked for the best method to prevent a ligature while 
allowing hyphenation at this point as well as before and after in the same 
word. (like "| which german latex users will probably know)
At the end, Hans gave me this:

\definetextmodediscretionary *
   {\prewordbreak\discretionary{-}{}{\kern.05em}\postwordbreak}
\startlanguagespecifics[de]
   \installcompoundcharacter "| {|*|}
\stoplanguagespecifics

I was pleased and started using it, but now I noticed a problem. If you say 
e.g. Auf"|lage, there can be a line break after 'Auf' without hyphen. The 
reason became clear after having a look at supp-lan.tex and the texbook. 
The above definition is equivalent to

\definetextmodediscretionary *
   {\penalty10000\hskip0pt\relax
    \discretionary{-}{}{\kern.05em}%
    \penalty0\penalty10000\hskip0pt\relax}

So, there can be a line break at \penalty0, in which case there will be no 
hyphen dash and the kern will disappear. So, for those interested, I would 
propose

\definetextmodediscretionary *
   {\prewordbreak\discretionary{-}{}{\kern.05em}\prewordbreak}


-- 
Eckhart

Reply via email to