From 28b6768726b1fc30e1bae370cfa04632b52542c3 Mon Sep 17 00:00:00 2001 From: Hans Hagen Date: Mon, 19 Dec 2005 00:00:00 +0100 Subject: stable 2005.12.19 --- tex/context/base/context.tex | 2 +- tex/context/base/core-spa.tex | 10 ++-- tex/context/base/enco-pfr.tex | 17 +++--- tex/context/base/hand-ini.tex | 4 ++ tex/context/base/meta-ini.tex | 22 ++++++- tex/context/base/regi-il9.tex | 118 ++++++++++++++++++++++++++++++++++++++ tex/context/base/supp-mps.tex | 22 ++++++- tex/context/base/type-exa.tex | 2 +- tex/context/base/unic-ini.tex | 20 +++---- tex/context/base/verb-ini.tex | 2 +- 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-it.xml | 2 +- tex/context/interface/keys-nl.xml | 2 +- tex/context/interface/keys-ro.xml | 2 +- 16 files changed, 199 insertions(+), 32 deletions(-) create mode 100644 tex/context/base/regi-il9.tex (limited to 'tex') diff --git a/tex/context/base/context.tex b/tex/context/base/context.tex index 4e468a414..504345cdb 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.12.18} +\def\contextversion{2005.12.19} %D For those who want to use this: diff --git a/tex/context/base/core-spa.tex b/tex/context/base/core-spa.tex index 369061027..da8108c22 100644 --- a/tex/context/base/core-spa.tex +++ b/tex/context/base/core-spa.tex @@ -2815,8 +2815,10 @@ \setvalue{\@@ragged@@command\v!nothanging }{\appendtoks\disableprotruding \to\everyraggedcommand} \setvalue{\@@ragged@@command\v!hz }{\appendtoks\enableadjusting \to\everyraggedcommand} \setvalue{\@@ragged@@command\v!nohz }{\appendtoks\disableadjusting \to\everyraggedcommand} -\setvalue{\@@ragged@@command\v!spacing }{\appendtoks\enablespacehandling \to\everyraggedcommand} -\setvalue{\@@ragged@@command\v!nospacing }{\appendtoks\disablespacehandling\to\everyraggedcommand} +\setvalue{\@@ragged@@command\v!spacing }{\appendtoks\enablespacehandling + \enablekernhandling \to\everyraggedcommand} +\setvalue{\@@ragged@@command\v!nospacing }{\appendtoks\disablespacehandling + \disablekernhandling \to\everyraggedcommand} \setvalue{\@@ragged@@command\v!hyphenated }{\appendtoks\dohyphens \to\everyraggedcommand} \setvalue{\@@ragged@@command\v!nothyphenated}{\appendtoks\nohyphens \to\everyraggedcommand} @@ -3850,8 +3852,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!spacing }{\enablespacehandling \enablekernhandling} +\setvalue{@@align@@\v!nospacing }{\disablespacehandling\disablekernhandling} \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-pfr.tex b/tex/context/base/enco-pfr.tex index 9507d9e4e..faa8a85b1 100644 --- a/tex/context/base/enco-pfr.tex +++ b/tex/context/base/enco-pfr.tex @@ -164,7 +164,7 @@ \def\dododoincludepdffontresource#1% encoding {\bgroup - \def\currentencoding{#1}% + \edef\currentencoding{#1}% \doifvaluesomething\pdffontfileresource {\startreadingfile \readsysfile{pdfr-\getvalue\pdffontfileresource}\donothing\donothing @@ -190,9 +190,10 @@ \doifsomething\pdffontfileresource {\pdfobj reserveobjnum {}% \setxvalue\pdffontresource{\the\pdflastobj}% - \doglobal\appendetoks - \noexpand\dododoincludepdffontresource{\currentencoding}% - \to \everybeforeshipout}% prevent multiple loading + \flushatshipout{\dododoincludepdffontresource{\currentencoding}}}% +% \doglobal\appendetoks +% \noexpand\dododoincludepdffontresource{\currentencoding}% +% \to \everybeforeshipout}% prevent multiple loading \fi\fi \ifcsname\pdffontresource\endcsname \expanded{\pdffontattr\font{/ToUnicode \csname\pdffontresource\endcsname\space0 R}}% @@ -200,6 +201,7 @@ \letgvalue{\s!ucmap\fontfile}\empty \fi}} + \endETEX \beginTEX @@ -216,9 +218,10 @@ \doifsomething\pdffontfileresource {\pdfobj reserveobjnum {}% \setxvalue\pdffontresource{\the\pdflastobj}% - \doglobal\appendetoks - \noexpand\dododoincludepdffontresource{\currentencoding}% - \to \everybeforeshipout}% prevent multiple loading + \flushatshipout{\dododoincludepdffontresource{\currentencoding}}}% +% \doglobal\appendetoks +% \noexpand\dododoincludepdffontresource{\currentencoding}% +% \to \everybeforeshipout}% prevent multiple loading \fi \fi \expandafter\ifx\csname\pdffontresource\endcsname\relax\else diff --git a/tex/context/base/hand-ini.tex b/tex/context/base/hand-ini.tex index 588d635a9..cdbf5643a 100644 --- a/tex/context/base/hand-ini.tex +++ b/tex/context/base/hand-ini.tex @@ -394,6 +394,8 @@ \let\enablespacehandling \relax \let\disablespacehandling \relax + \let\enablekernhandling \relax + \let\disablekernhandling \relax \let\setspacehandling \gobbleoneargument @@ -404,6 +406,8 @@ \def\enablespacehandling {\pdfadjustinterwordglue\plusone } \def\disablespacehandling{\pdfadjustinterwordglue\minusone} + \def\enablekernhandling {\pdfprependkern \plusone } + \def\disablekernhandling {\pdfprependkern \minusone} \appendtoks \disablespacehandling \to \everyforgetall % Here or not here? diff --git a/tex/context/base/meta-ini.tex b/tex/context/base/meta-ini.tex index 0ccb60616..6d054b0fb 100644 --- a/tex/context/base/meta-ini.tex +++ b/tex/context/base/meta-ini.tex @@ -934,7 +934,7 @@ %D New: -\definelayerpreset +\definelayerpreset % no dx,dy - else nasty non-mp placement [mp] [\c!y=-\MPury bp, \c!x=\MPllx bp, @@ -963,6 +963,26 @@ %D %D \ruledhbox{\flushlayer[mp]} %D \stoptyping +%D +%D Reusing graphics is also possible (now): +%D +%D \starttyping +%D \startreusableMPgraphic{axis} +%D tickstep := 1cm ; ticklength := 2mm ; +%D drawticks unitsquare xscaled 4cm yscaled 3cm shifted (-1cm,-1cm) ; +%D tickstep := tickstep/2 ; ticklength := ticklength/2 ; +%D drawticks unitsquare xscaled 4cm yscaled 3cm shifted (-1cm,-1cm) ; +%D \stopreusableMPgraphic +%D +%D \startuseMPgraphic{demo} +%D drawpoint "1cm,1.5cm" ; +%D \stopuseMPgraphic +%D +%D \definelayer[mp][preset=mp] +%D \setlayer[mp]{\reuseMPgraphic{axis}} +%D \setlayer[mp]{\useMPgraphic{demo}} +%D \ruledhbox{\flushlayer[mp]} +%D \stoptyping %D New: diff --git a/tex/context/base/regi-il9.tex b/tex/context/base/regi-il9.tex new file mode 100644 index 000000000..387404e4b --- /dev/null +++ b/tex/context/base/regi-il9.tex @@ -0,0 +1,118 @@ +%D \module +%D [ file=regi-il9, +%D version=2005.12.18, +%D title=\CONTEXT\ Encoding Macros, +%D subtitle=ISO 8859-15 (latin-9), +%D author={Taco Hoekwater}, +%D date=\currentdate, +%D copyright=PRAGMA-ADE] +%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 This module activates the ISO 8859-15 character set +%D characters (western europe), such as ë and á. + +\startregime [il9] + +\defineactivetoken 160 {\nonbreakablespace} +\defineactivetoken 161 {\exclamdown} +\defineactivetoken 162 {\textcent} +\defineactivetoken 163 {\textsterling} +\defineactivetoken 164 {\texteuro} +\defineactivetoken 165 {\textyen} +\defineactivetoken 166 {\Scaron} +\defineactivetoken 167 {\sectionmark} +\defineactivetoken 168 {\scaron} +\defineactivetoken 169 {\copyright} +\defineactivetoken 170 {\ordfeminine} +\defineactivetoken 171 {\leftguillemot} +\defineactivetoken 172 {\textlognot} +\defineactivetoken 173 {\hyphen} +\defineactivetoken 174 {\registered} +\defineactivetoken 175 {\textmacron} +\defineactivetoken 176 {\textdegree} +\defineactivetoken 177 {\textpm} +\defineactivetoken 178 {\twosuperior} +\defineactivetoken 179 {\threesuperior} +\defineactivetoken 180 {\Zcaron} +\defineactivetoken 181 {\textmu} +\defineactivetoken 182 {\paragraphmark} +\defineactivetoken 183 {\periodcentered} +\defineactivetoken 184 {\zcaron} +\defineactivetoken 185 {\onesuperior} +\defineactivetoken 186 {\ordmasculine} +\defineactivetoken 187 {\rightguillemot} +\defineactivetoken 188 {\OEligature} +\defineactivetoken 189 {\oeligature} +\defineactivetoken 190 {\Ydiaeresis} +\defineactivetoken 191 {\questiondown} +\defineactivetoken 192 {\Agrave} +\defineactivetoken 193 {\Aacute} +\defineactivetoken 194 {\Acircumflex} +\defineactivetoken 195 {\Atilde} +\defineactivetoken 196 {\Adiaeresis} +\defineactivetoken 197 {\Aring} +\defineactivetoken 198 {\AEligature} +\defineactivetoken 199 {\Ccedilla} +\defineactivetoken 200 {\Egrave} +\defineactivetoken 201 {\Eacute} +\defineactivetoken 202 {\Ecircumflex} +\defineactivetoken 203 {\Ediaeresis} +\defineactivetoken 204 {\Igrave} +\defineactivetoken 205 {\Iacute} +\defineactivetoken 206 {\Icircumflex} +\defineactivetoken 207 {\Idiaeresis} +\defineactivetoken 208 {\Eth} +\defineactivetoken 209 {\Ntilde} +\defineactivetoken 210 {\Ograve} +\defineactivetoken 211 {\Oacute} +\defineactivetoken 212 {\Ocircumflex} +\defineactivetoken 213 {\Otilde} +\defineactivetoken 214 {\Odiaeresis} +\defineactivetoken 215 {\textmultiply} +\defineactivetoken 216 {\Ostroke} +\defineactivetoken 217 {\Ugrave} +\defineactivetoken 218 {\Uacute} +\defineactivetoken 219 {\Ucircumflex} +\defineactivetoken 220 {\Udiaeresis} +\defineactivetoken 221 {\Yacute} +\defineactivetoken 222 {\Thorn} +\defineactivetoken 223 {\ssharp} +\defineactivetoken 224 {\agrave} +\defineactivetoken 225 {\aacute} +\defineactivetoken 226 {\acircumflex} +\defineactivetoken 227 {\atilde} +\defineactivetoken 228 {\adiaeresis} +\defineactivetoken 229 {\aring} +\defineactivetoken 230 {\aeligature} +\defineactivetoken 231 {\ccedilla} +\defineactivetoken 232 {\egrave} +\defineactivetoken 233 {\eacute} +\defineactivetoken 234 {\ecircumflex} +\defineactivetoken 235 {\ediaeresis} +\defineactivetoken 236 {\igrave} +\defineactivetoken 237 {\iacute} +\defineactivetoken 238 {\icircumflex} +\defineactivetoken 239 {\idiaeresis} +\defineactivetoken 240 {\eth} +\defineactivetoken 241 {\ntilde} +\defineactivetoken 242 {\ograve} +\defineactivetoken 243 {\oacute} +\defineactivetoken 244 {\ocircumflex} +\defineactivetoken 245 {\otilde} +\defineactivetoken 246 {\odiaeresis} +\defineactivetoken 247 {\textdiv} +\defineactivetoken 248 {\ostroke} +\defineactivetoken 249 {\ugrave} +\defineactivetoken 250 {\uacute} +\defineactivetoken 251 {\ucircumflex} +\defineactivetoken 252 {\udiaeresis} +\defineactivetoken 253 {\yacute} +\defineactivetoken 254 {\thorn} +\defineactivetoken 255 {\ydiaeresis} + +\stopregime + +\endinput diff --git a/tex/context/base/supp-mps.tex b/tex/context/base/supp-mps.tex index 97bd09a89..6fc7796c8 100644 --- a/tex/context/base/supp-mps.tex +++ b/tex/context/base/supp-mps.tex @@ -852,6 +852,18 @@ \newcount\MPobjectcounter +% \def\douseMPbox#1% +% {\global\advance\MPobjectcounter\plusone +% \setobject{MP}{\number\MPobjectcounter}\vbox +% {\forgetall +% \loadMPgraphic{\MPgraphicfile.\the\currentMPgraphic}{}% +% \deallocateMPslot\currentMPgraphic +% \placeMPgraphic}% +% \setxvalue{#1}{\noexpand\getobject{MP}{\number\MPobjectcounter}}} +% +% The next one saves the boundingbox. This helps positioning reused +% graphics in layers. + \def\douseMPbox#1% {\global\advance\MPobjectcounter\plusone \setobject{MP}{\number\MPobjectcounter}\vbox @@ -859,7 +871,15 @@ \loadMPgraphic{\MPgraphicfile.\the\currentMPgraphic}{}% \deallocateMPslot\currentMPgraphic \placeMPgraphic}% - \setxvalue{#1}{\noexpand\getobject{MP}{\number\MPobjectcounter}}} + \setxvalue{#1}% + {\noexpand\dodouseMPbox{\number\MPobjectcounter}{\MPllx}{\MPlly}{\MPurx}{\MPury}}} + +\def\dodouseMPbox#1#2#3#4#5% space delimiting would save some tokens + {\xdef\MPllx{#2}% but it's not worth the effort and looks + \xdef\MPlly{#3}% ugly as well + \xdef\MPurx{#4}% + \xdef\MPury{#5}% + \getobject{MP}{#1}} \def\nouseMPbox#1% {\setxvalue{#1}% diff --git a/tex/context/base/type-exa.tex b/tex/context/base/type-exa.tex index c7c17585d..4232955e5 100644 --- a/tex/context/base/type-exa.tex +++ b/tex/context/base/type-exa.tex @@ -191,7 +191,7 @@ \stoptypescript -\starttypescript [serif,sans,mono] [handling] [noligs] +\starttypescript [serif,sans,mono] [handling] [noligs,prespacing,flexspacing] \setupfontsynonym [\typescriptprefix\typescriptone ] [handling=\typescriptthree] \setupfontsynonym [\typescriptprefix\typescriptone Bold] [handling=\typescriptthree] diff --git a/tex/context/base/unic-ini.tex b/tex/context/base/unic-ini.tex index 01cf8b2fa..479b197be 100644 --- a/tex/context/base/unic-ini.tex +++ b/tex/context/base/unic-ini.tex @@ -402,23 +402,23 @@ \@EA\doutfunihash\@EA{\number\utfdiv{#1}}{#1}\endcsname \fi} -%D Well, we also want a plug-in mechanism, so: +%D Well, we also want a plug-in mechanism, so we en dup with +%D a messy: \def\utfunihashglyph#1% - {\@EA\doutfunihashglyph\@EA{\number\utfdiv{#1}}{#1}} % only div once + {\@EA\doutfunihashglyph\@EA{\number\numexpr\utfdiv{#1}\@EA\relax\@EA}\@EA{\number\utfmod{#1}}{#1}} -\def\doutfunihashglyph#1#2% div raw +\def\doutfunihashglyph#1#2#3% div mod raw {\csname - \ifnum#2<\utf@i - \strippedcsname\unicodeasciicharacter + \ifnum#3<\utf@i + \strippedcsname\unicodeasciicharacter\endcsname{#2}% \else\ifcsname\@@unicommand#1\endcsname - \@@unicommand#1% + \@@unicommand#1\endcsname{#2}% \else\ifcsname\@@univector#1\endcsname - \@@univector#1% + \csname\@@univector#1\endcsname{#2}\endcsname % watch the nested csname; it's a speed up \else - \strippedcsname\unicodeunknowncharacter - \fi\fi\fi - \@EA\endcsname\@EA{\number\utfmod{#2}}} + \strippedcsname\unicodeunknowncharacter\endcsname{#2}% + \fi\fi\fi} \def\unicodeunknowncharacter#1% {\unknownchar} diff --git a/tex/context/base/verb-ini.tex b/tex/context/base/verb-ini.tex index a43bb1e0a..0d587ecb7 100644 --- a/tex/context/base/verb-ini.tex +++ b/tex/context/base/verb-ini.tex @@ -982,8 +982,8 @@ \vskip\parskip \fi \parskip\zeropoint - \uncatcodecharacters \verbatimfont + \uncatcodecharacters \setverbatimspaceskip \frenchspacing \obeyspaces diff --git a/tex/context/interface/keys-cz.xml b/tex/context/interface/keys-cz.xml index 7def67236..6c7cfe533 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 d31b5a98c..9b3549ae2 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 39da2a27c..77afe6678 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-it.xml b/tex/context/interface/keys-it.xml index cd0bde1de..173310940 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 74856d310..5c18c3f7f 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 423e8a678..dcc0c0763 100644 --- a/tex/context/interface/keys-ro.xml +++ b/tex/context/interface/keys-ro.xml @@ -1,6 +1,6 @@ - + -- cgit v1.2.3