From 225302722da7984c56407100abbfbfdd1a90e108 Mon Sep 17 00:00:00 2001 From: Hans Hagen Date: Tue, 31 Jan 2006 16:39:00 +0100 Subject: stable 2006.01.31 16:39 --- scripts/context/perl/texexec.pl | 6 +++++ tex/context/base/cont-new.tex | 2 +- tex/context/base/cont-sys.ori | 1 + tex/context/base/context.tex | 2 +- tex/context/base/core-mat.tex | 7 +++--- tex/context/base/core-mis.tex | 8 +++---- tex/context/base/core-sec.tex | 6 ++--- tex/context/base/core-ver.tex | 3 ++- tex/context/base/enco-fde.tex | 4 ++-- tex/context/base/lang-ctx.tex | 6 +++++ tex/context/base/lang-ini.tex | 45 ++++++++++++++++++++++++++++------- tex/context/base/lang-run.tex | 6 +++-- tex/context/base/m-gamma.tex | 38 ++++++++++++++--------------- tex/context/base/page-imp.tex | 50 ++++++++++++++++++++++----------------- tex/context/base/plus-rul.tex | 18 ++++++++++---- tex/context/interface/keys-cz.xml | 2 +- tex/context/interface/keys-de.xml | 2 +- tex/context/interface/keys-en.xml | 2 +- tex/context/interface/keys-fr.xml | 2 +- tex/context/interface/keys-it.xml | 2 +- tex/context/interface/keys-nl.xml | 2 +- tex/context/interface/keys-ro.xml | 2 +- tex/context/user/cont-sys.rme | 1 + 23 files changed, 138 insertions(+), 79 deletions(-) diff --git a/scripts/context/perl/texexec.pl b/scripts/context/perl/texexec.pl index 7da7ff28b..ba12bf3a3 100644 --- a/scripts/context/perl/texexec.pl +++ b/scripts/context/perl/texexec.pl @@ -355,6 +355,12 @@ if ( $ARGV[0] && $ARGV[0] =~ /\.mpx$/io ) { # catch -tex=.... bug in mpost #### +if ($Version) { + $Purge = 1 ; + } + +#### + if ($Paranoid) { $ENV{shell_escape} = 'f' ; $ENV{openout_any} = 'p' ; diff --git a/tex/context/base/cont-new.tex b/tex/context/base/cont-new.tex index fafffa470..60025ca47 100644 --- a/tex/context/base/cont-new.tex +++ b/tex/context/base/cont-new.tex @@ -24,7 +24,7 @@ \normalend}} \fi -\newcontextversion{2006.01.28 10:09} +\newcontextversion{2006.01.31 16:39} %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-sys.ori b/tex/context/base/cont-sys.ori index 99434e471..fff231619 100644 --- a/tex/context/base/cont-sys.ori +++ b/tex/context/base/cont-sys.ori @@ -90,6 +90,7 @@ \loadmapfile[original-base.map] \loadmapfile[original-ams-base.map] + \loadmapfile[original-ams-euler.map] \loadmapfile[original-public-lm.map] \else diff --git a/tex/context/base/context.tex b/tex/context/base/context.tex index 314f9dd2f..194c201a2 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{2006.01.28 10:09} +\def\contextversion{2006.01.31 16:39} %D For those who want to use this: diff --git a/tex/context/base/core-mat.tex b/tex/context/base/core-mat.tex index 603f18d62..68d0ceec2 100644 --- a/tex/context/base/core-mat.tex +++ b/tex/context/base/core-mat.tex @@ -1517,7 +1517,7 @@ \!!toksc\emptytoks \buildeqalign \null\,\vcenter - {\openup{.25\bodyfontsize}% was: \openup\jot + {\openup.25\bodyfontsize% was: \openup\jot \mathsurround\zeropoint \expandafter \ialign \expandafter {\the\scratchtoks\crcr#1\crcr}% }\,} @@ -1623,7 +1623,7 @@ % todo: pop in cell \def\dostartmathalignment[#1][#2]% - {\begingroup + {% \begingroup not permitted ($$...assignments...\halign... ) \pushmacro\doalignNC \edef\currentmathalignment{#1}% \doifassignmentelse{#2}{\setupmathalignment[#1][#2]}\donothing @@ -1643,8 +1643,7 @@ \def\dostopmathalignment {\finishalignno - \popmacro\doalignNC - \endgroup} + \popmacro\doalignNC} \def\definemathalignment {\dodoubleempty\dodefinemathalignment} diff --git a/tex/context/base/core-mis.tex b/tex/context/base/core-mis.tex index 475383ea6..cf32e7c5f 100644 --- a/tex/context/base/core-mis.tex +++ b/tex/context/base/core-mis.tex @@ -886,7 +886,7 @@ \c!right=, \c!level=0, \c!repeat=\v!no, - \c!method=\s!font, + \c!method=, #2]}% {\doifdefined{#2} {\copyparameters[\??ci#1][\??ci#2] @@ -920,8 +920,8 @@ \def\currentdelimitedtext{#1}% \doifelse{\delimitedtextparameter\c!method}\s!font {\doglobal\decrementvalue{\??ci\currentdelimitedtext\c!level}% - \def\dostopdelimitedtext{\nohandledelimitedtext\c!right}% - \nohandledelimitedtext\c!left} + \def\dostopdelimitedtext{\removeunwantedspaces\ignoredelimitedtext\c!right}% + \ignoredelimitedtext\c!left\ignorespaces} {\doifelse{\delimitedtextparameter\c!repeat}\v!yes {\let\dohandlerepeatdelimitedtext\dorepeatdelimitedtext}% {\let\dohandlerepeatdelimitedtext\relax}% @@ -1016,7 +1016,7 @@ \fi \endgroup} -\def\nohandledelimitedtext#1#2% +\def\ignoredelimitedtext#1% {\delimitedtextparameter#1} \def\handledelimitedtext#1% diff --git a/tex/context/base/core-sec.tex b/tex/context/base/core-sec.tex index 64429e389..2c4db940b 100644 --- a/tex/context/base/core-sec.tex +++ b/tex/context/base/core-sec.tex @@ -2145,7 +2145,7 @@ {\setvalue{\??ko:#1}{#2}% \setvalue{\??ko::#1}} -\def\@@placehead +\def\normalplacehead {\executeifdefined {\??ko::\numberheadalternative} {\getvalue{\??ko::\v!normal}}} @@ -2251,7 +2251,7 @@ \c!resetnumber=\v!yes, \c!incrementnumber=\v!yes, \c!alternative=\@@koalternative, - \c!command=\@@placehead, + \c!command=\normalplacehead, \c!separator=\@@koseparator, \c!align=\@@koalign, \c!aligntitle=\@@koaligntitle, @@ -2323,7 +2323,7 @@ % set \c!command to nothing and (quite natural) got the % wrong references etc. The whole bunch should be boxed! \expandafter\convertcommand\csname\??ko#1\c!command\endcsname\to\ascii - \doifnothing\ascii{\setvalue{\??ko#1\c!command}{\@@placehead}}} + \doifnothing\ascii{\setvalue{\??ko#1\c!command}{\normalplacehead}}} \def\setuphead {\dodoubleargumentwithset\dosetuphead} diff --git a/tex/context/base/core-ver.tex b/tex/context/base/core-ver.tex index ec438d730..b5aa36fd9 100644 --- a/tex/context/base/core-ver.tex +++ b/tex/context/base/core-ver.tex @@ -182,7 +182,8 @@ \doifnumberelse{\getvalue{#1\c!tab}} {\def\obeytabs{\setfixedtabskips{\getvalue{#1\c!tab}}}}% \donothing - \def\verbatimfont{\getvalue{#1\c!style}\normalnoligatures\font}% +% \def\verbatimfont{\getvalue{#1\c!style}\normalnoligatures\font}% + \def\verbatimfont{\dosetfontattribute{#1}\c!style\normalnoligatures\font}% \setupverbatimcolor{#1}} \ifx\normalnoligatures\undefined \let\normalnoligatures\gobbleoneargument \fi diff --git a/tex/context/base/enco-fde.tex b/tex/context/base/enco-fde.tex index 4dee53d21..cc69f3b44 100644 --- a/tex/context/base/enco-fde.tex +++ b/tex/context/base/enco-fde.tex @@ -59,8 +59,8 @@ \startlanguagespecifics[\s!de] - \installcompoundcharacter "` {\startdelimitedtext[\v!quotation]} - \installcompoundcharacter "' {\stopdelimitedtext} + \installcompoundcharacter "` {\delimitedtext[\v!quotation]} + \installcompoundcharacter "' {} \installcompoundcharacter ". {\kern.1em\ignorespaces} \def\setupDElanguage diff --git a/tex/context/base/lang-ctx.tex b/tex/context/base/lang-ctx.tex index b3a2e020f..a686069b5 100644 --- a/tex/context/base/lang-ctx.tex +++ b/tex/context/base/lang-ctx.tex @@ -44,4 +44,10 @@ \installlanguage [\s!vn] [\s!mapping=t5,\s!encoding=t5] +% beware, don't use \setuplanguage here + +\installlanguage[\s!en][\s!lefthyphenmin=2,\s!righthyphenmin=3] % patterns can only handle this +\installlanguage[\s!uk][\s!lefthyphenmin=3,\s!righthyphenmin=3] % patterns can only handle this +\installlanguage[\s!us][\s!lefthyphenmin=2,\s!righthyphenmin=3] % patterns can only handle this + \protect \endinput diff --git a/tex/context/base/lang-ini.tex b/tex/context/base/lang-ini.tex index d3295128a..9bce8b7dc 100644 --- a/tex/context/base/lang-ini.tex +++ b/tex/context/base/lang-ini.tex @@ -283,6 +283,8 @@ \s!patterns=, \s!mapping=, \s!encoding=, + \s!lefthyphenmin=\defaultlanguageparameter\s!lefthyphenmin, + \s!righthyphenmin=\defaultlanguageparameter\s!righthyphenmin, #2]}% \doifvalue{\??la#1\c!default}{#1}{\letvalue{\??la#1\c!default}\empty}% % loop in deo: \doifvalue{\??la#1\s!patterns}{#1}{\letvalue{\??la#1\c!default}\empty}% @@ -407,13 +409,8 @@ %D Quick and dirty, but useful: %D %D \showsetup{setuplanguage} - -% \def\setuplanguage -% {\dodoubleargument\dosetuplanguage} - -% \def\dosetuplanguage[#1][#2]% -% {\getparameters[\??la#1][#2]% -% \doif{#1}\currentlanguage\docomplexlanguage} +%D +%D Beware, this command can only be used when a language is installed. \unprotected \def\setuplanguage {\dodoubleempty\dosetuplanguage} @@ -712,12 +709,18 @@ % \def\languageparameter#1% % {\csname\??la\defaultlanguage\currentlanguage#1\endcsname} -\def\languageparameter +\def\languageparameter % @EA = speedup {\@EA\dolanguageparameter\@EA{\defaultlanguage\currentlanguage}} -\def\xxlanguageparameter#1% +\def\specificlanguageparameter#1% @EA = speedup + {\@EA\dospecificlanguageparameter\@EA{\defaultlanguage{#1}}{#1}} + +\def\xxlanguageparameter#1% @EA = speedup {\@EA\dolanguageparameter\@EA{\defaultlanguage{#1}}} +\def\defaultlanguageparameter#1% + {\csname\??la\s!default#1\endcsname} + \beginETEX \def\dolanguageparameter#1#2% @@ -731,6 +734,17 @@ \fi\fi #2\endcsname} + \def\dospecificlanguageparameter#1#2#3% + {\csname\??la + \ifcsname\??la#2#3\endcsname + \@EA\ifx\csname\??la#2#3\endcsname\empty\s!default\else#2\fi + \else\ifcsname\??la#1#3\endcsname + \@EA\ifx\csname\??la#1#3\endcsname\empty\s!default\else#1\fi + \else + \s!default + \fi\fi + #3\endcsname} + \endETEX \beginTEX @@ -748,6 +762,19 @@ \fi #2\endcsname} + \def\dospecificlanguageparameter#1#2#3% + {\csname\??la + \@EA\ifx\csname\??la#2#3\endcsname\relax + \@EA\ifx\csname\??la#1#3\endcsname\relax + \s!default + \else + \@EA\ifx\csname\??la#1#3\endcsname\empty\s!default\else#1\fi + \fi + \else + \@EA\ifx\csname\??la#2#3\endcsname\empty\s!default\else#2\fi + \fi + #3\endcsname} + \endTEX % moved diff --git a/tex/context/base/lang-run.tex b/tex/context/base/lang-run.tex index 76e38e4c5..4b332cfb9 100644 --- a/tex/context/base/lang-run.tex +++ b/tex/context/base/lang-run.tex @@ -20,11 +20,13 @@ {\bgroup \def\doshowpatterns##1##2##3##4% language number encoding mapping {\NC##1\NC##3\NC##4\NC##2\NC - \xxlanguageparameter{##1}\s!lefthyphenmin\NC\xxlanguageparameter{##1}\s!righthyphenmin\NC\NR}% + \specificlanguageparameter{##1}\s!lefthyphenmin \NC + \specificlanguageparameter{##1}\s!righthyphenmin\NC\NR}% \starttabulate[|c|c|c|c|c|c|] \HL \NC \bf language \NC \bf encoding \NC \bf mapping \NC \bf number \NC - \bf left\low{min} \NC \bf right\low{min} \NC \NR + \bf left\low{min} \NC + \bf right\low{min} \NC \NR \HL \preloadedpmessage \HL diff --git a/tex/context/base/m-gamma.tex b/tex/context/base/m-gamma.tex index 698613db9..05f5d3a42 100644 --- a/tex/context/base/m-gamma.tex +++ b/tex/context/base/m-gamma.tex @@ -2,21 +2,21 @@ %D [ file=m-gamma, %D version=2002.05.15, %D title=\CONTEXT\ Extra Modules, -%D subtitle=Basic \OMEGA\ Support, +%D subtitle=Basic \OMEGA\ Support, %D author={Idris Samawi Hamid, Hans Hagen}, %D date=\currentdate, %D copyright={PRAGMA-ADE, Idris Samawi Hamid}] %D %C This module is part of the \CONTEXT\ macro||package and is -%C therefore copyrighted by \PRAGMA. See mreadme.pdf for -%C details. +%C therefore copyrighted by \PRAGMA. See mreadme.pdf for +%C details. -%D Most of this module is written by Idris Samawi Hamid. +%D Most of this module is written by Idris Samawi Hamid. -%D We define a couple of symbolic \OTP\ filters and -%D sequences. First the filters: -%D -%D Todo: better names, no funny abbreviations. +%D We define a couple of symbolic \OTP\ filters and +%D sequences. First the filters: +%D +%D Todo: better names, no funny abbreviations. \definefiltersynonym [utf8 to unicode16] [inutf8] \definefiltersynonym [IdOCP] [id] @@ -90,12 +90,12 @@ [SindhiOCP] [SindhiUni,UniCUni,CUniArab] -%D We wrap a couple of languages in environmen tmacros. +%D We wrap a couple of languages in environmen tmacros. %D beware: this solution is far from perfect! -%D -%D Todo: better interface to directional primitives. %D -%D Todo: proper language support (labels etc). +%D Todo: better interface to directional primitives. +%D +%D Todo: proper language support (labels etc). \definestartstop [latin] @@ -108,7 +108,7 @@ [commands=% {\usefiltersequence[GreekOCP]% \switchtobodyfont[omlgc]% - \language=3\lefthyphenmin=2\righthyphenmin=2}] + \language=3\lefthyphenmin2\righthyphenmin=2}] \definestartstop [arab] @@ -183,14 +183,14 @@ \let\typeout\message \input grlccode.tex -%D We (pre)define a couple of fonts: +%D We (pre)define a couple of fonts: \usetypescriptfile[type-omg] \usetypescript[OmegaArab] \usetypescript[OmegaLGC] -%D Dangerous definitions: +%D Dangerous definitions: \startencoding[omega] @@ -201,7 +201,7 @@ \definecharacter dotlessi {^^^^0131} \definecharacter ssharp {^^^^00df} -\stopencoding +\stopencoding \enableencoding [omega] @@ -210,20 +210,20 @@ \unexpanded \def\OMEGA {{\switchtobodyfont[omlgc]^^^^03a9}} \unexpanded \def\OTP {\OMEGA TP} -%D A few funny definitions: +%D A few funny definitions: \def\#{^^^^f023} \def\${^^^^f024} \def\%{^^^^f025} \def\&{^^^^f026} -%D I have no idea what this has to do with omega: +%D I have no idea what this has to do with omega: \def\heshe {\lohi{he} {she}} \def\himher{\lohi{him}{her}} \def\hisher{\lohi{his}{her}} -% Brrr +% Brrr \setuptolerance [verytolerant] diff --git a/tex/context/base/page-imp.tex b/tex/context/base/page-imp.tex index a37a0ba4b..bb8247e63 100644 --- a/tex/context/base/page-imp.tex +++ b/tex/context/base/page-imp.tex @@ -718,28 +718,34 @@ % \starttext \dorecurse{30}{test \recurselevel \page} \stoptext \def\pusharrangedpageXY#1% - {\doglobal\increment\arrangedpageN - \reportarrangedpage\arrangedpageN - \doglobal\increment\arrangedpageM - \global\setbox\arrangedpageB\hbox - \ifdim\@@ppwidth>\zeropoint to \@@ppwidth \fi - {\ifvoid\arrangedpageB\else - \unhbox\arrangedpageB\hss\hskip\@@ppdx\hss - \fi - \box#1}% - \ifnum\arrangedpageM<\arrangedpageX\else - \global\setbox\arrangedpageA\vbox - \ifdim\@@ppheight>\zeropoint to \@@ppheight \fi - {\offinterlineskip - \ifvoid\arrangedpageA\else - \unvbox\arrangedpageA\vss\vskip\@@ppdy\vss - \fi - \box\arrangedpageB}% - \doglobal\newcounter\arrangedpageM - \fi - \ifnum\arrangedpageN<\arrangedpageT\else - \poparrangedpages - \fi} + {\doglobal\increment\arrangedpageN + \reportarrangedpage\arrangedpageN + \doglobal\increment\arrangedpageM + \global\setbox\arrangedpageB\hbox + \ifdim\@@ppwidth>\zeropoint to \@@ppwidth \fi + {\ifvoid\arrangedpageB\else + \unhbox\arrangedpageB + \ifdim\@@ppdx>\zeropoint \else \hss\fi + \hskip\@@ppdx + \ifdim\@@ppdx>\zeropoint \else \hss\fi + \fi + \box#1}% + \ifnum\arrangedpageM<\arrangedpageX\else + \global\setbox\arrangedpageA\vbox + \ifdim\@@ppheight>\zeropoint to \@@ppheight \fi + {\offinterlineskip + \ifvoid\arrangedpageA\else + \unvbox\arrangedpageA + \ifdim\@@ppdy>\zeropoint \else \vss\fi + \vskip\@@ppdy + \ifdim\@@ppdy>\zeropoint \else \vss\fi + \fi + \box\arrangedpageB}% + \doglobal\newcounter\arrangedpageM + \fi + \ifnum\arrangedpageN<\arrangedpageT\else + \poparrangedpages + \fi} \def\poparrangedpagesXY {\ifnum\arrangedpageN>\zerocount diff --git a/tex/context/base/plus-rul.tex b/tex/context/base/plus-rul.tex index 57d94cfb1..ff56305b5 100644 --- a/tex/context/base/plus-rul.tex +++ b/tex/context/base/plus-rul.tex @@ -107,11 +107,14 @@ linecolor=\getvalue{\??sr#1\c!rulecolor}, distance=\the\sidebardistance}}% \stoppositionoverlay - \edef\stopsidebar{\noexpand\dostopsidebar{\currentsidebar}}% +% \edef\stopsidebar{\noexpand\dostopsidebar{\currentsidebar}}% \bpos{side:\currentsidebar}\ignorespaces} -\def\dostopsidebar#1% - {\removelastspace\tpos{side:#1}\carryoverpar\egroup} +% \def\dostopsidebar#1% +% {\removelastspace\tpos{side:#1}\carryoverpar\egroup} + +\def\stopsidebar + {\removelastspace\tpos{side:\currentsidebar}\carryoverpar\egroup} \startMPpositionmethod{mpos:bar} \startMPpositiongraphic{mpos:bar}{linecolor,linewidth,distance}% @@ -165,7 +168,12 @@ [\v!margin] [\c!rulecolor=\s!black, \c!rulethickness=\@@karulethickness, - \c!distance=\dimexpr(\leftmargindistance-\@@karulethickness/2)] + \c!distance=\dimexpr\leftmargindistance-\@@karulethickness/2\relax] + +\definecomplexorsimple\startmarginrule + +\def\simplestartmarginrule + {\complexstartmarginrule[1]} \def\complexstartmarginrule[#1]% {\bgroup @@ -181,4 +189,6 @@ {\stopsidebar \egroup} + + \protect \endinput diff --git a/tex/context/interface/keys-cz.xml b/tex/context/interface/keys-cz.xml index f324eaae6..2c7b2fff7 100644 --- a/tex/context/interface/keys-cz.xml +++ b/tex/context/interface/keys-cz.xml @@ -1,6 +1,6 @@ - + diff --git a/tex/context/interface/keys-de.xml b/tex/context/interface/keys-de.xml index 5e0eb2ba3..ea23f8f24 100644 --- a/tex/context/interface/keys-de.xml +++ b/tex/context/interface/keys-de.xml @@ -1,6 +1,6 @@ - + diff --git a/tex/context/interface/keys-en.xml b/tex/context/interface/keys-en.xml index dd57ab734..aa18a4407 100644 --- a/tex/context/interface/keys-en.xml +++ b/tex/context/interface/keys-en.xml @@ -1,6 +1,6 @@ - + diff --git a/tex/context/interface/keys-fr.xml b/tex/context/interface/keys-fr.xml index 1d316483e..9ca77894a 100644 --- a/tex/context/interface/keys-fr.xml +++ b/tex/context/interface/keys-fr.xml @@ -1,6 +1,6 @@ - + diff --git a/tex/context/interface/keys-it.xml b/tex/context/interface/keys-it.xml index b95a661bb..23632000f 100644 --- a/tex/context/interface/keys-it.xml +++ b/tex/context/interface/keys-it.xml @@ -1,6 +1,6 @@ - + diff --git a/tex/context/interface/keys-nl.xml b/tex/context/interface/keys-nl.xml index 6b973fb5e..272e96336 100644 --- a/tex/context/interface/keys-nl.xml +++ b/tex/context/interface/keys-nl.xml @@ -1,6 +1,6 @@ - + diff --git a/tex/context/interface/keys-ro.xml b/tex/context/interface/keys-ro.xml index d01314b63..956c2cb53 100644 --- a/tex/context/interface/keys-ro.xml +++ b/tex/context/interface/keys-ro.xml @@ -1,6 +1,6 @@ - + diff --git a/tex/context/user/cont-sys.rme b/tex/context/user/cont-sys.rme index 99434e471..fff231619 100644 --- a/tex/context/user/cont-sys.rme +++ b/tex/context/user/cont-sys.rme @@ -90,6 +90,7 @@ \loadmapfile[original-base.map] \loadmapfile[original-ams-base.map] + \loadmapfile[original-ams-euler.map] \loadmapfile[original-public-lm.map] \else -- cgit v1.2.3