Dear list, I have the following sample: \startluacode function document.addfunnyhyphen(tfmdata) local underscore = utf.byte("_") local char = tfmdata.characters[underscore] if not char then return end tfmdata.characters[0xFE000] = { width = 0, height = 0, depth = 0, commands = { { "right", -char.width }, { "down", char.depth }, { "slot", 1, underscore }, } } end utilities.sequencers.appendaction("aftercopyingcharacters", "after","document.addfunnyhyphen") \stopluacode \definehyphenationfeatures [underscore] [righthyphenchar="FE000] \sethyphenationfeatures[underscore]% \setuphyphenation[method=traditional]% \starttext \startTEXpage[offset=1em, width=4em] \hsize\zeropoint\tt \hyphenatedword{legibility-legible} \stopTEXpage \stoptext In current latest (and in many versions before), I get an extra hyphen in the next line after the hyphen, such as: ity- -leg As far as I can remember, I would say this used to work before (no extra hyphen was added in the next line. What am I missing here? Many thanks for your help, Pablo
On 12/8/2022 12:33 PM, Pablo Rodriguez via ntg-context wrote:
Dear list,
I have the following sample:
\startluacode function document.addfunnyhyphen(tfmdata) local underscore = utf.byte("_") local char = tfmdata.characters[underscore] if not char then return end tfmdata.characters[0xFE000] = { width = 0, height = 0, depth = 0, commands = { { "right", -char.width }, { "down", char.depth }, { "slot", 1, underscore }, } } end
utilities.sequencers.appendaction("aftercopyingcharacters", "after","document.addfunnyhyphen") \stopluacode
\definehyphenationfeatures [underscore] [righthyphenchar="FE000]
\sethyphenationfeatures[underscore]% \setuphyphenation[method=traditional]%
\starttext \startTEXpage[offset=1em, width=4em] \hsize\zeropoint\tt \hyphenatedword{legibility-legible} \stopTEXpage \stoptext
In current latest (and in many versions before), I get an extra hyphen in the next line after the hyphen, such as:
ity- -leg
As far as I can remember, I would say this used to work before (no extra hyphen was added in the next line.
What am I missing here?
\setuplanguage [explicitrighthyphenchar=-1] -- ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl -----------------------------------------------------------------
On 12/8/22 13:14, Hans Hagen via ntg-context wrote:
On 12/8/2022 12:33 PM, Pablo Rodriguez via ntg-context wrote:
[...] What am I missing here?
\setuplanguage [explicitrighthyphenchar=-1]
Many thanks for your fast reply, Hans. I’m afraid it doesn’t work here: \startluacode function document.addfunnyhyphen(tfmdata) local underscore = utf.byte("_") local char = tfmdata.characters[underscore] if not char then return end tfmdata.characters[0xFE000] = { width = 0, height = 0, depth = 0, commands = { { "right", -char.width }, { "down", char.depth }, { "slot", 1, underscore }, } } end utilities.sequencers.appendaction("aftercopyingcharacters", "after","document.addfunnyhyphen") \stopluacode \definehyphenationfeatures [underscore] [righthyphenchar="FE000] \setuphyphenation[method=traditional]% \sethyphenationfeatures[underscore]% \setuplanguage [explicitrighthyphenchar=-1] \mainlanguage[es] \starttext \startTEXpage[offset=1em, width=4em] \hsize\zeropoint\tt \hyphenatedword{legibility-legible} \stopTEXpage \stoptext Results are the same with "\mainlanguage[es]" or "\mainlanguage[nl]". If "\mainlanguage" is placed after "\setuplanguage", the extra unwanted hyphen appears. If "\mainlanguage" is placed before "\setuplanguage", hyphenation for the second word doesn’t work at all (and the extra unwanted hyphen appears in my actual document). I don’t know what I’m missing here and it seems to be a picky issue to provide a MWE. Many thanks for your help, Pablo
On 12/8/22 13:14, Hans Hagen via ntg-context wrote:
[...] \setuplanguage [explicitrighthyphenchar=-1]
Sorry for insisting, Hans, but many languages (excepting en and uk) seem nor to recogize this option: \startluacode function document.addfunnyhyphen(tfmdata) local underscore = utf.byte("_") local char = tfmdata.characters[underscore] if not char then return end tfmdata.characters[0xFE000] = { width = 0, height = 0, depth = 0, commands = { { "right", -char.width }, { "down", char.depth }, { "slot", 1, underscore }, } } end utilities.sequencers.appendaction("aftercopyingcharacters", "after","document.addfunnyhyphen") \stopluacode \definehyphenationfeatures [underscore] [righthyphenchar="FE000] \setuphyphenation[method=traditional]% \sethyphenationfeatures[underscore]% \setuplanguage [explicitrighthyphenchar=-1] \setupinteractionscreen[option=singlesided] \starttext \doloopoverlist {es,en,uk,de,nl,pt,fr,it,deo,da,sv,af,no,nb,pl,cs,sk,hr,sl,fi,et,hu} {\mainlanguage[\recursestring] \startTEXpage[offset=1em, width=5em] \hsize\zeropoint \recursestring: \\ \tt \hyphenatedword{legibility-legible} \stopTEXpage} \stoptext pt, hr and et don’t break the line at the hyphen. af breaks the line at the hyphen adding an underscore just below the hyphen. Either I’m missing something extremely basic, or "\setuplanguage[explicitrighthyphenchar=-1]" only works for English. Many thanks for your help, Pablo
participants (2)
-
Hans Hagen
-
Pablo Rodriguez