Thank you very much, Wolfgang,
that helps me a lot.
But how can I change the formatting
{“weekday,space,day,space,month,space,year”}
so that I get a comma after weekday and a period after day? Where
can I find something about this?
Thanks again and have a nice day
Thomas
Am 02.10.24 um 19:44 schrieb Wolfgang
Schuster:
Thomas
Meyer schrieb am 02.10.2024 um 15:44:
Hello,
what do I have to do so that the values (d1, m1, y1) from the
Lua block are returned with Return and the commented out line
\date[d=d1,m=m1,y=y1][weekday,{,~},day,{.~},month,{~},year]
works in ConTeXt.
In other words: how do I do it right?
To call function or pass information from the TeX side to Lua you
use the \directlua command (although ConTeXt provides many helpers
and you won't use \directlua itself, e.g. the luacode environment
is a wrapper for \directlua with a few special features).
To get output back from the Lua side to TeX you use the tex.sprint
(or tex.print) function.
%%%% begin example
\startluacode
function Date(str)
local year = string.sub(str,1,4)
local month = string.sub(str,5,6)
local day = string.sub(str,7,8)
tex.sprint(day,".",month,".",year)
-- tex.sprint(day .. "." .. month .. "." .. year)
end
\stopluacode
\def\Date#1{\directlua{Date("#1")}}
\starttext
\Date{20241005}
\stoptext
%%%% end example
To pass information from Lua to the value of the \date command you
need a separate function call for each of them but ConTeXt makes
it easier because it provides the possibility to call a TeX
command from Lua itself where you now can pass Lua data to the
command.
%%%% begin example
\startluacode
function userdata.ddate(str)
local year = string.sub(str,1,4)
local month = string.sub(str,5,6)
local day = string.sub(str,7,8)
context.date({d=day,y=year,m=month},{"weekday,space,day,space,month,space,year"})
end
\stopluacode
\def\DDate#1{\ctxlua{userdata.ddate("#1")}}
\starttext
\DDate{20241005}
\stoptext
%%%% end example
Wolfgang
___________________________________________________________________________________
If your question is of interest to others as well, please add an
entry to the Wiki!
maillist : ntg-context@ntg.nl /
https://mailman.ntg.nl/mailman3/lists/ntg-context.ntg.nl
webpage : https://www.pragma-ade.nl / https://context.aanhet.net
(mirror)
archive : https://github.com/contextgarden/context
wiki : https://wiki.contextgarden.net
___________________________________________________________________________________