summaryrefslogtreecommitdiff
path: root/tex
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2005-12-19 00:00:00 +0100
committerHans Hagen <pragma@wxs.nl>2005-12-19 00:00:00 +0100
commit28b6768726b1fc30e1bae370cfa04632b52542c3 (patch)
tree445dfd14254cb6caedad514e4e55da8bf2475b5d /tex
parent64393514fca3f8f070dcc0f95955d846780d82e0 (diff)
downloadcontext-28b6768726b1fc30e1bae370cfa04632b52542c3.tar.gz
stable 2005.12.19
Diffstat (limited to 'tex')
-rw-r--r--tex/context/base/context.tex2
-rw-r--r--tex/context/base/core-spa.tex10
-rw-r--r--tex/context/base/enco-pfr.tex17
-rw-r--r--tex/context/base/hand-ini.tex4
-rw-r--r--tex/context/base/meta-ini.tex22
-rw-r--r--tex/context/base/regi-il9.tex118
-rw-r--r--tex/context/base/supp-mps.tex22
-rw-r--r--tex/context/base/type-exa.tex2
-rw-r--r--tex/context/base/unic-ini.tex20
-rw-r--r--tex/context/base/verb-ini.tex2
-rw-r--r--tex/context/interface/keys-cz.xml2
-rw-r--r--tex/context/interface/keys-de.xml2
-rw-r--r--tex/context/interface/keys-en.xml2
-rw-r--r--tex/context/interface/keys-it.xml2
-rw-r--r--tex/context/interface/keys-nl.xml2
-rw-r--r--tex/context/interface/keys-ro.xml2
16 files changed, 199 insertions, 32 deletions
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 @@
<?xml version="1.0"?>
-<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="cz" version="2005.12.18">
+<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="cz" version="2005.12.19">
<cd:variables>
<cd:variable name="one" value="jedna"/>
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 @@
<?xml version="1.0"?>
-<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="de" version="2005.12.18">
+<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="de" version="2005.12.19">
<cd:variables>
<cd:variable name="one" value="eins"/>
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 @@
<?xml version="1.0"?>
-<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="en" version="2005.12.18">
+<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="en" version="2005.12.19">
<cd:variables>
<cd:variable name="one" value="one"/>
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 @@
<?xml version="1.0"?>
-<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="it" version="2005.12.18">
+<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="it" version="2005.12.19">
<cd:variables>
<cd:variable name="one" value="uno"/>
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 @@
<?xml version="1.0"?>
-<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="nl" version="2005.12.18">
+<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="nl" version="2005.12.19">
<cd:variables>
<cd:variable name="one" value="een"/>
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 @@
<?xml version="1.0"?>
-<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="ro" version="2005.12.18">
+<cd:interface xmlns:cd="http://www.pragma-ade.com/commands" name="context" language="ro" version="2005.12.19">
<cd:variables>
<cd:variable name="one" value="unu"/>