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 error > tex error on line 14 in file
d://Lukas/Docs/Ull-Gra/Test/Abr.mkiv: ! TeX capacity exceeded, sorry
[input stack size=10000]
\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
___________________________________________________________________________________