On 10/19/2021 10:38 PM, Michal Vlasák via ntg-context wrote:
I don't know how official these interfaces are. But you can try adapting
the following to your use case.
\setupinteraction[state=start]
%\luacode{lpdf.settime("2020-02-02 12:00")}
%\luacode{lpdf.settime(1580641221)}
\startluacode
local Y, M, D, h, m, s, Zs, Zh, Zm = string.match("D:20200202120021+02'00'", "^D:(%d%d%d%d)(%d%d)(%d%d)(%d%d)(%d%d)(%d%d)([%+%-])(%d%d)%'(%d%d)%'$")
local time = os.time{year=Y,month=M,day=D,hour=h,min=m,sec=s}
lpdf.settime(time)
\stopluacode
\starttext
This document is from 02.02.2020 at 12:00:21.
\stoptext
The pattern doesn't catch all the PDF spec cases, but should match what
ConTeXt emits. The timezone info gets overwritten by current timezone
though.
Requires the below patch.
Michal
--- a/tex/context/base/mkiv/core-con.lua
+++ b/tex/context/base/mkiv/core-con.lua
@@ -1991,7 +1991,7 @@ function converters.totime(s)
end
local n = tonumber(s)
if n and n >= 0 then
- return date("*t",n)
+ return osdate("*t",n)
end
end
diff --git a/tex/context/base/mkxl/lpdf-ini.lmt b/tex/context/base/mkxl/lpdf-ini.lmt
index 7979b80..9703ac0 100644
--- a/tex/context/base/mkxl/lpdf-ini.lmt
+++ b/tex/context/base/mkxl/lpdf-ini.lmt
@@ -1123,7 +1123,7 @@ do
n = converters.totime(n)
if n then
converters.settime(n)
- timestamp = osdate("%Y-%m-%dT%X") .. ostimezone(true) --
probably not ok
+ timestamp = osdate("%Y-%m-%dT%X", ostime(n)) ..
ostimezone(true) -- probably not ok
end
end
if metadata then
i'll fix it but also clean up the existing code a bit
(much has to do with omitting date and is for comparison reasons)
Hans
-----------------------------------------------------------------
Hans Hagen | PRAGMA ADE
Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
tel: 038 477 53 69 | www.pragma-ade.nl | 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://context.aanhet.net
archive : https://bitbucket.org/phg/context-mirror/commits/
wiki : http://contextgarden.net
___________________________________________________________________________________