Re: [NTG-context] What is a better way to do this macro?
Hi Wolfgang, all, Here is a new test file. Objective: To control the interlinespacing of the \\ command inside of \framed while keeping the bottom argument y of {x\\y} on the same baseline as the rest of the sentence. Look carefully at the examples in the attached pdf and see how the baselines moves when top is used to control \\. A mixture of the parameters top and bottom does the trick, but the use of bottom is an ugly hack. Is there a better way? See below and attached Best wishes Idris =choice-cs-new2.tex= \setupinterlinespace[line=1.8em] \setupwhitespace[big] \defineframed[Choice][frame=off,location=bottom,align=middle,offset=0pt] \defineframed[ChoiceTop][frame=off,location=bottom,align=middle,offset=0pt,top={\setupinterlinespace[line=1.2em]}] \defineframed[ChoiceTopBottom][frame=off,location=bottom,align=middle,offset=0pt,top={\setupinterlinespace[line=1.2em]},bottom={\vskip.14em}] \starttext (One~* Two~* Three~* Four) is even. (\Choice{x\\One}~* \Choice{1\\Two}~* \Choice{x\\Three}~* \Choice{2\\Four}) is even. (\ChoiceTop{x\\One}~* \ChoiceTop{1\\Two}~* \ChoiceTop{x\\Three}~* \ChoiceTop{2\\Four}) is even. (\ChoiceTopBottom{x\\One}~* \ChoiceTopBottom{1\\Two}~* \ChoiceTopBottom{x\\Three}~* \ChoiceTopBottom{2\\Four}) is even. \stoptext -- Idris Samawi Hamid Professor of Philosophy Colorado State University Fort Collins, CO 80523 choice-cs-new2.pdf Description: Adobe PDF document choice-cs-new2.tex Description: TeX document ___ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___
[NTG-context] TeX capacity exceeded - in Lua block - why?
Hello, why this code: \def\GG{\ifmmode G_G\else$\GG$\fi} \starttext \GG $\GG$ % OK \startitemize[][] \sym{\GG} \GG % OK \stopitemize \startluacode context.startitemize() context.sym([[\GG]]) context(Abc) context.stopitemize() \stopluacode \stoptext fails with: ... tex errortex error on line 14 in file d://Lukas/Docs/Ull-Gra/Test/Abr.mkiv: ! TeX capacity exceeded, sorry [input stack size=1] \GG -\ifmmode G_G\else $\GG $\fi \GG -\ifmmode G_G\else $\GG $\fi \GG -\ifmmode G_G\else $\GG $\fi \GG -\ifmmode G_G\else $\GG $\fi \GG -\ifmmode G_G\else $\GG $\fi \GG -\ifmmode G_G\else $\GG $\fi ... l.14 \stopluacode ... I need to call \GG from within Lua, and the real macro name is created run-time (contrary to this MNWE; so to be \GG, \HH, \Fik etc. - the name is obtained from a Lua table as a string). I cannot understand why all TeX calls are OK but the problem appears in Lua block... Best regards, Lukas -- Ing. Lukáš Procházka | mailto:l...@pontex.cz Pontex s. r. o. | mailto:pon...@pontex.cz | http://www.pontex.cz Bezová 1658 147 14 Praha 4 Tel: +420 241 096 751 Fax: +420 244 461 038 Abr.mkiv Description: Binary data ___ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___
Re: [NTG-context] TeX capacity exceeded - in Lua block - why?
Hello, On Thu, 16 Jul 2015 11:03:05 +0200, luigi scarso luigi.sca...@gmail.com wrote: \def\GG{\ifmmode G_G\else$\GG$\fi} means define the macro \GG as G_G if mmmod is true, else as \GG It's clear that you always are in a situation where mmod is true, then \GG is replaced with G_G Well, I intended replaced with $G_G$, not replaced with G_G; so I thought this would force/ensure math mode and thus prevent infinite recursion. but as soon as you fall into mmod not true then you have infinite recursion. Also, my observation was that my original macro worked well when called for TeX code (at various places of use: \GG $\GG$ \startitemize[][] \sym{\GG} \GG \sym{$\GG$} $\GG$ \sym{\m{\GG}} \m{\GG} \item End \stopitemize ) but stopped working when called from Lua (?!). @Hans: This seems to be best solution - exactly what I wanted to achieve: \def\GG{\mathematics{G_G}}. Thanks both for your help. Best ragrds, Lukas -- Ing. Lukáš Procházka | mailto:l...@pontex.cz Pontex s. r. o. | mailto:pon...@pontex.cz | http://www.pontex.cz Bezová 1658 147 14 Praha 4 Tel: +420 241 096 751 Fax: +420 244 461 038 ___ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___
Re: [NTG-context] TeX capacity exceeded - in Lua block - why?
On 7/16/2015 10:55 AM, Procházka Lukáš Ing. - Pontex s. r. o. wrote: Hello, On Thu, 16 Jul 2015 10:27:48 +0200, Hans Hagen pra...@wxs.nl wrote: On 7/16/2015 10:20 AM, Procházka Lukáš Ing. - Pontex s. r. o. wrote: Hello, why this code: \def\GG{\ifmmode G_G\else$\GG$\fi} because in math mode \GG expands \GG which expands \GG I want to just pass G_G in math mode, so it seems to me that \ifmmode G_G... does the check. The macro should write G + lower index G for both math and non-math scope. so \def\GG{\ifmmode G_G\else$G\low{G}$\fi} or \def\GG{\mathematics{G_G}} now you do a check in \GG and then call for \GG again so \GG again does a check etc etc ... you just enforce endless recursion And, in non math scope, the macro should just enclose itself by $...$ (or \m{...})... And, this works well in TeX code: \def\GG{\ifmmode G_G\else$\GG$\fi} \starttext \GG $\GG$ \startitemize[][] \sym{\GG} \GG \sym{$\GG$} $\GG$ \sym{\m{\GG}} \m{\GG} \item End \stopitemize \stoptext So how to rewrite the itemization into Lua? maybe you mean: \def\GG{\ifmmode G_G\else$GG$\fi} ... Could be \def\GG{\ifmmode G_G\else$G_G$\fi}, too, but why not \def\GG{\ifmmode G_G\else$\GG$\fi} (seems to me be simpler as the macro definition - which may be more complicated - appears only once)? Lukas \starttext \GG $\GG$ % OK \startitemize[][] \sym{\GG} \GG % OK \stopitemize \startluacode context.startitemize() context.sym([[\GG]]) context(Abc) context.stopitemize() \stopluacode \stoptext fails with: tex errortex error on line 14 in file d://Lukas/Docs/Ull-Gra/Test/Abr.mkiv: ! TeX capacity exceeded, sorry [input stack size=1] \GG -\ifmmode G_G\else $\GG $\fi \GG -\ifmmode G_G\else $\GG $\fi \GG -\ifmmode G_G\else $\GG $\fi \GG -\ifmmode G_G\else $\GG $\fi \GG -\ifmmode G_G\else $\GG $\fi \GG -\ifmmode G_G\else $\GG $\fi l.14 \stopluacode I need to call \GG from within Lua, and the real macro name is created run-time (contrary to this MNWE; so to be \GG, \HH, \Fik etc. - the name is obtained from a Lua table as a string). I cannot understand why all TeX calls are OK but the problem appears in Lua block... Best regards, Lukas ___ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___ -- - 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 - ___ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___
Re: [NTG-context] TeX capacity exceeded - in Lua block - why?
On 7/16/2015 12:13 PM, Procházka Lukáš Ing. - Pontex s. r. o. wrote: Hello, On Thu, 16 Jul 2015 11:03:05 +0200, luigi scarso luigi.sca...@gmail.com wrote: \def\GG{\ifmmode G_G\else$\GG$\fi} means define the macro \GG as G_G if mmmod is true, else as \GG It's clear that you always are in a situation where mmod is true, then \GG is replaced with G_G Well, I intended replaced with $G_G$, not replaced with G_G; so I thought this would force/ensure math mode and thus prevent infinite recursion. but as soon as you fall into mmod not true then you have infinite recursion. Also, my observation was that my original macro worked well when called for TeX code (at various places of use: \GG $\GG$ \startitemize[][] \sym{\GG} \GG \sym{$\GG$} $\GG$ \sym{\m{\GG}} \m{\GG} \item End \stopitemize ) but stopped working when called from Lua (?!). it all depends ... if you pass it in a way that it gets expanded you get already expansion at the write you could try \unexpanded\def\GG then it's hard to say what happens unless one sees the whole application (for which i have no time anyway) @Hans: This seems to be best solution - exactly what I wanted to achieve: \def\GG{\mathematics{G_G}}. Thanks both for your help. Best ragrds, Lukas -- - 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 - ___ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___
Re: [NTG-context] TeX capacity exceeded - in Lua block - why?
On 7/16/2015 12:13 PM, Procházka Lukáš Ing. - Pontex s. r. o. wrote: This seems to be best solution - exactly what I wanted to achieve: \def\GG{\mathematics{G_G}}. compare these two: \def\GG{\ifmmode G_G\else$\GG$\fi} \starttext \edef\x{\GG} \stoptext and \unexpanded\def\GG{\ifmmode G_G\else$\GG$\fi} \starttext \edef\x{\GG} \stoptext so it all depends on usage - 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 - ___ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___
Re: [NTG-context] TeX capacity exceeded - in Lua block - why?
On Thu, Jul 16, 2015 at 10:55 AM, Procházka Lukáš Ing. - Pontex s. r. o. l...@pontex.cz wrote: Hello, On Thu, 16 Jul 2015 10:27:48 +0200, Hans Hagen pra...@wxs.nl wrote: On 7/16/2015 10:20 AM, Procházka Lukáš Ing. - Pontex s. r. o. wrote: Hello, why this code: \def\GG{\ifmmode G_G\else$\GG$\fi} because in math mode \GG expands \GG which expands \GG I want to just pass G_G in math mode, so it seems to me that \ifmmode G_G... does the check. The macro should write G + lower index G for both math and non-math scope. And, in non math scope, the macro should just enclose itself by $...$ (or \m{...})... And, this works well in TeX code: \def\GG{\ifmmode G_G\else$\GG$\fi} \starttext \GG $\GG$ \startitemize[][] \sym{\GG} \GG \sym{$\GG$} $\GG$ \sym{\m{\GG}} \m{\GG} \item End \stopitemize \stoptext So how to rewrite the itemization into Lua? maybe you mean: \def\GG{\ifmmode G_G\else$GG$\fi} ... Could be \def\GG{\ifmmode G_G\else$G_G$\fi}, too, but why not \def\GG{\ifmmode G_G\else$\GG$\fi} (seems to me be simpler as the macro definition - which may be more complicated - appears only once)? \def\GG{\ifmmode G_G\else$\GG$\fi} means define the macro \GG as G_G if mmmod is true, else as \GG It's clear that you always are in a situation where mmod is true, then \GG is replaced with G_G but as soon as you fall into mmod not true then you have infinite recursion. -- luigi ___ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___
Re: [NTG-context] TeX capacity exceeded - in Lua block - why?
On 7/16/2015 10:20 AM, Procházka Lukáš Ing. - Pontex s. r. o. wrote: Hello, why this code: \def\GG{\ifmmode G_G\else$\GG$\fi} because in math mode \GG expands \GG which expands \GG maybe you mean: \def\GG{\ifmmode G_G\else$GG$\fi} \starttext \GG $\GG$ % OK \startitemize[][] \sym{\GG} \GG % OK \stopitemize \startluacode context.startitemize() context.sym([[\GG]]) context(Abc) context.stopitemize() \stopluacode \stoptext fails with: tex errortex error on line 14 in file d://Lukas/Docs/Ull-Gra/Test/Abr.mkiv: ! TeX capacity exceeded, sorry [input stack size=1] \GG -\ifmmode G_G\else $\GG $\fi \GG -\ifmmode G_G\else $\GG $\fi \GG -\ifmmode G_G\else $\GG $\fi \GG -\ifmmode G_G\else $\GG $\fi \GG -\ifmmode G_G\else $\GG $\fi \GG -\ifmmode G_G\else $\GG $\fi l.14 \stopluacode I need to call \GG from within Lua, and the real macro name is created run-time (contrary to this MNWE; so to be \GG, \HH, \Fik etc. - the name is obtained from a Lua table as a string). I cannot understand why all TeX calls are OK but the problem appears in Lua block... Best regards, Lukas ___ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___ -- - 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 - ___ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___
Re: [NTG-context] TeX capacity exceeded - in Lua block - why?
Hello, On Thu, 16 Jul 2015 10:27:48 +0200, Hans Hagen pra...@wxs.nl wrote: On 7/16/2015 10:20 AM, Procházka Lukáš Ing. - Pontex s. r. o. wrote: Hello, why this code: \def\GG{\ifmmode G_G\else$\GG$\fi} because in math mode \GG expands \GG which expands \GG I want to just pass G_G in math mode, so it seems to me that \ifmmode G_G... does the check. The macro should write G + lower index G for both math and non-math scope. And, in non math scope, the macro should just enclose itself by $...$ (or \m{...})... And, this works well in TeX code: \def\GG{\ifmmode G_G\else$\GG$\fi} \starttext \GG $\GG$ \startitemize[][] \sym{\GG} \GG \sym{$\GG$} $\GG$ \sym{\m{\GG}} \m{\GG} \item End \stopitemize \stoptext So how to rewrite the itemization into Lua? maybe you mean: \def\GG{\ifmmode G_G\else$GG$\fi} ... Could be \def\GG{\ifmmode G_G\else$G_G$\fi}, too, but why not \def\GG{\ifmmode G_G\else$\GG$\fi} (seems to me be simpler as the macro definition - which may be more complicated - appears only once)? Lukas \starttext \GG $\GG$ % OK \startitemize[][] \sym{\GG} \GG % OK \stopitemize \startluacode context.startitemize() context.sym([[\GG]]) context(Abc) context.stopitemize() \stopluacode \stoptext fails with: tex errortex error on line 14 in file d://Lukas/Docs/Ull-Gra/Test/Abr.mkiv: ! TeX capacity exceeded, sorry [input stack size=1] \GG -\ifmmode G_G\else $\GG $\fi \GG -\ifmmode G_G\else $\GG $\fi \GG -\ifmmode G_G\else $\GG $\fi \GG -\ifmmode G_G\else $\GG $\fi \GG -\ifmmode G_G\else $\GG $\fi \GG -\ifmmode G_G\else $\GG $\fi l.14 \stopluacode I need to call \GG from within Lua, and the real macro name is created run-time (contrary to this MNWE; so to be \GG, \HH, \Fik etc. - the name is obtained from a Lua table as a string). I cannot understand why all TeX calls are OK but the problem appears in Lua block... Best regards, Lukas ___ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___ -- Ing. Lukáš Procházka | mailto:l...@pontex.cz Pontex s. r. o. | mailto:pon...@pontex.cz | http://www.pontex.cz Bezová 1658 147 14 Praha 4 Tel: +420 241 096 751 Fax: +420 244 461 038 ___ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___
Re: [NTG-context] TeX capacity exceeded - in Lua block - why?
On Thu, Jul 16, 2015 at 12:13 PM, Procházka Lukáš Ing. - Pontex s. r. o. l...@pontex.cz wrote: Hello, On Thu, 16 Jul 2015 11:03:05 +0200, luigi scarso luigi.sca...@gmail.com wrote: \def\GG{\ifmmode G_G\else$\GG$\fi} means define the macro \GG as G_G if mmmod is true, else as \GG It's clear that you always are in a situation where mmod is true, then \GG is replaced with G_G Well, I intended replaced with $G_G$, not replaced with G_G; so I thought this would force/ensure math mode and thus prevent infinite recursion. but as soon as you fall into mmod not true then you have infinite recursion. Also, my observation was that my original macro worked well when called for TeX code (at various places of use: \GG $\GG$ \startitemize[][] \sym{\GG} \GG \sym{$\GG$} $\GG$ \sym{\m{\GG}} \m{\GG} \item End \stopitemize ) but stopped working when called from Lua (?!). \def\GG{\ifmmode G_G\else$\GG$\fi} define a macro \GG with replacement text \ifmmode G_G\else$\GG$\fi In your use in TeX, \if is expanded: if we are in mmode then we have the expansion of G ,then _ and then G. If we are not in mmode, then we have the expansion of $ , so we enter in mmode and then we have the expansion of \GG again. In this second level of expansion, we are in mmod for sure and so we end again with G, _ and G. We cannot know what happen in other situations. For example, in \edef\x{\GG} as shown by Hans, at definition time the replacement text is expanded until possible. If at definition time we are not in mmode, this gives the endless sequence \GG -\ifmmode G_G\else $\GG $\fi {\ifmmode: (level 1) entered on line 9} {false} {\else: \ifmmode (level 1) entered on line 9} \GG -\ifmmode G_G\else $\GG $\fi {\ifmmode: (level 2) entered on line 9} {false} {\else: \ifmmode (level 2) entered on line 9} \GG -\ifmmode G_G\else $\GG $\fi {\ifmmode: (level 3) entered on line 9} {false} {\else: \ifmmode (level 3) entered on line 9} \GG -\ifmmode G_G\else $\GG $\fi because in this case the first $ is just accumulated, not interpretated --- i.e. doesn't trig the change of state to math mode. To avoid expansion we can say \edef\x{\noexpand\GG} which means that the replacement text of \x is \GG . Perhaps we can see better here: \def\HH{\ifmmode H_H\else$H_H$\fi} \edef\x{\HH} means, if we are not in mmode when \x is defined, \HH -\ifmmode H_H\else $H_H$\fi {\ifmmode: (level 1) entered on line 10} {false} {\else: \ifmmode (level 1) entered on line 10} {\fi: \ifmmode (level 1) entered on line 10} {changing \x=undefined} {into \x=macro:-$H_H$} so the replacement text of \x is $H_H$ -- luigi ___ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___
Re: [NTG-context] What is a better way to do this macro?
Idris Samawi Hamid ادريس سماوي حامد mailto:idris.ha...@colostate.edu 16. Juli 2015 20:49 Dear gang, Consider the following (also attached): =choice-cs.tex \def\CHOICE#1#2{\leavevmode\vbox{\tabskip=0pt\everycr={} \halign{\strut\hfil##\hfil\cr#1\cr#2\cr}}} \setuppagenumber[state=stop] \setupwhitespace[big] \starttext (One~* Two~* Three~* Four) is even. (\CHOICE{x}{One}~* \CHOICE{1}{Two}~* \CHOICE{x}{Three}~* \CHOICE{2}{Four}) is even. \stoptext == What is best way to define the \CHOICE macro without low-level TeX commands, only high-level ConTeXt commands? Thanks in advance and You can use the \framed command. \define[2]\ChoiceOne {\dontleavehmode\framed[frame=off,location=bottom,align=middle,offset=0pt]{#1\\#2}} \defineframed[ChoiceTwo][frame=off,location=bottom,align=middle,offset=0pt] \starttext (\ChoiceOne{x}{One}~* \ChoiceOne{1}{Two}~* \ChoiceOne{x}{Three}~* \ChoiceOne{2}{Four}) is even. (\ChoiceTwo{x\\One}~* \ChoiceTwo{1\\Two}~* \ChoiceTwo{x\\Three}~* \ChoiceTwo{2\\Four}) is even. \stoptext Wolfgang ___ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___
Re: [NTG-context] What is a better way to do this macro?
Hi Wolfgang, On Thu, 16 Jul 2015 13:03:15 -0600, Wolfgang Schuster schuster.wolfg...@gmail.com wrote: You can use the \framed command. \define[2]\ChoiceOne {\dontleavehmode\framed[frame=off,location=bottom,align=middle,offset=0pt]{#1\\#2}} \defineframed[ChoiceTwo][frame=off,location=bottom,align=middle,offset=0pt] \starttext (\ChoiceOne{x}{One}~* \ChoiceOne{1}{Two}~* \ChoiceOne{x}{Three}~* \ChoiceOne{2}{Four}) is even. (\ChoiceTwo{x\\One}~* \ChoiceTwo{1\\Two}~* \ChoiceTwo{x\\Three}~* \ChoiceTwo{2\\Four}) is even. \stoptext Both examples are very instructive!! Thanks a million, Wolfgang, and Best wishes Idris -- Idris Samawi Hamid Professor of Philosophy Colorado State University Fort Collins, CO 80523 ___ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___
[NTG-context] What is a better way to do this macro?
Dear gang, Consider the following (also attached): =choice-cs.tex \def\CHOICE#1#2{\leavevmode\vbox{\tabskip=0pt\everycr={} \halign{\strut\hfil##\hfil\cr#1\cr#2\cr}}} \setuppagenumber[state=stop] \setupwhitespace[big] \starttext (One~* Two~* Three~* Four) is even. (\CHOICE{x}{One}~* \CHOICE{1}{Two}~* \CHOICE{x}{Three}~* \CHOICE{2}{Four}) is even. \stoptext == What is best way to define the \CHOICE macro without low-level TeX commands, only high-level ConTeXt commands? Thanks in advance and Best wishes Idris -- Idris Samawi Hamid Professor of Philosophy Colorado State University Fort Collins, CO 80523 choice-cs.pdf Description: Adobe PDF document choice-cs.tex Description: TeX document ___ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___
Re: [NTG-context] What is a better way to do this macro?
Idris Samawi Hamid ادريس سماوي حامد mailto:idris.ha...@colostate.edu 16. Juli 2015 22:09 Hi Wolfgang, all, Here is a new test file. Objective: To control the interlinespacing of the \\ command inside of \framed while keeping the bottom argument y of {x\\y} on the same baseline as the rest of the sentence. Look carefully at the examples in the attached pdf and see how the baselines moves when top is used to control \\. A mixture of the parameters top and bottom does the trick, but the use of bottom is an ugly hack. Is there a better way? See below and attached Use the foregroundstyle key to change the interlinespace. Wolfgang ___ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://tex.aanhet.net archive : http://foundry.supelec.fr/projects/contextrev/ wiki : http://contextgarden.net ___