diff options
Diffstat (limited to 'tex/context/base')
-rw-r--r-- | tex/context/base/context.tex | 2 | ||||
-rw-r--r-- | tex/context/base/core-fld.tex | 15 | ||||
-rw-r--r-- | tex/context/base/core-lst.tex | 10 | ||||
-rw-r--r-- | tex/context/base/core-rul.tex | 38 | ||||
-rw-r--r-- | tex/context/base/core-spa.tex | 2 | ||||
-rw-r--r-- | tex/context/base/enco-ans.tex | 2 | ||||
-rw-r--r-- | tex/context/base/enco-def.tex | 4 | ||||
-rw-r--r-- | tex/context/base/enco-ec.tex | 6 | ||||
-rw-r--r-- | tex/context/base/enco-fsl.tex | 32 | ||||
-rw-r--r-- | tex/context/base/enco-qx.tex | 2 | ||||
-rw-r--r-- | tex/context/base/font-chi.tex | 1 | ||||
-rw-r--r-- | tex/context/base/font-ini.tex | 14 | ||||
-rw-r--r-- | tex/context/base/hand-def.tex | 35 | ||||
-rw-r--r-- | tex/context/base/hand-ini.tex | 191 | ||||
-rw-r--r-- | tex/context/base/mult-con.tex | 9 | ||||
-rw-r--r-- | tex/context/base/sort-def.tex | 95 | ||||
-rw-r--r-- | tex/context/base/sort-lan.tex | 9 | ||||
-rw-r--r-- | tex/context/base/spec-fdf.tex | 2 | ||||
-rw-r--r-- | tex/context/base/supp-lan.tex | 7 | ||||
-rw-r--r-- | tex/context/base/supp-pdf.tex | 10 | ||||
-rw-r--r-- | tex/context/base/type-syn.tex | 2 | ||||
-rw-r--r-- | tex/context/base/x-res-01.tex | 4 |
22 files changed, 398 insertions, 94 deletions
diff --git a/tex/context/base/context.tex b/tex/context/base/context.tex index 43446058f..60d538895 100644 --- a/tex/context/base/context.tex +++ b/tex/context/base/context.tex @@ -31,7 +31,7 @@ %D 2004.8.30 the low level interface is english. Watch out and adapt %D your styles an modules. -\def\contextversion{2005.08.15} +\def\contextversion{2005.08.19} %D Welcome to the main module. When this module is ran through %D \type{initex} or \type {tex -i} or \type {whatevertex} using diff --git a/tex/context/base/core-fld.tex b/tex/context/base/core-fld.tex index 614d35efe..5f03d699e 100644 --- a/tex/context/base/core-fld.tex +++ b/tex/context/base/core-fld.tex @@ -875,6 +875,8 @@ \fi \egroup} +\chardef\fitfieldmode\plusone % 3 = best + \def\dohandlefitfield[#1][#2][#3][#4][#5]% alleen check {\presetlocalframed[\??fd]% \localframed @@ -894,8 +896,17 @@ \setbox\scratchbox\hbox{\dogetfieldsymbol\@@DriverFieldValue}% \scratchdimen\wd\scratchbox \edef\@@DriverFieldWidth {\the\scratchdimen}% \scratchdimen\ht\scratchbox \edef\@@DriverFieldHeight{\the\scratchdimen}% - \vbox to \ht\scratchbox - {\vfill\hbox to \wd\scratchbox{\typesetfield\hfill}\vss}}} + \ifcase\fitfieldmode + \typesetfield + \or % 1 = ignore depth (original, assumed no depth, actually a bug) + \vbox to \ht\scratchbox{\vfill\hbox to \wd\scratchbox{\typesetfield\hfill}\vss}% + \or % 2 = add depth to height, but no depth in result + \advance\scratchdimen\dp\scratchbox \edef\@@DriverFieldHeight{\the\scratchdimen}% + \vbox to \ht\scratchbox{\vfill\hbox to \wd\scratchbox{\typesetfield\hfill}\vss}% + \or % 3 = add depth to height, and apply depth to result + \advance\scratchdimen\dp\scratchbox \edef\@@DriverFieldHeight{\the\scratchdimen}% + \hbox to \wd\scratchbox{\lower\dp\scratchbox\hbox{\typesetfield}\hfill}% + \fi}} %D Common stuff diff --git a/tex/context/base/core-lst.tex b/tex/context/base/core-lst.tex index 7aa6f18c2..a93954fe0 100644 --- a/tex/context/base/core-lst.tex +++ b/tex/context/base/core-lst.tex @@ -212,7 +212,7 @@ \c!textcommand=\listtextcommand, \c!pagecommand=\listpagecommand, \c!pagenumber=\v!yes, -\c!sectionnumber=\v!yes, +\c!headnumber=\v!yes, \c!pageboundaries=, \c!margin=\!!zeropoint, \c!aligntitle=, @@ -237,7 +237,7 @@ \c!textstyle,\c!textcolor,\c!textcommand, \c!pagestyle,\c!pagecommand,\c!pagecolor, \c!numberstyle,\c!numbercolor,\c!numbercommand, -\c!sectionnumber, +\c!headnumber, \c!pagenumber,\c!pageboundaries,\c!margin,\c!symbol,\c!limittext, \c!aligntitle,\c!before,\c!after,\c!inbetween,\v!part\c!number,\c!label]% \getparameters[\??li#1][#3]}}% @@ -518,7 +518,7 @@ {\forgetall \makelistelement\v!all {% -\doif{\listparameter\c!sectionnumber}\v!yes +\doif{\listparameter\c!headnumber}\v!yes {\makelistelement\v!sectionnumber {\donestedlistattributes\c!numberstyle\c!numbercolor {\listparameter\c!numbercommand{\currentlistsymbol}}}% @@ -591,7 +591,7 @@ {\forgetall \dostartlistattributes\c!style\c!color\empty \!!widthb\hsize -\doifelse{\listparameter\c!sectionnumber}\v!yes{% +\doifelse{\listparameter\c!headnumber}\v!yes{% \setbox2\hbox \ifdim\!!widtha>\zeropoint to \!!widtha \fi {\makelistelement\v!sectionnumber {\donestedlistattributes\c!numberstyle\c!numbercolor @@ -710,7 +710,7 @@ {\listparameter\c!pagecommand {\pageprefix\??li\currentlist[#5]% \translatednumber[#5]}}}}}}% -\doif{\listparameter\c!sectionnumber}\v!yes{% +\doif{\listparameter\c!headnumber}\v!yes{% \donetrue \doifnothing{#3}{\doifnothing{\listparameter\c!symbol}\donefalse}% % == \doifnothing{#3\listparameter\c!symbol}\donefalse diff --git a/tex/context/base/core-rul.tex b/tex/context/base/core-rul.tex index 7116d05c4..e21d6385a 100644 --- a/tex/context/base/core-rul.tex +++ b/tex/context/base/core-rul.tex @@ -71,7 +71,7 @@ %D rounded corners are used, so: %D %D \startbuffer -%D \periodgraybox +%D \dotgraybox %D \width.5\hsize\height1cm\depth0cm\raster.85\corner\v!no\radius0pt\\ %D \stopbuffer %D @@ -86,7 +86,7 @@ %D \startlinecorrection %D \unprotect %D \vbox to 1cm -%D {\getvalue{period graybox}% +%D {\dotgraybox %D \width.5\hsize\height1cm\depth0cm\raster.85\corner\v!no\radius0pt\\} %D \protect %D \stoplinecorrection @@ -791,7 +791,7 @@ \else \boxhaswidthfalse \fi - \else\ifx\localwidth\v!fixed % equals \v!fix but no shapebox + \else\ifx\localwidth\v!fixed % equals \v!fit but no shapebox \ifboxhasformat \boxhaswidthtrue \!!widtha\hsize @@ -1688,7 +1688,7 @@ %D formatting. Watch the visualized struts. \footnote {Here we %D used \type {\showstruts}.} %D -%D \startuitstellen +%D \startpostponing %D \bgroup %D \showstruts %D \dontcomplain @@ -1729,9 +1729,9 @@ %D \framed[width=fit, height=broad, align=middle] {a\par b\par c}& %D \framed[width=fit, height=fit, align=middle] {a\par b\par c}\cr} %D \stoplinecorrection -%D \blank[2*groot] +%D \blank[2*big] %D \egroup -%D \stopuitstellen +%D \stoppostponing %D \macros %D {framednoflines, framedlastlength} @@ -1798,7 +1798,7 @@ %D visualization of the resulting box, that is, we applied %D \type{\ruledhbox} to the result. -%D \startuitstellen +%D \startpostponing %D \bgroup %D \unprotect %D \dontcomplain @@ -1845,7 +1845,7 @@ %D %D \protect %D \egroup -%D \stopuitstellen +%D \stoppostponing %D When typesetting the framed box inline, we have to keep the %D baseline intact outside as well as inside the framed box. @@ -1975,32 +1975,32 @@ %D \setuptyping[margin=0pt] %D \startlinecorrection %D \startbuffer -%D \framed[offset=overlay,frame=on] {\donkerrood\blackrule} +%D \framed[offset=overlay,frame=on]{\darkred\blackrule} %D \stopbuffer %D \hbox{\getbuffer\vbox{\typebuffer}} %D %D \startbuffer -%D \framed[offset=overlay,frame=on,bottomframe=off]{\donkerrood\blackrule} +%D \framed[offset=overlay,frame=on,bottomframe=off]{\darkred\blackrule} %D \stopbuffer %D \hbox{\getbuffer\vbox{\typebuffer}} %D %D \startbuffer -%D \framed[offset=overlay,frame=on,bottomframe=on]{\donkerrood\blackrule} +%D \framed[offset=overlay,frame=on,bottomframe=on]{\darkred\blackrule} %D \stopbuffer %D \hbox{\getbuffer\vbox{\typebuffer}} %D %D \startbuffer -%D \framed[offset=overlay,frame=off] {\donkerrood\blackrule} +%D \framed[offset=overlay,frame=off]{\darkred\blackrule} %D \stopbuffer %D \hbox{\getbuffer\vbox{\typebuffer}} %D %D \startbuffer -%D \framed[offset=overlay,frame=off,bottomframe=off]{\donkerrood\blackrule} +%D \framed[offset=overlay,frame=off,bottomframe=off]{\darkred\blackrule} %D \stopbuffer %D \hbox{\getbuffer\vbox{\typebuffer}} %D %D \startbuffer -%D \framed[offset=overlay,frame=off,bottomframe=on]{\donkerrood\blackrule} +%D \framed[offset=overlay,frame=off,bottomframe=on]{\darkred\blackrule} %D \stopbuffer %D \hbox{\getbuffer\vbox{\typebuffer}} %D \stoplinecorrection @@ -2493,13 +2493,13 @@ %D width=\hsize, %D background=screen] %D -%D \startkadertekst +%D \startframedtext %D By default the framed text is centered \dots -%D \stopkadertekst +%D \stopframedtext %D -%D \startkadertekst[right] +%D \startframedtext[right] %D \dots\ but we can also align left, middle and right. -%D \stopkadertekst +%D \stopframedtext %D \stopbuffer %D %D \startbuffer[framed-1] @@ -2558,7 +2558,7 @@ %D %D that generates two commands: %D -%D \showsetup{\e!start<<framedtext>>} +%D \showsetup{start<<framedtext>>} %D \showsetup{<<framedtext>>} %D %D The next definition shows the defaults. diff --git a/tex/context/base/core-spa.tex b/tex/context/base/core-spa.tex index db13c4992..6ee5df55d 100644 --- a/tex/context/base/core-spa.tex +++ b/tex/context/base/core-spa.tex @@ -3659,6 +3659,8 @@ \setvalue{@@align@@\v!nothanging }{\disableprotruding} \setvalue{@@align@@\v!hz }{\enableadjusting} \setvalue{@@align@@\v!nohz }{\disableadjusting} +\setvalue{@@align@@\v!spacing }{\enablespacehandling} +\setvalue{@@align@@\v!nospacing }{\disablespacehandling} \setvalue{@@align@@\v!hyphenated }{\dohyphens} \setvalue{@@align@@\v!nothyphenated}{\nohyphens} \setvalue{@@align@@\v!new }{\@@asraggedfalse} % so new will give you consistency diff --git a/tex/context/base/enco-ans.tex b/tex/context/base/enco-ans.tex index 282f33b3e..6c7acf731 100644 --- a/tex/context/base/enco-ans.tex +++ b/tex/context/base/enco-ans.tex @@ -76,7 +76,7 @@ \definecharacter thorn 254 \definecharacter Thorn 222 -\definecharacter Eth 208 +\definecharacter Dstroke 208 % also Eth, mapped in enco-def \definecharacter eth 240 \definecharacter exclamdown 161 diff --git a/tex/context/base/enco-def.tex b/tex/context/base/enco-def.tex index 2cad5a89e..4bc504c1b 100644 --- a/tex/context/base/enco-def.tex +++ b/tex/context/base/enco-def.tex @@ -62,8 +62,8 @@ \definecharacter thorn {\unknownchar} \definecharacter Thorn {\unknownchar} -\definecharacter eth {\unknownchar} -\definecharacter Eth {\unknownchar} +\definecharacter eth {\dstroke} % wrong but better that nothing +\definecharacter Eth {\Dstroke} % wrong but better that nothing \definecharacter exclamdown 60 \definecharacter questiondown 62 diff --git a/tex/context/base/enco-ec.tex b/tex/context/base/enco-ec.tex index 58ccd0400..aa8319e00 100644 --- a/tex/context/base/enco-ec.tex +++ b/tex/context/base/enco-ec.tex @@ -113,7 +113,8 @@ \definecharacter thorn 254 \definecharacter Thorn 222 -\definecharacter Eth 208 +%definecharacter Eth 208 % no ! +\definecharacter Dstroke 208 \definecharacter eth 240 \definecharacter exclamdown 189 % lig @@ -253,7 +254,8 @@ \definecharacter uhungarumlaut 182 \definecharacter Uhungarumlaut 150 -\definecharacter dmacron 158 +%definecharacter dmacron 158 % no ! +\definecharacter dstroke 158 \definecharacter aogonek 161 \definecharacter Aogonek 129 diff --git a/tex/context/base/enco-fsl.tex b/tex/context/base/enco-fsl.tex new file mode 100644 index 000000000..86a41c88a --- /dev/null +++ b/tex/context/base/enco-fsl.tex @@ -0,0 +1,32 @@ +%D \module +%D [ file=enco-fsl, +%D version=2005.08.17, +%D title=\CONTEXT\ Encoding Macros, +%D subtitle=Slovenian Specialities, +%D author={Hans Hagen, Mojka Miklavec}, +%D date=\currentdate, +%D copyright=Hans Hagen] +%C +%C This module is part of the \CONTEXT\ macro||package and is +%C therefore copyrighted by \PRAGMA. See mreadme.pdf for +%C details. + +%D Usage: +%D +%D \starttyping +%D \useencoding[fsl] +%D +%D \starttext +%D \dstroke \language[sl] \dstroke +%D \stoptext +%D \stoptyping + +\unprotect + +\startlanguagespecifics[\s!sl] + \startencoding[\s!default] + \definecharacter dstroke {d\zcaron} % hm, expects a space delimiter + \stopencoding +\stoplanguagespecifics + +\protect \endinput diff --git a/tex/context/base/enco-qx.tex b/tex/context/base/enco-qx.tex index 38db703d9..407d60bd7 100644 --- a/tex/context/base/enco-qx.tex +++ b/tex/context/base/enco-qx.tex @@ -110,7 +110,7 @@ \definecharacter thorn 254 \definecharacter Thorn 222 -\definecharacter Eth 208 +\definecharacter Dstroke 208 % also Eth, mapped into enco-def \definecharacter eth 240 \definecharacter exclamdown 60 diff --git a/tex/context/base/font-chi.tex b/tex/context/base/font-chi.tex index 580f633b1..7a602d4ab 100644 --- a/tex/context/base/font-chi.tex +++ b/tex/context/base/font-chi.tex @@ -36,6 +36,7 @@ %M \def\WangLei{\purechinese{\uchar{205}{245}\uchar{192}{218}}} \useencoding[chi] +\loadmapfile[gbk] %D When \WangLei\ sent me a mail asking if \CONTEXT\ was able %D to support Chinese, I wasn't sure if the answer could be diff --git a/tex/context/base/font-ini.tex b/tex/context/base/font-ini.tex index aa1bafcc9..b2007ee31 100644 --- a/tex/context/base/font-ini.tex +++ b/tex/context/base/font-ini.tex @@ -874,13 +874,21 @@ \newif\ifsynchronizemathfonts \synchronizemathfontstrue \def\synchronizetext % stylish text in mmode - {\ifsynchronizemathfonts\the\textstrategies\fam\minusone\fi} + {\ifsynchronizemathfonts\the\textstrategies\fi} % \if...\fam\minusone\fi} \def\synchronizemath % math stuff in mmode - {\ifsynchronizemathfonts\the\mathstrategies\fam\minusone\fi} + {\ifsynchronizemathfonts\the\mathstrategies\fi} % \if...\fam\minusone\fi} \def\synchronizesymb % stylish math stuff in mmode - {\ifsynchronizemathfonts\the\symbstrategies\fam\minusone\fi} + {\ifsynchronizemathfonts\the\symbstrategies\fi} % \if...\fam\minusone\fi} + +%D By not setting the family we can append a font switch to \tyep +%D {\everymath}. On the other hand, one never knows in what family +%D state the strategies brought us. +%D +%D \starttyping +%D {\bfa $\the\fam$} {\bfa \everymath{} $\the\fam$} +%D \stoptyping %D \macros %D {textonly} diff --git a/tex/context/base/hand-def.tex b/tex/context/base/hand-def.tex index db87525ac..591370cda 100644 --- a/tex/context/base/hand-def.tex +++ b/tex/context/base/hand-def.tex @@ -524,6 +524,41 @@ \definefonthandling [noligs] [noligs] [\c!type=tag] +% experimental values ! +% +% \definefontsynonym[myfont][Serif][handling=prespacing] +% \definefont[whatever][myfont sa 1] +% \setupalign[spacing] +% +% \whatever look at this: we now have a proper spacing feature and, hurray, +% get rid of active punctuation! + +\startfonthandling [flexspacing] + + \definespacefactor : 0 1.25 .25 .25 + + \definespacefactor , 0 1 .25 .25 + \inheritspacefactor ; , + + \definespacefactor . 0 1.5 .25 .25 + \inheritspacefactor ! . + \inheritspacefactor ? . + +\stopfonthandling + +\definefonthandling[flexspacing][flexspacing][\c!type=\v!spacing] + +\startfonthandling [prespacing] % better name needed + + \definespacefactor : .25 .25 0 0 + \inheritspacefactor ; : + \inheritspacefactor ! : + \inheritspacefactor ? : + +\stopfonthandling + +\definefonthandling[prespacing][prespacing][\c!type=\v!spacing] % factor=.5 + % A special case of guillemots, beware: when used ungrouped, % it overloads all successive (current) encoding vector % instances! Will be obsolete soon. diff --git a/tex/context/base/hand-ini.tex b/tex/context/base/hand-ini.tex index 1d5f2da4e..588d635a9 100644 --- a/tex/context/base/hand-ini.tex +++ b/tex/context/base/hand-ini.tex @@ -73,6 +73,8 @@ \newif\ifskiphandlingdef \skiphandlingdeffalse +\newtoks\everyenablefonthandling + % much in common with hz/protruding defs % todo: fix others @@ -100,11 +102,45 @@ \let\char\normalchar}}% \fi} -\def\doinhsomehandling#1#2 #3 % +% \def\dosettriplethandling#1#2#3 #4 #5 #6 % no define since directly set +% {\ifskiphandlingdef \else +% \doifnumberelse{\string#2} +% {#1{#2#3}{#4}{#5}{#6}} +% {\doifelsenothing{#3} +% {#1{`#2}{#4}{#5}{#6}} +% {\let\char\empty +% \doifnumberelse{\csname#2#3\endcsname}{#1{\csname#2#3\endcsname}{#4}{#5}{#6}}\donothing +% \let\char\normalchar}}% +% \fi} + +\def\dosetquartethandling#1#2#3 #4 #5 #6 #7 % no define since directly set {\ifskiphandlingdef \else - \let\char\empty - \doifnumberelse{\csname#2\endcsname}{#1{\csname#2\endcsname}{`#3}}\donothing - \let\char\normalchar + \doifnumberelse{\string#2} + {#1{#2#3}{#4}{#5}{#6}{#7}} + {\doifelsenothing{#3} + {#1{`#2}{#4}{#5}{#6}{#7}} + {\let\char\empty + \doifnumberelse{\csname#2#3\endcsname}{#1{\csname#2#3\endcsname}{#4}{#5}{#6}{#7}}\donothing + \let\char\normalchar}}% + \fi} + + +% \def\doinhsomehandling#1#2 #3 % +% {\ifskiphandlingdef \else +% \let\char\empty +% \doifnumberelse{\csname#2\endcsname}{#1{\csname#2\endcsname}{`#3}}\donothing +% \let\char\normalchar +% \fi} + +\def\doinhsomehandling#1#2#3 #4 % to be checked + {\ifskiphandlingdef \else + \if#3\relax\relax + #1{`#2}{`#4}% + \else + \let\char\empty + \doifnumberelse{\csname#2#3\endcsname}{#1{\csname#2#3\endcsname}{`#4}}\donothing + \let\char\normalchar + \fi \fi} % adjustspacing @@ -178,6 +214,12 @@ \fontname\handledfont}} \fi +\ifx\setfontadjusting\gobbleoneargument \else + \appendtoks + \setfontadjusting\askedfonthandling + \to \everyenablefonthandling +\fi + % protruding \newif\ifembasedprotruding \embasedprotrudingfalse @@ -238,28 +280,28 @@ \newdimen\protrudethreshold \protrudethreshold=36pt -% keep this - -% \def\redodefineprotrudefactor#1% -% {\ifdim\fontdimen6\font>\protrudethreshold -% \divide\scratchdimen\fontdimen6\font -% \multiply\scratchdimen\fontcharwd\handledfont#1\relax -% \else -% \multiply\scratchdimen\fontcharwd\handledfont#1\relax -% \divide\scratchdimen\fontdimen6\font -% \fi} - -% \def\dododefineprotrudefactor#1#2#3% -% {\scratchdimen#2\lproddimen -% \ifembasedprotruding \else -% \redodefineprotrudefactor{#1}% -% \fi -% \lpcode\handledfont#1\scratchdimen -% \scratchdimen#3\rproddimen -% \ifembasedprotruding \else -% \redodefineprotrudefactor{#1}% -% \fi -% \rpcode\handledfont#1\scratchdimen} + % keep this + + % \def\redodefineprotrudefactor#1% + % {\ifdim\fontdimen6\font>\protrudethreshold + % \divide\scratchdimen\fontdimen6\font + % \multiply\scratchdimen\fontcharwd\handledfont#1\relax + % \else + % \multiply\scratchdimen\fontcharwd\handledfont#1\relax + % \divide\scratchdimen\fontdimen6\font + % \fi} + + % \def\dododefineprotrudefactor#1#2#3% + % {\scratchdimen#2\lproddimen + % \ifembasedprotruding \else + % \redodefineprotrudefactor{#1}% + % \fi + % \lpcode\handledfont#1\scratchdimen + % \scratchdimen#3\rproddimen + % \ifembasedprotruding \else + % \redodefineprotrudefactor{#1}% + % \fi + % \rpcode\handledfont#1\scratchdimen} \def\dododefineprotrudefactor#1#2#3% {\lpcode\handledfont#1\dimexpr#2\lproddimen @@ -328,6 +370,81 @@ \fi +\ifx\setprotrudingfactor\gobbleoneargument \else + \appendtoks + \setprotrudingfactor\askedfonthandling + \to \everyenablefonthandling +\fi + +% Basic support for a new pdftex feature: space factors +% +% \knbccode -- kern before char code +% \knbscode -- kern before space code +% \stbscode -- stretch before space code +% \shbscode -- shrink before space code +% +% Setting \knsbcode\font`\.=200 means that if a period sits before +% a interword space (glue), then the interword glue will be increased +% by an amount of 1em*200/1000, i.e. the value is given in thousandths +% of an em. (HTT) + +\newdimen\spfacdimen + +\ifx\undefined\pdfadjustinterwordglue % we don't use pdftex + + \let\enablespacehandling \relax + \let\disablespacehandling \relax + + \let\setspacehandling \gobbleoneargument + + \def\definespacefactor #1 #2 #3 #4 #5 {} + \def\inheritspacefactor #1 #2 {} + +\else + + \def\enablespacehandling {\pdfadjustinterwordglue\plusone } + \def\disablespacehandling{\pdfadjustinterwordglue\minusone} + + \appendtoks \disablespacehandling \to \everyforgetall % Here or not here? + + \def\dosetspacehandling#1% + {\spfacdimen\csname\@fha@\@fha@#1\c!factor\endcsname\s!pt + \multiply\spfacdimen\plusthousand\divide\spfacdimen\maxcard\relax} + + \def\setspacehandling#1% + {\doifvalue{\@fha@\@fha@#1\c!type}\v!spacing{\dosetspacehandling{#1}}} + + \def\dododefinespacefactor#1#2#3#4#5% + {\sfcode#1\plusthousand + \knbccode\handledfont#1\dimexpr#2\spfacdimen\relax + \knbscode\handledfont#1\dimexpr#3\spfacdimen\relax + \stbscode\handledfont#1\dimexpr#4\spfacdimen\relax + \shbscode\handledfont#1\dimexpr#5\spfacdimen\relax} + + \def\dodoinheritspacefactor#1#2% + {\sfcode#1\plusthousand + \knbccode\handledfont#1\knbccode\handledfont#2\relax + \knbscode\handledfont#1\knbscode\handledfont#2\relax + \stbscode\handledfont#1\stbscode\handledfont#2\relax + \shbscode\handledfont#1\shbscode\handledfont#2\relax} + + \def\definespacefactor#1 #2 #3 #4 #5 % + {\setfonttoks + \let\inherithandling\inheritspacefactor + \appendtoks\dosetquartethandling\dododefinespacefactor#1 #2 #3 #4 #5 \to\fonttoks} + + \def\inheritspacefactor#1 #2 % + {\setfonttoks + \appendtoks\doinhsomehandling\dodoinheritspacefactor#1 #2 \to\fonttoks} + +\fi + +\ifx\setspacehandling\gobbleoneargument \else + \appendtoks + \setspacehandling\askedfonthandling + \to \everyenablefonthandling +\fi + % font attributes \let\notagcode\minusone @@ -385,7 +502,13 @@ \def\dodefinefonthandling[#1][#2][#3]% {\ifthirdargument \setvalue{\@fha@\@fha@#1}{#2}% - \getparameters[\@fha@\@fha@#1][\c!type=\v!hanging,\c!left=1,\c!right=1,\c!min=20,\c!max=20,\c!step=5,#3]% + \getparameters + [\@fha@\@fha@#1] + [\c!type=\v!hanging,% + \c!left=1,\c!right=1,% + \c!min=20,\c!max=20,\c!step=5,% + \c!factor=1,% + #3]% \else \setvalue{\@fha@\@fha@\@fha@#1}{#2}% \fi} @@ -450,20 +573,6 @@ \endETEX -\newtoks\everyenablefonthandling - -\ifx\setprotrudingfactor\gobbleoneargument \else - \appendtoks - \setprotrudingfactor\askedfonthandling - \to \everyenablefonthandling -\fi - -\ifx\setfontadjusting\gobbleoneargument \else - \appendtoks - \setfontadjusting\askedfonthandling - \to \everyenablefonthandling -\fi - \def\redofastenablehandling {\edef\fonthandling{\csname\@fha@\@fha@\@fha@\askedfonthandling\endcsname}% \rawprocesscommacommand[\fonthandling]\xfastenablehandling} diff --git a/tex/context/base/mult-con.tex b/tex/context/base/mult-con.tex index 201dd1082..80fb85c31 100644 --- a/tex/context/base/mult-con.tex +++ b/tex/context/base/mult-con.tex @@ -1039,6 +1039,9 @@ keyexpansion: sleutelexpansie keyexpansion pagenumber: paginanummer pagenumber seitennummer cislostranky numeropagina numarpagina + headnumber: kopnummer headnumber + kopfnummer cislonadpisu + numerotesta numartitlu pageboundaries: paginaovergangen pageboundaries seitenbegrenzung hranicestranky limitipagina marginipagina @@ -1701,6 +1704,12 @@ textlayer: tekstlaag textlayer hanging: hangend hanging haengend visici sospeso suspendat + spacing: spatiering spacing + spatiumausgleich mezerovani + spaziatura spatiere + nospacing: geenspatiering nospacing + nospacing nospacing + nospacing nospacing repeat: herhaal repeat wiederholen opakovat ripeti repetat diff --git a/tex/context/base/sort-def.tex b/tex/context/base/sort-def.tex index 04ce50681..e2496f196 100644 --- a/tex/context/base/sort-def.tex +++ b/tex/context/base/sort-def.tex @@ -349,4 +349,99 @@ \exportsortexpansion{dcroat} {dstroke} \exportsortexpansion{Dcroat} {Dstroke} +% more + +\exportsortshortcut{\^ A} {\Acircumflex} \exportsortshortcut{\^ a} {\acircumflex} +\exportsortshortcut{\^ C} {\Ccircumflex} \exportsortshortcut{\^ c} {\ccircumflex} +\exportsortshortcut{\^ E} {\Ecircumflex} \exportsortshortcut{\^ e} {\ecircumflex} +\exportsortshortcut{\^ G} {\Gcircumflex} \exportsortshortcut{\^ g} {\gcircumflex} +\exportsortshortcut{\^ H} {\Hcircumflex} \exportsortshortcut{\^ h} {\hcircumflex} +\exportsortshortcut{\^ I} {\Icircumflex} \exportsortshortcut{\^ i} {\icircumflex} \exportsortshortcut{\^\i} {\icircumflex} +\exportsortshortcut{\^ J} {\Jcircumflex} \exportsortshortcut{\^ j} {\jcircumflex} \exportsortshortcut{\^\j} {\jcircumflex} +\exportsortshortcut{\^ O} {\Ocircumflex} \exportsortshortcut{\^ o} {\ocircumflex} +\exportsortshortcut{\^ S} {\Scircumflex} \exportsortshortcut{\^ s} {\scircumflex} +\exportsortshortcut{\^ U} {\Ucircumflex} \exportsortshortcut{\^ u} {\ucircumflex} +\exportsortshortcut{\^ W} {\Wcircumflex} \exportsortshortcut{\^ w} {\wcircumflex} +\exportsortshortcut{\^ Y} {\Ycircumflex} \exportsortshortcut{\^ y} {\ycircumflex} + +\exportsortshortcut{\` A} {\Agrave} \exportsortshortcut{\` a} {\agrave} +\exportsortshortcut{\` E} {\Egrave} \exportsortshortcut{\` e} {\egrave} +\exportsortshortcut{\` I} {\Igrave} \exportsortshortcut{\` i} {\igrave} \exportsortshortcut{\`\i} {\igrave} +\exportsortshortcut{\` O} {\Ograve} \exportsortshortcut{\` o} {\ograve} +\exportsortshortcut{\` U} {\Ugrave} \exportsortshortcut{\` u} {\ugrave} +\exportsortshortcut{\` Y} {\Ygrave} \exportsortshortcut{\` y} {\ygrave} + +\exportsortshortcut{\~ A} {\Atilde} \exportsortshortcut{\~ a} {\atilde} +\exportsortshortcut{\~ I} {\Itilde} \exportsortshortcut{\~ i} {\itilde} \exportsortshortcut{\~\i} {\itilde} +\exportsortshortcut{\~ O} {\Otilde} \exportsortshortcut{\~ o} {\otilde} +\exportsortshortcut{\~ U} {\Utilde} \exportsortshortcut{\~ u} {\utilde} + +\exportsortshortcut{\" A} {\Adiaeresis} \exportsortshortcut{\" a} {\adiaeresis} +\exportsortshortcut{\" E} {\Ediaeresis} \exportsortshortcut{\" e} {\ediaeresis} +\exportsortshortcut{\" I} {\Idiaeresis} \exportsortshortcut{\" i} {\idiaeresis} \exportsortshortcut{\"\i} {\idiaeresis} +\exportsortshortcut{\" O} {\Odiaeresis} \exportsortshortcut{\" o} {\odiaeresis} +\exportsortshortcut{\" U} {\Udiaeresis} \exportsortshortcut{\" u} {\udiaeresis} +\exportsortshortcut{\" Y} {\Ydiaeresis} \exportsortshortcut{\" y} {\ydiaeresis} + +\exportsortshortcut{\' A} {\Aacute} \exportsortshortcut{\' a} {\aacute} +\exportsortshortcut{\' C} {\Cacute} \exportsortshortcut{\' c} {\cacute} +\exportsortshortcut{\' E} {\Eacute} \exportsortshortcut{\' e} {\eacute} +\exportsortshortcut{\' I} {\Iacute} \exportsortshortcut{\' i} {\iacute} \exportsortshortcut{\'\i} {\iacute} +\exportsortshortcut{\' L} {\Lacute} \exportsortshortcut{\' l} {\lacute} +\exportsortshortcut{\' N} {\Nacute} \exportsortshortcut{\' n} {\nacute} +\exportsortshortcut{\' O} {\Oacute} \exportsortshortcut{\' o} {\oacute} +\exportsortshortcut{\' R} {\Racute} \exportsortshortcut{\' r} {\racute} +\exportsortshortcut{\' S} {\Sacute} \exportsortshortcut{\' s} {\sacute} +\exportsortshortcut{\' U} {\Uacute} \exportsortshortcut{\' u} {\uacute} +\exportsortshortcut{\' Y} {\Yacute} \exportsortshortcut{\' y} {\yacute} +\exportsortshortcut{\' Z} {\Zacute} \exportsortshortcut{\' z} {\zacute} + +\exportsortshortcut{\. C} {\Cdotaccent} \exportsortshortcut{\. c} {\cdotaccent} +\exportsortshortcut{\. E} {\Edotaccent} \exportsortshortcut{\. e} {\edotaccent} +\exportsortshortcut{\. G} {\Gdotaccent} \exportsortshortcut{\. g} {\gdotaccent} +\exportsortshortcut{\. I} {\Idotaccent} \exportsortshortcut{\. i} {\idotaccent} \exportsortshortcut{\.\i} {\idotaccent} +\exportsortshortcut{\. Z} {\Zdotaccent} \exportsortshortcut{\. z} {\zdotaccent} + +\exportsortshortcut{\= A} {\Amacron} \exportsortshortcut{\= a} {\amacron} +\exportsortshortcut{\= E} {\Emacron} \exportsortshortcut{\= e} {\emacron} +\exportsortshortcut{\= I} {\Imacron} \exportsortshortcut{\= i} {\imacron} \exportsortshortcut{\=\i} {\imacron} +\exportsortshortcut{\= O} {\Omacron} \exportsortshortcut{\= o} {\omacron} +\exportsortshortcut{\= U} {\Umacron} \exportsortshortcut{\= u} {\umacron} + +\exportsortshortcut{\c C} {\Ccedilla} \exportsortshortcut{\c c} {\ccedilla} +\exportsortshortcut{\c K} {\Kcedilla} \exportsortshortcut{\c k} {\kcedilla} +\exportsortshortcut{\c L} {\Lcedilla} \exportsortshortcut{\c l} {\lcedilla} +\exportsortshortcut{\c N} {\Ncedilla} \exportsortshortcut{\c n} {\ncedilla} +\exportsortshortcut{\c R} {\Rcedilla} \exportsortshortcut{\c r} {\rcedilla} +\exportsortshortcut{\c S} {\Scedilla} \exportsortshortcut{\c s} {\scedilla} +\exportsortshortcut{\c T} {\Tcedilla} \exportsortshortcut{\c t} {\tcedilla} + +\exportsortshortcut{\H O} {\Ohungarumlaut} \exportsortshortcut{\H o} {\ohungarumlaut} +\exportsortshortcut{\H u} {\uhungarumlaut} \exportsortshortcut{\H U} {\Uhungarumlaut} + +\exportsortshortcut{\k A} {\Aogonek} \exportsortshortcut{\k a} {\aogonek} +\exportsortshortcut{\k E} {\Eogonek} \exportsortshortcut{\k e} {\eogonek} +\exportsortshortcut{\k I} {\Iogonek} \exportsortshortcut{\k i} {\iogonek} +\exportsortshortcut{\k U} {\Uogonek} \exportsortshortcut{\k u} {\uogonek} + +\exportsortshortcut{\r A} {\Aring} \exportsortshortcut{\r a} {\aring} +\exportsortshortcut{\r U} {\Uring} \exportsortshortcut{\r u} {\uring} + +\exportsortshortcut{\u A} {\Abreve} \exportsortshortcut{\u a} {\abreve} +\exportsortshortcut{\u E} {\Ebreve} \exportsortshortcut{\u e} {\ebreve} +\exportsortshortcut{\u G} {\Gbreve} \exportsortshortcut{\u g} {\gbreve} +\exportsortshortcut{\u I} {\Ibreve} \exportsortshortcut{\u i} {\ibreve} \exportsortshortcut{\u\i} {\ibreve} +\exportsortshortcut{\u O} {\Obreve} \exportsortshortcut{\u o} {\obreve} +\exportsortshortcut{\u U} {\Ubreve} \exportsortshortcut{\u u} {\ubreve} + +\exportsortshortcut{\v C} {\Ccaron} \exportsortshortcut{\v c} {\ccaron} +\exportsortshortcut{\v D} {\Dcaron} \exportsortshortcut{\v d} {\dcaron} +\exportsortshortcut{\v E} {\Ecaron} \exportsortshortcut{\v e} {\ecaron} +\exportsortshortcut{\v L} {\Lcaron} \exportsortshortcut{\v l} {\lcaron} +\exportsortshortcut{\v N} {\Ncaron} \exportsortshortcut{\v n} {\ncaron} +\exportsortshortcut{\v R} {\Rcaron} \exportsortshortcut{\v r} {\rcaron} +\exportsortshortcut{\v S} {\Scaron} \exportsortshortcut{\v s} {\scaron} +\exportsortshortcut{\v T} {\Tcaron} \exportsortshortcut{\v t} {\tcaron} +\exportsortshortcut{\v Z} {\Zcaron} \exportsortshortcut{\v z} {\zcaron} + \endinput diff --git a/tex/context/base/sort-lan.tex b/tex/context/base/sort-lan.tex index c4489b1ff..60b0699ac 100644 --- a/tex/context/base/sort-lan.tex +++ b/tex/context/base/sort-lan.tex @@ -96,12 +96,11 @@ % czech % -% +% a-c ccaron d- -\startmode[sortorder-no,sortorder-da] - \exportsortreduction{ch}{c} +\startmode[sortorder-cz] + \exportsortrule {ccaron} {c+1} + \exportsortreduction {ch} {c} \stopmode - - \endinput diff --git a/tex/context/base/spec-fdf.tex b/tex/context/base/spec-fdf.tex index 7bd1c3277..853dbb678 100644 --- a/tex/context/base/spec-fdf.tex +++ b/tex/context/base/spec-fdf.tex @@ -33,7 +33,7 @@ \unprotect %D \macros -%D {\PDFobjref} +%D {PDFobjref} %D %D Just a shortcut. diff --git a/tex/context/base/supp-lan.tex b/tex/context/base/supp-lan.tex index bd3ac9224..ebb47424c 100644 --- a/tex/context/base/supp-lan.tex +++ b/tex/context/base/supp-lan.tex @@ -715,7 +715,7 @@ \def\activedododotextmodediscretionary#1#2% {\convertargument#2\to\discretionarytoken - \def\textmodediscretionary% + \def\textmodediscretionary {\getvalue{\strippedcsname\textmodediscretionary\string#1}}% \ifx#1\nextnext % takes care of ||| and +++ and ...... \prewordbreak\discretionary{\hbox{$#1$}}{}{\hbox{$#1$}}% @@ -823,8 +823,9 @@ {\prewordbreak\discretionary{-}{}{\thinspace}\postwordbreak} \definetextmodediscretionary _ - {\prewordbreak\discretionary{\textmodediscretionary} - {\textmodediscretionary}{\textmodediscretionary}\prewordbreak} + {\prewordbreak + \discretionary{\compoundhyphen}{\compoundhyphen}{\compoundhyphen}% + \prewordbreak} \definetextmodediscretionary ( {\ifdim\lastskip>\zeropoint diff --git a/tex/context/base/supp-pdf.tex b/tex/context/base/supp-pdf.tex index dff57957a..b40a699f2 100644 --- a/tex/context/base/supp-pdf.tex +++ b/tex/context/base/supp-pdf.tex @@ -1103,7 +1103,7 @@ %D %D The last case outputs a \type{gsave fill grestore} before %D \type{stroke}. Handling the path outside the main loops -%D saves about 40\% run time.\footnoot{We can save some more by +%D saves about 40\% run time.\footnote{We can save some more by %D following the \METAPOST\ output routine, but for the moment %D we keep things simple.} Switching between the main loop and %D the path loop is done by means of the recursely called @@ -1241,7 +1241,7 @@ %D The transformation code is rewritten by Daniel H. Luecking who %D describes his patch as follows: %D -%D We would like to divide 1 by $X4, but all divisions are integer so +%D We would like to divide 1 by $X$, but all divisions are integer so %D for accuracy we want to convert to large integers and make sure the %D integer quotient has as many significant digits as possible. Thus we %D need to replace $1/X$ with $M/N$ where $N$ is as large as possible @@ -1250,7 +1250,7 @@ %D largest legal integer. Using it (and simply ignoring the inaccuracy %D caused by $-1$) turns out to be at least as accurate in all cases, %D and more accurate in some.} (largest legal power of 2) and adjust -%D $X4 downward (if necessary) to the the range $1-2^{16}$. This gives +%D $X$ downward (if necessary) to the the range $1-2^{16}$. This gives %D at least 15 significant binary digits, (almost as accurate as %D \METAPOST\ for numbers near 1) or almost 5 significant figures %D (decimal). @@ -1276,7 +1276,7 @@ %D is the right way to do $(1 \hbox{pt})/(X \hbox{pt})$ and get the %D answer in points. But we are limited to $2^{30}/X$. However, we %D actually do $[ 2^{30} / (X/2^K) ]*2^{2-K}$ where $K$ is the number -%D of halvings it takes to bring $X4 below $1 \hbox{pt}$. If $K$ is 0 +%D of halvings it takes to bring $X$ below $1 \hbox{pt}$. If $K$ is 0 %D or 1 we readjust by multiplying by 4 or 2, otherwise by halving %D $(K-2)$ times \type {\MPscratchCnt} holds the value of $K$ from %D \type {\MPadjustdimen}. @@ -1608,7 +1608,7 @@ %OLD \edef#2{\withoutpt\the\dimen18}% % p_x^\prime %OLD \edef#4{\withoutpt\the\dimen12}} % p_y^\prime -%D DHL: Ideally, $r_x$, $r_y$, $s_x4, $s_y$ should be in macros, not +%D DHL: Ideally, $r_x$, $r_y$, $s_x$, $s_y$ should be in macros, not %D dimensions (they are scalar quantities after all, not lengths). I %D suppose the authors decided to do calculations with integer %D arithmetic instead of using real factors because it's faster. diff --git a/tex/context/base/type-syn.tex b/tex/context/base/type-syn.tex index 894812d9c..16d0c0a83 100644 --- a/tex/context/base/type-syn.tex +++ b/tex/context/base/type-syn.tex @@ -98,7 +98,7 @@ \definefontsynonym [MathSymbolBold] [ComputerModernMath-Symbol-Bold] \stoptypescript -\starttypescript [serif] [modern,computer-modern-vari,latin-modern-vari] [name] +\starttypescript [serif] [modern-vari,computer-modern-vari,latin-modern-vari] [name] \definefontsynonym [Serif] [ComputerModernMono-Variable] \definefontsynonym [SerifBold] [Serif] \definefontsynonym [SerifItalic] [Serif] diff --git a/tex/context/base/x-res-01.tex b/tex/context/base/x-res-01.tex index 181641332..82c1116de 100644 --- a/tex/context/base/x-res-01.tex +++ b/tex/context/base/x-res-01.tex @@ -302,8 +302,8 @@ [section] [style=bfb] -\setupbodyfont - [pos] +% \setupbodyfont +% [pos] \setupinteractionmenu [bottom] |