On 26/02/2021 22:00, Yannis Haralambous wrote:
dear TeX-hyphen members,
I'm new to this list (although not necessarily new to TeX hyphenation :-)
Here is the problem: we are preparing hyphenation patterns for Uyghur,
written in Arabic script.
As letters must be in initial/medial form before the hyphen and
medial/final form on the next line begin,
I was wondering if we could change TeX internals so that instead of one,
three hyphenchars are used:
^^^^200d and `-' on the upper line and ^^^^200d on the lower line, in
order to obtain the equivalent
of \discretionary{^^^^200d-}{^^^^200d}{}
The problem with this is that it wouldn't be the appropriate
\discretionary in the case where the letter before the hyphenation
position is a right- (rather than dual-) joining character.
So it's not sufficient to just have an extended form of \hyphenchar; we
would also need hyphenation patterns to record two different types of
break position: one for a break between joined letters, and one for a
break between non-joined letters.
Or else the engine needs to know (perhaps from the Unicode properties of
the adjacent characters) which form to use -- but if we accept that the
engine can use knowledge of specific Unicode properties here, then it
can take responsibility for inserting the ZWJs internally, without
needing to change \hyphenchar.
(On re-reading, perhaps that's more like what you meant anyway?)
JK
Arthur said he would have a different solution.
I would personally play with the DVI (resp. XDV) file, even though the
widths of initial/medial forms
are quite different from those of final/isolated forms, which would
require a global redistribution of
space in the line.
Cheers,
Yannis