From d2612a28604c479c3040cbe590f9ac8ba1a0f767 Mon Sep 17 00:00:00 2001 From: Marius Date: Fri, 7 Oct 2011 21:40:14 +0300 Subject: beta 2011.10.07 20:33 --- tex/context/base/back-ini.mkiv | 15 +++--- tex/context/base/back-pdf.mkiv | 60 +++++++++++++++------ tex/context/base/cont-new.mkii | 2 +- tex/context/base/cont-new.mkiv | 2 +- tex/context/base/context-version.pdf | Bin 4096 -> 4101 bytes tex/context/base/context-version.png | Bin 105871 -> 106134 bytes tex/context/base/context.mkii | 2 +- tex/context/base/context.mkiv | 2 +- tex/context/base/m-flow.lua | 11 ++-- tex/context/base/mlib-pps.mkiv | 12 +++-- tex/context/base/s-fnt-31.mkiv | 5 +- tex/context/base/s-mat-10.mkiv | 2 +- tex/context/base/s-mat-12.mkiv | 4 +- tex/context/base/status-files.pdf | Bin 23935 -> 23934 bytes tex/context/base/status-lua.pdf | Bin 163154 -> 163150 bytes tex/context/base/type-otf.mkiv | 44 +++++++-------- tex/generic/context/luatex/luatex-fonts-merged.lua | 2 +- 17 files changed, 96 insertions(+), 67 deletions(-) (limited to 'tex') diff --git a/tex/context/base/back-ini.mkiv b/tex/context/base/back-ini.mkiv index 518057a8f..f2301b7a3 100644 --- a/tex/context/base/back-ini.mkiv +++ b/tex/context/base/back-ini.mkiv @@ -50,12 +50,15 @@ %D Not everything here makes sense and the content of this file will %D definitely change. -\let \dostartrotation \gobbleoneargument -\let \dostoprotation \donothing -\let \dostartscaling \gobbletwoarguments -\let \dostopscaling \donothing -\let \dostartmirroring \donothing -\let \dostopmirroring \donothing +\newcount\backendtransformlevel + +\let \dostartrotation \gobbleoneargument +\let \dostoprotation \donothing +\let \dostartscaling \gobbletwoarguments +\let \dostopscaling \donothing +\let \dostartmirroring \donothing +\let \dostopmirroring \donothing +\let \dotransformnextbox\gobblesixarguments % and pass last box %D \macros %D {doovalbox} diff --git a/tex/context/base/back-pdf.mkiv b/tex/context/base/back-pdf.mkiv index db42a85dd..fd90f9213 100644 --- a/tex/context/base/back-pdf.mkiv +++ b/tex/context/base/back-pdf.mkiv @@ -138,41 +138,67 @@ % % \def\dostoprotation % {\pdfliteral{Q}} - +% % function lpdf.rotationcm(a) % local s, c = sind(a), cosd(a) % return format("%s %s %s %s 0 0 cm",c,s,-s,c) % end +% +% \def\dostartmirroring{\pdfliteral{-1 0 0 1 0 0 cm}} +% \def\dostopmirroring {\pdfliteral{-1 0 0 1 0 0 cm}} -% todo: inject at the lua end +% todo: inject at the lua end cq. deal with #5 and #6 too -\def\dostartrotation#1% grouped +\unexpanded\def\dostartrotation#1% grouped {\forcecolorhack % maybe use signal instead - \pdfsave \pdfsetmatrix - {\ctxcommand{pdfrotation(#1)}}} + \advance\backendtransformlevel\plusone + \pdfsave + \pdfsetmatrix{\ctxcommand{pdfrotation(#1)}}} -\def\dostoprotation - {\pdfrestore} +\unexpanded\def\dostoprotation + {\pdfrestore + \advance\backendtransformlevel\minusone} -\def\dostartscaling#1#2% the test is needed because acrobat is bugged! +\unexpanded\def\dostartscaling#1#2% the test is needed because acrobat is bugged! {\forcecolorhack % maybe use signal instead - \pdfsave \pdfsetmatrix + \advance\backendtransformlevel\plusone + \pdfsave + \pdfsetmatrix {\ifdim#1\points=\zeropoint.0001\else#1\fi\space 0 0 \ifdim#2\points=\zeropoint.0001\else#2\fi\space}}% 0 0 -\def\dostopscaling - {\pdfrestore} - -\def\dostartmirroring{\pdfliteral{-1 0 0 1 0 0 cm}} -\def\dostopmirroring {\pdfliteral{-1 0 0 1 0 0 cm}} - -\def\dostartclipping#1#2#3% todo (still needed?) (can move to lua) +\unexpanded\def\dostopscaling + {\pdfrestore + \advance\backendtransformlevel\minusone} + +\unexpanded\def\dostartmirroring + {\advance\backendtransformlevel\plusone + \pdfsave + \pdfsetmatrix{-1 0 0 1}} % 0 0 + +\unexpanded\def\dostopmirroring + {\pdfrestore + \advance\backendtransformlevel\minusone} + +\unexpanded\def\dotransformnextbox#1#2#3#4#5#6% sx rx ry sy tx ty (will change) / basepoints ! + {\advance\backendtransformlevel\plusone + \dowithnextbox % fixing ht/dp/wd should happen elsewhere + {\hbox + {\hskip#5\onebasepoint + \raise#6\onebasepoint\hbox + {\pdfsave + \pdfsetmatrix{#1 #2 #3 #4}% 0 0 (no #5 #6 yet) + \box\nextbox + \pdfrestore + \advance\backendtransformlevel\minusone}}}} + +\unexpanded\def\dostartclipping#1#2#3% todo (still needed?) (can move to lua) {\PointsToBigPoints{#2}\width \PointsToBigPoints{#3}\height \grabMPclippath{#1}{1}\width\height{0 0 m \width\space 0 l \width \height l 0 \height l}% \pdfliteral{q 0 w \MPclippath\space W n}} -\def\dostopclipping +\unexpanded\def\dostopclipping {\pdfliteral{Q n}} %D The following will move to the backend \LUA\ code: diff --git a/tex/context/base/cont-new.mkii b/tex/context/base/cont-new.mkii index dd28de9dc..39b14e656 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.07 00:40} +\newcontextversion{2011.10.07 20:33} %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 2184d8623..7821e0fb6 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.07 00:40} +\newcontextversion{2011.10.07 20:33} %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 5a88cfe5e..747a65d17 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-version.png b/tex/context/base/context-version.png index ba529163d..1284a49b9 100644 Binary files a/tex/context/base/context-version.png and b/tex/context/base/context-version.png differ diff --git a/tex/context/base/context.mkii b/tex/context/base/context.mkii index 91b1bedbd..75a201ba8 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.07 00:40} +\edef\contextversion{2011.10.07 20:33} %D For those who want to use this: diff --git a/tex/context/base/context.mkiv b/tex/context/base/context.mkiv index 7bcfbcdae..5d52c8648 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.07 00:40} +\edef\contextversion{2011.10.07 20:33} %D For those who want to use this: diff --git a/tex/context/base/m-flow.lua b/tex/context/base/m-flow.lua index 60598d9ce..9efa7a121 100644 --- a/tex/context/base/m-flow.lua +++ b/tex/context/base/m-flow.lua @@ -299,7 +299,7 @@ function commands.flow_set_location(str) -- handle include differently temp.x = x temp.y = y last_x = x - last_y = 0 + last_y = y end function commands.flow_set_connection(location,displacement,name) @@ -523,8 +523,7 @@ local function makechart(chart) context.switchtobodyfont { bodyfont } end -- - context.resetMPdrawing() - context.startMPdrawing() + context.startMPcode() context("if unknown context_flow : input mp-flow.mpiv ; fi ;") context("flow_begin_chart(0,%s,%s);",chart.nx,chart.ny) -- @@ -582,11 +581,7 @@ local function makechart(chart) process_texts(chart,0,0) -- context("clip_chart(%s,%s,%s,%s) ;",x,y,nx,ny) -- todo: draw lines but not shapes context("flow_end_chart ;") - context.stopMPdrawing() - context.MPdrawingdonetrue() -- brrr --- context.MPstaticgraphictrue() --- context.MPshiftdrawingfalse() - context.getMPdrawing() + context.stopMPcode() context.endgroup() end diff --git a/tex/context/base/mlib-pps.mkiv b/tex/context/base/mlib-pps.mkiv index b2afbc0da..884003e68 100644 --- a/tex/context/base/mlib-pps.mkiv +++ b/tex/context/base/mlib-pps.mkiv @@ -50,11 +50,13 @@ \def\MPLIBgettextscaledcm#1#2#3#4#5#6#7#8#9% 2-7: sx,rx,ry,sy,tx,ty {\ctxlua{metapost.gettext(\number\MPtextbox,#1)}% \setbox\scratchbox\hbox - {\hskip\dimexpr#6bp\raise#7bp\hbox - {\pdfsave - \pdfsetmatrix{#2 #3 #4 #5}% - \vbox to \zeropoint{\vss\hbox to \zeropoint{\scale[\c!sx=#8,\c!sy=#9]{\raise\dp\MPtextbox\box\MPtextbox}\forcecolorhack\hss}}% - \pdfrestore}}% + {\dotransformnextbox{#2}{#3}{#4}{#5}{#6}{#7}% does push pop + \vbox to \zeropoint + {\vss + \hbox to \zeropoint + {\scale[\c!sx=#8,\c!sy=#9]{\raise\dp\MPtextbox\box\MPtextbox}% + \forcecolorhack + \hss}}}% \smashbox\scratchbox \box\scratchbox} diff --git a/tex/context/base/s-fnt-31.mkiv b/tex/context/base/s-fnt-31.mkiv index 323d7c9a7..4ce3b42c0 100644 --- a/tex/context/base/s-fnt-31.mkiv +++ b/tex/context/base/s-fnt-31.mkiv @@ -167,11 +167,12 @@ end fonts.tracers.coverage { "cambria.ttc(Cambria Math)", "xits-math.otf", + "stixmath-regular.otf", "lmmath-regular", -- "LMMath10-Regular@lmroman10-math", -- "pxmath@px-math", - "lucida-math.otf", - "lucida-math-demi.otf", + -- "lucida-math.otf", + -- "lucida-math-demi.otf", -- "LinLibertine_Re-4.7.5.otf", } \stopluacode diff --git a/tex/context/base/s-mat-10.mkiv b/tex/context/base/s-mat-10.mkiv index 5fb020765..384371c18 100644 --- a/tex/context/base/s-mat-10.mkiv +++ b/tex/context/base/s-mat-10.mkiv @@ -73,7 +73,7 @@ local no_description = "no description, private to font" local limited = true local fillinthegaps = true -local upperlimit = 0x000FF +local upperlimit = 0x0007F local upperlimit = 0xF0000 function document.showmathfont(id,slot) diff --git a/tex/context/base/s-mat-12.mkiv b/tex/context/base/s-mat-12.mkiv index 2b023ff29..632162b5d 100644 --- a/tex/context/base/s-mat-12.mkiv +++ b/tex/context/base/s-mat-12.mkiv @@ -207,7 +207,9 @@ \mathfontlistmth{10}{#1}% \endgroup \vfilll - \strut\textcolor\mathfontlisttxt{#2}}% + \doifmodeelse{crosslink} + {\goto{\strut\textcolor\mathfontlisttxt{#2}}[#2::#1]}% + {\strut\textcolor\mathfontlisttxt{#2}}}% \hskip1ex} \def\setmathfontlistbodyfonts#1% diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf index aa14184b0..c8503b56f 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.pdf b/tex/context/base/status-lua.pdf index f9a664b66..7273222b3 100644 Binary files a/tex/context/base/status-lua.pdf and b/tex/context/base/status-lua.pdf differ diff --git a/tex/context/base/type-otf.mkiv b/tex/context/base/type-otf.mkiv index c01a0f5c7..621cd1bea 100644 --- a/tex/context/base/type-otf.mkiv +++ b/tex/context/base/type-otf.mkiv @@ -1846,8 +1846,8 @@ \stoptypescriptcollection -% \starttypescriptcollection[stix] -% +\starttypescriptcollection[stix] + % % This typescript is only provided to keep an eye on developments of this font % % but currenty these are not proper opentype math fonts (for instance they have % % no math table yet). We will not make a virtual font for this as eventually @@ -1855,26 +1855,26 @@ % % to be ttf files as well. BTW, why 'italic' infull and 'bol' without 'd'? % % % As xits keeps evolving and also is bidirectional, it makes no sense to keep -% % stix support around. -% -% \starttypescript [math] [stix] [name] -% \definefontsynonym[MathRoman][\s!file:stixgeneral.otf] [\s!features=\s!math] -% \stoptypescript -% -% \starttypescript [serif] [stix] [name] -% \setups[\s!font:\s!fallback:\s!serif] -% \definefontsynonym[\s!Serif] [\s!file:stixgeneral.otf] [\s!features=\s!default] -% \definefontsynonym[\s!SerifBold] [\s!file:stixgeneralbol.otf] [\s!features=\s!default] -% \definefontsynonym[\s!SerifItalic] [\s!file:stixgeneralitalic.otf] [\s!features=\s!default] -% \definefontsynonym[\s!SerifBoldItalic][\s!file:stixgeneralbolita.otf] [\s!features=\s!default] -% \stoptypescript -% -% \starttypescript[stix] -% \definetypeface [stix] [rm] [\s!serif] [stix] [\s!default] -% \definetypeface [stix] [mm] [\s!math] [stix] [\s!default] -% \stoptypescript -% -% \stoptypescriptcollection +% % stix support around. It might disappear. So, just for testing: + + \starttypescript [math] [stix] [name] + \definefontsynonym[MathRoman][\s!file:stixgeneral.otf] [\s!features=\s!math] + \stoptypescript + + \starttypescript [serif] [stix] [name] + \setups[\s!font:\s!fallback:\s!serif] + \definefontsynonym[\s!Serif] [\s!file:stix-regular.otf] [\s!features=\s!default] + \definefontsynonym[\s!SerifBold] [\s!file:stix-bold.otf] [\s!features=\s!default] + \definefontsynonym[\s!SerifItalic] [\s!file:stix-italic.otf] [\s!features=\s!default] + \definefontsynonym[\s!SerifBoldItalic][\s!file:stix-bolditalic.otf][\s!features=\s!default] + \stoptypescript + + \starttypescript[stix] + \definetypeface [stix] [rm] [\s!serif] [stix] [\s!default] + \definetypeface [stix] [mm] [\s!math] [stix] [\s!default] + \stoptypescript + +\stoptypescriptcollection % This one makes more sense. Xits uses the glyph collection from stix but packages % it in a proper OpenType Math font. From the Stix site: Version 1.1, which will diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua index 5b610c906..4b4fbd2dd 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/07/11 00:40:15 +-- merge date : 10/07/11 20:33:57 do -- begin closure to overcome local limits and interference -- cgit v1.2.3