diff options
author | Elie Roux <elie.roux@telecom-bretagne.eu> | 2009-06-10 20:21:00 +0300 |
---|---|---|
committer | Elie Roux <elie.roux@telecom-bretagne.eu> | 2009-06-10 20:21:00 +0300 |
commit | 1ef10e57241a65e8ce2aeefdd83874e8999b7b44 (patch) | |
tree | 713769db5cdf9115e2824aa09e8f65cd795667f7 /otfl-node-fnt.lua | |
parent | 5821436af1c522206c3faf90e0813415445ea6c7 (diff) | |
download | luaotfload-1ef10e57241a65e8ce2aeefdd83874e8999b7b44.tar.gz |
syncing with latest ConTeXt version (more feautures, less bugs), thanks to Khaled Hosny
Diffstat (limited to 'otfl-node-fnt.lua')
-rw-r--r-- | otfl-node-fnt.lua | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/otfl-node-fnt.lua b/otfl-node-fnt.lua index 52b5a24..3ad9060 100644 --- a/otfl-node-fnt.lua +++ b/otfl-node-fnt.lua @@ -33,6 +33,18 @@ local fontdata = fonts.ids -- happen often; we could consider processing sublists but that might need mor -- checking later on; the current approach also permits variants +if tex.attribute[0] < 0 then + + texio.write_nl("log","!") + texio.write_nl("log","! Attribute 0 is reserved for ConTeXt's font feature management and has to be") + texio.write_nl("log","! set to zero. Also, some attributes in the range 1-255 are used for special") + texio.write_nl("log","! purposed so setting them at the TeX end might break the font handler.") + texio.write_nl("log","!") + + tex.attribute[0] = 0 -- else no features + +end + function nodes.process_characters(head) -- either next or not, but definitely no already processed list starttiming(nodes) @@ -54,7 +66,7 @@ function nodes.process_characters(head) if shared then local dynamics = shared.dynamics if dynamics then - local d = shared.set_dynamics(font,dynamics,attr) + local d = shared.set_dynamics(font,dynamics,attr) -- still valid? if d then used[attr] = d a = a + 1 @@ -95,7 +107,7 @@ function nodes.process_characters(head) head, done = h or head, done or d if n > 1 then for i=2,n do - local h, d = processors[i](head,font,false) + local h, d = processors[i](head,font,0) -- false) head, done = h or head, done or d end end @@ -107,7 +119,7 @@ function nodes.process_characters(head) head, done = h or head, done or d if n > 1 then for i=2,n do - local h, d = processors[i](head,font,false) + local h, d = processors[i](head,font,0) -- false) head, done = h or head, done or d end end |