The following code processes cleanly under TL2013 and fails with
ConTeXt ver: 2014.02.14 17:07 MKIV beta fmt: 2014.2.16 int:
english/english. I suspect a regression, but I am also open to being
told that I am doing things incorrectly.
I also notice that it fails (even under TL2013) if a space is
inserted after [#SETUP] in the doTrans intro. I thought that spaces
should be allowed in \starttexdefinition -- is this only in the body
and not the parameter description?
% macros=mkvi
\showframe
\let\EndTranslation\relax
\starttexdefinition Trans
\dosingleempty\doTrans
\stoptexdefinition
% The following should work, but fails with current beta
\starttexdefinition doTrans
[#SETUP]#TRANSLATION\EndTranslation
\language[en]
\doifsomething{#1}{\getparameters[TR][setup=,#SETUP]\TRsetup}
\noindentation\blank[halfline]
(\,\ignorespaces#TRANSLATION\removeunwantedspaces\,)
\stoptexdefinition
\starttexdefinition Translation
\dosingleempty\doTranslation
\stoptexdefinition
% This version works with both Texlive and current standalone
beta
\def\doTranslation[#SETUP]#TRANSLATION\EndTranslation%
{\language[en]%
\doifsomething{#SETUP}%
{\getparameters[TR][setup=,#SETUP]\TRsetup}%
\noindentation\blank[halfline]%
(\,\ignorespaces#TRANSLATION\removeunwantedspaces\,)%
}
\starttext
Translation using \tex{def}{\tex{doTranslation}} works both
with TL2013 and current beta.
\Translation[language=en]
It betrays a slow-witted mentality to pursue the streams,
but not to see the sources of things.
\EndTranslation
\blank
Translation using \tex{starttexdef doTrans} fails with current
beta.
\Trans[language=en]
It betrays a slow-witted mentality to pursue the streams,
but not to see the sources of things.
\EndTranslation
\stoptext
--
Rik Kabel