From 48ada1e00327dcc426ba3aa538b859cf6af5185c Mon Sep 17 00:00:00 2001 From: Hans Hagen Date: Fri, 19 Jul 2013 23:54:00 +0200 Subject: beta 2013.07.19 23:54 --- tex/context/base/cont-new.mkiv | 2 +- tex/context/base/context-version.pdf | Bin 4111 -> 4110 bytes tex/context/base/context.mkiv | 2 +- tex/context/base/font-map.lua | 59 +++-- tex/context/base/math-fbk.lua | 2 + tex/context/base/math-rad.mkvi | 2 +- tex/context/base/math-stc.mkvi | 62 +++-- tex/context/base/status-files.pdf | Bin 24623 -> 24638 bytes tex/context/base/status-lua.log | 249 ++++++++++++++++++--- tex/generic/context/luatex/luatex-fonts-merged.lua | 49 ++-- 10 files changed, 336 insertions(+), 91 deletions(-) diff --git a/tex/context/base/cont-new.mkiv b/tex/context/base/cont-new.mkiv index bcdf03966..e0b419e04 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.19 18:57} +\newcontextversion{2013.07.19 23:54} %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 f50635154..651eb697d 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 442582c9c..f3d70c375 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.19 18:57} +\edef\contextversion{2013.07.19 23:54} \edef\contextkind {beta} %D For those who want to use this: diff --git a/tex/context/base/font-map.lua b/tex/context/base/font-map.lua index b3c8da0f6..ce724b973 100644 --- a/tex/context/base/font-map.lua +++ b/tex/context/base/font-map.lua @@ -261,38 +261,51 @@ function mappings.addtounicode(data,filename) end end -- a.whatever or a_b_c.whatever or a_b_c (no numbers) a.b_ + -- + -- It is not trivial to find a solution that suits all fonts. We tried several alternatives + -- and this one seems to work reasonable also with fonts that use less standardized naming + -- schemes. The extra private test is tested by KE and seems to work okay with non-typical + -- fonts as well. + -- + -- The next time I look into this, I'll add an extra analysis step to the otf loader (we can + -- resolve some tounicodes by looking into the gsub data tables that are bound to glyphs. + -- if not unicode or unicode == "" then local split = lpegmatch(namesplitter,name) local nsplit = split and #split or 0 - if nsplit >= 2 then - local t, n = { }, 0 - for l=1,nsplit do - local base = split[l] - local u = unicodes[base] or unicodevector[base] - if not u then + local t, n = { }, 0 + unicode = true + for l=1,nsplit do + local base = split[l] + local u = unicodes[base] or unicodevector[base] + if not u then + break + elseif type(u) == "table" then + if u[1] >= private then + unicode = false break - elseif type(u) == "table" then - n = n + 1 - t[n] = u[1] - else - n = n + 1 - t[n] = u end - end - if n == 0 then -- done then - -- nothing - elseif n == 1 then - originals[index] = t[1] - tounicode[index] = tounicode16(t[1],name) + n = n + 1 + t[n] = u[1] else - originals[index] = t - tounicode[index] = tounicode16sequence(t) + if u >= private then + unicode = false + break + end + n = n + 1 + t[n] = u end - nl = nl + 1 - unicode = true + end + if n == 0 then -- done then + -- nothing + elseif n == 1 then + originals[index] = t[1] + tounicode[index] = tounicode16(t[1],name) else - -- skip: already checked and we don't want privates here + originals[index] = t + tounicode[index] = tounicode16sequence(t) end + nl = nl + 1 end -- last resort (we might need to catch private here as well) if not unicode or unicode == "" then diff --git a/tex/context/base/math-fbk.lua b/tex/context/base/math-fbk.lua index 0800f3007..f319fdf07 100644 --- a/tex/context/base/math-fbk.lua +++ b/tex/context/base/math-fbk.lua @@ -397,6 +397,8 @@ virtualcharacters[0x203E] = function(data) -- could be FE33E instead return accent_to_extensible(target,0x203E,data.original,0x0305,height,depth) end +virtualcharacters[0xFE33E] = virtualcharacters[0x203E] -- convenient + virtualcharacters[0xFE3DE] = function(data) local target, original = data.target, data.original local chardata = target.characters[0x23DE] diff --git a/tex/context/base/math-rad.mkvi b/tex/context/base/math-rad.mkvi index 3aac0130b..a4329c489 100644 --- a/tex/context/base/math-rad.mkvi +++ b/tex/context/base/math-rad.mkvi @@ -34,7 +34,7 @@ \installcommandhandler \??mathradical {mathradical} \??mathradical \setupmathradical - [\c!alternative=\v!default, + [\c!alternative=\v!normal, \c!offset=.25\exheight] \appendtoks diff --git a/tex/context/base/math-stc.mkvi b/tex/context/base/math-stc.mkvi index f0f585c15..a8a215a07 100644 --- a/tex/context/base/math-stc.mkvi +++ b/tex/context/base/math-stc.mkvi @@ -60,11 +60,16 @@ {\hbox to \scratchwidth{\csname\??mathextensiblefallbacks\ifcsname\??mathextensiblefallbacks\number\scratchunicode\endcsname\number\scratchunicode\fi\endcsname}} %{\csname\??mathextensiblefallbacks\ifcsname\??mathextensiblefallbacks\number\scratchunicode\endcsname\number\scratchunicode\fi\endcsname } +% \def\math_stackers_regular +% {\mathstylehbox{\Umathaccent\fam\zerocount\scratchunicode{\hskip\scratchwidth}}} + \def\math_stackers_regular - {\mathstylehbox{\Umathaccent\fam\zerocount\scratchunicode{\hskip\scratchwidth}}} + {\mathstylehbox{\usemathstackerscolorparameter\c!color + \Umathaccent\fam\zerocount\scratchunicode{\hskip\scratchwidth}}} \def\math_stackers_stretch % we don't have that one yet - {\mathstylehbox{\Umathaccent\fam\zerocount\scratchunicode{\hskip\hsize}}} + {\mathstylehbox{\usemathstackerscolorparameter\c!color + \Umathaccent\fam\zerocount\scratchunicode{\hskip\hsize}}} \setvalue{\??mathextensiblefallbacks}{\hbox{\vrule\!!width\scratchwidth\!!height.1\exheight\!!depth\zeropoint}} @@ -114,6 +119,8 @@ [%c!alternative=\v!text, % text | mathematics \c!left=, \c!right=, + \c!alternative=\v!normal, + \c!mp=math:stacker:\number\scratchunicode, \c!voffset=.25\exheight, \c!hoffset=.5\emwidth, \c!minheight=\exheight, @@ -121,7 +128,7 @@ \c!minwidth=\emwidth, \c!order=\v!normal, \c!strut=, - %\c!color=, % todo: when I need it + \c!color=, % todo: when I need it \c!topcommand=, \c!middlecommand=, \c!bottomcommand=, @@ -132,6 +139,7 @@ %D top of the baseline by default. \installcorenamespace {mathstackerslocation} +\installcorenamespace {mathstackersalternative} \letvalue{\??mathstackerslocation\v!top }\plusone % on top of baseline \letvalue{\??mathstackerslocation\v!high }\plustwo % 25 % down @@ -172,6 +180,24 @@ \math_stackers_fallback \fi} +% no checking, we assume sane use + +\letvalue{\??mathstackersalternative\v!normal }\math_stackers_content +\letvalue{\??mathstackersalternative\v!default}\math_stackers_content + +\setvalue{\??mathstackersalternative\v!mp}% + {\hbox\bgroup % todo: add code key + tag + \scratchoffset\mathstackersparameter\c!offset + \edef\overlaywidth {\the\scratchwidth}% + \edef\overlayheight {\the\dimexpr\mathstackersparameter\c!height}% + \edef\overlaydepth {\the\dimexpr\mathstackersparameter\c!depth}% + \edef\overlayoffset {\the\scratchoffset}% + \edef\overlaylinewidth{\the\linewidth}% + \edef\overlaylinecolor{\mathstackersparameter\c!color}% + \edef\p_mp{\mathstackersparameter\c!mp}% + \uniqueMPgraphic{\p_mp}% + \egroup} + \def\math_stackers_check_unicode#codepoint% {\scratchunicode#codepoint\relax \scratchhoffset\mathstackersparameter\c!hoffset\relax @@ -224,10 +250,11 @@ \edef\currentmathstackers{#category}% \mathstackersparameter\c!left\relax \ifmmode\mathrel\else\dontleavehmode\fi - {\edef\p_offset {\mathstackersparameter\c!offset}% - \edef\p_location{\mathstackersparameter\c!location}% - \edef\p_order {\mathstackersparameter\c!order}% - \edef\p_strut {\mathstackersparameter\c!strut}% + {\edef\p_offset {\mathstackersparameter\c!offset}% + \edef\p_location {\mathstackersparameter\c!location}% + \edef\p_order {\mathstackersparameter\c!order}% + \edef\p_strut {\mathstackersparameter\c!strut}% + \edef\p_alternative{\mathstackersparameter\c!alternative}% \ifx\p_order\v!reverse \edef\m_math_stackers_text_top {#bottomtext}% \edef\m_math_stackers_text_bottom{#toptext}% @@ -285,7 +312,7 @@ \advance\scratchwidth2\scratchhoffset % \ifcase#method\relax - \setbox\scratchboxthree\math_stackers_content + \setbox\scratchboxthree\csname\??mathstackersalternative\p_alternative\endcsname \fi % \ifdim\wd\scratchboxone<\scratchwidth @@ -415,9 +442,10 @@ {\edef\currentmathstackers{#category}% \edef\m_math_stackers_text_middle {#text}% % - \edef\p_offset {\mathstackersparameter\c!offset}% - \edef\p_location{\mathstackersparameter\c!location}% - \edef\p_strut {\mathstackersparameter\c!strut}% + \edef\p_offset {\mathstackersparameter\c!offset}% + \edef\p_location {\mathstackersparameter\c!location}% + \edef\p_strut {\mathstackersparameter\c!strut}% + \edef\p_alternative{\mathstackersparameter\c!alternative}% % \scratchleftoffset \zeropoint \scratchrightoffset\zeropoint @@ -437,7 +465,7 @@ \fi \advance\scratchwidth2\scratchhoffset % - \setbox\scratchboxtwo \math_stackers_content + \setbox\scratchboxtwo \csname\??mathstackersalternative\p_alternative\endcsname \setbox\scratchboxthree\hbox to \scratchwidth{\hss\box\scratchboxthree\hss}% % \math_stackers_normalize_three @@ -457,7 +485,7 @@ \scratchunicode#codeextra\relax \ifcase\scratchunicode\else \kern-\scratchwidth - \setbox\scratchboxtwo\math_stackers_content + \setbox\scratchboxtwo\csname\??mathstackersalternative\p_alternative\endcsname \fi \ifcase#bottom\else \math_stackers_bottom\bgroup @@ -723,9 +751,11 @@ % stuff in the backend (okay, we still need to deal with some cut and paste % issues but at least we now know what we deal with. -\definemathunderextensible [vfenced] [underbar] ["203E] -\definemathoverextensible [vfenced] [overbar] ["203E] -\definemathdoubleextensible [vfenced] [doublebar] ["203E] ["203E] +% alternatively we can move the original to FE* + +\definemathunderextensible [vfenced] [underbar] ["FE33E] % ["203E] +\definemathoverextensible [vfenced] [overbar] ["FE33E] % ["203E] +\definemathdoubleextensible [vfenced] [doublebar] ["FE33E] ["FE33E] \definemathoverextensible [vfenced] [overbrace] ["FE3DE] % ["023DE] \definemathunderextensible [vfenced] [underbrace] ["FE3DF] % ["023DF] diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf index 8b9bac2d1..00a6349a0 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 5610ff0e5..86fdf6321 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.19 18:57 MKIV beta fmt: 2013.7.19 int: english/english +ConTeXt ver: 2013.07.19 23:54 MKIV beta fmt: 2013.7.19 int: english/english system > 'cont-new.mkiv' loaded (cont-new.mkiv) @@ -13,7 +13,226 @@ interface > macros > processed mkvi file 'c:/data/develop/context/sources/ system > files > jobname 's-inf-03', input './s-inf-03.mkiv', result 'status-lua.pdf' fonts > latin modern fonts are not preloaded languages > language 'en' is active -(c:/data/develop/context/texmf/tex/context/base/s-inf-03.mkiv (c:/data/develop/context/sources/type-loc.mkiv) (type-imp-dejavu.mkiv) (type-imp-xits.mkiv (type-imp-texgyre.mkiv)){c:/data/develop/tex-context/tex/texmf-context/fonts/map/pdftex/context/mkiv-base.map} (virtual://buffer.noname.1 +(c:/data/develop/context/texmf/tex/context/base/s-inf-03.mkiv (c:/data/develop/context/sources/type-loc.mkiv) (type-imp-dejavu.mkiv) (type-imp-xits.mkiv (type-imp-texgyre.mkiv)) +fonts > otf loading > loading 'c:/data/develop/tex-context/tex/texmf/fonts/truetype/public/dejavu/DejaVuSerif.ttf', hash 'dejavuserif' +fonts > otf loading > loading done +fonts > otf loading > file size: 363200 +fonts > encoding > loading (extended) adobe glyph list +fonts > otf loading > saving 'c:/data/develop/tex-context/tex/texmf/fonts/truetype/public/dejavu/DejaVuSerif.ttf' in cache +system > lua > compiling 'c:/data/develop/tex-context/tex/texmf-cache/luatex-cache/context/764bd4e1ce0f004ab3cec90018f8b80a/fonts/otf/dejavuserif.tma' into 'c:/data/develop/tex-context/tex/texmf-cache/luatex-cache/context/764bd4e1ce0f004ab3cec90018f8b80a/fonts/otf/dejavuserif.tmc' +system > lua > dumping 'c:/data/develop/tex-context/tex/texmf-cache/luatex-cache/context/764bd4e1ce0f004ab3cec90018f8b80a/fonts/otf/dejavuserif.tma' into 'c:/data/develop/tex-context/tex/texmf-cache/luatex-cache/context/764bd4e1ce0f004ab3cec90018f8b80a/fonts/otf/dejavuserif.tmc' stripped +fonts > otf loading > preprocessing and caching time 0.699, packtime 0.032 +fonts > otf loading > loading 'c:/data/develop/tex-context/tex/texmf/fonts/opentype/public/xits/xits-math.otf', hash 'xits-math' +fonts > otf loading > loading done +fonts > otf loading > file size: 506752 +fonts > otf loading > skipping cyclic reference U+00028 in math variant U+00028 +fonts > otf loading > skipping cyclic reference U+00029 in math variant U+00029 +fonts > otf loading > skipping cyclic reference U+0002F in math variant U+0002F +fonts > otf loading > skipping cyclic reference U+0005B in math variant U+0005B +fonts > otf loading > skipping cyclic reference U+0005C in math variant U+0005C +fonts > otf loading > skipping cyclic reference U+0005D in math variant U+0005D +fonts > otf loading > skipping cyclic reference U+0007B in math variant U+0007B +fonts > otf loading > skipping cyclic reference U+0007C in math variant U+0007C +fonts > otf loading > skipping cyclic reference U+0007D in math variant U+0007D +fonts > otf loading > skipping cyclic reference U+00302 in math variant U+00302 +fonts > otf loading > skipping cyclic reference U+00303 in math variant U+00303 +fonts > otf loading > skipping cyclic reference U+00305 in math variant U+00305 +fonts > otf loading > skipping cyclic reference U+0030C in math variant U+0030C +fonts > otf loading > skipping cyclic reference U+00330 in math variant U+00330 +fonts > otf loading > skipping cyclic reference U+00332 in math variant U+00332 +fonts > otf loading > skipping cyclic reference U+00338 in math variant U+00338 +fonts > otf loading > skipping cyclic reference U+0034D in math variant U+0034D +fonts > otf loading > skipping cyclic reference U+027E6 in math variant U+027E6 +fonts > otf loading > skipping cyclic reference U+02986 in math variant U+02986 +fonts > otf loading > skipping cyclic reference U+02A06 in math variant U+02A06 +fonts > otf loading > skipping cyclic reference U+027E7 in math variant U+027E7 +fonts > otf loading > skipping cyclic reference U+02A07 in math variant U+02A07 +fonts > otf loading > skipping cyclic reference U+02308 in math variant U+02308 +fonts > otf loading > skipping cyclic reference U+027E8 in math variant U+027E8 +fonts > otf loading > skipping cyclic reference U+02A08 in math variant U+02A08 +fonts > otf loading > skipping cyclic reference U+020E9 in math variant U+020E9 +fonts > otf loading > skipping cyclic reference U+02309 in math variant U+02309 +fonts > otf loading > skipping cyclic reference U+027E9 in math variant U+027E9 +fonts > otf loading > skipping cyclic reference U+02A09 in math variant U+02A09 +fonts > otf loading > skipping cyclic reference U+027EA in math variant U+027EA +fonts > otf loading > skipping cyclic reference U+02A0A in math variant U+02A0A +fonts > otf loading > skipping cyclic reference U+0222B in math variant U+0222B +fonts > otf loading > skipping cyclic reference U+0230B in math variant U+0230B +fonts > otf loading > skipping cyclic reference U+027EB in math variant U+027EB +fonts > otf loading > skipping cyclic reference U+02A0B in math variant U+02A0B +fonts > otf loading > skipping cyclic reference U+020EC in math variant U+020EC +fonts > otf loading > skipping cyclic reference U+0222C in math variant U+0222C +fonts > otf loading > skipping cyclic reference U+02A0C in math variant U+02A0C +fonts > otf loading > skipping cyclic reference U+020ED in math variant U+020ED +fonts > otf loading > skipping cyclic reference U+0222D in math variant U+0222D +fonts > otf loading > skipping cyclic reference U+02A0D in math variant U+02A0D +fonts > otf loading > skipping cyclic reference U+020EE in math variant U+020EE +fonts > otf loading > skipping cyclic reference U+0222E in math variant U+0222E +fonts > otf loading > skipping cyclic reference U+027EE in math variant U+027EE +fonts > otf loading > skipping cyclic reference U+02A0E in math variant U+02A0E +fonts > otf loading > skipping cyclic reference U+020EF in math variant U+020EF +fonts > otf loading > skipping cyclic reference U+0220F in math variant U+0220F +fonts > otf loading > skipping cyclic reference U+0222F in math variant U+0222F +fonts > otf loading > skipping cyclic reference U+027EF in math variant U+027EF +fonts > otf loading > skipping cyclic reference U+02A0F in math variant U+02A0F +fonts > otf loading > skipping cyclic reference U+020D0 in math variant U+020D0 +fonts > otf loading > skipping cyclic reference U+02210 in math variant U+02210 +fonts > otf loading > skipping cyclic reference U+02230 in math variant U+02230 +fonts > otf loading > skipping cyclic reference U+023B0 in math variant U+023B0 +fonts > otf loading > skipping cyclic reference U+02A10 in math variant U+02A10 +fonts > otf loading > skipping cyclic reference U+02211 in math variant U+02211 +fonts > otf loading > skipping cyclic reference U+023B1 in math variant U+023B1 +fonts > otf loading > skipping cyclic reference U+02A11 in math variant U+02A11 +fonts > otf loading > skipping cyclic reference U+00606 in math variant U+00606 +fonts > otf loading > skipping cyclic reference U+020D2 in math variant U+020D2 +fonts > otf loading > skipping cyclic reference U+02232 in math variant U+02232 +fonts > otf loading > skipping cyclic reference U+02772 in math variant U+02772 +fonts > otf loading > skipping cyclic reference U+02A12 in math variant U+02A12 +fonts > otf loading > skipping cyclic reference U+02233 in math variant U+02233 +fonts > otf loading > skipping cyclic reference U+02773 in math variant U+02773 +fonts > otf loading > skipping cyclic reference U+02A13 in math variant U+02A13 +fonts > otf loading > skipping cyclic reference U+023B4 in math variant U+023B4 +fonts > otf loading > skipping cyclic reference U+02A14 in math variant U+02A14 +fonts > otf loading > skipping cyclic reference U+023B5 in math variant U+023B5 +fonts > otf loading > skipping cyclic reference U+02A15 in math variant U+02A15 +fonts > otf loading > skipping cyclic reference U+02016 in math variant U+02016 +fonts > otf loading > skipping cyclic reference U+020D6 in math variant U+020D6 +fonts > otf loading > skipping cyclic reference U+02A16 in math variant U+02A16 +fonts > otf loading > skipping cyclic reference U+F02B5 in math variant U+F02B5 +fonts > otf loading > skipping cyclic reference U+F02B4 in math variant U+F02B4 +fonts > otf loading > skipping cyclic reference U+F02B3 in math variant U+F02B3 +fonts > otf loading > skipping cyclic reference U+F02B2 in math variant U+F02B2 +fonts > otf loading > skipping cyclic reference U+F02B1 in math variant U+F02B1 +fonts > otf loading > skipping cyclic reference U+020D7 in math variant U+020D7 +fonts > otf loading > skipping cyclic reference U+F029C in math variant U+F029C +fonts > otf loading > skipping cyclic reference U+F02AE in math variant U+F02AE +fonts > otf loading > skipping cyclic reference U+F029D in math variant U+F029D +fonts > otf loading > skipping cyclic reference U+F029E in math variant U+F029E +fonts > otf loading > skipping cyclic reference U+F029F in math variant U+F029F +fonts > otf loading > skipping cyclic reference U+F029B in math variant U+F029B +fonts > otf loading > skipping cyclic reference U+F02A0 in math variant U+F02A0 +fonts > otf loading > skipping cyclic reference U+F02A2 in math variant U+F02A2 +fonts > otf loading > skipping cyclic reference U+F02A3 in math variant U+F02A3 +fonts > otf loading > skipping cyclic reference U+F02AA in math variant U+F02AA +fonts > otf loading > skipping cyclic reference U+F02A9 in math variant U+F02A9 +fonts > otf loading > skipping cyclic reference U+F02A5 in math variant U+F02A5 +fonts > otf loading > skipping cyclic reference U+F02A7 in math variant U+F02A7 +fonts > otf loading > skipping cyclic reference U+F02A6 in math variant U+F02A6 +fonts > otf loading > skipping cyclic reference U+F02A8 in math variant U+F02A8 +fonts > otf loading > skipping cyclic reference U+F02A4 in math variant U+F02A4 +fonts > otf loading > skipping cyclic reference U+F02AB in math variant U+F02AB +fonts > otf loading > skipping cyclic reference U+F02A1 in math variant U+F02A1 +fonts > otf loading > skipping cyclic reference U+F02AC in math variant U+F02AC +fonts > otf loading > skipping cyclic reference U+F02AD in math variant U+F02AD +fonts > otf loading > skipping cyclic reference U+F02AF in math variant U+F02AF +fonts > otf loading > skipping cyclic reference U+F02B0 in math variant U+F02B0 +fonts > otf loading > skipping cyclic reference U+02A17 in math variant U+02A17 +fonts > otf loading > skipping cyclic reference U+029F8 in math variant U+029F8 +fonts > otf loading > skipping cyclic reference U+02A18 in math variant U+02A18 +fonts > otf loading > skipping cyclic reference U+029F9 in math variant U+029F9 +fonts > otf loading > skipping cyclic reference U+02A19 in math variant U+02A19 +fonts > otf loading > skipping cyclic reference U+0221A in math variant U+0221A +fonts > otf loading > skipping cyclic reference U+02A1A in math variant U+02A1A +fonts > otf loading > skipping cyclic reference U+0221B in math variant U+0221B +fonts > otf loading > skipping cyclic reference U+02A1B in math variant U+02A1B +fonts > otf loading > skipping cyclic reference U+0221C in math variant U+0221C +fonts > otf loading > skipping cyclic reference U+023DC in math variant U+023DC +fonts > otf loading > skipping cyclic reference U+02A1C in math variant U+02A1C +fonts > otf loading > skipping cyclic reference U+02AFC in math variant U+02AFC +fonts > otf loading > skipping cyclic reference U+023DD in math variant U+023DD +fonts > otf loading > skipping cyclic reference U+02A00 in math variant U+02A00 +fonts > otf loading > skipping cyclic reference U+0203E in math variant U+0203E +fonts > otf loading > skipping cyclic reference U+023DE in math variant U+023DE +fonts > otf loading > skipping cyclic reference U+023DF in math variant U+023DF +fonts > otf loading > skipping cyclic reference U+02AFF in math variant U+02AFF +fonts > otf loading > skipping cyclic reference U+02140 in math variant U+02140 +fonts > otf loading > skipping cyclic reference U+022C0 in math variant U+022C0 +fonts > otf loading > skipping cyclic reference U+023E0 in math variant U+023E0 +fonts > otf loading > skipping cyclic reference U+02980 in math variant U+02980 +fonts > otf loading > skipping cyclic reference U+023E1 in math variant U+023E1 +fonts > otf loading > skipping cyclic reference U+02A01 in math variant U+02A01 +fonts > otf loading > skipping cyclic reference U+022C2 in math variant U+022C2 +fonts > otf loading > skipping cyclic reference U+02A02 in math variant U+02A02 +fonts > otf loading > skipping cyclic reference U+022C3 in math variant U+022C3 +fonts > otf loading > skipping cyclic reference U+02983 in math variant U+02983 +fonts > otf loading > skipping cyclic reference U+02A03 in math variant U+02A03 +fonts > otf loading > skipping cyclic reference U+02044 in math variant U+02044 +fonts > otf loading > skipping cyclic reference U+02984 in math variant U+02984 +fonts > otf loading > skipping cyclic reference U+02A04 in math variant U+02A04 +fonts > otf loading > skipping cyclic reference U+020D1 in math variant U+020D1 +fonts > otf loading > skipping cyclic reference U+020E1 in math variant U+020E1 +fonts > otf loading > skipping cyclic reference U+02231 in math variant U+02231 +fonts > otf loading > skipping cyclic reference U+022C1 in math variant U+022C1 +fonts > otf loading > skipping cyclic reference U+02985 in math variant U+02985 +fonts > otf loading > skipping cyclic reference U+02A05 in math variant U+02A05 +fonts > otf loading > skipping cyclic reference U+00607 in math variant U+00607 +fonts > otf loading > skipping cyclic reference U+0230A in math variant U+0230A +fonts > otf loading > saving 'c:/data/develop/tex-context/tex/texmf/fonts/opentype/public/xits/xits-math.otf' in cache +system > lua > compiling 'c:/data/develop/tex-context/tex/texmf-cache/luatex-cache/context/764bd4e1ce0f004ab3cec90018f8b80a/fonts/otf/xits-math.tma' into 'c:/data/develop/tex-context/tex/texmf-cache/luatex-cache/context/764bd4e1ce0f004ab3cec90018f8b80a/fonts/otf/xits-math.tmc' +system > lua > dumping 'c:/data/develop/tex-context/tex/texmf-cache/luatex-cache/context/764bd4e1ce0f004ab3cec90018f8b80a/fonts/otf/xits-math.tma' into 'c:/data/develop/tex-context/tex/texmf-cache/luatex-cache/context/764bd4e1ce0f004ab3cec90018f8b80a/fonts/otf/xits-math.tmc' stripped +fonts > otf loading > preprocessing and caching time 0.317, packtime 0.030 +fonts > otf loading > loading 'c:/data/develop/tex-context/tex/texmf/fonts/opentype/public/xits/xits-mathbold.otf', hash 'xits-mathbold' +fonts > otf loading > loading done +fonts > otf loading > file size: 248944 +fonts > otf loading > skipping cyclic reference U+00028 in math variant U+00028 +fonts > otf loading > skipping cyclic reference U+00029 in math variant U+00029 +fonts > otf loading > skipping cyclic reference U+0002F in math variant U+0002F +fonts > otf loading > skipping cyclic reference U+0005B in math variant U+0005B +fonts > otf loading > skipping cyclic reference U+0005C in math variant U+0005C +fonts > otf loading > skipping cyclic reference U+0005D in math variant U+0005D +fonts > otf loading > skipping cyclic reference U+0007B in math variant U+0007B +fonts > otf loading > skipping cyclic reference U+0007D in math variant U+0007D +fonts > otf loading > skipping cyclic reference U+02A0C in math variant U+02A0C +fonts > otf loading > skipping cyclic reference U+0222D in math variant U+0222D +fonts > otf loading > skipping cyclic reference U+0222E in math variant U+0222E +fonts > otf loading > skipping cyclic reference U+02A0E in math variant U+02A0E +fonts > otf loading > skipping cyclic reference U+0222F in math variant U+0222F +fonts > otf loading > skipping cyclic reference U+02140 in math variant U+02140 +fonts > otf loading > skipping cyclic reference U+02A0F in math variant U+02A0F +fonts > otf loading > skipping cyclic reference U+02230 in math variant U+02230 +fonts > otf loading > skipping cyclic reference U+02A10 in math variant U+02A10 +fonts > otf loading > skipping cyclic reference U+02A11 in math variant U+02A11 +fonts > otf loading > skipping cyclic reference U+02233 in math variant U+02233 +fonts > otf loading > skipping cyclic reference U+02A1A in math variant U+02A1A +fonts > otf loading > skipping cyclic reference U+02A0D in math variant U+02A0D +fonts > otf loading > skipping cyclic reference U+0222B in math variant U+0222B +fonts > otf loading > skipping cyclic reference U+02A13 in math variant U+02A13 +fonts > otf loading > skipping cyclic reference U+02A15 in math variant U+02A15 +fonts > otf loading > skipping cyclic reference U+02A16 in math variant U+02A16 +fonts > otf loading > skipping cyclic reference U+0220F in math variant U+0220F +fonts > otf loading > skipping cyclic reference U+02A17 in math variant U+02A17 +fonts > otf loading > skipping cyclic reference U+02231 in math variant U+02231 +fonts > otf loading > skipping cyclic reference U+02A19 in math variant U+02A19 +fonts > otf loading > skipping cyclic reference U+02210 in math variant U+02210 +fonts > otf loading > skipping cyclic reference U+02A18 in math variant U+02A18 +fonts > otf loading > skipping cyclic reference U+02211 in math variant U+02211 +fonts > otf loading > skipping cyclic reference U+02232 in math variant U+02232 +fonts > otf loading > skipping cyclic reference U+02A1B in math variant U+02A1B +fonts > otf loading > skipping cyclic reference U+0222C in math variant U+0222C +fonts > otf loading > skipping cyclic reference U+02A1C in math variant U+02A1C +fonts > otf loading > skipping cyclic reference U+02A14 in math variant U+02A14 +fonts > otf loading > skipping cyclic reference U+02A12 in math variant U+02A12 +fonts > otf loading > skipping cyclic reference U+02A0B in math variant U+02A0B +fonts > otf loading > saving 'c:/data/develop/tex-context/tex/texmf/fonts/opentype/public/xits/xits-mathbold.otf' in cache +system > lua > compiling 'c:/data/develop/tex-context/tex/texmf-cache/luatex-cache/context/764bd4e1ce0f004ab3cec90018f8b80a/fonts/otf/xits-mathbold.tma' into 'c:/data/develop/tex-context/tex/texmf-cache/luatex-cache/context/764bd4e1ce0f004ab3cec90018f8b80a/fonts/otf/xits-mathbold.tmc' +system > lua > dumping 'c:/data/develop/tex-context/tex/texmf-cache/luatex-cache/context/764bd4e1ce0f004ab3cec90018f8b80a/fonts/otf/xits-mathbold.tma' into 'c:/data/develop/tex-context/tex/texmf-cache/luatex-cache/context/764bd4e1ce0f004ab3cec90018f8b80a/fonts/otf/xits-mathbold.tmc' stripped +fonts > otf loading > preprocessing and caching time 0.190, packtime 0.018 +fonts > otf loading > loading 'c:/data/develop/tex-context/tex/texmf/fonts/truetype/public/dejavu/DejaVuSansMono.ttf', hash 'dejavusansmono' +fonts > otf loading > loading done +fonts > otf loading > file size: 333636 +fonts > otf loading > saving 'c:/data/develop/tex-context/tex/texmf/fonts/truetype/public/dejavu/DejaVuSansMono.ttf' in cache +system > lua > compiling 'c:/data/develop/tex-context/tex/texmf-cache/luatex-cache/context/764bd4e1ce0f004ab3cec90018f8b80a/fonts/otf/dejavusansmono.tma' into 'c:/data/develop/tex-context/tex/texmf-cache/luatex-cache/context/764bd4e1ce0f004ab3cec90018f8b80a/fonts/otf/dejavusansmono.tmc' +system > lua > dumping 'c:/data/develop/tex-context/tex/texmf-cache/luatex-cache/context/764bd4e1ce0f004ab3cec90018f8b80a/fonts/otf/dejavusansmono.tma' into 'c:/data/develop/tex-context/tex/texmf-cache/luatex-cache/context/764bd4e1ce0f004ab3cec90018f8b80a/fonts/otf/dejavusansmono.tmc' stripped +fonts > otf loading > preprocessing and caching time 0.220, packtime 0.032 +{c:/data/develop/tex-context/tex/texmf-context/fonts/map/pdftex/context/mkiv-base.map} +fonts > otf loading > loading 'c:/data/develop/tex-context/tex/texmf/fonts/truetype/public/dejavu/DejaVuSansMono-Bold.ttf', hash 'dejavusansmono-bold' +fonts > otf loading > loading done +fonts > otf loading > file size: 313856 +fonts > otf loading > saving 'c:/data/develop/tex-context/tex/texmf/fonts/truetype/public/dejavu/DejaVuSansMono-Bold.ttf' in cache +system > lua > compiling 'c:/data/develop/tex-context/tex/texmf-cache/luatex-cache/context/764bd4e1ce0f004ab3cec90018f8b80a/fonts/otf/dejavusansmono-bold.tma' into 'c:/data/develop/tex-context/tex/texmf-cache/luatex-cache/context/764bd4e1ce0f004ab3cec90018f8b80a/fonts/otf/dejavusansmono-bold.tmc' +system > lua > dumping 'c:/data/develop/tex-context/tex/texmf-cache/luatex-cache/context/764bd4e1ce0f004ab3cec90018f8b80a/fonts/otf/dejavusansmono-bold.tma' into 'c:/data/develop/tex-context/tex/texmf-cache/luatex-cache/context/764bd4e1ce0f004ab3cec90018f8b80a/fonts/otf/dejavusansmono-bold.tmc' stripped +fonts > otf loading > preprocessing and caching time 0.176, packtime 0.026 +(virtual://buffer.noname.1 references > unknown reference '[][]' references > unknown reference '[][attributes]' references > unknown reference '[][backends]' @@ -51,28 +270,4 @@ references > unknown reference '[][fontloader]' references > unknown reference '[][fonts]' references > unknown reference '[][functions]' references > unknown reference '[][graphics]' -references > unknown reference '[][gzip]' -references > unknown reference '[][img]' -references > unknown reference '[][interactions]' -references > unknown reference '[][interfaces]' -references > unknown reference '[][io]' -references > unknown reference '[][job]' -references > unknown reference '[][lang]' -references > unknown reference '[][languages]' -references > unknown reference '[][layouts]' -references > unknown reference '[][lfs]' -references > unknown reference '[][libraries]' -references > unknown reference '[][lmx]' -references > unknown reference '[][logs]' -references > unknown reference '[][lpdf]' -references > unknown reference '[][lpeg]' -references > unknown reference '[][ltn12]' -references > unknown reference '[][lua]' -references > unknown reference '[][luatex]' -references > unknown reference '[][lxml]' -references > unknown reference '[][math]' -references > unknown reference '[][mathematics]' -references > unknown reference '[][mbox]' -references > unknown reference '[][md5]' -references > unknown reference '[][metapost]' -references > unknown reference '[][mime]' \ No newline at end of file +references > unknown r \ No newline at end of file diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua index 2b69ce233..0db62fe58 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/19/13 18:57:55 +-- merge date : 07/19/13 23:54:06 do -- begin closure to overcome local limits and interference @@ -4880,33 +4880,38 @@ function mappings.addtounicode(data,filename) if not unicode or unicode=="" then local split=lpegmatch(namesplitter,name) local nsplit=split and #split or 0 - if nsplit>=2 then - local t,n={},0 - for l=1,nsplit do - local base=split[l] - local u=unicodes[base] or unicodevector[base] - if not u then + local t,n={},0 + unicode=true + for l=1,nsplit do + local base=split[l] + local u=unicodes[base] or unicodevector[base] + if not u then + break + elseif type(u)=="table" then + if u[1]>=private then + unicode=false break - elseif type(u)=="table" then - n=n+1 - t[n]=u[1] - else - n=n+1 - t[n]=u end - end - if n==0 then - elseif n==1 then - originals[index]=t[1] - tounicode[index]=tounicode16(t[1],name) + n=n+1 + t[n]=u[1] else - originals[index]=t - tounicode[index]=tounicode16sequence(t) + if u>=private then + unicode=false + break + end + n=n+1 + t[n]=u end - nl=nl+1 - unicode=true + end + if n==0 then + elseif n==1 then + originals[index]=t[1] + tounicode[index]=tounicode16(t[1],name) else + originals[index]=t + tounicode[index]=tounicode16sequence(t) end + nl=nl+1 end if not unicode or unicode=="" then local foundcodes,multiple=lpegmatch(uparser,name) -- cgit v1.2.3