From 8beb3b723a828ee7e1a12677b6ef04506ceac45f Mon Sep 17 00:00:00 2001 From: Hans Hagen Date: Wed, 21 Apr 2021 12:14:45 +0200 Subject: 2021-04-21 11:39:00 --- tex/context/base/mkii/cont-new.mkii | 2 +- tex/context/base/mkii/context.mkii | 2 +- tex/context/base/mkiv/cldf-ini.lua | 2 +- tex/context/base/mkiv/cont-new.mkiv | 2 +- tex/context/base/mkiv/context.mkiv | 2 +- tex/context/base/mkiv/mult-low.lua | 8 +++--- tex/context/base/mkiv/status-files.pdf | Bin 24878 -> 24875 bytes tex/context/base/mkiv/status-lua.pdf | Bin 240852 -> 240858 bytes tex/context/base/mkxl/buff-ver.mkxl | 3 ++- tex/context/base/mkxl/cont-new.mkxl | 2 +- tex/context/base/mkxl/context.mkxl | 2 +- tex/context/base/mkxl/driv-shp.lmt | 2 +- tex/context/base/mkxl/font-pre.mkxl | 13 +++++++-- tex/context/base/mkxl/font-vfc.lmt | 2 +- tex/context/base/mkxl/lang-ini.mkxl | 19 +++++++++++--- tex/context/base/mkxl/lpdf-lmt.lmt | 29 --------------------- tex/generic/context/luatex/luatex-fonts-merged.lua | 2 +- 17 files changed, 44 insertions(+), 48 deletions(-) (limited to 'tex') diff --git a/tex/context/base/mkii/cont-new.mkii b/tex/context/base/mkii/cont-new.mkii index 9305993eb..5cab6d540 100644 --- a/tex/context/base/mkii/cont-new.mkii +++ b/tex/context/base/mkii/cont-new.mkii @@ -11,7 +11,7 @@ %C therefore copyrighted by \PRAGMA. See mreadme.pdf for %C details. -\newcontextversion{2021.04.20 18:41} +\newcontextversion{2021.04.21 11:36} %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/mkii/context.mkii b/tex/context/base/mkii/context.mkii index 309070ba8..e35c6a5ae 100644 --- a/tex/context/base/mkii/context.mkii +++ b/tex/context/base/mkii/context.mkii @@ -20,7 +20,7 @@ %D your styles an modules. \edef\contextformat {\jobname} -\edef\contextversion{2021.04.20 18:41} +\edef\contextversion{2021.04.21 11:36} %D For those who want to use this: diff --git a/tex/context/base/mkiv/cldf-ini.lua b/tex/context/base/mkiv/cldf-ini.lua index 008e0ea3a..5d4b3d8a8 100644 --- a/tex/context/base/mkiv/cldf-ini.lua +++ b/tex/context/base/mkiv/cldf-ini.lua @@ -577,7 +577,7 @@ local space = patterns.spacer local spacing = newline * space^0 local content = lpegC((1-spacing)^1) -- texsprint local emptyline = space^0 * newline^2 -- texprint("") - + newline * space^1 + + newline * space^1 * newline^1 local endofline = space^0 * newline * space^0 -- texsprint(" ") local simpleline = endofline * lpegP(-1) -- diff --git a/tex/context/base/mkiv/cont-new.mkiv b/tex/context/base/mkiv/cont-new.mkiv index 5750b6e86..2b07e8d4b 100644 --- a/tex/context/base/mkiv/cont-new.mkiv +++ b/tex/context/base/mkiv/cont-new.mkiv @@ -13,7 +13,7 @@ % \normalend % uncomment this to get the real base runtime -\newcontextversion{2021.04.20 18:41} +\newcontextversion{2021.04.21 11:36} %D This file is loaded at runtime, thereby providing an excellent place for hacks, %D patches, extensions and new features. There can be local overloads in cont-loc diff --git a/tex/context/base/mkiv/context.mkiv b/tex/context/base/mkiv/context.mkiv index 86220aa80..91d7c5640 100644 --- a/tex/context/base/mkiv/context.mkiv +++ b/tex/context/base/mkiv/context.mkiv @@ -45,7 +45,7 @@ %D {YYYY.MM.DD HH:MM} format. \edef\contextformat {\jobname} -\edef\contextversion{2021.04.20 18:41} +\edef\contextversion{2021.04.21 11:36} %D Kind of special: diff --git a/tex/context/base/mkiv/mult-low.lua b/tex/context/base/mkiv/mult-low.lua index eb4918980..592645b8c 100644 --- a/tex/context/base/mkiv/mult-low.lua +++ b/tex/context/base/mkiv/mult-low.lua @@ -159,12 +159,14 @@ return { "wildcardsymbol", -- "normalhyphenationmodecode", "automatichyphenationmodecode", "explicithyphenationmodecode", - "syllablehyphenationmodecode", "uppercasehyphenationmodecode", "completehyphenationmodecode", + "syllablehyphenationmodecode", "uppercasehyphenationmodecode", "collapsehyphenationmodecode", "compoundhyphenationmodecode", "strictstarthyphenationmodecode", "strictendhyphenationmodecode", "automaticpenaltyhyphenationmodecode", "explicitpenaltyhyphenationmodecode", "permitgluehyphenationmodecode", "permitallhyphenationmodecode", "permitmathreplacehyphenationmodecode", "forcecheckhyphenationmodecode", "lazyligatureshyphenationmodecode", "forcehandlerhyphenationmodecode", - "feedbackcompoundhyphenationmodecode", "ignoreboundshyphenationmodecode", "collapsehyphenationmodecode", + "feedbackcompoundhyphenationmodecode", "ignoreboundshyphenationmodecode", + -- + "partialhyphenationmodecode", "completehyphenationmodecode", -- "normalizelinecode", "parindentskipcode", "swaphangindentcode", "swapparsshapecode", "breakafterdircode", "removemarginkernscode", "clipwidthcode", "flattendiscretionariescode", @@ -514,7 +516,7 @@ return { "synchronizelayoutdirection","synchronizedisplaydirection","synchronizeinlinedirection", "dirlre", "dirrle", "dirlro", "dirrlo", -- - "lesshyphens", "morehyphens", "nohyphens", "dohyphens", + "lesshyphens", "morehyphens", "nohyphens", "dohyphens", "dohyphencollapsing", "nohyphencollapsing", "compounddiscretionary", -- "Ucheckedstartdisplaymath", "Ucheckedstopdisplaymath", diff --git a/tex/context/base/mkiv/status-files.pdf b/tex/context/base/mkiv/status-files.pdf index 793ac218f..af4f3802f 100644 Binary files a/tex/context/base/mkiv/status-files.pdf and b/tex/context/base/mkiv/status-files.pdf differ diff --git a/tex/context/base/mkiv/status-lua.pdf b/tex/context/base/mkiv/status-lua.pdf index 999970419..1ddade41c 100644 Binary files a/tex/context/base/mkiv/status-lua.pdf and b/tex/context/base/mkiv/status-lua.pdf differ diff --git a/tex/context/base/mkxl/buff-ver.mkxl b/tex/context/base/mkxl/buff-ver.mkxl index c948181c5..65c919556 100644 --- a/tex/context/base/mkxl/buff-ver.mkxl +++ b/tex/context/base/mkxl/buff-ver.mkxl @@ -40,6 +40,7 @@ \resetfontfeature \resetcharacterspacing \resetbreakpoints + \nohyphencollapsing \to \everyinitializeverbatim \permanent\protected\def\setverbatimspaceskip % to be checked: must happen after font switch @@ -53,7 +54,7 @@ \defcsname\??typingspace\v!on \endcsname{\enforced\let\obeyedspace\specialcontrolspace} \defcsname\??typingspace\v!stretch \endcsname{\enforced\let\obeyedspace\specialstretchedspace} -\defcsname\??typingspace\v!normal \endcsname{} +\letcsname\??typingspace\v!normal \endcsname\donothing \defcsname\??typingspace\v!fixed \endcsname{\enforced\let\obeyedspace\specialfixedspace} \defcsname\??typingblank\v!standard \endcsname{\s_spac_whitespace_parskip} diff --git a/tex/context/base/mkxl/cont-new.mkxl b/tex/context/base/mkxl/cont-new.mkxl index 51fa1e383..b48a3b801 100644 --- a/tex/context/base/mkxl/cont-new.mkxl +++ b/tex/context/base/mkxl/cont-new.mkxl @@ -13,7 +13,7 @@ % \normalend % uncomment this to get the real base runtime -\newcontextversion{2021.04.20 18:41} +\newcontextversion{2021.04.21 11:36} %D This file is loaded at runtime, thereby providing an excellent place for hacks, %D patches, extensions and new features. There can be local overloads in cont-loc diff --git a/tex/context/base/mkxl/context.mkxl b/tex/context/base/mkxl/context.mkxl index 1c6546bfc..d8475d81f 100644 --- a/tex/context/base/mkxl/context.mkxl +++ b/tex/context/base/mkxl/context.mkxl @@ -29,7 +29,7 @@ %D {YYYY.MM.DD HH:MM} format. \immutable\edef\contextformat {\jobname} -\immutable\edef\contextversion{2021.04.20 18:41} +\immutable\edef\contextversion{2021.04.21 11:36} %overloadmode 1 % check frozen / warning %overloadmode 2 % check frozen / error diff --git a/tex/context/base/mkxl/driv-shp.lmt b/tex/context/base/mkxl/driv-shp.lmt index 5739dc15e..6188f8a24 100644 --- a/tex/context/base/mkxl/driv-shp.lmt +++ b/tex/context/base/mkxl/driv-shp.lmt @@ -304,7 +304,7 @@ local flush_character do pos_h = ph pos_v = pv end - elseif command == "compose" then + elseif command == "compose" then -- for now idem local ph = pos_h local pv = pos_v local h = packet[2] or 0 diff --git a/tex/context/base/mkxl/font-pre.mkxl b/tex/context/base/mkxl/font-pre.mkxl index 7f1aa5f7f..0840d3255 100644 --- a/tex/context/base/mkxl/font-pre.mkxl +++ b/tex/context/base/mkxl/font-pre.mkxl @@ -67,8 +67,17 @@ % calt=yes, % maybe too % clig=yes, % maybe too % rlig=yes, % maybe too - tlig=yes, - trep=yes] % texligatures=yes,texquotes=yes +% tlig=yes, % no longer default +% trep=yes, % no longer default + ] % texligatures=yes,texquotes=yes + +% if needed users can add this to a local cont-loc.mkxl in texmf-local: + +% \definefontfeature +% [default] +% [default] +% [tlig=yes, +% trep=yes] \definefontfeature [original] % a clone of default so we can revert diff --git a/tex/context/base/mkxl/font-vfc.lmt b/tex/context/base/mkxl/font-vfc.lmt index 9330bdea0..2872bb908 100644 --- a/tex/context/base/mkxl/font-vfc.lmt +++ b/tex/context/base/mkxl/font-vfc.lmt @@ -166,7 +166,7 @@ function helpers.scalecommands(list,hdelta,vdelta) result[i] = { key, cmd[2]*hdelta } elseif key == "down" or key == "up" then result[i] = { key, cmd[2]*vdelta } - elseif key == "offset" or key == "rule" then + elseif key == "offset" or key == "rule" then -- or key == "compose" result[i] = { key, cmd[2]*hdelta, cmd[3]*vdelta } -- elseif key == "frame" then -- result[i] = cmd -- already scaled, for now diff --git a/tex/context/base/mkxl/lang-ini.mkxl b/tex/context/base/mkxl/lang-ini.mkxl index a8cf1b1fb..d99fa4f79 100644 --- a/tex/context/base/mkxl/lang-ini.mkxl +++ b/tex/context/base/mkxl/lang-ini.mkxl @@ -436,7 +436,12 @@ + \forcehandlerhyphenationmodecode % kick in the handler (could be an option) + \feedbackcompoundhyphenationmodecode % feedback compound snippets + \ignoreboundshyphenationmodecode % just in case we have hyphens at the edges -% + \collapsehyphenationmodecode % collapse -- and --- + + \collapsehyphenationmodecode % collapse -- and --- +\relax + +\permanent \integerdef \partialhyphenationmodecode \numexpr + \ignoreboundshyphenationmodecode % just in case we have hyphens at the edges + + \collapsehyphenationmodecode % collapse -- and --- \relax \hccode"002D "002D @@ -448,12 +453,20 @@ \permanent\protected\def\dohyphens {\hyphenationmode\completehyphenationmodecode} %permanent\protected\def\nohyphens {\hyphenationmode\zerocount} -\permanent\protected\def\nohyphens {\hyphenationmode\forcehandlerhyphenationmodecode} +\permanent\protected\def\nohyphens {\hyphenationmode\partialhyphenationmodecode} + +\permanent\protected\def\dohyphencollapsing{\hyphenationmode\bitwiseflip\hyphenationmode \collapsehyphenationmodecode} +\permanent\protected\def\nohyphencollapsing{\hyphenationmode\bitwiseflip\hyphenationmode-\collapsehyphenationmodecode} \permanent\protected\def\usehyphensparameter#1% {\edef\p_hyphens{#1\c!hyphens}% \ifx\p_hyhens\v!no - \nohyphens + \ifbitwiseand\hyphenationmode\collapsehyphenationmodecode + \nohyphens + \else + \nohyphens + \nohyphencollapsing + \fi \fi} \dohyphens diff --git a/tex/context/base/mkxl/lpdf-lmt.lmt b/tex/context/base/mkxl/lpdf-lmt.lmt index 590d69c58..1861cbc49 100644 --- a/tex/context/base/mkxl/lpdf-lmt.lmt +++ b/tex/context/base/mkxl/lpdf-lmt.lmt @@ -434,35 +434,6 @@ do -- luatex where we have more widths arrays and these reflect the cheated -- widths (goes wrong elsewhere). --- local naturalwidths = setmetatableindex(function(t,font) --- local d = descriptions[font] --- local c = characters[font] --- local f = parameters[font].hfactor or parameters[font].factor --- local v = setmetatableindex(function(t,char) --- local w --- local e = d and d[char] --- if e then --- w = e.width --- if w then --- w = w * f --- end --- end --- if not w then --- e = c and c[char] --- if e then --- w = e.width or 0 --- end --- end --- if not w then --- w = 0 --- end --- t[char] = w --- return w --- end) --- t[font] = v --- return v --- end) - -- when changing this, check math: compact-001.tex (rule width) local naturalwidths = setmetatableindex(function(t,font) diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua index c3e8104ea..4d7a9796a 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 : c:/data/develop/context/sources/luatex-fonts-merged.lua -- parent file : c:/data/develop/context/sources/luatex-fonts.lua --- merge date : 2021-04-20 18:41 +-- merge date : 2021-04-21 11:36 do -- begin closure to overcome local limits and interference -- cgit v1.2.3