Hello, The following code \setuplabeltext[test=] test is \doifemptyelse{\labeltext{test}}{empty}{not empty} doesn't work as intended for the reasons that I approximately understand (not exactly, but I understand that there might be a lot of weird stuff returned when I ask for labeltext). However I have no idea how to check if text is empty or not. As an exception :) :) :), MKIV hints should be highly appreciated and enough for this particular application. Mojca PS: the extended example looks approximately as follows: \def\document#1#2{ \setuplabeltext[name={{#1}},company={{#2}}] \startstandardmakeup \setups{content} \setups{decoration} \stopstandardmakeup } \startsetups content This is for \labeltext{name}% \doifemptyelse{\labeltext{company}}{.}{, working for \labeltext{company}.} \stopsetups I have no problem changing the complete code and I can already find a workaround by defining some new "if" inside definition of \document, but I'm still slightly curious to know how to test for existence of a label. The sources contain definelabels("setuplabeltext", data.texts, true) and it is not too clear to me how to decrypt the rest with too much pain.
On 24-10-2011 19:41, Mojca Miklavec wrote:
Hello,
The following code
\setuplabeltext[test=] test is \doifemptyelse{\labeltext{test}}{empty}{not empty}
doesn't work as intended for the reasons that I approximately understand (not exactly, but I understand that there might be a lot of weird stuff returned when I ask for labeltext). However I have no idea how to check if text is empty or not.
As an exception :) :) :), MKIV hints should be highly appreciated and enough for this particular application.
an empty test is always somewhat special as there can be an unexpandable macro inside that eventually expands to nothing you can try \doiftextelse instead ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------
On Mon, Oct 24, 2011 at 20:41, Hans Hagen
On 24-10-2011 19:41, Mojca Miklavec wrote:
Hello,
The following code
\setuplabeltext[test=] test is \doifemptyelse{\labeltext{test}}{empty}{not empty}
doesn't work as intended for the reasons that I approximately understand (not exactly, but I understand that there might be a lot of weird stuff returned when I ask for labeltext). However I have no idea how to check if text is empty or not.
As an exception :) :) :), MKIV hints should be highly appreciated and enough for this particular application.
an empty test is always somewhat special as there can be an unexpandable macro inside that eventually expands to nothing
you can try \doiftextelse instead
Thank you very much. This works fine. This should probably be added to http://wiki.contextgarden.net/System_Macros/Branches_and_Decisions at least (possibly to reference next to labels as well), but I'm not sure how to describe it. Mojca
On 25-10-2011 11:26, Mojca Miklavec wrote:
On Mon, Oct 24, 2011 at 20:41, Hans Hagen
wrote: On 24-10-2011 19:41, Mojca Miklavec wrote:
Hello,
The following code
\setuplabeltext[test=] test is \doifemptyelse{\labeltext{test}}{empty}{not empty}
doesn't work as intended for the reasons that I approximately understand (not exactly, but I understand that there might be a lot of weird stuff returned when I ask for labeltext). However I have no idea how to check if text is empty or not.
As an exception :) :) :), MKIV hints should be highly appreciated and enough for this particular application.
an empty test is always somewhat special as there can be an unexpandable macro inside that eventually expands to nothing
you can try \doiftextelse instead
Thank you very much. This works fine.
This should probably be added to http://wiki.contextgarden.net/System_Macros/Branches_and_Decisions at least (possibly to reference next to labels as well), but I'm not sure how to describe it.
"If you want to know if some macro provides some typeset content you can use the following helper macro:" ... ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------
On Tue, 25 Oct 2011, Mojca Miklavec wrote:
you can try \doiftextelse instead
Thank you very much. This works fine.
This should probably be added to http://wiki.contextgarden.net/System_Macros/Branches_and_Decisions at least (possibly to reference next to labels as well), but I'm not sure how to describe it.
IIRC, there is some explanation in the source file (supp-box or pack-box, not sure which one). Aditya
participants (3)
-
Aditya Mahajan
-
Hans Hagen
-
Mojca Miklavec