Sounds like you've got it working, but just to provide an alternative
that should* work, according to the sources:
\setuplanguage[cz]
[compoundhyphen=-,%Or, to keep the \setuphyphenmark
rightcompoundhyphen=-,% configuration mentioned in Taco's link:
leftcompoundhyphen=-]%`*compoundhyphen=\compoundhyphen`
That does require you to replace all the hyphens with `||`, which it
understandably sounds like you want to avoid, but it can be good for
someone like me who likes that explicit markup, or for someone who needs
more control over which symbols go where (I'm using for Esperanto --
slightly non-standard -- a vertical tick mark for the inner-line and the
left but the hyphen for the right). The main benefit, though, is that
you can do the same thing for line-breaking hyphenation if you need to
change that, just drop the `compound` in the keys.
* I've been running into it working for the first break or two but than
switching back to the default for the rest of the document, and haven't
been able to track down why. Though it might have something to do with
me still using the ridiculously out-of-date 2016.05.17 because I haven't
gotten around to overriding the Gentoo package manager yet...
Sam
On Fri, Mar 22, 2019 at 04:57:24PM +0100, Tomas Hala wrote:
Hi Taco,
this is exactly what I needed, thank you very much.
Fri, Mar 22, 2019 ve 04:16:20PM +0100 Taco Hoekwater napsal(a):
# Somewhat cleaner is to do it this way:
# %%%
# \definebreakpoints[czcompound]
# \definebreakpoint[czcompound][-][nleft=3,nright=3,type=4]
#
# \appendtoks
#\ifx\mylanguage\currentlanguage
# \setbreakpoints[czcompound]
#\else
# \resetbreakpoints
#\fi
# \to\everylanguage
#
# It would be nice if that language= key would work, though (it is ignored, it
seems)
I agree...
Best wishes,
Tomá??
# Taco
#
#
# > On 22 Mar 2019, at 15:38, Tomas Hala wrote:
# >
# > Hi Taco,
# >
# > good idea, I tried it but the problem is that it does not switch itself off
# > automatically when the language is changed again.
# >
# > The following code works but I guess that must be some more sophisticated
# > ConTeXt way.
# >
# > Best wishes,
# >
# > Tomá??
# >
# >
# > %%
# >
\def\myboxik#1#2{\start\setuphyphenation[cz][method=#1]\startframedtext[width=1dd]\hbox{{\bf#1}}\crlf#2\stopframedtext\stop\par}
# >
\def\mybox#1{\myboxik{traditional}{#1}\myboxik{default}{#1}\myboxik{expanded}{#1}\myboxik{original}{#1}\myboxik{tex}{#1}\myboxik{hyphenate}{#1}\myboxik{none}{#1}\par\thinrule}
# >
# > \starttext
# > \definebreakpoints[czcompound]
# >
# > \let\oldlanguage=\language
# > \def\language[#1]{\oldlanguage[#1]
# > \ifx\mylanguage\currentlanguage
\definebreakpoint[czcompound][-][nleft=3,nright=3,type=4]
\setbreakpoints[czcompound]
# >\else
\definebreakpoint[czcompound][-][nleft=3,nright=3,type=1]
\setbreakpoints[czcompound]
# > \fi} and the same for \mainlanguage
# >
# > \def\mylanguage{cs}
# >
# > \language[en] \mybox{modro-zelený}
# > \language[cz] \mybox{modro-zelený}
# > \language[en] \mybox{modro-zelený}
# >
# > \stoptext
# >
# >
# > Fri, Mar 22, 2019 ve 01:56:40PM +0100 Taco Hoekwater napsal(a):
# > # Hi Tomá??,
# > #
# > # Sorry but I do not know. I *do* know that you can do this:
# > #
# > # \definebreakpoints [czcompound]
# > # \definebreakpoint [czcompound] [-] [nleft=3,nright=3,type=4]
# > # \setbreakpoints[czcompound]
# > #
# > # And perhaps hook that into a language switch. Does that help?
# > #
# > #
# > #
# > # > On 22 Mar 2019, at 10:37, Tomas Hala wrote:
# > # >
# > # > Hi,
# > # >
# > # > thanks, that's it. I did some tests and no side-effects appeared.
# > # > Moreover, it seems that it has no influence on \hyphentatedurl which is
also ok.
# > # >
# > # > But only one point I do not understand -- when I used the key
# > # > language=cz, repeated hyphens disappeared. It would by fine if one
# > # > can set it only for the given language(s), eg. for cz+sk yes and for en
no.
# > # > Is there any way for this?
# > # >
# > # > Best wishes,
# > # >
# > # > Tomá??
# > # >
# > # >
# > # > \definebreakpoint [compound] [-] [nleft=3,nright=3,type=4, language=cz]
# > # > \setbreakpoints[compound]
# > # >
# > # >
# > # > Thu, Mar 21, 2019 ve 04:45:49PM +0100 Taco Hoekwater napsal(a):
# > # > # Hi,
# > # > #
# > # > # \definebreakpoint [compound] [-] [nleft=3,nright=3,type=4]
# > # > # \setbreakpoints[compound]
# > # > #
# > # > # But also check the wiki, there can be side-effects to
\setbreakpoints[compound]
# > # > #
# > # > # https://wiki.contextgarden.net/Compound_words
# > # > #
# > # > #
# > # > # Best wishes,
# > # > # Taco
# > # > #
# > # > # > On 21 Mar 2019, at 16:23, Tomas Hala wrote:
# > # > # >
# > # > # > Hi all,
# > # > # >
# > # > # > in composed words with hyphen inside (e.g. modro-zelený =
blue-green), the
# > # > # > hyphen character must be repeated at the