From 1d8e1b7c6294804f20c56eb10bc51fbd3c050ebc Mon Sep 17 00:00:00 2001 From: Marius Date: Sun, 14 Jul 2013 16:00:28 +0300 Subject: beta 2013.07.14 14:53 --- tex/context/base/cont-new.mkiv | 2 +- tex/context/base/context-version.pdf | Bin 4097 -> 4113 bytes tex/context/base/context.mkiv | 2 +- tex/context/base/math-stc.mkvi | 2 +- tex/context/base/node-met.lua | 1 - tex/context/base/s-inf-03.pdf | Bin 1971 -> 1977 bytes tex/context/base/status-files.pdf | Bin 24573 -> 24613 bytes tex/context/base/status-lua.log | 2 +- tex/context/base/strc-ref.lua | 5 +- tex/generic/context/luatex/luatex-basics-nod.lua | 54 +++++++++++++++++++-- tex/generic/context/luatex/luatex-fonts-merged.lua | 44 +++++++++++++++-- 11 files changed, 99 insertions(+), 13 deletions(-) diff --git a/tex/context/base/cont-new.mkiv b/tex/context/base/cont-new.mkiv index 283e924cc..72101e746 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{2013.07.12 19:10} +\newcontextversion{2013.07.14 14:53} %D This file is loaded at runtime, thereby providing an excellent place for %D hacks, patches, extensions and new features. diff --git a/tex/context/base/context-version.pdf b/tex/context/base/context-version.pdf index 3bf5f1c53..74319d9ea 100644 Binary files a/tex/context/base/context-version.pdf and b/tex/context/base/context-version.pdf differ diff --git a/tex/context/base/context.mkiv b/tex/context/base/context.mkiv index e6cc65a9d..4ad245936 100644 --- a/tex/context/base/context.mkiv +++ b/tex/context/base/context.mkiv @@ -25,7 +25,7 @@ %D up and the dependencies are more consistent. \edef\contextformat {\jobname} -\edef\contextversion{2013.07.12 19:10} +\edef\contextversion{2013.07.14 14:53} \edef\contextkind {beta} %D For those who want to use this: diff --git a/tex/context/base/math-stc.mkvi b/tex/context/base/math-stc.mkvi index 5f92f3801..559fbd16c 100644 --- a/tex/context/base/math-stc.mkvi +++ b/tex/context/base/math-stc.mkvi @@ -723,7 +723,7 @@ \definemathunderextensible [vfenced] [underbar] ["203E] \definemathoverextensible [vfenced] [overbar] ["203E] -\definemathoverextensible [vfenced] [doublebar] ["203E] ["203E] +\definemathdoubleextensible [vfenced] [doublebar] ["203E] ["203E] \definemathoverextensible [vfenced] [overbrace] ["FE3DE] % ["023DE] \definemathunderextensible [vfenced] [underbrace] ["FE3DF] % ["023DF] diff --git a/tex/context/base/node-met.lua b/tex/context/base/node-met.lua index aff427185..f08f2b3dd 100644 --- a/tex/context/base/node-met.lua +++ b/tex/context/base/node-met.lua @@ -113,7 +113,6 @@ nodes.kerning = node.kerning nodes.ligaturing = node.ligaturing nodes.mlist_to_hlist = node.mlist_to_hlist - if not gonuts or not node.getfield then node.getfield = metatable.__index node.setfield = metatable.__newindex diff --git a/tex/context/base/s-inf-03.pdf b/tex/context/base/s-inf-03.pdf index a2de80fab..b0aaf6733 100644 Binary files a/tex/context/base/s-inf-03.pdf and b/tex/context/base/s-inf-03.pdf differ diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf index af631be91..d2eb1348c 100644 Binary files a/tex/context/base/status-files.pdf and b/tex/context/base/status-files.pdf differ diff --git a/tex/context/base/status-lua.log b/tex/context/base/status-lua.log index 71ade66ca..10d115dfe 100644 --- a/tex/context/base/status-lua.log +++ b/tex/context/base/status-lua.log @@ -1,6 +1,6 @@ (cont-yes.mkiv -ConTeXt ver: 2013.07.12 19:10 MKIV beta fmt: 2013.7.12 int: english/english +ConTeXt ver: 2013.07.14 14:53 MKIV beta fmt: 2013.7.14 int: english/english system > 'cont-new.mkiv' loaded (cont-new.mkiv) diff --git a/tex/context/base/strc-ref.lua b/tex/context/base/strc-ref.lua index 4c4a0fe7f..adf88840f 100644 --- a/tex/context/base/strc-ref.lua +++ b/tex/context/base/strc-ref.lua @@ -2024,7 +2024,10 @@ local function realpageofpage(p) -- the last one counts ! nofrealpages = #pages plist = { } for rp=1,nofrealpages do - plist[pages[rp].number] = rp + local page = pages[rp] + if page then + plist[page.number] = rp + end end references.nofrealpages = nofrealpages end diff --git a/tex/generic/context/luatex/luatex-basics-nod.lua b/tex/generic/context/luatex/luatex-basics-nod.lua index 58b27897d..50a1e8627 100644 --- a/tex/generic/context/luatex/luatex-basics-nod.lua +++ b/tex/generic/context/luatex/luatex-basics-nod.lua @@ -96,8 +96,8 @@ end -- experimental -local getfield = node.getfield or function(n,tag) return n[tag] end end -local setfield = node.setfield or function(n,tag,value) n[tag] = value end end +local getfield = node.getfield or function(n,tag) return n[tag] end +local setfield = node.setfield or function(n,tag,value) n[tag] = value end nodes.getfield = getfield nodes.setfield = setfield @@ -116,4 +116,52 @@ if node.getlist then nodes.getlist = node.getlist else function nodes.g function nodes.tonut (n) return n end function nodes.tonode(n) return n end -nodes.nuts = nodes -- we stay nodes +-- being lazy ... just copy a bunch ... not all needed in generic but we assume +-- nodes to be kind of private anyway + +nodes.tostring = node.tostring or tostring +nodes.copy = node.copy +nodes.copy_list = node.copy_list +nodes.delete = node.delete +nodes.dimensions = node.dimensions +nodes.end_of_math = node.end_of_math +nodes.flush_list = node.flush_list +nodes.flush_node = node.flush_node +nodes.free = node.free +nodes.insert_after = node.insert_after +nodes.insert_before = node.insert_before +nodes.hpack = node.hpack +nodes.new = node.new +nodes.tail = node.tail +nodes.traverse = node.traverse +nodes.traverse_id = node.traverse_id +nodes.slide = node.slide +nodes.vpack = node.vpack + +nodes.first_glyph = node.first_glyph +nodes.first_character = node.first_character +nodes.has_glyph = node.has_glyph or node.first_glyph + +nodes.current_attr = node.current_attr +nodes.do_ligature_n = node.do_ligature_n +nodes.has_field = node.has_field +nodes.last_node = node.last_node +nodes.usedlist = node.usedlist +nodes.protrusion_skippable = node.protrusion_skippable +nodes.write = node.write + +nodes.has_attribute = node.has_attribute +nodes.set_attribute = node.set_attribute +nodes.unset_attribute = node.unset_attribute + +nodes.protect_glyphs = node.protect_glyphs +nodes.unprotect_glyphs = node.unprotect_glyphs +nodes.kerning = node.kerning +nodes.ligaturing = node.ligaturing +nodes.mlist_to_hlist = node.mlist_to_hlist + +-- in generic code, at least for some time, we stay nodes, while in context +-- we can go nuts (e.g. experimental); this split permits us us keep code +-- used elsewhere stable but at the same time play around in context + +nodes.nuts = nodes diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua index d7a1fab5b..c17a54182 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 : 07/12/13 19:10:11 +-- merge date : 07/14/13 14:53:44 do -- begin closure to overcome local limits and interference @@ -3381,8 +3381,8 @@ function nodes.pool.kern(k) n.kern=k return n end -local getfield=node.getfield or function(n,tag) return n[tag] end end -local setfield=node.setfield or function(n,tag,value) n[tag]=value end end +local getfield=node.getfield or function(n,tag) return n[tag] end +local setfield=node.setfield or function(n,tag,value) n[tag]=value end nodes.getfield=getfield nodes.setfield=setfield nodes.getattr=getfield @@ -3396,7 +3396,43 @@ if node.getfont then nodes.getfont=node.getfont else function nodes.getfont ( if node.getlist then nodes.getlist=node.getlist else function nodes.getlist (n) return getfield(n,"list") end end function nodes.tonut (n) return n end function nodes.tonode(n) return n end -nodes.nuts=nodes +nodes.tostring=node.tostring or tostring +nodes.copy=node.copy +nodes.copy_list=node.copy_list +nodes.delete=node.delete +nodes.dimensions=node.dimensions +nodes.end_of_math=node.end_of_math +nodes.flush_list=node.flush_list +nodes.flush_node=node.flush_node +nodes.free=node.free +nodes.insert_after=node.insert_after +nodes.insert_before=node.insert_before +nodes.hpack=node.hpack +nodes.new=node.new +nodes.tail=node.tail +nodes.traverse=node.traverse +nodes.traverse_id=node.traverse_id +nodes.slide=node.slide +nodes.vpack=node.vpack +nodes.first_glyph=node.first_glyph +nodes.first_character=node.first_character +nodes.has_glyph=node.has_glyph or node.first_glyph +nodes.current_attr=node.current_attr +nodes.do_ligature_n=node.do_ligature_n +nodes.has_field=node.has_field +nodes.last_node=node.last_node +nodes.usedlist=node.usedlist +nodes.protrusion_skippable=node.protrusion_skippable +nodes.write=node.write +nodes.has_attribute=node.has_attribute +nodes.set_attribute=node.set_attribute +nodes.unset_attribute=node.unset_attribute +nodes.protect_glyphs=node.protect_glyphs +nodes.unprotect_glyphs=node.unprotect_glyphs +nodes.kerning=node.kerning +nodes.ligaturing=node.ligaturing +nodes.mlist_to_hlist=node.mlist_to_hlist +nodes.nuts=nodes end -- closure -- cgit v1.2.3