diff options
author | Hans Hagen <pragma@wxs.nl> | 2019-07-24 13:08:53 +0200 |
---|---|---|
committer | Context Git Mirror Bot <phg@phi-gamma.net> | 2019-07-24 13:08:53 +0200 |
commit | 47852e5715e7c0374bb6bc173c1728908549e1ed (patch) | |
tree | e6df8c61ffb0aadfabbca7e9a33f10d1b61bde68 /tex/context/base/mkiv/cldf-int.lua | |
parent | a92a8d40ce567ecf5b0baacd9a93a94aac9a4a2d (diff) | |
download | context-47852e5715e7c0374bb6bc173c1728908549e1ed.tar.gz |
2019-07-24 11:24:00
Diffstat (limited to 'tex/context/base/mkiv/cldf-int.lua')
-rw-r--r-- | tex/context/base/mkiv/cldf-int.lua | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/tex/context/base/mkiv/cldf-int.lua b/tex/context/base/mkiv/cldf-int.lua index 937e1da60..86420f422 100644 --- a/tex/context/base/mkiv/cldf-int.lua +++ b/tex/context/base/mkiv/cldf-int.lua @@ -45,7 +45,7 @@ if CONTEXTLMTXMODE > 0 then local equal = byte('=') local comma = byte(',') - function scanhash(t) + function scanhash(scanners) if scanpeek() == open then local data = { } scanskip() @@ -61,7 +61,16 @@ if CONTEXTLMTXMODE > 0 then if key then if scanpeek() == equal then scanskip() - data[key] = scanvalue(comma,close) or "" + if scanners then + local scanner = scanners[key] + if scanner then + data[key] = scanner() + else + data[key] = scanvalue(comma,close) or "" + end + else + data[key] = scanvalue(comma,close) or "" + end else break end @@ -74,7 +83,7 @@ if CONTEXTLMTXMODE > 0 then end end - function scanarray(t) + function scanarray() if scanpeek() == open then local data = { } local d = 0 |