diff options
31 files changed, 65 insertions, 36 deletions
diff --git a/tex/context/base/cont-new.mkii b/tex/context/base/cont-new.mkii index 35f5d420c..141f6d85f 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{2012.07.18 10:29} +\newcontextversion{2012.07.18 14:11} %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 0b8fa0677..c670b08fb 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{2012.07.18 10:29} +\newcontextversion{2012.07.18 14:11} %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 Binary files differindex 56217d7b6..a57dcfe16 100644 --- a/tex/context/base/context-version.pdf +++ b/tex/context/base/context-version.pdf diff --git a/tex/context/base/context-version.png b/tex/context/base/context-version.png Binary files differindex f7b3dd753..f0cf5684b 100644 --- a/tex/context/base/context-version.png +++ b/tex/context/base/context-version.png diff --git a/tex/context/base/context.mkii b/tex/context/base/context.mkii index ded3254c7..c5605cebc 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{2012.07.18 10:29} +\edef\contextversion{2012.07.18 14:11} %D For those who want to use this: diff --git a/tex/context/base/context.mkiv b/tex/context/base/context.mkiv index e7a005517..2029b6e75 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{2012.07.18 10:29} +\edef\contextversion{2012.07.18 14:11} %D For those who want to use this: diff --git a/tex/context/base/enco-ini.mkiv b/tex/context/base/enco-ini.mkiv index aca70f0c0..6e4e1a479 100644 --- a/tex/context/base/enco-ini.mkiv +++ b/tex/context/base/enco-ini.mkiv @@ -50,18 +50,23 @@ \enco_define_accent{#1}{#2}{#3}} \unexpanded\def\enco_define_accent_command#1% - {\setevalue{\string#1}{\enco_handle_accent{\string#1}}} + {\setevalue{\string#1}{\noexpand\enco_handle_accent{\string#1}}} \unexpanded\def\enco_define_accent#1#2#3% no spaces, used low level {\setvalue{\??accents\string#1\string#2\empty}{#3}} -\unexpanded\def\enco_handle_accent#1#2% - {\ifcsname\??accents\string#1#2\empty\endcsname - \csname\??accents\string#1#2\empty\endcsname - \else\ifcsname\??accents\string#1\string#2\empty\endcsname - \csname\??accents\string#1\string#2\empty\endcsname - \fi\fi} - +\def\enco_handle_accent#1#2% expandable because we want them in the tuc file + {\csname\??accents + \ifcsname\??accents\string#1#2\empty\endcsname + \string#1#2\empty + \else\ifcsname\??accents\string#1\string#2\empty\endcsname + \string#1\string#2\empty + \else + \empty + \fi\fi + \endcsname} + +\let\dohandleaccent \enco_handle_accent % maybe useful \let\dodefineaccent \enco_define_accent % used at the lua end \let\dodefineaccentcommand\enco_define_accent_command % used at the lua end diff --git a/tex/context/base/mult-de.mkii b/tex/context/base/mult-de.mkii index 7ed54524b..ce34b6a5b 100644 --- a/tex/context/base/mult-de.mkii +++ b/tex/context/base/mult-de.mkii @@ -968,6 +968,7 @@ \setinterfaceconstant{separator}{seperator} \setinterfaceconstant{set}{set} \setinterfaceconstant{setups}{setups} +\setinterfaceconstant{shrink}{shrink} \setinterfaceconstant{side}{objektabstand} \setinterfaceconstant{sidealign}{sidealign} \setinterfaceconstant{sidemethod}{sidemethod} diff --git a/tex/context/base/mult-def.lua b/tex/context/base/mult-def.lua index b67ddaf9b..4f402e6fb 100644 --- a/tex/context/base/mult-def.lua +++ b/tex/context/base/mult-def.lua @@ -10055,6 +10055,10 @@ return { ["pe"]="بارگذاریها", ["ro"]="setups", }, + ["shrink"]={ + ["en"]="shrink", + ["nl"]="krimp", + }, ["side"]={ ["cs"]="pocitat", ["de"]="objektabstand", diff --git a/tex/context/base/mult-en.mkii b/tex/context/base/mult-en.mkii index 9ea02f924..860060247 100644 --- a/tex/context/base/mult-en.mkii +++ b/tex/context/base/mult-en.mkii @@ -968,6 +968,7 @@ \setinterfaceconstant{separator}{separator} \setinterfaceconstant{set}{set} \setinterfaceconstant{setups}{setups} +\setinterfaceconstant{shrink}{shrink} \setinterfaceconstant{side}{side} \setinterfaceconstant{sidealign}{sidealign} \setinterfaceconstant{sidemethod}{sidemethod} diff --git a/tex/context/base/mult-fr.mkii b/tex/context/base/mult-fr.mkii index 017ac5fd2..f52a761d2 100644 --- a/tex/context/base/mult-fr.mkii +++ b/tex/context/base/mult-fr.mkii @@ -968,6 +968,7 @@ \setinterfaceconstant{separator}{separateur} \setinterfaceconstant{set}{set} \setinterfaceconstant{setups}{reglages} +\setinterfaceconstant{shrink}{shrink} \setinterfaceconstant{side}{cote} \setinterfaceconstant{sidealign}{sidealign} \setinterfaceconstant{sidemethod}{sidemethod} diff --git a/tex/context/base/mult-it.mkii b/tex/context/base/mult-it.mkii index 235280e60..b91e3ee5b 100644 --- a/tex/context/base/mult-it.mkii +++ b/tex/context/base/mult-it.mkii @@ -968,6 +968,7 @@ \setinterfaceconstant{separator}{separatore} \setinterfaceconstant{set}{set} \setinterfaceconstant{setups}{setups} +\setinterfaceconstant{shrink}{shrink} \setinterfaceconstant{side}{lato} \setinterfaceconstant{sidealign}{sidealign} \setinterfaceconstant{sidemethod}{sidemethod} diff --git a/tex/context/base/mult-nl.mkii b/tex/context/base/mult-nl.mkii index 1315ac931..dbce41d85 100644 --- a/tex/context/base/mult-nl.mkii +++ b/tex/context/base/mult-nl.mkii @@ -968,6 +968,7 @@ \setinterfaceconstant{separator}{scheider} \setinterfaceconstant{set}{set} \setinterfaceconstant{setups}{setups} +\setinterfaceconstant{shrink}{krimp} \setinterfaceconstant{side}{zij} \setinterfaceconstant{sidealign}{zijuitlijnen} \setinterfaceconstant{sidemethod}{zijmethode} diff --git a/tex/context/base/mult-pe.mkii b/tex/context/base/mult-pe.mkii index 965a95a8b..58d3ff527 100644 --- a/tex/context/base/mult-pe.mkii +++ b/tex/context/base/mult-pe.mkii @@ -968,6 +968,7 @@ \setinterfaceconstant{separator}{جداکننده} \setinterfaceconstant{set}{قراربده} \setinterfaceconstant{setups}{بارگذاریها} +\setinterfaceconstant{shrink}{shrink} \setinterfaceconstant{side}{کنار} \setinterfaceconstant{sidealign}{تنظیمکنار} \setinterfaceconstant{sidemethod}{روشکنار} diff --git a/tex/context/base/mult-ro.mkii b/tex/context/base/mult-ro.mkii index 2468a4251..adc811188 100644 --- a/tex/context/base/mult-ro.mkii +++ b/tex/context/base/mult-ro.mkii @@ -968,6 +968,7 @@ \setinterfaceconstant{separator}{separator} \setinterfaceconstant{set}{set} \setinterfaceconstant{setups}{setups} +\setinterfaceconstant{shrink}{shrink} \setinterfaceconstant{side}{parte} \setinterfaceconstant{sidealign}{sidealign} \setinterfaceconstant{sidemethod}{sidemethod} diff --git a/tex/context/base/page-mix.lua b/tex/context/base/page-mix.lua index 6b7f88830..55b00e68f 100644 --- a/tex/context/base/page-mix.lua +++ b/tex/context/base/page-mix.lua @@ -67,9 +67,7 @@ local forcedbreak = -123 -- (1) full page columns: firstcolumn, columns, lastcolumn, page -- (2) mid page columns : firstcolumn, columns, lastcolumn, page -- --- We need to collect: --- --- +-- We need to collect them accordingly. local function collectinserts(result,nxt,nxtid) local inserts, currentskips, nextskips, inserttotal = { }, 0, 0, 0 @@ -77,6 +75,7 @@ local function collectinserts(result,nxt,nxtid) if nxtid == insert_code then inserttotal = inserttotal + nxt.height + nxt.depth local s = nxt.subtype +-- print(">>>",structures.inserts.getlocation(s)) local c = inserts[s] if not c then c = { } diff --git a/tex/context/base/page-par.mkiv b/tex/context/base/page-par.mkiv index 868cdec51..588065d65 100644 --- a/tex/context/base/page-par.mkiv +++ b/tex/context/base/page-par.mkiv @@ -68,6 +68,6 @@ %\c!location, %\c!style=, %\c!color=, - \c!distance=\ifcase\linenumberlocation2\emwidth\else\zeropoint\fi] % will change + \c!distance=\ifcase\c_page_lines_location2\emwidth\else\zeropoint\fi] % will change \protect \endinput diff --git a/tex/context/base/spac-def.mkiv b/tex/context/base/spac-def.mkiv index 0e2333045..312483cfa 100644 --- a/tex/context/base/spac-def.mkiv +++ b/tex/context/base/spac-def.mkiv @@ -62,7 +62,8 @@ \c!bottom=0.4, \c!distance=\onepoint, \c!line=2.8\exheight, - \c!stretch=\zerocount] + \c!stretch=\zerocount, + \c!shrink=\zerocount] \setupblank [\v!big] diff --git a/tex/context/base/spac-ver.mkiv b/tex/context/base/spac-ver.mkiv index 5737fc201..68bbe81b0 100644 --- a/tex/context/base/spac-ver.mkiv +++ b/tex/context/base/spac-ver.mkiv @@ -91,15 +91,16 @@ \spac_linespacing_setup_specified_interline_space} \def\spac_linespacing_setup_specified_interline_space - {\edef\strutheightfactor {\interlinespaceparameter\c!height }% - \edef\strutdepthfactor {\interlinespaceparameter\c!depth }% - \edef\minimumstrutheight {\interlinespaceparameter\c!minheight}% - \edef\minimumstrutdepth {\interlinespaceparameter\c!mindepth }% - \edef\minimumlinedistance{\interlinespaceparameter\c!distance }% - \edef\normallineheight {\interlinespaceparameter\c!line }% - \edef\topskipfactor {\interlinespaceparameter\c!top }% - \edef\maxdepthfactor {\interlinespaceparameter\c!bottom }% - \edef\baselinegluefactor {\interlinespaceparameter\c!stretch }% + {\edef\strutheightfactor {\interlinespaceparameter\c!height }% + \edef\strutdepthfactor {\interlinespaceparameter\c!depth }% + \edef\minimumstrutheight {\interlinespaceparameter\c!minheight}% + \edef\minimumstrutdepth {\interlinespaceparameter\c!mindepth }% + \edef\minimumlinedistance {\interlinespaceparameter\c!distance }% + \edef\normallineheight {\interlinespaceparameter\c!line }% + \edef\topskipfactor {\interlinespaceparameter\c!top }% + \edef\maxdepthfactor {\interlinespaceparameter\c!bottom }% + \edef\m_spac_vertical_baseline_stretch_factor{\interlinespaceparameter\c!stretch }% + \edef\m_spac_vertical_baseline_shrink_factor {\interlinespaceparameter\c!shrink }% % often topskip does more bad than good, so: \ifx\topskipfactor\v!height \let\topskipfactor\strutheightfactor @@ -631,6 +632,8 @@ % niet bepaald mooi. Een hele kleine waarde (0.025) voldoet, % omdat een positieve glue eindeloos rekbaar is. +% more of the next will become private: + \newdimen\strutdimen \newdimen\lineheight \newdimen\openlineheight @@ -643,12 +646,14 @@ \def\strutdepthfactor {.28} \def\baselinefactor {2.8} -\def\baselinegluefactor {0} + +\let\m_spac_vertical_baseline_stretch_factor \zerocount +\let\m_spac_vertical_baseline_shrink_factor \zerocount \def\minimumstrutheight {\zeropoint} \def\minimumstrutdepth {\zeropoint} -\def\normallineheight {\baselinefactor ex} +\def\normallineheight {\baselinefactor\exheight} \def\minimumlinedistance {\lineskip} \def\strutheight {\zeropoint} @@ -735,8 +740,8 @@ \fi \normalbaselineskip\openlineheight \ifgridsnapping\else - \!!plus \baselinegluefactor\openlineheight - \!!minus\baselinegluefactor\openlineheight + \!!plus \m_spac_vertical_baseline_stretch_factor\openlineheight + \!!minus\m_spac_vertical_baseline_shrink_factor \openlineheight \fi \normallineskip\minimumlinedistance\relax % \onepoint\relax \normallineskiplimit\zeropoint\relax diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf Binary files differindex a1f9c98a0..75b251198 100644 --- a/tex/context/base/status-files.pdf +++ b/tex/context/base/status-files.pdf diff --git a/tex/context/base/status-lua.pdf b/tex/context/base/status-lua.pdf Binary files differindex 00593e152..9d54ad55f 100644 --- a/tex/context/base/status-lua.pdf +++ b/tex/context/base/status-lua.pdf diff --git a/tex/context/base/tabl-tab.mkiv b/tex/context/base/tabl-tab.mkiv index 5e19a5683..b2cffbd4a 100644 --- a/tex/context/base/tabl-tab.mkiv +++ b/tex/context/base/tabl-tab.mkiv @@ -1345,10 +1345,10 @@ \fi \fi \ifx\p_tabl_table_split\v!yes - \unexpanded\def\stoptable{\stoptables\egroup}% + \def\stoptable{\dostoptables\egroup}% not \unexpanded as we look ahead \expandafter\starttables \else\ifx\p_tabl_table_split\v!repeat - \unexpanded\def\stoptable{\stoptables\egroup}% + \def\stoptable{\dostoptables\egroup}% not \unexpanded as we look ahead \doubleexpandafter\starttables \else \ifx\p_tabl_table_frame\empty @@ -1591,7 +1591,7 @@ \let\stoptables\relax % needed for \noalign -\def\dostoptables +\def\dostoptables % not \unexpanded as we need the lookahead (brrr) {\dochucktableautorow % AM: before the tail, else noalign problem \ifconditional\tablerepeattail\else\doinserttabletail\fi \dofinishtable @@ -2020,9 +2020,9 @@ {\dochucktableautorow \dofinishtablerow \starttablenoalign - \dosingleempty\dotableTB} + \dosingleempty\dodotableTB} -\def\dotableTB[#1]% +\def\dodotableTB[#1]% {\blank[\iffirstargument#1\else\directtablesparameter\c!NL\fi]% \nobreak \stoptablenoalign} diff --git a/tex/context/interface/keys-cs.xml b/tex/context/interface/keys-cs.xml index 3a1e12ed3..0fe7f4b4d 100644 --- a/tex/context/interface/keys-cs.xml +++ b/tex/context/interface/keys-cs.xml @@ -974,6 +974,7 @@ <cd:constant name='separator' value='oddelovac'/> <cd:constant name='set' value='set'/> <cd:constant name='setups' value='setups'/> + <cd:constant name='shrink' value='shrink'/> <cd:constant name='side' value='pocitat'/> <cd:constant name='sidealign' value='sidealign'/> <cd:constant name='sidemethod' value='sidemethod'/> diff --git a/tex/context/interface/keys-de.xml b/tex/context/interface/keys-de.xml index a19679f49..c14f7c526 100644 --- a/tex/context/interface/keys-de.xml +++ b/tex/context/interface/keys-de.xml @@ -974,6 +974,7 @@ <cd:constant name='separator' value='seperator'/> <cd:constant name='set' value='set'/> <cd:constant name='setups' value='setups'/> + <cd:constant name='shrink' value='shrink'/> <cd:constant name='side' value='objektabstand'/> <cd:constant name='sidealign' value='sidealign'/> <cd:constant name='sidemethod' value='sidemethod'/> diff --git a/tex/context/interface/keys-en.xml b/tex/context/interface/keys-en.xml index 264e9086a..d981143b0 100644 --- a/tex/context/interface/keys-en.xml +++ b/tex/context/interface/keys-en.xml @@ -974,6 +974,7 @@ <cd:constant name='separator' value='separator'/> <cd:constant name='set' value='set'/> <cd:constant name='setups' value='setups'/> + <cd:constant name='shrink' value='shrink'/> <cd:constant name='side' value='side'/> <cd:constant name='sidealign' value='sidealign'/> <cd:constant name='sidemethod' value='sidemethod'/> diff --git a/tex/context/interface/keys-fr.xml b/tex/context/interface/keys-fr.xml index bd1215a05..3d25240bf 100644 --- a/tex/context/interface/keys-fr.xml +++ b/tex/context/interface/keys-fr.xml @@ -974,6 +974,7 @@ <cd:constant name='separator' value='separateur'/> <cd:constant name='set' value='set'/> <cd:constant name='setups' value='reglages'/> + <cd:constant name='shrink' value='shrink'/> <cd:constant name='side' value='cote'/> <cd:constant name='sidealign' value='sidealign'/> <cd:constant name='sidemethod' value='sidemethod'/> diff --git a/tex/context/interface/keys-it.xml b/tex/context/interface/keys-it.xml index a4af3e41f..cc08f1e3e 100644 --- a/tex/context/interface/keys-it.xml +++ b/tex/context/interface/keys-it.xml @@ -974,6 +974,7 @@ <cd:constant name='separator' value='separatore'/> <cd:constant name='set' value='set'/> <cd:constant name='setups' value='setups'/> + <cd:constant name='shrink' value='shrink'/> <cd:constant name='side' value='lato'/> <cd:constant name='sidealign' value='sidealign'/> <cd:constant name='sidemethod' value='sidemethod'/> diff --git a/tex/context/interface/keys-nl.xml b/tex/context/interface/keys-nl.xml index 7428ac813..039d6e882 100644 --- a/tex/context/interface/keys-nl.xml +++ b/tex/context/interface/keys-nl.xml @@ -974,6 +974,7 @@ <cd:constant name='separator' value='scheider'/> <cd:constant name='set' value='set'/> <cd:constant name='setups' value='setups'/> + <cd:constant name='shrink' value='krimp'/> <cd:constant name='side' value='zij'/> <cd:constant name='sidealign' value='zijuitlijnen'/> <cd:constant name='sidemethod' value='zijmethode'/> diff --git a/tex/context/interface/keys-pe.xml b/tex/context/interface/keys-pe.xml index 832bb60e6..6615a3488 100644 --- a/tex/context/interface/keys-pe.xml +++ b/tex/context/interface/keys-pe.xml @@ -974,6 +974,7 @@ <cd:constant name='separator' value='جداکننده'/> <cd:constant name='set' value='قراربده'/> <cd:constant name='setups' value='بارگذاریها'/> + <cd:constant name='shrink' value='shrink'/> <cd:constant name='side' value='کنار'/> <cd:constant name='sidealign' value='تنظیمکنار'/> <cd:constant name='sidemethod' value='روشکنار'/> diff --git a/tex/context/interface/keys-ro.xml b/tex/context/interface/keys-ro.xml index 8b6aac94e..fb827945e 100644 --- a/tex/context/interface/keys-ro.xml +++ b/tex/context/interface/keys-ro.xml @@ -974,6 +974,7 @@ <cd:constant name='separator' value='separator'/> <cd:constant name='set' value='set'/> <cd:constant name='setups' value='setups'/> + <cd:constant name='shrink' value='shrink'/> <cd:constant name='side' value='parte'/> <cd:constant name='sidealign' value='sidealign'/> <cd:constant name='sidemethod' value='sidemethod'/> diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua index 4401ff181..cb410ec09 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/18/12 10:29:39 +-- merge date : 07/18/12 14:11:15 do -- begin closure to overcome local limits and interference |