From 0b61aa2fbf3667649962132eadfb1d78eab0be41 Mon Sep 17 00:00:00 2001 From: Hans Hagen Date: Tue, 13 Jan 2004 00:00:00 +0100 Subject: stable 2004.01.13 --- context/perltk/texfont.pl | 50 +- dvips/config/context.map | 9 +- metapost/context/base/mp-grid.mp | 184 +++---- metapost/context/base/mp-tool.mp | 34 +- pdftex/config/context/il2-ams-cmr.map | 56 --- pdftex/config/context/original-adobe-euro.map | 25 - pdftex/config/context/original-ams-cmr.map | 122 ----- pdftex/config/context/original-ams-euler.map | 19 - pdftex/config/context/original-context-symbol.map | 1 - pdftex/config/context/original-vogel-symbol.map | 2 - pdftex/config/context/original-youngryu-px.map | 47 -- pdftex/config/context/original-youngryu-tx.map | 86 ---- pdftex/config/context/pl0-ams-cmr.map | 77 --- tex/context/base/context.tex | 2 +- tex/context/base/core-fig.tex | 585 +--------------------- tex/context/base/core-lst.tex | 12 +- tex/context/base/core-not.tex | 1 + tex/context/base/core-sec.tex | 27 +- tex/context/base/core-spa.tex | 17 +- tex/context/base/core-tbl.tex | 22 +- tex/context/base/core-uti.tex | 7 +- tex/context/base/enco-acc.tex | 18 +- tex/context/base/enco-def.tex | 70 +-- tex/context/base/enco-pdf.tex | 54 +- tex/context/base/font-run.tex | 2 +- tex/context/base/mult-sys.tex | 4 +- tex/context/base/page-app.tex | 15 +- tex/context/base/page-imp.tex | 33 +- tex/context/base/page-ini.tex | 16 +- tex/context/base/page-lay.tex | 15 +- tex/context/base/page-mak.tex | 4 +- tex/context/base/page-not.tex | 2 +- tex/context/base/s-mag-01.tex | 39 +- tex/context/base/supp-mis.tex | 8 +- tex/context/base/supp-mps.tex | 176 ++++--- tex/context/base/supp-pdf.tex | 15 +- tex/context/base/syst-etx.tex | 60 +-- tex/context/base/unic-exp.tex | 2 +- tex/context/base/unic-ini.tex | 4 +- tex/context/base/xtag-exp.tex | 38 +- tex/context/base/xtag-raw.tex | 9 +- tex/context/base/xtag-run.tex | 82 +-- 42 files changed, 586 insertions(+), 1465 deletions(-) delete mode 100644 pdftex/config/context/il2-ams-cmr.map delete mode 100644 pdftex/config/context/original-adobe-euro.map delete mode 100644 pdftex/config/context/original-ams-cmr.map delete mode 100644 pdftex/config/context/original-ams-euler.map delete mode 100644 pdftex/config/context/original-context-symbol.map delete mode 100644 pdftex/config/context/original-vogel-symbol.map delete mode 100644 pdftex/config/context/original-youngryu-px.map delete mode 100644 pdftex/config/context/original-youngryu-tx.map delete mode 100644 pdftex/config/context/pl0-ams-cmr.map diff --git a/context/perltk/texfont.pl b/context/perltk/texfont.pl index 62aa2d81d..d9de200b6 100644 --- a/context/perltk/texfont.pl +++ b/context/perltk/texfont.pl @@ -8,7 +8,7 @@ eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}' && eval 'exec perl -S $0 $ #D \module #D [ file=texfont.pl, -#D version=2003.08.08, % 2000.12.14 +#D version=2004.01.10, % 2000.12.14 #D title=Font Handling, #D subtitle=installing and generating, #D author=Hans Hagen ++, @@ -26,7 +26,7 @@ eval '(exit $?0)' && eval 'exec perl -S $0 ${1+"$@"}' && eval 'exec perl -S $0 $ #D Todo : list of encodings [texnansi, ec, textext] #D Thanks to George N. White III for solving a couple of bugs. -#D Thanks to Adam T. Lindsay for adding Open Type support. +#D Thanks to Adam T. Lindsay for adding Open Type support (and more). use strict ; @@ -124,6 +124,9 @@ my $variant = "" ; # atl: encoding variant my $extension = "pfb" ; # atl: default font extension my $lcdf = "" ; # atl: trigger for lcdf otftotfm +my $pdfpath = 0 ; +my $mappath = 'dvips' ; + # todo: parse name for style, take face from command line # # @Faces = ("Serif","Sans","Mono") ; @@ -156,6 +159,7 @@ my $lcdf = "" ; # atl: trigger for lcdf otftotfm "batch" => \$batch, "weight=s" => \$weight, "width=s" => \$width, + "pdfpath" => \$pdfpath, # for old texmf trees < 2004 "expert" => \$expert, "preproc" => \$preproc, # atl: trigger conversion to pfb "lcdf" => \$lcdf ) ; # atl: trigger use of lcdf fonttoools @@ -174,6 +178,13 @@ if ($own_type =~ /pl/oi) { $own_stub = "perl " } if ($lcdf) { $novirtual = 1 } if (!$novirtual) { $virtual = 1 } +# starting with 2004 tetex/fptex/texlive will combine pdftex and dvips paths + +if ($pdfpath) + { $mappath = 'pdftex' } +else + { $mappath = 'dvips' } + # A couple of routines. sub report @@ -192,7 +203,7 @@ sub error # The banner. print "\n" ; -report ("TeXFont 1.8 - ConTeXt / PRAGMA ADE 2000-2003") ; +report ("TeXFont 2.0 - ConTeXt / PRAGMA ADE 2000-2004") ; print "\n" ; # Handy for scripts: one can provide a preferred path, if it @@ -299,6 +310,8 @@ if ($help) print "\n" ; report "--preproc : pre-process ttf/otf, converting them to pfb" ; report "--lcdf : use lcdf fonttools to create virtual encoding" ; + print "\n" ; + report "--pdfpath : use /pdftex/config (since 2004: /dvips/config)" ; exit } if (($batch)||(($ARGV[0]) && ($ARGV[0] =~ /.+\.dat$/io))) @@ -416,7 +429,7 @@ if ($sourcepath eq "auto") { report ("removing : $nam") ; unlink "$nam" } my $mapfile = "$encoding$varlabel-$vendor-$collection" ; - my $maproot = "$fontroot/pdftex/config/"; + my $maproot = "$fontroot/$mappath/config/"; if (-e "$maproot$mapfile.map") { report ("renaming : $mapfile.map -> $mapfile.bak") ; unlink "$maproot$mapfile.bak" ; @@ -434,7 +447,7 @@ my $tfmpath = "$fontroot/fonts/tfm/$vendor/$collection" ; my $vfpath = "$fontroot/fonts/vf/$vendor/$collection" ; my $pfbpath = "$fontroot/fonts/type1/$vendor/$collection" ; my $ttfpath = "$fontroot/fonts/truetype/$vendor/$collection" ; -my $pdfpath = "$fontroot/pdftex/config" ; +my $pdfpath = "$fontroot/$mappath/config" ; my $encpath = "$fontroot/dvips/local" ; # are not on local path ! ! ! ! @@ -459,8 +472,8 @@ sub make_path if ($makepath&&$install) { make_path ("afm") ; make_path ("type1") } -do_make_path("$fontroot/pdftex") ; -do_make_path("$fontroot/pdftex/config") ; +do_make_path("$fontroot/$mappath") ; +do_make_path("$fontroot/$mappath/config") ; if ($lcdf) { do_make_path("$fontroot/dvips") ; @@ -506,7 +519,6 @@ sub globafmfiles unless (@files) { @files = validglob("$sourcepath/$pattern.ttf") ; report("locating ttf files : using pattern $pattern") } - # if ($lcdf) { $extension = "otf" } } if (@files) # also elsewhere { report("locating afm files : using pattern $pattern") } @@ -518,7 +530,7 @@ sub globafmfiles foreach my $file (@files) { $file =~ s/\.ttf$//io ; report ("generating afm file : $file.afm") ; - system("ttf2afm $file.ttf -o $file.afm") } + system("ttf2afm '$file.ttf' -o '$file.afm'") } @files = validglob("$runpath/$pattern.afm") } else # try doing the pre-processing earlier { report("locating afm files : using otf files") ; @@ -526,8 +538,9 @@ sub globafmfiles @files = validglob("$runpath/$pattern.otf") ; foreach my $file (@files) { $file =~ s/\.otf$//io ; - report ("generating afm file : $file.afm") ; - preprocess_font("$file.otf", "$file.bdf") ; + if (!$lcdf) + { report ("generating afm file : $file.afm") ; + preprocess_font("$file.otf", "$file.bdf") } if ($preproc) { system("cfftot1 --output=$file.pfb $file.otf") ; report("converting : $file.otf to $file.pfb") ; @@ -738,14 +751,14 @@ foreach my $file (@files) my $font = ""; # let's see what we have here (we force texnansi.enc to avoid error messages) if ($lcdf) - { ( my $fileafm = $file ) =~ s/\.otf$/\.afm/ ; - $font = `afm2tfm $fileafm -p texnansi.enc texfont.tfm` ; - unlink $fileafm } + { $font = `otfinfo -p $file` ; + chomp $font ; + $cleanfont = $font } else - { $font = `afm2tfm $file -p texnansi.enc texfont.tfm` } - unlink "texfont.tfm" ; + { $font = `afm2tfm '$file' -p texnansi.enc texfont.tfm`; + unlink "texfont.tfm" ; + ($rawfont,$cleanfont,$restfont) = split(/\s/,$font) } if ($font =~ /(math|expert)/io) { $strange = lc $1 } - ($rawfont,$cleanfont,$restfont) = split(/\s/,$font) ; $cleanfont =~ s/\_/\-/goi ; $cleanfont =~ s/\-+$//goi ; print "\n" ; @@ -808,7 +821,8 @@ foreach my $file (@files) else { report "use supplied tfm : $cleanname" } # report results - ($rawfont,$cleanfont,$restfont) = split(/\s/,$font) ; + if (!$lcdf) + { ($rawfont,$cleanfont,$restfont) = split(/\s/,$font) } $cleanfont =~ s/\_/\-/goi ; $cleanfont =~ s/\-+$//goi ; # copy files diff --git a/dvips/config/context.map b/dvips/config/context.map index dd23bcd9c..942798c57 100644 --- a/dvips/config/context.map +++ b/dvips/config/context.map @@ -1,8 +1 @@ -% This map file defined the fonts that come with the ConTeXt -% macro package. Currently only some navigational symbols -% are distributed. These can be fetched from the pragma site -% www.pragma-ade.nl as part of the ConTeXt distribution, or -% can be found on CTAN as well as in the teTeX distribution -% (look for /hoekwater/context). - -contnav ContextNavigation height -% \checkfiguresettings -% % new, color separation -% \doifseparatingcolorselse -% {\let\@@efvoorgrondkleur\empty -% \doifelsenothing\@@efsplitsen -% {\chardef\splitexternalfigure0} -% {\doifcolorchannelelse\@@efsplitsen -% {\let\@@efobject\v!nee % ? -% \chardef\splitexternalfigure1} -% {\chardef\splitexternalfigure2}}} -% {\chardef\splitexternalfigure0}% -% \relax % ends \chardef -% % new, fake color in gray bitmaps -% \doifsomething\@@efvoorgrondkleur -% {\getparameters[\??ef] -% [\c!achtergrond={\v!voorgrond,\v!kleur}, -% \c!achtergrondkleur=\@@efvoorgrondkleur]}% -% % -% \doif\@@efreset\v!ja \resetexternalfigures -% \doif\@@eftype \c!mov\presetfiguremov -% \doif\@@eftype \c!avi\presetfigureavi -% % hack -% \doif\@@efmethode\c!mov -% {\doifsomething\@@efextension{\presetundefinedfigure\@@efextension}}% -% % -% \doif\@@eftype\v!buffer -% {\ifx\@@efextension\empty -% \let\@@efextension\c!tmp -% \fi -% \let\@@eftype\c!tex}% -% \@EA\doifnumberelse\@EA{\@@efextension} % new, test first -% {\def\@@eftype{\c!mps}} -% {% -% \processaction -% [\@@efextension] -% [ \c!tex=>\let\@@eftype\c!tex, -% \c!tmp=>\let\@@eftype\c!tex -% \edef\@@effilepref{\bufferprefix}% -% \edef\@@effilename{\@@effilepref\@@effilename}, -% \c!avi=>\presetfigureavi, -% \c!mov=>\presetfiguremov]% -% }% -% \edef\figuretypes{\figuretypes,\c!tex}% -% \ifx\@@eftype\c!tex -% % Since tex code can have positional stuff and worse, -% % we want to avoid interference with how objects end -% % up in files, therefore: -% \let\@@efobject\v!nee -% \fi -% \edef\@@efobjectname{\@@effilename-\@@eftype-\@@efextension-\@@efpagina}% -% \doifelse\@@efobject\v!nee -% \donefalse -% {\doifspecialavailableelse\dostartscaling -% {\doifobjectssupportedelse -% {\doifobjectfoundelse{FIG}\@@efobjectname\donetrue\donefalse} -% \donefalse} -% \donefalse}% -% % redo message, only filename -% \doifparentfileelse\@@effilename -% {\@EA\removefromcommalist\@EA{\jobsuffix}\figuretypes -% \let\@@efextension\empty -% \showmessage\m!figures9\@@effilename -% \donefalse} -% \donothing -% \ifdone -% \getobjectdimensions{FIG}{\@@efobjectname}% -% \geteparameters % e ! -% [\??ep] -% [\c!x=\!!zeropoint,\c!y=\!!zeropoint, -% \c!w=\objectwidth,\c!h=\objectheight]% -% \chardef\figurestatus=5 -% \edef\@@effullname{\@@effilepref\expandedfigurename}% -% \else -% \doifelse{#2}\s!figurepreset -% {\def\figureextension##1{\@@efextension}% -% \edef\@@effullname{\@@effilepref\expandedfigurename}}% -% {\ifx\@@efextension\empty -% \dogetcommacommandelement1\from\@@eftype\to\commalistelement -% \edef\@@effullname{\@@effilename.\commalistelement}% -% \def\figureextension##1{##1}% -% \else -% \@EA\doifnumberelse\@EA{\@@efextension} -% {\let\@@eftype\c!mps}\donothing -% \edef\@@effullname{\@@effilename.\@@efextension}% -% \def\figureextension##1{\@@efextension}% -% \fi}% -% \doifelse\@@efpreset\v!nee -% {\doifelse\@@eftype\s!unknown -% {\chardef\figurestatus0 -% \let\@@eftype\figuretypes -% \locatepresetfigurefiles} -% {\chardef\figurestatus1 }} -% {\doifelse\@@eftype\s!unknown -% {\let\@@eftype\figuretypes} -% {\@EA\removefromcommalist\@EA{\@@eftype}\figuretypes -% \edef\@@eftype{\ifx\@@eftype\empty\else\@@eftype,\fi\figuretypes}}% -% \ifx\@@efextension\empty\else -% \ExpandBothAfter\doifinsetelse\@@efextension\@@eftype -% {\@EA\removefromcommalist\@EA{\@@efextension}\@@eftype -% \edef\@@eftype{\@@efextension,\@@eftype}}% -% \donothing -% \fi -% \doifelse{#2}\s!figurepreset -% {\chardef\figurestatus4 -% %\def\@@efloadname{\f!currentpath\f!pathseparator\@@exfile}% -% \assignfullfilename\f!currentpath\@@exfile\to\@@efloadname -% \let\@@eftype\@@epe} -% {\chardef\figurestatus\zerocount -% \analyzefigurefiles}}% -% \let\@@epe\@@eftype -% \edef\@@efextension{\figureextension{\@@eftype}}% dirty trick -% \global\figwid\zeropoint \figxsca\plusone -% \global\fighei\zeropoint \figysca\plusone -% \doif\v!kader\@@exoptie -% {\let\@@efkader\v!aan}% -% \fi -% \ifcase\figurestatus -% \let\@@efkader\v!aan -% \let\@@efobject\v!nee -% \showmessage\m!figures1{\@@effilename}% -% \or -% \showmessage\m!figures2{\@@effullname}% -% \or -% \showmessage\m!figures3{\@@effullname,\@@eflenttype}% -% \or -% \showmessage\m!figures4{\@@effullname}% -% \or -% \showmessage\m!figures5{\@@effullname,\@@efloadname}% -% \or % no message -% \doifnot\@@efsymbool\v!ja -% {\showmessage\m!figures8{\@@effullname}}% -% \fi -% \ifdim\@@epw=\zeropoint \chardef\figurestatus1 \fi -% \ifdim\@@eph=\zeropoint \chardef\figurestatus1 \fi -% \ifnum\figurestatus=1 % unknown dimensions, take width or height or scale -% \setnaturalfiguresize -% \xdef\naturalfigurewidth{\the\figwid}% -% \xdef\naturalfigureheight{\the\fighei}% -% \let\@@efkader\v!uit -% \else -% \global\let\naturalfigurewidth\@@epw -% \global\let\naturalfigureheight\@@eph -% \setfactorfiguresize -% \setscalefiguresize -% \setdimensionfiguresize -% \fi -% \convertfigureinsertscale\@@epx\figx\figxsca\scax -% \convertfigureinsertscale\@@epy\figy\figysca\scay -% \iftraceexternalfigures -% \message -% {\externalfigurelog -% [\@@effullname: -% t={\@@eftype}\space m={\@@efmethode}\space l=\@@eflabel\space -% w=\number\figwid\space h=\number\fighei\space -% \c!sx=\scax\space\c!sy=\scay\space -% ox=\figx\space oy=\figy]}% -% \fi -% \doif\v!leeg\@@exoptie -% {\skipexternalfigurestrue -% \let\@@efkader\v!uit}% ? ? -% \doifelsenothing\@@efpagina % NIEUW ?? -% {\let\@@efoptions\empty} -% {\let\@@efoptions\@@efpagina}% -% \doif\@@efpreview\v!ja{\addtocommalist\v!preview\@@efoptions}% -% \doif\@@efsturing\v!ja{\addtocommalist\v!sturing\@@efoptions}% -% \doif\@@efherhaal\v!ja{\addtocommalist\v!herhaal\@@efoptions}% -% \doif\@@eftype\c!mps -% {\ifcase\EPSspecial\else\ifinobject\else -% \@@eftrace{special mps, object forced}% -% \doglobal\increment\forcedMPSobject -% \edef\@@efobjectname{\c!mps::\forcedMPSobject}% -% \let\@@efobject\v!ja -% \fi\fi}% -% \global\let\lastfigureobjectname\@@efobjectname -% \doifelse\@@efobject\v!nee -% \donefalse -% {\doifobjectssupportedelse\donetrue\donefalse}% -% \ifdone -% \doifobjectfoundelse{FIG}\@@efobjectname -% \donothing -% {\bgroup % to be cleaned up -% \figwid\@@epw % local ? -% \fighei\@@eph % local ? -% \scratchdimen\@@epx\scratchdimen-\scratchdimen -% \edef\@@epx{\the\scratchdimen}% -% \scratchdimen\@@epy\scratchdimen-\scratchdimen -% \edef\@@epy{\the\scratchdimen}% -% %\scratchdimen\@@epw\edef\@@epw{\the\scratchdimen}% -% %\scratchdimen\@@eph\edef\@@eph{\the\scratchdimen}% -% \setbox0\vbox to \fighei -% {\vfill -% \ifdim\wd\foundexternalfigure=\zeropoint -% \doinsertfile -% {\@@eftype,\@@efmethode}{\@@effullname,\@@eflabel} -% {100}{100}\@@epx\@@epy\@@epw\@@eph\@@efoptions -% \else\ifskipexternalfigures -% \ruledhbox -% {\backgroundline -% [\@@efsplitskleur]{\fakebox\foundexternalfigure}}% -% \else -% \box\foundexternalfigure -% \fi\fi}% -% \wd0=\figwid -% \setobject{FIG}\@@efobjectname\vbox{\box0}% -% \setxvalue{\@@efobjectname\c!n}{\number\nofinsertpages}% -% \egroup}% -% \fi -% \xdef\figurewidth {\the\figwid}% -% \xdef\figureheight{\the\fighei}% -% \global\setbox\foundexternalfigure\vbox to \fighei -% {\vfill -% \hsize\figwid -% \ifdone -% \scratchdimen\scax\points\divide\scratchdimen \plushundred -% \edef\scax{\@EA\withoutpt\the\scratchdimen}% -% \scratchdimen\scay\points\divide\scratchdimen \plushundred -% \edef\scay{\@EA\withoutpt\the\scratchdimen}% -% \schaal[\c!sx=\scax,\c!sy=\scay]{\dowithfigure{\getobject{FIG}{\@@efobjectname}}}% -% \xdef\noffigurepages{\number\getvalue{\@@efobjectname\c!n}}% -% \else\ifdim\wd\foundexternalfigure=\zeropoint -% \dowithfigure -% {\doinsertfile -% {\@@eftype,\@@efmethode}{\@@effullname,\@@eflabel} -% \scax\scay\figx\figy\figwid\fighei\@@efoptions}% -% \xdef\noffigurepages{\number\nofinsertpages}% -% \else -% \scratchdimen\scax\points\divide\scratchdimen \plushundred -% \edef\scax{\@EA\withoutpt\the\scratchdimen}% -% \scratchdimen\scay\points\divide\scratchdimen \plushundred -% \edef\scay{\@EA\withoutpt\the\scratchdimen}% -% \schaal[\c!sx=\scax,\c!sy=\scay]{\dowithfigure{\box\foundexternalfigure}}% -% \xdef\noffigurepages{\number\nofinsertpages}% -% \fi\fi -% \global\let\appliedfigurexscale\scax -% \global\let\appliedfigureyscale\scay}% -% \global\wd\foundexternalfigure\figwid -% \finalizeexternalfigure{#2}{\expandedfigurename}} - \newif\ifgridfigure -% \def\calculateexternalfigure[#1][#2][#3][#4][#5][#6]% -% {\mindermeldingen -% \setupexternalfigures -% \the\externalfigureresets % hook, see resource libraries -% \global\figwid\zeropoint \figxsca\plusone % see note * -% \global\fighei\zeropoint \figysca\plusone % see note * -% \global\setbox\foundexternalfigure\box\voidb@x -% % get rid of active / and : as well as expand for [\get...] cases -% \sanitizefilename#3\to\expandedfigurename -% % nil path search in case of path spec -% \expanded{\checkfilename{\expandedfigurename}}% -% \ifcase\kindoffile\else \let\figurepathlist\empty \fi -% \expandafter\beforesplitstring\expandedfigurename\at.\to\@@effilename -% \expandafter\aftersplitstring \expandedfigurename\at.\to\@@efextension -% \doifelse\@@effilename{mprun} -% {\edef\@@effilepref{\bufferprefix}} -% {\let \@@effilepref\empty}% -% \edef\@@effilename{\@@effilepref\@@effilename}% -% \restorecatcodes % recently added; we presume local use -% \def\@@eflabel{#2}% -% \global\let\externalfigurelog\empty -% \getparameters -% [\??ep] -% [\c!e=\s!unknown, -% %\c!w=15\korpsgrootte,\c!h=10\korpsgrootte, -% \c!w=8\lineheight,\c!h=6\lineheight, -% \c!x=\!!zeropoint,\c!y=\!!zeropoint, -% \c!t=,\c!s=,\c!a=,\c!f=\@@effilename]% -% \getparameters -% [\??ef] -% [\c!type=\s!unknown,\c!methode=\@@eftype,\c!symbool=\v!nee, -% \c!object=\@@exobject,\c!preset=\v!ja, -% \c!pagina=0,\c!sturing=\v!nee,\c!preview=\v!nee,\c!herhaal=\v!nee, -% \c!maxbreedte=\@@exmaxbreedte,\c!maxhoogte=\@@exmaxhoogte, -% \c!schaal=,\c!breedte=,\c!hoogte=,\c!scherm=,\c!regels=,\c!grid=, -% %\c!voorgrondkleur=, -% \c!splitsen=, -% \c!factor=,\c!hfactor=,\c!bfactor=]% -% \doif\@@efextension\c!mov\presetfiguremov -% \doif\@@efextension\c!avi\presetfigureavi -% #1[#4][#5][#6]% -% % lines -> height -% \checkfiguresettings -% % new, color separation -% \doifseparatingcolorselse -% {\let\@@efvoorgrondkleur\empty -% \doifelsenothing\@@efsplitsen -% {\chardef\splitexternalfigure0} -% {\doifcolorchannelelse\@@efsplitsen -% {\let\@@efobject\v!nee % ? -% \chardef\splitexternalfigure1} -% {\chardef\splitexternalfigure2}}} -% {\chardef\splitexternalfigure0}% -% \relax % ends \chardef -% % new, fake color in gray bitmaps -% \doifsomething\@@efvoorgrondkleur -% {\getparameters[\??ef] -% [\c!achtergrond={\v!voorgrond,\v!kleur}, -% \c!achtergrondkleur=\@@efvoorgrondkleur]}% -% % -% \doif\@@efreset\v!ja \resetexternalfigures -% \doif\@@eftype \c!mov\presetfiguremov -% \doif\@@eftype \c!avi\presetfigureavi -% % hack -% \doif\@@efmethode\c!mov -% {\doifsomething\@@efextension{\presetundefinedfigure\@@efextension}}% -% % -% \doif\@@eftype\v!buffer -% {\ifx\@@efextension\empty -% \let\@@efextension\c!tmp -% \fi -% \let\@@eftype\c!tex}% -% \@EA\doifnumberelse\@EA{\@@efextension} % new, test first -% {\def\@@eftype{\c!mps}} -% {\processaction -% [\@@efextension] -% [ \c!tex=>\let\@@eftype\c!tex, -% \c!tmp=>\let\@@eftype\c!tex -% \edef\@@effilepref{\bufferprefix}% -% \edef\@@effilename{\@@effilepref\@@effilename}, -% \c!avi=>\presetfigureavi, -% \c!mov=>\presetfiguremov]}% -% \edef\figuretypes{\figuretypes,\c!tex}% -% \ifx\@@eftype\c!tex -% % Since tex code can have positional stuff and worse, -% % we want to avoid interference with how objects end -% % up in files, therefore: -% \let\@@efobject\v!nee -% \fi -% \edef\@@efobjectname{\@@effilename-\@@eftype-\@@efextension-\@@efpagina}% -% \doifelse\@@efobject\v!nee -% \donefalse -% {\doifspecialavailableelse\dostartscaling -% {\doifobjectssupportedelse -% {\doifobjectfoundelse{FIG}\@@efobjectname\donetrue\donefalse} -% \donefalse} -% \donefalse}% -% % redo message, only filename -% \doifparentfileelse\@@effilename -% {\@EA\removefromcommalist\@EA{\jobsuffix}\figuretypes -% \let\@@efextension\empty -% \showmessage\m!figures9\@@effilename -% \donefalse} -% \donothing -% \ifdone -% \getobjectdimensions{FIG}\@@efobjectname -% \geteparameters % e ! -% [\??ep] -% [\c!x=\!!zeropoint,\c!y=\!!zeropoint, -% \c!w=\objectwidth,\c!h=\objectheight]% -% \chardef\figurestatus=5 -% \edef\@@effullname{\@@effilepref\expandedfigurename}% -% \else -% \doifelse{#2}\s!figurepreset -% {\def\figureextension##1{\@@efextension}% -% \edef\@@effullname{\@@effilepref\expandedfigurename}}% -% {\ifx\@@efextension\empty -% \dogetcommacommandelement1\from\@@eftype\to\commalistelement -% \edef\@@effullname{\@@effilename.\commalistelement}% -% \def\figureextension##1{##1}% -% \else -% \@EA\doifnumberelse\@EA{\@@efextension} -% {\let\@@eftype\c!mps}\donothing -% \edef\@@effullname{\@@effilename.\@@efextension}% -% \def\figureextension##1{\@@efextension}% -% \fi}% -% \doifelse\@@efpreset\v!nee -% {\doifelse\@@eftype\s!unknown -% {\chardef\figurestatus0 -% \let\@@eftype\figuretypes -% \locatepresetfigurefiles} -% {\chardef\figurestatus1 }} -% {\doifelse\@@eftype\s!unknown -% {\let\@@eftype\figuretypes} -% {\@EA\removefromcommalist\@EA{\@@eftype}\figuretypes -% \edef\@@eftype{\ifx\@@eftype\empty\else\@@eftype,\fi\figuretypes}}% -% \ifx\@@efextension\empty\else -% \ExpandBothAfter\doifinsetelse\@@efextension\@@eftype -% {\@EA\removefromcommalist\@EA{\@@efextension}\@@eftype -% \edef\@@eftype{\@@efextension,\@@eftype}}% -% \donothing -% \fi -% \doifelse{#2}\s!figurepreset -% {\chardef\figurestatus4 -% %\def\@@efloadname{\f!currentpath\f!pathseparator\@@exfile}% -% \assignfullfilename\f!currentpath\@@exfile\to\@@efloadname -% \let\@@eftype\@@epe} -% {\chardef\figurestatus\zerocount -% \analyzefigurefiles}}% -% \let\@@epe\@@eftype -% \edef\@@efextension{\figureextension{\@@eftype}}% dirty trick -% \global\figwid\zeropoint \figxsca\plusone -% \global\fighei\zeropoint \figysca\plusone -% \doif\v!kader\@@exoptie -% {\let\@@efkader\v!aan}% -% \fi -% \ifcase\figurestatus -% \let\@@efkader\v!aan -% \let\@@efobject\v!nee -% \showmessage\m!figures1{\@@effilename}% -% \or -% \showmessage\m!figures2{\@@effullname}% -% \or -% \showmessage\m!figures3{\@@effullname,\@@eflenttype}% -% \or -% \showmessage\m!figures4{\@@effullname}% -% \or -% \showmessage\m!figures5{\@@effullname,\@@efloadname}% -% \or % no message -% \doifnot\@@efsymbool\v!ja -% {\showmessage\m!figures8{\@@effullname}}% -% \fi -% \ifdim\@@epw=\zeropoint \chardef\figurestatus1 \fi -% \ifdim\@@eph=\zeropoint \chardef\figurestatus1 \fi -% \global\gridfigurefalse -% \ifnum\figurestatus=1 % unknown dimensions, take width or height or scale -% \setnaturalfiguresize -% \xdef\naturalfigurewidth{\the\figwid}% -% \xdef\naturalfigureheight{\the\fighei}% -% \let\@@efkader\v!uit -% \else -% \global\let\naturalfigurewidth\@@epw -% \global\let\naturalfigureheight\@@eph -% \setfactorfiguresize -% \setscalefiguresize -% \setdimensionfiguresize -% \processaction -% [\@@efgrid] -% [ \v!ja=>\getnoflines\fighei -% \edef\@@efhoogte{\the\noflines\lineheight}% -% \global\gridfiguretrue, -% \v!hoogte=>\getrawnoflines\fighei -% \scratchdimen\noflines\lineheight -% \advance\scratchdimen\strutdepth -% \edef\@@efhoogte{\the\scratchdimen}% -% \global\gridfiguretrue, -% \v!passend=>\getrawnoflines\fighei -% \edef\@@efhoogte{\the\noflines\lineheight}% -% \global\gridfiguretrue]% -% \ifgridfigure -% \setfactorfiguresize -% \setscalefiguresize -% \setdimensionfiguresize -% \fi -% \fi -% \convertfigureinsertscale\@@epx\figx\figxsca\scax -% \convertfigureinsertscale\@@epy\figy\figysca\scay -% \iftraceexternalfigures -% \message -% {\externalfigurelog -% [\@@effullname: -% t={\@@eftype}\space m={\@@efmethode}\space l=\@@eflabel\space -% w=\number\figwid\space h=\number\fighei\space -% \c!sx=\scax\space\c!sy=\scay\space -% ox=\figx\space oy=\figy]}% -% \fi -% \doif\v!leeg\@@exoptie -% {\skipexternalfigurestrue -% \let\@@efkader\v!uit}% ? ? -% \doifelsenothing\@@efpagina % NIEUW ?? -% {\let\@@efoptions\empty} -% {\let\@@efoptions\@@efpagina}% -% \doif\@@efpreview\v!ja{\addtocommalist\v!preview\@@efoptions}% -% \doif\@@efsturing\v!ja{\addtocommalist\v!sturing\@@efoptions}% -% \doif\@@efherhaal\v!ja{\addtocommalist\v!herhaal\@@efoptions}% -% \doif\@@eftype\c!mps -% {\ifcase\EPSspecial\else\ifinobject\else -% \@@eftrace{special mps, object forced}% -% \doglobal\increment\forcedMPSobject -% \edef\@@efobjectname{\c!mps::\forcedMPSobject}% -% \let\@@efobject\v!ja -% \fi\fi}% -% \global\let\lastfigureobjectname\@@efobjectname -% \doifelse\@@efobject\v!nee -% \donefalse -% {\doifobjectssupportedelse\donetrue\donefalse}% -% \ifdone -% \doifobjectfoundelse{FIG}\@@efobjectname -% \donothing -% {\bgroup % to be cleaned up -% \figwid\@@epw % local ? -% \fighei\@@eph % local ? -% \scratchdimen\@@epx\scratchdimen-\scratchdimen -% \edef\@@epx{\the\scratchdimen}% -% \scratchdimen\@@epy\scratchdimen-\scratchdimen -% \edef\@@epy{\the\scratchdimen}% -% %\scratchdimen\@@epw\edef\@@epw{\the\scratchdimen}% -% %\scratchdimen\@@eph\edef\@@eph{\the\scratchdimen}% -% \setbox0\vbox to \fighei -% {\vfill -% \ifdim\wd\foundexternalfigure=\zeropoint -% \doinsertfile -% {\@@eftype,\@@efmethode}{\@@effullname,\@@eflabel} -% {100}{100}\@@epx\@@epy\@@epw\@@eph\@@efoptions -% \else\ifskipexternalfigures -% \ruledhbox -% {\backgroundline -% [\@@efsplitskleur]{\fakebox\foundexternalfigure}}% -% \else -% \box\foundexternalfigure -% \fi\fi}% -% \wd0=\figwid -% \setobject{FIG}\@@efobjectname\vbox{\box0}% -% \setxvalue{\@@efobjectname\c!n}{\number\nofinsertpages}% -% \egroup}% -% \fi -% \xdef\figurewidth {\the\figwid}% -% \xdef\figureheight{\the\fighei}% -% \global\setbox\foundexternalfigure\vbox to \fighei -% {\vfill -% \hsize\figwid -% \ifdone -% \scratchdimen\scax\points\divide\scratchdimen \plushundred -% \edef\scax{\@EA\withoutpt\the\scratchdimen}% -% \scratchdimen\scay\points\divide\scratchdimen \plushundred -% \edef\scay{\@EA\withoutpt\the\scratchdimen}% -% \schaal[\c!sx=\scax,\c!sy=\scay]{\dowithfigure{\getobject{FIG}{\@@efobjectname}}}% -% \xdef\noffigurepages{\number\getvalue{\@@efobjectname\c!n}}% -% \else\ifdim\wd\foundexternalfigure=\zeropoint -% \dowithfigure -% {\doinsertfile -% {\@@eftype,\@@efmethode}{\@@effullname,\@@eflabel} -% \scax\scay\figx\figy\figwid\fighei\@@efoptions}% -% \xdef\noffigurepages{\number\nofinsertpages}% -% \else -% \scratchdimen\scax\points\divide\scratchdimen \plushundred -% \edef\scax{\@EA\withoutpt\the\scratchdimen}% -% \scratchdimen\scay\points\divide\scratchdimen \plushundred -% \edef\scay{\@EA\withoutpt\the\scratchdimen}% -% \schaal[\c!sx=\scax,\c!sy=\scay]{\dowithfigure{\box\foundexternalfigure}}% -% \xdef\noffigurepages{\number\nofinsertpages}% -% \fi\fi -% \global\let\appliedfigurexscale\scax -% \global\let\appliedfigureyscale\scay}% -% \global\wd\foundexternalfigure\figwid -% \finalizeexternalfigure{#2}{\expandedfigurename}} - \def\calculateexternalfigure[#1][#2][#3][#4][#5][#6]% {\mindermeldingen \setupexternalfigures @@ -2521,7 +1944,7 @@ \fi \setbox\nextbox\hbox % old {\advance\!!dimenc -\@@cplinkeroffset % new ! - \advance\!!dimend -\@@cpbovenoffset % new ! % - added + \advance\!!dimend -\@@cponderoffset % new ! % - added \hskip-\!!dimenc\lower\!!dimend\flushnextbox}% old \nextboxwd\zeropoint \nextboxht\zeropoint @@ -2529,14 +1952,14 @@ \setbox\nextbox\hbox {\advance\!!dimena \@@cplinkeroffset % new ! \advance\!!dimena \@@cprechteroffset % new ! - \advance\!!dimenb \@@cpbovenoffset % new ! \advance\!!dimenb \@@cponderoffset % new ! - \dostartclipping\@@cpmp{\!!dimena}{\!!dimenb}% old + \advance\!!dimenb \@@cpbovenoffset % new ! + \dostartclipping\@@cpmp\!!dimena\!!dimenb % old \flushnextbox \dostopclipping}% \setbox\nextbox\hbox % new ! {\!!dimena-\@@cplinkeroffset % new ! - \!!dimenb \@@cpbovenoffset % new ! % - removed + \!!dimenb \@@cponderoffset % new ! % - removed \hskip\!!dimena\lower\!!dimenb\flushnextbox}% new ! \nextboxwd\!!dimena \nextboxht\!!dimenb diff --git a/tex/context/base/core-lst.tex b/tex/context/base/core-lst.tex index 26bf8e7f6..24ecb0077 100644 --- a/tex/context/base/core-lst.tex +++ b/tex/context/base/core-lst.tex @@ -306,7 +306,7 @@ \dosetlistmode \endgroup} -% th esimple appreach: +% the simple appreach: % % \def\dosettoclevel#1#2% % {\dosetfilterlevel{\getvalue{#1#2\c!criterium}}\empty} @@ -910,13 +910,11 @@ \c!criterium=\v!alles, \c!voor=, \c!na=, - #2] + #2]% \setcounter{#1}{0}% \addutilityreset{#1}% - \setvalue{\s!set#1}% - {\dodosetreferentielijst{#1}}% - \setvalue{\s!reset#1}% - {\dodoresetreferentielijst{#1}}} + \setvalue{\s!set #1}{\dodosetreferentielijst {#1}}% + \setvalue{\s!reset#1}{\dodoresetreferentielijst{#1}}} \def\definieerreferentielijst% {\dodoubleempty\dodefinieerreferentielijst} @@ -1050,4 +1048,4 @@ \stelreferentielijstin [\c!letter=\v!normaal] -\protect \endinput +\protect \endinput \ No newline at end of file diff --git a/tex/context/base/core-not.tex b/tex/context/base/core-not.tex index 84ecf1198..243564b92 100644 --- a/tex/context/base/core-not.tex +++ b/tex/context/base/core-not.tex @@ -157,6 +157,7 @@ \@EA\installbackupinsertion\csname\??vn:\currentnote\endcsname\relax % \@EA\newbox\csname\??vn::\currentnote\endcsname % scratch box % needed ? \@EA\newbox\csname\??vn+\currentnote\endcsname % local box + \@EA\newbox\csname\??vn-\currentnote\endcsname % local box \doglobal\addtocommalist{#1}\noteinsertions \doordefinieren [\??vn\??vn\currentnote] diff --git a/tex/context/base/core-sec.tex b/tex/context/base/core-sec.tex index dc84ffad3..14af7f030 100644 --- a/tex/context/base/core-sec.tex +++ b/tex/context/base/core-sec.tex @@ -14,7 +14,8 @@ % nummeren per sectieblok implementeren % this module needs a clean up, currently some manipulations -% take place multiple times +% take place multiple times; also, some clever recursive level +% thing makes more sense % in manual (zie prikkels) : tussen=\blanko is enige hook om % met kop-in-hoofd een spatiering af te dwingen @@ -674,7 +675,7 @@ % % we want to be able to overload them globally -% This will be reimplmented +% This will be reimplemented % % {nn}{xx}{yy} % @@ -1219,9 +1220,8 @@ \someheadconversionfalse \let\fullsectionnumber\limitedfullsectionnumber \setsectieenkoppeling{#1}% - \doifelsevalue{\??ko#1\c!prefix}{} - {\kopprefixfalse} - {\kopprefixtrue}% + \doifelsevaluenothing{\??ko#1\c!prefix} + \kopprefixfalse\kopprefixtrue \ifkopprefix \doifelsevalue{\??ko#1\c!prefix}{+} {\doifelsenothing{#2} @@ -1231,13 +1231,20 @@ \else \let\localkoprefix\empty \fi - \doifelsevalue{\??ko#1\c!plaatskop}\v!ja - \plaatskoptrue\plaatskopfalse +% \doifelsevalue{\??ko#1\c!plaatskop}\v!ja +% \plaatskoptrue\plaatskopfalse +% \processaction +% [\getvalue{\??ko#1\c!plaatskop}] +% [ \v!ja=>\plaatskoptrue \legekopfalse, +% \v!leeg=>\plaatskoptrue \legekoptrue, +% \v!nee=>\plaatskopfalse\legekoptrue]% + \plaatskoptrue \processaction [\getvalue{\??ko#1\c!plaatskop}] - [ \v!ja=>\plaatskoptrue \legekopfalse, - \v!leeg=>\plaatskoptrue \legekoptrue, - \v!nee=>\plaatskopfalse\legekoptrue]% + [ \v!ja=>\legekopfalse, + \v!leeg=>\legekoptrue, + \v!nee=>\legekoptrue\plaatskopfalse]% +% \doifelsevalue{\??ko#1\c!resetnummer}\v!nee {\setfalse\@@resetsubheadnumbers}% {\settrue \@@resetsubheadnumbers}% diff --git a/tex/context/base/core-spa.tex b/tex/context/base/core-spa.tex index 9b4864445..36e8326f2 100644 --- a/tex/context/base/core-spa.tex +++ b/tex/context/base/core-spa.tex @@ -2013,8 +2013,15 @@ % % expands to \widowpenalty \maxdimen \maxdimen \zeropoint +\def\resetpenalties#1% + {\ifx#1\undefined\else + #1\minusone + \fi} + \def\setpenalties#1#2#3% - {#1\numexpr(#2+1)\space\doexpandedrecurse{\numexpr(#2)}{#3}\zerocount\relax} + {\ifx#1\undefined\else + #1\numexpr(#2+1)\space\doexpandedrecurse{\numexpr(#2)}{#3}\zerocount\relax + \fi} \def\doexpandedrecurse#1#2% {\ifnum#1>\zerocount#2\@EA\doexpandedrecurse\@EA{\the\numexpr(#1-1)}{#2}\fi} @@ -2046,9 +2053,9 @@ {\setups[\systemsetupsprefix\s!default]} \startsetups [\systemsetupsprefix\v!reset] - \widowpenalties \minusone - \clubpenalties \minusone - \interlinepenalties \minusone + \resetpenalties\widowpenalties + \resetpenalties\clubpenalties + \resetpenalties\interlinepenalties \stopsetups \startsetups [\systemsetupsprefix\s!default] @@ -3590,4 +3597,4 @@ \setupspacing [\v!opelkaar] -\protect \endinput +\protect \endinput \ No newline at end of file diff --git a/tex/context/base/core-tbl.tex b/tex/context/base/core-tbl.tex index 490f6688e..d9fc83ed8 100644 --- a/tex/context/base/core-tbl.tex +++ b/tex/context/base/core-tbl.tex @@ -1153,8 +1153,8 @@ \def\processtabulate[|#1|]% in the process of optimizing {\tabulateunit\getvalue{\??tt\currenttabulate\c!eenheid}% \checkfulltabulatecontent -\globallet\tabulateruledepth \!!zeropoint -\globallet\tabulateruleheight\!!zeropoint + \globallet\tabulateruledepth \!!zeropoint + \globallet\tabulateruleheight\!!zeropoint \ExpandFirstAfter\processaction % use \setalignmentswitch instead [\getvalue{\??tt\currenttabulate\c!uitlijnen}] [\v!normaal=>\def\@@tabulatealign{0},% = default value @@ -1173,12 +1173,12 @@ \global\tabulatepwidth\zeropoint \global\tabulateequalfalse \resettabulatepheight -\ifinsidefloat \else - \processaction - [\getvalue{\??tt\currenttabulate\c!hoofd}] - [\v!herhaal=>\chardef\tabulaterepeathead\plusone, - \v!tekst=>\chardef\tabulaterepeathead\plustwo]% -\fi + \ifinsidefloat \else + \processaction + [\getvalue{\??tt\currenttabulate\c!hoofd}] + [\v!herhaal=>\chardef\tabulaterepeathead\plusone, + \v!tekst=>\chardef\tabulaterepeathead\plustwo]% + \fi \unexpanded \def\NC{\tabulatenormalcolumn0}% \unexpanded \def\RC{\tabulatenormalcolumn1}% \unexpanded \def\HC{\tabulatenormalcolumn2}% @@ -1203,9 +1203,9 @@ \unskip\unskip\crcr\flushtabulated \TABLEnoalign {\iftolerantTABLEbreak\else -\ifconditional\tabulatesomeamble \ifcase\tabulaterepeathead \else - \allowbreak -\fi \fi + \ifconditional\tabulatesomeamble \ifcase\tabulaterepeathead \else + \allowbreak + \fi \fi \ifnum\noftabulatelines=\plusone \dotabulatenobreak \else\ifnum\noftabulatelines=\minusnoftabulatelines diff --git a/tex/context/base/core-uti.tex b/tex/context/base/core-uti.tex index 50f6a4cb3..71099c790 100644 --- a/tex/context/base/core-uti.tex +++ b/tex/context/base/core-uti.tex @@ -590,6 +590,11 @@ \expandafter#1% \fi} +% shorter: +% +% \long\def\doplugincommand#1% +% {\ifx#1\undefined\expandafter\noplugincommand\fi#1} + \long\def\noplugincommand#1\relax {} @@ -608,4 +613,4 @@ \long\setvalue{\s!reset#1}{#2}% \long\setvalue{\s!set #1}{#3}} -\protect \endinput +\protect \endinput \ No newline at end of file diff --git a/tex/context/base/enco-acc.tex b/tex/context/base/enco-acc.tex index d1762ba09..1082b4501 100644 --- a/tex/context/base/enco-acc.tex +++ b/tex/context/base/enco-acc.tex @@ -114,4 +114,20 @@ \stopencoding -\endinput +% For Tobias Burnus, who wants: +% +% \starttypen +% \setupinteraction[state=start] +% \setupinteractionscreen[option=bookmark] +% \placebookmarks[chapter] +% +% \starttext \chapter{F\"ur Na\"ive und Na\"\i ve} \stoptext +% \stoptypen + +\startencoding[default] + + \defineaccent " {\i} {\idiaeresis} + +\stopencoding + +\endinput \ No newline at end of file diff --git a/tex/context/base/enco-def.tex b/tex/context/base/enco-def.tex index 0ab1f4850..383dffb5f 100644 --- a/tex/context/base/enco-def.tex +++ b/tex/context/base/enco-def.tex @@ -19,7 +19,7 @@ %D usage of the the original \TEX\ fonts, where composed %D characters were not part of the design. So, occasionally %D we have to revert to hacks. Thanks to all those users who -%D helped me to fill in the details! +%D helped me to fill in the details! \startencoding[default] @@ -97,32 +97,32 @@ \definecharacter percent {\fakepercent} \definecharacter perthousand {\fakeperthousand} -\definecharacter softhyphen 45 +\definecharacter softhyphen 45 \definecharacter periodcentered {\mathematics\cdot} -\definecharacter compoundwordmark 23 +\definecharacter compoundwordmark 23 \definecharacter textasciicircum 94 \definecharacter textasciitilde 126 \definecharacter textslash 47 -\definecharacter textbackslash {\tex{}} % todo +\definecharacter textbackslash {\tex{}} % todo \definecharacter textbraceleft {\mathematics\{} \definecharacter textbraceright {\mathematics\}} \definecharacter textunderscore {\fakeunderscore} -\definecharacter textvisiblespace {\fakevisiblespace} +\definecharacter textvisiblespace {\fakevisiblespace} -\definecharacter textbrokenbar {\mathematics\vert} -\definecharacter textbullet {\mathematics\bullet} -\definecharacter textdag {\mathematics\dag} -\definecharacter textddag {\mathematics\ddag} -\definecharacter textdegree {\mathematics{{}^{\circ}}} +\definecharacter textbrokenbar {\mathematics\vert} +\definecharacter textbullet {\mathematics\bullet} +\definecharacter textdag {\mathematics\dag} +\definecharacter textddag {\mathematics\ddag} +\definecharacter textdegree {\mathematics{{}^{\circ}}} \definecharacter textdiv {\mathematics\div} -\definecharacter textellipsis {\mathematics\cdots} +\definecharacter textellipsis {\mathematics\cdots} \definecharacter textfraction {\mathematics/} \definecharacter textlognot {\mathematics\neg} -\definecharacter textminus {\mathematics-} +\definecharacter textminus {\mathematics-} \definecharacter textmu {\mathematics\mu} \definecharacter textmultiply {\mathematics\times} -\definecharacter textpm {\mathematics\pm} +\definecharacter textpm {\mathematics\pm} \definecharacter quotedbl {"} \definecharacter quotedblbase {,,} @@ -135,8 +135,8 @@ \definecharacter quoteleft {`} \definecharacter quoteright {'} -\definecharacter guilsingleleft {\fakeleftsubguillemot } -\definecharacter guilsingleright {\fakerightsubguillemot} +\definecharacter guilsingleleft {\fakeleftsubguillemot } +\definecharacter guilsingleright {\fakerightsubguillemot} \definecharacter leftguillemot {\fakeleftguillemot } \definecharacter rightguillemot {\fakerightguillemot} @@ -347,7 +347,7 @@ \stopencoding -%D A few goodies: +%D A few goodies: \def\eszett {\ssharp} \def\Eszett {\Ssharp} @@ -359,59 +359,59 @@ \def\oslash {\ostroke} \def\Oslash {\Ostroke} -% for plain tex's sake +% for plain tex's sake \def\S {\sectionmark } \def\P {\paragraphmark} -% for latex users sake +% for latex users sake \def\textS {\sectionmark } \def\textP {\paragraphmark} -% for old times sake +% for old times sake \def\florin {\textflorin } \def\florijn{\textflorin} \def\dollar {\textdollar } \def\pound {\textsterling} \def\sterling{\textsterling} -% idem +% idem \def\promille{\perthousand} \def\permille{\perthousand} \def\procent {\percent } \def\permine {\fakepermine} -% some more +% some more \def\hyphen {\softhyphen} \def\cwm {\compoundwordmark} -% quotes +% quotes \def\lowerleftsingleninequote {\quotesinglebase} -\def\lowerleftdoubleninequote {\quotedblbase} -\def\lowerrightsingleninequote {\quotesinglebase} -\def\lowerrightdoubleninequote {\quotedblbase} +\def\lowerleftdoubleninequote {\quotedblbase} +\def\lowerrightsingleninequote {\quotesinglebase} +\def\lowerrightdoubleninequote {\quotedblbase} \def\upperleftsingleninequote {\quoteright} -\def\upperleftdoubleninequote {\quotedblright} +\def\upperleftdoubleninequote {\quotedblright} \def\upperrightsingleninequote {\quoteright} -\def\upperrightdoubleninequote {\quotedblright} +\def\upperrightdoubleninequote {\quotedblright} \def\upperleftsinglesixquote {\quoteleft} -\def\upperleftdoublesixquote {\quotedblleft} +\def\upperleftdoublesixquote {\quotedblleft} \def\upperrightsinglesixquote {\quoteleft} -\def\upperrightdoublesixquote {\quotedblleft} +\def\upperrightdoublesixquote {\quotedblleft} \def\leftsubguillemot {\guilsingleleft} \def\rightsubguillemot {\guilsingleright} -%D A couple of fallbacks suggestion by users, slightly -%D adapted and obscured by memory saving hacks. +%D A couple of fallbacks suggestion by users, slightly +%D adapted and obscured by memory saving hacks. -\unprotect +\unprotect \startencoding[default] @@ -430,9 +430,9 @@ \vrule\!!width.4\s!pt\!!height.35\s!ex\!!depth.6\s!ex}% \kern.05\s!em}} -\stopencoding +\stopencoding -\protect +\protect %D We also use symbolic names for math accents. @@ -453,4 +453,4 @@ \stopencoding -\endinput +\endinput \ No newline at end of file diff --git a/tex/context/base/enco-pdf.tex b/tex/context/base/enco-pdf.tex index ca8c96b74..6b153351b 100644 --- a/tex/context/base/enco-pdf.tex +++ b/tex/context/base/enco-pdf.tex @@ -14,41 +14,41 @@ %D This is the \PDF\ document encoding. \startencoding[pdfdoc] % \rawcharacter{number} - + \definecharacter oeligature ^^9c \definecharacter leftguillemot ^^ab \definecharacter rightguillemot ^^bb -\definecharacter Agrave ^^c0 -\definecharacter Aacute ^^c1 -\definecharacter Acircumflex ^^c2 -\definecharacter Atilde ^^c3 -\definecharacter Adiaeresis ^^c4 +\definecharacter Agrave ^^c0 +\definecharacter Aacute ^^c1 +\definecharacter Acircumflex ^^c2 +\definecharacter Atilde ^^c3 +\definecharacter Adiaeresis ^^c4 \definecharacter OAligature ^^c5 \definecharacter AEligature ^^c6 \definecharacter Ccedilla ^^c7 -\definecharacter Egrave ^^c8 -\definecharacter Eacute ^^c9 -\definecharacter Ecircumflex ^^ca -\definecharacter Ediaeresis ^^cb -\definecharacter Igrave ^^cc -\definecharacter Iacute ^^cd -\definecharacter Icircumflex ^^ce -\definecharacter Idiaeresis ^^cf +\definecharacter Egrave ^^c8 +\definecharacter Eacute ^^c9 +\definecharacter Ecircumflex ^^ca +\definecharacter Ediaeresis ^^cb +\definecharacter Igrave ^^cc +\definecharacter Iacute ^^cd +\definecharacter Icircumflex ^^ce +\definecharacter Idiaeresis ^^cf -\definecharacter Ntilde ^^d1 -\definecharacter Ograve ^^d2 -\definecharacter Oacute ^^d3 -\definecharacter Ocircumflex ^^d4 -\definecharacter Otilde ^^d5 -\definecharacter Odiaeresis ^^d6 +\definecharacter Ntilde ^^d1 +\definecharacter Ograve ^^d2 +\definecharacter Oacute ^^d3 +\definecharacter Ocircumflex ^^d4 +\definecharacter Otilde ^^d5 +\definecharacter Odiaeresis ^^d6 -\definecharacter Ugrave ^^d9 -\definecharacter Uacute ^^da -\definecharacter Ucircumflex ^^db -\definecharacter Udiaeresis ^^dc -\definecharacter Yacute ^^dd +\definecharacter Ugrave ^^d9 +\definecharacter Uacute ^^da +\definecharacter Ucircumflex ^^db +\definecharacter Udiaeresis ^^dc +\definecharacter Yacute ^^dd \definecharacter ssharp ^^df \definecharacter agrave ^^e0 @@ -81,7 +81,7 @@ \definecharacter udiaeresis ^^fc \definecharacter yacute ^^fd -\definecharacter ydiaeresis ^^ff +\definecharacter ydiaeresis ^^ff \definecharacter leftsubguillemot {\leftguillemot} \definecharacter rightsubguillemot {\rightguillemot} @@ -93,4 +93,4 @@ \stopencoding -\endinput +\endinput \ No newline at end of file diff --git a/tex/context/base/font-run.tex b/tex/context/base/font-run.tex index ce43591d2..3a1c3be3c 100644 --- a/tex/context/base/font-run.tex +++ b/tex/context/base/font-run.tex @@ -316,7 +316,7 @@ \startMPcode draw textext(\MPstring\s!dummy);\stopMPcode \egroup} -\def\showcharratio +\gdef\showcharratio {\dowithnextboxcontent {\switchtobodyfont[10pt]}% {(\expanded{\withoutpt{\the\nextboxht}},% diff --git a/tex/context/base/mult-sys.tex b/tex/context/base/mult-sys.tex index 45e9c53c9..f591be99e 100644 --- a/tex/context/base/mult-sys.tex +++ b/tex/context/base/mult-sys.tex @@ -328,8 +328,8 @@ \def\!!twelvepoint {12pt} \def\!!fourteenpointfour {14.4pt} -\ifx\z@\undefined \newdimen\zeropoint \else \let\zeropoint\z@ \fi \zeropoint = 0pt -\ifx\p@\undefined \newdimen\onepoint \else \let\onepoint \p@ \fi \onepoint = 1pt +\newdimen\zeropoint \zeropoint = 0pt +\newdimen\onepoint \onepoint = 1pt \newcount\medcard \medcard\!!medcard % used in font module \newcount\maxcard \maxcard\!!maxcard % used in font module diff --git a/tex/context/base/page-app.tex b/tex/context/base/page-app.tex index f3011934a..d3f7a1e94 100644 --- a/tex/context/base/page-app.tex +++ b/tex/context/base/page-app.tex @@ -22,6 +22,7 @@ {\pagina % this is kind of tricky! there can be preceding page refs \bgroup % resulting in a zero height page; test fig-make ! \dontcomplain + % runs under current page regime, i.e. page variables passed to mp \setbox\scratchbox\hbox \bgroup \getparameters[#1][#2]% @@ -38,6 +39,10 @@ \c!kopwit=\!!zeropoint,\c!rugwit=\!!zeropoint, \c!snijwit=\!!zeropoint,\c!bodemwit=\!!zeropoint, \c!tekstafstand=\!!zeropoint,\c!regels=0,\c!grid=\v!nee, + \c!boven=\!!zeropoint,\c!onder=\!!zeropoint, + \c!marge=\!!zeropoint,\c!rand=\!!zeropoint, + \c!linkermarge=\!!zeropoint,\c!linkerrand=\!!zeropoint, + \c!rechtermarge=\!!zeropoint,\c!rechterrand=\!!zeropoint, \c!hoofd=\!!zeropoint,\c!voet=\!!zeropoint] \def\dostopfittingpage @@ -50,10 +55,16 @@ \setbox\scratchbox\vbox to \lineheight{\vss\box\scratchbox\vss}% \edef\fittinght{\the\lineheight}% \fi + \let\checkcurrentlayout\relax % else interference with odd/even layout \setuppapersize [\??fp\s!dummy][\??fp\s!dummy]% + \definelayout + [\v!pagina]% + [\c!plaats=\v!midden, + \c!breedte=\fittingwd, + \c!hoogte=\fittinght]% \setuplayout - [\??fp\s!dummy]% + [\v!pagina]% \startmakeup[\v!standaard][\c!tekststatus=\v!leeg,\c!dubbelzijdig=\v!nee,\c!pagina=]% \centerbox{\box\scratchbox}% \stopmakeup @@ -140,4 +151,4 @@ \box\scratchbox \egroup} -\protect \endinput +\protect \endinput \ No newline at end of file diff --git a/tex/context/base/page-imp.tex b/tex/context/base/page-imp.tex index 64eb21949..29501a833 100644 --- a/tex/context/base/page-imp.tex +++ b/tex/context/base/page-imp.tex @@ -157,8 +157,9 @@ {\forgetall \offinterlineskip \mindermeldingen - \vskip-1in - \hskip-1in + \scratchdimen-1in + \vskip\scratchdimen + \hskip\scratchdimen \hbox % \setbox0=\box.. is nicer {\setbox0\hbox{#1}% just in case there are objects there \setbox\scratchbox\hbox @@ -244,6 +245,9 @@ \s!reset=>\global\arrangingpagesfalse, \s!unknown=>\checkinstalledpagearrangement\commalistelement]% % no \s!default=> we can have aaa,,bbb + \ifx\handlearrangedpage\undefined + \global\arrangingpagesfalse + \fi \doifcommonelse{#1}{90,270,\v!geroteerd} {\swapmacros\horizontalcutmarks\verticalcutmarks}{}% ugly solution \setuppapersize @@ -315,9 +319,9 @@ {\dosetuparrangement{2}{1}{8}{3}{2}% \pusharrangedpageSIXTEENFOUR\poparrangedpagesAtoH\relax} -\installpagearrangement 4SIDE +\installpagearrangement 2TOPSIDE {\dosetuparrangement{1}{2}{4}{2}{3}% - \pusharrangedpageFOURSIDE\poparrangedpagesFOURSIDE\handlearrangedpageTOP} + \pusharrangedpageTWOTOPSIDE\poparrangedpagesTWOTOPSIDE\handlearrangedpageTOP} % \def\filluparrangedpages % beware: \realpageno is 1 ahead % {\ifarrangingpages @@ -605,17 +609,18 @@ \dp#1\zeropoint \vbox{\box#1}}} -\def\poparrangedpagesFOURSIDE - {\bgroup - \gdef\arrangedpageN{2}% - \poparrangedpagesTWO - \let\arrangedpageA\arrangedpageC - \let\arrangedpageB\arrangedpageD - \gdef\arrangedpageN{2}% - \poparrangedpagesTWO - \egroup} +\def\poparrangedpagesTWOTOPSIDE + {\ifnum\arrangedpageN>\zerocount + \bgroup + \gdef\arrangedpageN{2}\poparrangedpagesTWO + \let\arrangedpageA\arrangedpageC + \let\arrangedpageB\arrangedpageD + \gdef\arrangedpageN{2}\poparrangedpagesTWO + \doglobal\newcounter\arrangedpageN + \egroup + \fi} -\def\pusharrangedpageFOURSIDE#1% +\def\pusharrangedpageTWOTOPSIDE#1% {\doglobal\increment\arrangedpageN \reportarrangedpage\arrangedpageN \ifcase\arrangedpageN diff --git a/tex/context/base/page-ini.tex b/tex/context/base/page-ini.tex index 9bf9d5fe3..1a4fda7f0 100644 --- a/tex/context/base/page-ini.tex +++ b/tex/context/base/page-ini.tex @@ -868,10 +868,10 @@ % \def\eject {\par\penalty-\@M } % == {\par\break} % plain % \def\supereject {\par\penalty-\@MM} % also plain -\def\eject {\par\penalty-\@M \resetpagebreak} % == {\par\break} % plain -\def\supereject {\par\penalty-\@MM\resetpagebreak} % also plain +\def\eject {\par\ifvmode\penalty-\@M \fi\resetpagebreak} % == {\par\break} % plain +\def\supereject {\par\ifvmode\penalty-\@MM\fi\resetpagebreak} % also plain -\def\doejectpage {\par\ifdim\pagetotal>\pagegoal\else\normalvfil\fi} +\def\doejectpage {\par\ifvmode\ifdim\pagetotal>\pagegoal\else\normalvfil\fi\fi} \def\ejectpage {\doejectpage\eject} \def\superejectpage{\doejectpage\supereject} @@ -900,10 +900,12 @@ \egroup} \def\ejectdummypage - {\ejectinsert - \hardespatie % will be different - \vfill - \gotonextpage} + {\endgraf \ifvmode + \ejectinsert + \hardespatie % will be different + \vfill + \gotonextpage + \fi} \def\beforefinaloutput {} diff --git a/tex/context/base/page-lay.tex b/tex/context/base/page-lay.tex index 1716614b3..3abdd6e30 100644 --- a/tex/context/base/page-lay.tex +++ b/tex/context/base/page-lay.tex @@ -1410,17 +1410,28 @@ \definelayout [\v!pagina] [\c!rugwit=\zeropoint, + \c!snijwit=\zeropoint, \c!kopwit=\zeropoint, + \c!bodemwit=\zeropoint, \c!marge=\zeropoint, \c!rand=\zeropoint, \c!hoofd=\zeropoint, \c!voet=\zeropoint, + \c!boven=\zeropoint, + \c!onder=\zeropoint, + \c!linkermarge=\zeropoint, + \c!rechtermarge=\zeropoint, + \c!linkerrand=\zeropoint, + \c!rechterrand=\zeropoint, + \c!tekstafstand=\zeropoint, \c!breedte=\v!midden, - \c!hoogte=\v!midden] + \c!hoogte=\v!midden, + \c!regels=0, + \c!grid=\v!nee] \definelayout [\v!midden] [\c!breedte=\v!midden, \c!hoogte=\v!midden] -\protect \endinput +\protect \endinput \ No newline at end of file diff --git a/tex/context/base/page-mak.tex b/tex/context/base/page-mak.tex index 229a6ca1b..6e8793293 100644 --- a/tex/context/base/page-mak.tex +++ b/tex/context/base/page-mak.tex @@ -220,8 +220,8 @@ \c!voetstatus=\v!start, \c!onderstatus=\v!start, \c!dubbelzijdig=\v!nee, - \c!pagina=, - \c!boven=\pseudostrut, + \c!pagina=\v!ja, + \c!boven=\pseudostrut\ignorespaces, \c!onder=\obeydepth\vss] \protect \endinput \ No newline at end of file diff --git a/tex/context/base/page-not.tex b/tex/context/base/page-not.tex index ea4c444f7..23217781b 100644 --- a/tex/context/base/page-not.tex +++ b/tex/context/base/page-not.tex @@ -67,4 +67,4 @@ \restorenotecontent \fi} -\protect \endinput +\protect \endinput \ No newline at end of file diff --git a/tex/context/base/s-mag-01.tex b/tex/context/base/s-mag-01.tex index 471a8a6e4..8d7a9ebbf 100644 --- a/tex/context/base/s-mag-01.tex +++ b/tex/context/base/s-mag-01.tex @@ -4,32 +4,32 @@ %D [ file=s-mag-01, %D version=2002.12.14, %D title=\CONTEXT\ Style File, -%D subtitle=\CONTEXT\ Magazine Base Style, +%D subtitle=\CONTEXT\ Magazine Base Style, %D author=Hans Hagen, %D date=\currentdate, %D copyright={PRAGMA / Hans Hagen \& Ton Otten}] %C %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. % This style is used for producing explanationary documents. % Don't misuse it for other purposes, since it may confuse % users. Don't change the title either, since it provides a % way to categorize documents. Numbers are disabled in -% instances produced outside PRAGMA ADE. -% +% instances produced outside PRAGMA ADE. +% % The layout setup is such that one has several text areas % available: headers and footers, margins and edges as well % as the main text area. The surrounding (gray) makes the % main page stand out and is suitable for viewing in spread -% mode. +% mode. % -% Since this style is under constant construction, messing -% around with settings will produce unwanted side effects. -% So, if some feature or settings is needed, let me know. +% Since this style is under constant construction, messing +% around with settings will produce unwanted side effects. +% So, if some feature or settings is needed, let me know. -% todo: mp frames +% todo: mp frames \setvariables[magazine][number=0] \setvariables[magazine][author=] @@ -42,7 +42,7 @@ % \setvariables[magazine][main=Update] % \setvariables[magazine][main=HOWTO] -% \setvariables[magazine][main=This Way] % preludes to a/the manual +% \setvariables[magazine][main=This Way] % preludes to a/the manual % \setvariables[magazine][main=A Better Way] % dirty versus clean % \setvariables[magazine][main=No Way] % how users should not do it % \setvariables[magazine][main=Your Way] % how users do it @@ -104,13 +104,13 @@ \startusableMPgraphic{text} StartPage ; - for i = Header,Text,Footer : - for j = LeftEdge, LeftMargin, Text, RightMargin, RightEdge : - draw Field[i][j] withpen pencircle scaled .5pt ; - endfor ; - endfor ; + for i = Header,Text,Footer : + for j = LeftEdge, LeftMargin, Text, RightMargin, RightEdge : + draw Field[i][j] withpen pencircle scaled .5pt ; + endfor ; + endfor ; StopPage ; - setbounds currentpicture to Field[Text][Text] ; + setbounds currentpicture to Field[Text][Text] ; \stopusableMPgraphic \startsetups[paper] @@ -174,7 +174,7 @@ [state=start] \usetypescript - [palatino][\defaultencoding] + [palatino][\defaultencoding] \setupbodyfont [palatino,10pt] @@ -370,6 +370,9 @@ \setupwhitespace [big] +\definetyping[xtyping] [style=\ttx] +\definetyping[xxtyping][style=\ttxx] + \doifnotmode{demo}{\endinput} \startbuffer[abstract] diff --git a/tex/context/base/supp-mis.tex b/tex/context/base/supp-mis.tex index 5503f371f..53988892c 100644 --- a/tex/context/base/supp-mis.tex +++ b/tex/context/base/supp-mis.tex @@ -160,8 +160,8 @@ \ifnocontextobject \scratchread \do \newread \scratchread \fi \ifnocontextobject \scratchwrite \do \newwrite \scratchwrite \fi -\ifnocontextobject \zeropoint \do \let \zeropoint \z@ \fi -\ifnocontextobject \onepoint \do \let \onepoint \p@ \fi +\ifnocontextobject \zeropoint \do \newdimen \zeropoint \fi % else problems with dimen12 +\ifnocontextobject \onepoint \do \newdimen \onepoint \fi \ifnocontextobject \zerocount \do \chardef \zerocount =0 \fi \ifnocontextobject \plusone \do \chardef \plusone =1 \fi \ifnocontextobject \minusone \do \newcount \minusone \fi @@ -169,7 +169,9 @@ \ifnocontextobject \thousandpoint \do \newdimen \thousandpoint \fi \thousandpoint=1000pt -\minusone = -1 +\zeropoint = 0pt +\onepoint = 1pt +\minusone = -1 \ifnocontextobject \emptytoks \do \newtoks \emptytoks \fi diff --git a/tex/context/base/supp-mps.tex b/tex/context/base/supp-mps.tex index 7e37bf1b4..ca56f6eaf 100644 --- a/tex/context/base/supp-mps.tex +++ b/tex/context/base/supp-mps.tex @@ -46,7 +46,7 @@ \def\@@MPG{@MPG@} -%D First we define a handy constant: +%D First we define a handy constant: \bgroup \catcode`\%=\@@other \xdef\letterpercent{\string%} \egroup @@ -64,7 +64,7 @@ %D This is implemented as: \long\def\startMPgraphic#1\stopMPgraphic - {\checkMPTEXgraphic{#1}% % potential speedup: pass #1 as macro + {\checkMPTEXgraphic{#1}% % potential speedup: pass #1 as macro \startwritingMPgraphic \writeMPgraphic{#1}% \stopwritingMPgraphic} @@ -207,17 +207,17 @@ \newtoks \MPinitializations -% buggy +% buggy % % \long\def\startMPinclusions#1\stopMPinclusions % {\long\def\theMPinclusions -% {% \expanded ! +% {% \expanded ! % \@EA\expanded\@EA{\@EA\writeMPgraphic\@EA{\the\MPinitializations;}}% % \writeMPgraphic{#1}}} \long\def\startMPinclusions#1\stopMPinclusions {\long\def\theMPinclusions - {% \expanded ! + {% \expanded ! % \@EA\expanded\@EA{\@EA\writeMPgraphic\@EA{\the\MPinitializations;}}% \writeMPgraphic{#1}}} @@ -318,13 +318,13 @@ \newif\ifforceMPTEXgraphic -%D Before we supported the graph module, we had: +%D Before we supported the graph module, we had: %D -%D \starttypen +%D \starttypen %D \convertargument etex\to\MPasciiB %D \convertargument textext\to\MPasciiC % geen "text" %D \convertargument graphictext\to\MPasciiD % geen "text" -%D +%D %D \long\def\checkMPTEXgraphic#1% %D {\ifforceMPTEXgraphic %D \global\MPTEXgraphictrue @@ -335,10 +335,10 @@ %D {\doifstringinstringelse\MPasciiD\MPasciiA{\global\MPTEXgraphictrue} %D {\global\MPTEXgraphicfalse}}}% %D \fi} -%D \stoptypen +%D \stoptypen %D %D The next alternative permits extensions in other modules -%D without the need to know the details of testing. +%D without the need to know the details of testing. \newtoks\MPTEXgrapicchecks @@ -351,10 +351,10 @@ \the\MPTEXgrapicchecks\relax \fi} -%D We could have used a kind of array approach using a -%D counter appended to \type {MPascii}, but this is an -%D as efficient alternative. (The uglyness comes from -%D expanding after the string \type {#1}). +%D We could have used a kind of array approach using a +%D counter appended to \type {MPascii}, but this is an +%D as efficient alternative. (The uglyness comes from +%D expanding after the string \type {#1}). \def\forceMPTEXcheck#1% {\expanded{\convertargument#1\noexpand\to @@ -368,6 +368,18 @@ \forceMPTEXcheck{textext} \forceMPTEXcheck{graphictext} +%D \starttypen +%D \forceMPTEXgraphictrue +%D +%D \forceMPTEXcheck{lintext} +%D \forceMPTEXcheck{logtext} +%D +%D \startMPcode +%D draw hlintext.lft(0, 20, 5, 20cm, "@3e") ; +%D draw vlogtext.bot(0, 10, 9, 10cm, "@3e") ; +%D \stopMPcode +%D \stoptypen + \def\flushMPTEXgraphic {\ifMPTEXgraphic \ifx\everyMPTEXgraphic\emptytoks \else \immediate\write\MPwrite{verbatimtex \the\everyMPTEXgraphic\space etex;}% @@ -380,7 +392,7 @@ \fi} % the next one fails on btex \vbox {\hbox .. leading to \vbox \hbox -% +% % \long\def\dodowriteMPgraphicline#1tex #2#3etex#4\MPend % {\ifx\next\empty\else\ifx\next\relax\else % \bgroup @@ -400,8 +412,8 @@ % \dowriteMPgraphicline#4tex \relax etex\MPend % \fi % \fi\fi} -% -% so we need a two step approach +% +% so we need a two step approach \long\def\dodowriteMPgraphicline#1tex % {\doifnextcharelse\relax @@ -444,19 +456,19 @@ \newtoks\everyMPgraphic \everyMPgraphic{\everyMPgraphic\emptytoks} -\ifx\blabelgroup\undefined +\ifx\blabelgroup\undefined - \let\blabelgroup\bgroup + \let\blabelgroup\bgroup \let\elabelgroup\egroup \fi \newconditional\firstMPgraphic \settrue\firstMPgraphic -\appendtoks +\appendtoks \let \# \letterhash \let \_ \letterunderscore - \let \& \letterampersand + \let \& \letterampersand \let \{ \letteropenbrace \let \} \letterclosebrace \to \everyMPgraphic @@ -466,16 +478,16 @@ \beginTEX -\ifx \honorunexpanded \undefined \else % not really needed +\ifx \honorunexpanded \undefined \else % not really needed \prependtoks \honorunexpanded \to \everyMPgraphic -\fi +\fi \endTEX -% buggy (at least in collected graphics, lazy expansion) +% buggy (at least in collected graphics, lazy expansion) % % \def\startwritingMPgraphic % {\blabelgroup -% \global\advance\nofMPgraphics 1 +% \global\advance\nofMPgraphics 1 % \ifMPrun \else % \allocateMPslot\currentMPgraphic % \fi @@ -485,12 +497,12 @@ % \ifrunMPgraphics % \openMPgraphicfile1{runtime}% % % no reset here ! -% \theMPinclusions +% \theMPinclusions % \else -% \openMPgraphicfile0{collected}% +% \openMPgraphicfile0{collected}% % % reset here ! global added (due to adding \blabelgroup) -% \theMPinclusions -% \global\let\theMPinclusions\relax +% \theMPinclusions +% \global\let\theMPinclusions\relax % \fi % \flushMPTEXgraphic % \ifMPrun \else @@ -502,7 +514,7 @@ \def\startwritingMPgraphic {\blabelgroup - \global\advance\nofMPgraphics 1 + \global\advance\nofMPgraphics 1 \ifMPrun \else \allocateMPslot\currentMPgraphic \fi @@ -512,13 +524,13 @@ \ifrunMPgraphics \openMPgraphicfile1{runtime}% % no reset here ! - \theMPinclusions + \theMPinclusions \@EA\expanded\@EA{\@EA\writeMPgraphic\@EA{\the\MPinitializations;}}% \else - \openMPgraphicfile0{collected}% + \openMPgraphicfile0{collected}% % reset here ! global added (due to adding \blabelgroup) - \theMPinclusions - \global\let\theMPinclusions\relax + \theMPinclusions + \global\let\theMPinclusions\relax \fi \flushMPTEXgraphic \ifMPrun \else @@ -539,9 +551,9 @@ % \@EA\newwrite\csname\@@MPG\@@MPG\MPgraphicfile\endcsname}% % {\ifcase#1\donefalse\else\donetrue\fi}% \@EA\ifx\csname\@@MPG\@@MPG\MPgraphicfile\endcsname\relax - %\donetrue \@EA\newwrite\csname\@@MPG\@@MPG\MPgraphicfile\endcsname - % for the sake of plain usage - \donetrue \@EA\@EA\csname newwrite\endcsname\csname\@@MPG\@@MPG\MPgraphicfile\endcsname + %\donetrue \@EA\newwrite\csname\@@MPG\@@MPG\MPgraphicfile\endcsname + % for the sake of plain usage + \donetrue \@EA\@EA\csname newwrite\endcsname\csname\@@MPG\@@MPG\MPgraphicfile\endcsname \doglobal\addtocommalist\MPgraphicfile\MPgraphicfiles \else \ifcase#1\relax\donefalse\else\donetrue\fi @@ -588,7 +600,7 @@ \def\closeMPgraphicfiles {\ifrunMPgraphics \else \ifx\MPgraphicsfiles\empty\else - \def\docommando##1% + \def\docommando##1% {\message{[flush and process ##1.mp afterwards]}% \@EA\let\@EA\MPwrite\csname\@@MPG\@@MPG##1\endcsname \finishwritingMPgraphics}% @@ -604,26 +616,26 @@ \def \allocateMPslot#1{\global\advance#1 1 } \def\deallocateMPslot#1{} -%D \macros +%D \macros %D {translateMPinput} %D -%D For my polish friends: +%D For my polish friends: %D -%D \starttypen -%D % translate=il2-pl +%D \starttypen +%D % translate=il2-pl %D %D \translateMPinput{il2-pl} %D -%D \startMPenvironment[global] -%D \setupbodyfont[plr] -%D \stopMPenvironment +%D \startMPenvironment[global] +%D \setupbodyfont[plr] +%D \stopMPenvironment %D -%D \TeX: ± ¶ +%D \TeX: ± ¶ %D %D \startMPcode -%D draw btex MetaPost: ± ¶ etex scaled 5 ; +%D draw btex MetaPost: ± ¶ etex scaled 5 ; %D \stopMPcode -%D \stoptypen +%D \stoptypen \def\translateMPinput#1% {\xdef\MPinputtranslation{\letterpercent -translate-file=#1\space}} @@ -705,7 +717,7 @@ % \box\MPgraphicbox % \fi} % -% experimental: +% experimental: \def\placeMPgraphic {\ifMPshiftdrawing @@ -728,9 +740,9 @@ \newif\ifuseMPbox \useMPboxtrue -%D We assume that one can set objects: -%D -%D \starttypen +%D We assume that one can set objects: +%D +%D \starttypen %D \def\douseMPbox#1% %D {\setobject{MP}{#1}\vbox %D {\forgetall @@ -738,16 +750,16 @@ %D \deallocateMPslot\currentMPgraphic %D \placeMPgraphic}% %D \setgvalue{#1}{\getobject{MP}{#1}}} -%D \stoptypen -%D +%D \stoptypen +%D %D More save is to use a number for {MP}{#1} which permits -%D redefinition. +%D redefinition. \newcount\MPobjectcounter \def\douseMPbox#1% {\global\advance\MPobjectcounter\plusone - \setobject{MP}{\number\MPobjectcounter}\vbox + \setobject{MP}{\number\MPobjectcounter}\vbox {\forgetall \loadMPgraphic{\MPgraphicfile.\the\currentMPgraphic}{}% \deallocateMPslot\currentMPgraphic @@ -802,7 +814,7 @@ %D particular place. Therefore we explicitly disable %D inclusions (resulting in an dummy figure) when we are in MP %D run mode (see mfun-004 for an example, we process an -%D example buffer which produced graphics). +%D example buffer which produced graphics). \long\def\handleuseMPgraphic#1#2% {\bgroup @@ -811,7 +823,7 @@ \ifMPrun \else \loadMPgraphic{\MPgraphicfile.\the\currentMPgraphic}{}% \placeMPgraphic - \fi + \fi \deallocateMPslot\currentMPgraphic \egroup} @@ -821,9 +833,9 @@ \elabelgroup} \long\def\startusableMPgraphic#1#2\stopusableMPgraphic % dummy - {\blabelgroup + {\blabelgroup \long\setgvalue{\@@MPG#1}{\handleuseMPgraphic{#1}{#2}}% - \elabelgroup} + \elabelgroup} \let\useMPgraphic=\reuseMPgraphic @@ -917,7 +929,7 @@ \def\MPOSTdriver {dvips} \def\executeMPOST#1% - {mpost + {mpost \ifcase\interactionmode\MPOSTbatchswitch\or\MPOSTnonstopswitch\fi \space\ifuseMETAFUNformat \MPOSTformatswitch metafun \fi #1} @@ -940,8 +952,8 @@ \fi -%D The batchmode and nonstopmode (introduced in 2003 for -%D Patrick Gundlach) switches may differ per binary and are +%D The batchmode and nonstopmode (introduced in 2003 for +%D Patrick Gundlach) switches may differ per binary and are %D supported by \TEXEXEC. %D \macros @@ -1035,16 +1047,16 @@ %D \starttypen %D \includeMPfontsfalse %D \stoptypen -%D +%D %D {\em Currently this method fails for situations where the %D font definition is not on one line, which is he case when %D unkerned fonts are used along with long lines. One solution %D for this is to increase the value of \type {max_print_line} -%D in \type {texmf.cnf}.}} +%D in \type {texmf.cnf}.}} \newif\ifincludeMPfonts \includeMPfontstrue -\def\includeMPfonts#1% +\def\includeMPfonts#1% {\ifincludeMPfonts \bgroup \message{[MP fonts #1]}% @@ -1192,7 +1204,7 @@ %D \stoptypen %D %D which comes to rounding sizes. This is something -%D experimental. (The macro in supp-pdf.tex is more +%D experimental. (The macro in supp-pdf.tex is more %D advanced.) \def\PSnfont{nfont} @@ -1278,7 +1290,7 @@ \def\convertMPcolorpath{} \def\convertMPcolorfile{metacmyk.tmp} -\def\convertMPcolors#1% todo: open on local path, no copy +\def\convertMPcolors#1% todo: open on local path, no copy {\bgroup \ifforcegrayMPcolors \donetrue @@ -1315,8 +1327,8 @@ %D copied back. We don't have to reduce to gray scales; %D \METAPOST\ already takes care of that. -%D BTW, this code is quite old, and not as complete as the -%D \PDF\ converter, which also handles spot colors and so. +%D BTW, this code is quite old, and not as complete as the +%D \PDF\ converter, which also handles spot colors and so. \def\handleMPcolor {\expandafter\dohandleMPcolor\fileline setrgbcolor*\\} @@ -1330,7 +1342,7 @@ \def\dodohandleMPcolor#1 #2 #3setrgbcolor#4setrgbcolor*\\% {\bgroup -%\ifnum\MPspecialsignal=123 % color spec / hardcoded hack +%\ifnum\MPspecialsignal=123 % color spec / hardcoded hack \ifdim#1pt=.123pt \immediate\write\scratchwrite{#1 #2 #3 setrgbcolor}% \else @@ -1525,7 +1537,7 @@ {\ifMPdrawingdone \expandafter\startMPgraphic\MPdrawingdata\stopMPgraphic \loadcurrentMPgraphic\empty - \deallocateMPslot\currentMPgraphic + \deallocateMPslot\currentMPgraphic \placeMPgraphic \fi} @@ -1652,19 +1664,19 @@ %D turn can trigger generation of other graphics, like those %D in the background. Graphics start swapping place and again %D page breaks change. You can imagine the mess we en dup -%D with. -%D +%D with. +%D %D This is why we provide was to use a dedicate range if %D numbers for fixed graphcis. Such graphics will not en dup %D in the text flow (at least their dimensions don't %D contribute to the main vertical list, and thereby they -%D cannot interfere. We use a rather safe maximum of 4000 -%D graphics here and 8000 in \type {meta-ini}. +%D cannot interfere. We use a rather safe maximum of 4000 +%D graphics here and 8000 in \type {meta-ini}. -\newcount \maxnofMPgraphics \maxnofMPgraphics = 4000 % 8000 +\newcount \maxnofMPgraphics \maxnofMPgraphics = 4000 % 8000 \newcount \minnofMPgraphics \minnofMPgraphics = 1 -\newif \ifMPstaticgraphic \MPstaticgraphicfalse +\newif \ifMPstaticgraphic \MPstaticgraphicfalse \def\allocateMPslot#1% {\ifrunMPgraphics @@ -1673,21 +1685,21 @@ \recycleMPslotsfalse \fi \ifrecycleMPslots - \doloop % slow but used seldom + \doloop % slow but used seldom {\doifundefined{\recurselevel MP} {\letgvalueempty{\recurselevel MP}% \global#1=\recurselevel \exitloop}}% % \message{[MP slot + \number#1]% \else\ifMPstaticgraphic - \global#1\maxnofMPgraphics + \global#1\maxnofMPgraphics \global\advance\maxnofMPgraphics \minusone \else - \global#1\minnofMPgraphics + \global#1\minnofMPgraphics \global\advance\minnofMPgraphics \plusone \fi\fi \ifnum\minnofMPgraphics<\maxnofMPgraphics \else - \writestatus{\m!systems}{increase \string\maxnofMPgraphics}% + \writestatus{\m!systems}{increase \string\maxnofMPgraphics}% \fi} \def\deallocateMPslot#1% diff --git a/tex/context/base/supp-pdf.tex b/tex/context/base/supp-pdf.tex index aed57b32e..7775842c2 100644 --- a/tex/context/base/supp-pdf.tex +++ b/tex/context/base/supp-pdf.tex @@ -396,6 +396,8 @@ \def \PSscale {scale} \def \PSconcat {concat} \def \PSdtransform {dtransform} +\def \PSsetlinewidth {setlinewidth} +\def \PSpop {pop} \def \PSnfont {nfont} % was needed for TUG98 proceedings \def \PSspecial {special} % extensions to MetaPost @@ -662,6 +664,17 @@ \resetMPstack \else\ifx\somestring\PSdtransform % == setlinewidth \let\handleMPsequence\handleMPdtransform + % after that we will encounter more tokens until setlinewidth+pop + % or pop+setlinewidth which we catch next; we explicitly need to + % reset the stack since [] n setdash may follow; a more clever + % approach would be to read on till the condition is met, but it's + % the only pop / setlinewidth we will encounter so ... + \else\ifx\somestring\PSsetlinewidth + % already handled in dtransform + \resetMPstack + \else\ifx\somestring\PSpop + % already handled in dtransform + \resetMPstack \else\ifx\somestring\PSconcat \PDFcode{\gMPa1 \gMPa2 \gMPa3 \gMPa4 \gMPa5 \gMPa6 cm}% \resetMPstack @@ -704,7 +717,7 @@ \resetMPstack \else \handleMPgraphic% {#1}% - \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi + \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi \handleMPsequence} \def\dohandleMPsequenceC#1 % diff --git a/tex/context/base/syst-etx.tex b/tex/context/base/syst-etx.tex index 8c6f68559..da0d6e269 100644 --- a/tex/context/base/syst-etx.tex +++ b/tex/context/base/syst-etx.tex @@ -1,6 +1,6 @@ %D \module %D [ file=syst-etx, -%D version=1999.03.17, % some time ... +%D version=1999.03.17, % some time ... %D title=\CONTEXT\ System Macros, %D subtitle=Efficient \PLAIN\ \TEX\ loading, %D author=Hans Hagen, @@ -8,12 +8,12 @@ %D copyright={PRAGMA / Hans Hagen \& Ton Otten}] %C %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 This module prepares \CONTEXT\ for \ETEX. We don't use -%D the definition files that come with this useful \TEX\ -%D extension, but implement our own alternatives. +%D This module prepares \CONTEXT\ for \ETEX. We don't use +%D the definition files that come with this useful \TEX\ +%D extension, but implement our own alternatives. \unprotect @@ -101,9 +101,9 @@ \endTEX %D Of course we want even bigger log files, so we copied this -%D from the \ETEX\ source files. +%D from the \ETEX\ source files. -\beginETEX \tracing... +\beginETEX \tracing... \def\tracingall {\tracingonline \@ne @@ -125,7 +125,7 @@ \errorstopmode} \def\loggingall - {\tracingall + {\tracingall \tracingonline \z@} \def\tracingnone @@ -148,7 +148,7 @@ \endETEX -%D Just to be sure: +%D Just to be sure: \ifx\eTeX\undefined @@ -156,11 +156,11 @@ \fi -%D In \ETEX\ we have lots of registers, so we redefine a few -%D low level macros. We reserve some extra space for inserts -%D and as soon as we near the end of the first register -%D memory bank (often some 10 less than 255), we switch to the -%D slower range \type {\@@medallocation}||\type {\@@maxallocation}. +%D In \ETEX\ we have lots of registers, so we redefine a few +%D low level macros. We reserve some extra space for inserts +%D and as soon as we near the end of the first register +%D memory bank (often some 10 less than 255), we switch to the +%D slower range \type {\@@medallocation}||\type {\@@maxallocation}. \beginETEX \new... @@ -177,14 +177,14 @@ \def\newmarks {\myalloc@8\marks \mathchardef\@@maxallocation} \def\newlanguage{\myalloc@9\language\chardef \@@minallocation} -%D Since in \CONTEXT\ we only have one math family left we +%D Since in \CONTEXT\ we only have one math family left we %D redefine \type {\newfam}. -\def\newfam#1{\chardef#1=15 } +\def\newfam#1{\chardef#1=15 } -%D Therefore we should reset the related counter. +%D Therefore we should reset the related counter. -\count18=1 +\count18=1 %D We use some constants in the tests. @@ -192,21 +192,21 @@ \mathchardef\@@medallocation = 256 \mathchardef\@@maxallocation = 32767 -%D I cannot imagine that more than~8 extra insert classes +%D I cannot imagine that more than~8 extra insert classes %D are needed, so we say: -\chardef\@@insallocation=8 +\chardef\@@insallocation=8 -%D But, for critical editions, we may need many more, so +%D But, for critical editions, we may need many more, so %D here we go again: \chardef\@@insallocation=24 -%D My low level allocation macro now comes down to: +%D My low level allocation macro now comes down to: \def\myalloc@#1#2#3#4#5% {\global\advance\count1#1by\@ne - \ifnum\count1#1>\@@medallocation \else + \ifnum\count1#1>\@@medallocation \else \global\advance\insc@unt by -\@@insallocation \ifnum\count1#1<\insc@unt \else \global\count1#1=\@@medallocation % \wait @@ -225,26 +225,26 @@ %D These macros can be checked by tests like: %D -%D \starttypen +%D \starttypen %D \let\wlog\message \dorecurse{1000}{\newcount\dummy} -%D \stoptypen +%D \stoptypen -%D A few bonus bindings. +%D A few bonus bindings. \let\normalprotected = \protected \let\normalunexpanded = \unexpanded -%D \macros +%D \macros %D {begcsname} %D -%D Handy for \ETEX-only usage: +%D Handy for \ETEX-only usage: \beginETEX \ifcsname \def\begcsname#1\endcsname {\ifcsname#1\endcsname\csname#1\endcsname\fi} -\endETEX +\endETEX \beginTEX diff --git a/tex/context/base/unic-exp.tex b/tex/context/base/unic-exp.tex index 1f60cb99c..a6d39ea78 100644 --- a/tex/context/base/unic-exp.tex +++ b/tex/context/base/unic-exp.tex @@ -68,4 +68,4 @@ \expandunivector[0,1,2,32,33] -\protect \endinput +\protect \endinput \ No newline at end of file diff --git a/tex/context/base/unic-ini.tex b/tex/context/base/unic-ini.tex index a12ab1590..00c8f85d2 100644 --- a/tex/context/base/unic-ini.tex +++ b/tex/context/base/unic-ini.tex @@ -499,7 +499,7 @@ \def\unidiv{0} \def\unimod{0} -\chardef\utfunihashmode=0 % 1 = enabled +\chardef\utfunihashmode=0 % 0=hash glyph 1=font glyph \def\utfunifontglyph#1% {\xdef\unidiv{\number\utfdiv{#1}}% @@ -554,4 +554,4 @@ \useunicodevector[0,1,2,32,33] \useregime[utf] -\protect \endinput +\protect \endinput \ No newline at end of file diff --git a/tex/context/base/xtag-exp.tex b/tex/context/base/xtag-exp.tex index c3f0b8213..d60d1e0a0 100644 --- a/tex/context/base/xtag-exp.tex +++ b/tex/context/base/xtag-exp.tex @@ -2,7 +2,7 @@ %D [ file=xtag-exp, %D version=2001.08.20, %D title=\CONTEXT\ XML Support, -%D subtitle=Expansion Related Things, +%D subtitle=Expansion Related Things, %D author=Hans Hagen, %D date=\currentdate, %D copyright={PRAGMA / Hans Hagen \& Ton Otten}] @@ -19,34 +19,34 @@ \writestatus{loading}{Context XML Macros (expansion)} -\unprotect +\unprotect -%D Files +%D Files \newcounter\XMLfilenesting \let\restoreXMLelements\relax \def\startXMLreading {\increment \XMLfilenesting \relax - \ifnum\XMLfilenesting=1 + \ifnum\XMLfilenesting=1 %\ifcase\XMLfilenesting\or - \ifprocessingXML + \ifprocessingXML \let\restoreXMLelements\relax - \else + \else \let\restoreXMLelements\disableXMLelements - \enableXMLelements + \enableXMLelements \fi - \fi} + \fi} \def\stopXMLreading - {\ifnum\XMLfilenesting=1 + {\ifnum\XMLfilenesting=1 %\ifcase\XMLfilenesting\or - \restoreXMLelements + \restoreXMLelements \let\restoreXMLelements\relax - \fi + \fi \decrement \XMLfilenesting \relax} \def\enableXMLfiledata - {\prependtoks \enableXMLelements \to \mainoutput % brrr, will change + {\prependtoks \enableXMLelements \to \mainoutput % brrr, will change \appendtoks \startXMLreading \to \everybeforeutilityread \appendtoks \stopXMLreading \to \everyafterutilityread \appendtoks \forcefileexpansiontrue \to \everyenableXML @@ -54,16 +54,16 @@ \setupXMLprocessing[\c!status=\v!start] -\appendtoks - \ifproductionrun \enableXMLfiledata \fi +\appendtoks + \ifproductionrun \enableXMLfiledata \fi \to \aftersetupXMLprocessing -%D Here we overload the mark handler. +%D Here we overload the mark handler. \def\XMLexpanded#1% {\bgroup \honorunexpanded - \dontexpandencoding + \dontexpandencoding \xdef\@@globalexpanded{\noexpand#1}% \egroup \@@globalexpanded} @@ -71,15 +71,15 @@ \let\normalsetnormalmark\setnormalmark \long\def\setnormalmark#1% overloaded - {\ifprocessingXML + {\ifprocessingXML \expandafter\setXMLexpandedmark \else \expandafter\normalsetnormalmark \fi#1} -\def\setXMLexpandedmark#1#2% using a tok prevents unwanted expansion in mark +\def\setXMLexpandedmark#1#2% using a tok prevents unwanted expansion in mark {\XMLexpanded{\scratchtoks{\enableXMLelements#2}}% \setxvalue{\@@crk\string#1}{\the\scratchtoks}% \normalmarks#1{\the\scratchtoks}} -\protect \endinput +\protect \endinput \ No newline at end of file diff --git a/tex/context/base/xtag-raw.tex b/tex/context/base/xtag-raw.tex index 9ab3ee946..8c190d943 100644 --- a/tex/context/base/xtag-raw.tex +++ b/tex/context/base/xtag-raw.tex @@ -13,7 +13,7 @@ \writestatus{loading}{Context XML Macros (raw specials)} -%D Some day this module will be obsolete. +%D Some day this module will be obsolete. \defineXMLentity [tex-hash] {\letterhash} \defineXMLentity [tex-dollar] {\letterdollar} @@ -26,10 +26,11 @@ \defineXMLentity [tex-bar] {\letterbar} \defineXMLentity [tex-tilde] {\lettertilde} -\endinput - +\endinput + \defineXMLsingular[test][oeps=,whow=,hm=] - {\tttf \input \XMLop{oeps} [\XMLop{whow}] [\XMLop{hm}]} +% {\tttf \input \XMLop{oeps} [\XMLop{whow}] [\XMLop{hm}]} + {\tttf \XMLop{oeps} [\XMLop{whow}] [\XMLop{hm}]} \startXMLdata diff --git a/tex/context/base/xtag-run.tex b/tex/context/base/xtag-run.tex index 1648ed063..b187f7817 100644 --- a/tex/context/base/xtag-run.tex +++ b/tex/context/base/xtag-run.tex @@ -46,7 +46,7 @@ .egroup -\gdef\@@XMLshow{\@@XML shw} +\gdef\@@XMLshow{\@@XML shw} \gdef\@XMLindent#1% {\ifnum\XMLlevel>\plusone\advance\leftskip#11em\relax\fi} @@ -88,7 +88,7 @@ \egroup -\ifx\XMLprettycycle\undefined \gdef\XMLprettycycle{3} \fi +\ifx\XMLprettycycle\undefined \gdef\XMLprettycycle{3} \fi \doglobal\newcounter\@XMLnofelements \doglobal\newif\ifXMLunspacepretty @@ -97,14 +97,14 @@ {\ifnum\XMLlevel<\@@xfniveau\relax \ifnum\kindofXMLelement=2\else \doglobal\increment\@XMLnofelements\relax - \ifcase\@XMLnofelements\else\@@xftussen\fi - \fi + \ifcase\@XMLnofelements\else\@@xftussen\fi + \fi \fi - % no, too fragile: \hangindent2em -\ifcase\kindofXMLelement\or\or - \getvalue{\@@XMLshow::\currentXMLelement}\relax -\fi - \indent + % no, too fragile: \hangindent2em + \ifcase\kindofXMLelement\or\or + \getvalue{\@@XMLshow::\currentXMLelement}\relax + \fi + \indent \bgroup % \localcolortrue \advance\XMLlevel \minusone @@ -124,18 +124,18 @@ \ifnum\kindofXMLelement=3\string/\fi \string>% \stopcolor - \egroup -\ifcase\kindofXMLelement\or - \getvalue{\@@XMLshow::\currentXMLelement}\relax -\fi + \egroup + \ifcase\kindofXMLelement\or + \getvalue{\@@XMLshow::\currentXMLelement}\relax + \fi \ifnum\XMLlevel<\@@xfniveau\relax \ifnum\kindofXMLelement=1\else \doglobal\increment\@XMLnofelements\relax - \ifcase\@XMLnofelements\else\@@xftussen\fi - \fi + \ifcase\@XMLnofelements\else\@@xftussen\fi + \fi \fi \ifXMLunspacepretty\ignorespaces\fi} - + \gdef\nextXMLtext{\blank\@XMLlevel+\@XMLelement1\par} \gdef\prevXMLtext{\par\@XMLelement0\par\@XMLlevel-\blank} \gdef\nextXMLpara{\nextXMLline\par} @@ -213,57 +213,63 @@ \gdef\showXMLfile#1% {\bgroup + % temp hack, will be the normal definition + \long\def\docleanupXMLarguments##1/ ##2\relax{\def\currentXMLarguments{##1}}% + % so far for hack \nohyphens \dontcomplain \XMLlevel\zerocount - \increment\@@xfniveau % hack + \increment\@@xfniveau % hack \tttf \startopelkaar[\v!blanko] \ifautoXMLshow \let\executeXMLelement\autoshowXMLelement \fi \let\executeXMLentity\@XMLentity \enableXML\verbatimXML -\enableregime[utf]% -\chardef\utfunicodetracer8 + \enableregime[utf]% + \chardef\utfunicodetracer8 \readfile{\truefilename{#1}}\donothing\donothing\endgraf - \removelastskip % really needed + \removelastskip % really needed \stopopelkaar \egroup} -\gdef\showXMLbuffer - {\dosingleempty\doshowXMLbuffer} - -\gdef\doshowXMLbuffer[#1]% - {\doifelsenothing{#1} - {\doshowXMLbuffer[\jobname]} - {\bgroup - \def\dodoprocessXMLbuffer##1{\showXMLfile{\TEXbufferfile{##1}}}% - \processcommalist[#1]\dodoprocessXMLbuffer - \egroup}} - \gdef\showXMLtext#1% {\bgroup + % temp hack, will be the normal definition + \long\def\docleanupXMLarguments##1/ ##2\relax{\def\currentXMLarguments{##1}}% + % so far for hack \dontcomplain \XMLlevel\maxcard - \increment\@@xfniveau % hack + \increment\@@xfniveau % hack \tttf \ifautoXMLshow \let\executeXMLelement\autoshowXMLelement \fi \let\executeXMLentity\@XMLentity \let\par\allowbreak\let\endgraf\par \setbox\scratchbox\hbox {\enableXML\verbatimXML\scantokens{#1}\removelastskip}% - \unhbox\scratchbox + \unhbox\scratchbox \egroup} -%D +\gdef\showXMLbuffer + {\dosingleempty\doshowXMLbuffer} + +\gdef\doshowXMLbuffer[#1]% + {\doifelsenothing{#1} + {\doshowXMLbuffer[\jobname]} + {\bgroup + \def\dodoprocessXMLbuffer##1{\showXMLfile{\TEXbufferfile{##1}}}% + \processcommalist[#1]\dodoprocessXMLbuffer + \egroup}} + +%D \gdef\showXSDcomponent {\dodoubleargument\doshowXSDcomponent} \gdef\doshowXSDcomponent[#1][#2]% {\bgroup - \showXMLnop[xsd:schema] - \showXMLign[xsd:appInfo] - \showXMLign[xsd:annotation] + \showXMLnop[xsd:schema] + \showXMLign[xsd:appInfo] + \showXMLign[xsd:annotation] \videXMLcontextblock[#2] \showXMLfile{#1} \egroup} @@ -277,4 +283,4 @@ \showXMLfile{#1} \egroup} -\protect \endinput +\protect \endinput \ No newline at end of file -- cgit v1.2.3