summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tex/context/base/cont-new.mkii2
-rw-r--r--tex/context/base/cont-new.mkiv2
-rw-r--r--tex/context/base/context-version.pdfbin4103 -> 4096 bytes
-rw-r--r--tex/context/base/context-version.pngbin105670 -> 105901 bytes
-rw-r--r--tex/context/base/context.mkii2
-rw-r--r--tex/context/base/context.mkiv2
-rw-r--r--tex/context/base/font-otn.lua9
-rw-r--r--tex/context/base/node-fnt.lua9
-rw-r--r--tex/context/base/status-files.pdfbin23995 -> 23992 bytes
-rw-r--r--tex/context/base/status-lua.pdfbin163154 -> 163154 bytes
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua11
-rw-r--r--tex/generic/context/luatex/luatex-test.tex2
12 files changed, 29 insertions, 10 deletions
diff --git a/tex/context/base/cont-new.mkii b/tex/context/base/cont-new.mkii
index fb1be5f30..92b424e29 100644
--- a/tex/context/base/cont-new.mkii
+++ b/tex/context/base/cont-new.mkii
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\newcontextversion{2011.10.08 10:33}
+\newcontextversion{2011.10.08 11:42}
%D This file is loaded at runtime, thereby providing an
%D excellent place for hacks, patches, extensions and new
diff --git a/tex/context/base/cont-new.mkiv b/tex/context/base/cont-new.mkiv
index 2eb0cbf9b..30e4d1da5 100644
--- a/tex/context/base/cont-new.mkiv
+++ b/tex/context/base/cont-new.mkiv
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\newcontextversion{2011.10.08 10:33}
+\newcontextversion{2011.10.08 11:42}
%D This file is loaded at runtime, thereby providing an
%D excellent place for hacks, patches, extensions and new
diff --git a/tex/context/base/context-version.pdf b/tex/context/base/context-version.pdf
index 8a7989509..be97edf8e 100644
--- a/tex/context/base/context-version.pdf
+++ b/tex/context/base/context-version.pdf
Binary files differ
diff --git a/tex/context/base/context-version.png b/tex/context/base/context-version.png
index 625a1b0a9..f004e888a 100644
--- a/tex/context/base/context-version.png
+++ b/tex/context/base/context-version.png
Binary files differ
diff --git a/tex/context/base/context.mkii b/tex/context/base/context.mkii
index f9bc83736..b1a490767 100644
--- a/tex/context/base/context.mkii
+++ b/tex/context/base/context.mkii
@@ -20,7 +20,7 @@
%D your styles an modules.
\edef\contextformat {\jobname}
-\edef\contextversion{2011.10.08 10:33}
+\edef\contextversion{2011.10.08 11:42}
%D For those who want to use this:
diff --git a/tex/context/base/context.mkiv b/tex/context/base/context.mkiv
index 560a1d8ff..6bfecdbc8 100644
--- a/tex/context/base/context.mkiv
+++ b/tex/context/base/context.mkiv
@@ -20,7 +20,7 @@
%D your styles an modules.
\edef\contextformat {\jobname}
-\edef\contextversion{2011.10.08 10:33}
+\edef\contextversion{2011.10.08 11:42}
%D For those who want to use this:
diff --git a/tex/context/base/font-otn.lua b/tex/context/base/font-otn.lua
index fb2618ff1..914a7dee9 100644
--- a/tex/context/base/font-otn.lua
+++ b/tex/context/base/font-otn.lua
@@ -2001,6 +2001,11 @@ local function featuresprocessor(head,font,attr)
local dirstack = { } -- could move outside function
+ -- We could work on sub start-stop ranges instead but I wonder if there is that
+ -- much speed gain (experiments showed that it made not much sense) and we need
+ -- to keep track of directions anyway. Also at some point I want to play with
+ -- font interactions and then we do need the full sweeps.
+
for s=1,#sequences do
local dataset = datasets[s]
if dataset then
@@ -2094,7 +2099,7 @@ local function featuresprocessor(head,font,attr)
else
start = start.next
end
- elseif id == whatsit_code then
+ elseif id == whatsit_code then -- will be function
local subtype = start.subtype
if subtype == dir_code then
local dir = start.dir
@@ -2140,7 +2145,7 @@ local function featuresprocessor(head,font,attr)
local id = start.id
if id == glyph_code then
if start.subtype<256 and start.font == font then
- local a has_attribute(start,0)
+ local a = has_attribute(start,0)
if a then
a = (a == attr) and (not attribute or has_attribute(start,state,attribute))
else
diff --git a/tex/context/base/node-fnt.lua b/tex/context/base/node-fnt.lua
index 036ff8fa1..66cd9916f 100644
--- a/tex/context/base/node-fnt.lua
+++ b/tex/context/base/node-fnt.lua
@@ -96,7 +96,9 @@ function handlers.characters(head)
end
end
for n in traverse_id(glyph_code,head) do
- local font, attr = n.font, has_attribute(n,0) or 0 -- zero attribute is reserved for fonts in context
+-- if n.subtype<256 then
+ local font = n.font
+ local attr = has_attribute(n,0) or 0 -- zero attribute is reserved for fonts in context
if font ~= prevfont or attr ~= prevattr then
if attr > 0 then
local used = attrfonts[font]
@@ -111,6 +113,8 @@ function handlers.characters(head)
if d then
used[attr] = d
a = a + 1
+ else
+ -- can't happen ... otherwise best use nil/false distinction
end
end
end
@@ -121,12 +125,15 @@ function handlers.characters(head)
if fp then
usedfonts[font] = fp
u = u + 1
+ else
+ -- can't happen ... otherwise best use nil/false distinction
end
end
end
prevfont = font
prevattr = attr
end
+-- end
end
if trace_fontrun then
report_fonts()
diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf
index 26d98785b..ad5015f08 100644
--- a/tex/context/base/status-files.pdf
+++ b/tex/context/base/status-files.pdf
Binary files differ
diff --git a/tex/context/base/status-lua.pdf b/tex/context/base/status-lua.pdf
index 199670940..6ecca0352 100644
--- a/tex/context/base/status-lua.pdf
+++ b/tex/context/base/status-lua.pdf
Binary files differ
diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua
index 0a596ab7e..7156e0a00 100644
--- a/tex/generic/context/luatex/luatex-fonts-merged.lua
+++ b/tex/generic/context/luatex/luatex-fonts-merged.lua
@@ -1,6 +1,6 @@
-- merged file : luatex-fonts-merged.lua
-- parent file : luatex-fonts.lua
--- merge date : 10/08/11 10:33:58
+-- merge date : 10/08/11 11:42:24
do -- begin closure to overcome local limits and interference
@@ -10196,6 +10196,11 @@ local function featuresprocessor(head,font,attr)
local dirstack = { } -- could move outside function
+ -- We could work on sub start-stop ranges instead but I wonder if there is that
+ -- much speed gain (experiments showed that it made not much sense) and we need
+ -- to keep track of directions anyway. Also at some point I want to play with
+ -- font interactions and then we do need the full sweeps.
+
for s=1,#sequences do
local dataset = datasets[s]
if dataset then
@@ -10289,7 +10294,7 @@ local function featuresprocessor(head,font,attr)
else
start = start.next
end
- elseif id == whatsit_code then
+ elseif id == whatsit_code then -- will be function
local subtype = start.subtype
if subtype == dir_code then
local dir = start.dir
@@ -10335,7 +10340,7 @@ local function featuresprocessor(head,font,attr)
local id = start.id
if id == glyph_code then
if start.subtype<256 and start.font == font then
- local a has_attribute(start,0)
+ local a = has_attribute(start,0)
if a then
a = (a == attr) and (not attribute or has_attribute(start,state,attribute))
else
diff --git a/tex/generic/context/luatex/luatex-test.tex b/tex/generic/context/luatex/luatex-test.tex
index 830d30a91..3020b5594 100644
--- a/tex/generic/context/luatex/luatex-test.tex
+++ b/tex/generic/context/luatex/luatex-test.tex
@@ -12,6 +12,8 @@
\pdfoutput=1
+% \directlua{generic_context.caches.compilemethod = "both" } % none luac dump both
+
\font\testa=file:lmroman10-regular at 12pt \testa \input tufte \par
\font\testb=file:lmroman12-regular:+liga; at 24pt \testb effe flink fietsen \par
\font\testc=file:lmroman12-regular:mode=node;+liga; at 24pt \testc effe flink fietsen \par