%\module [ % file=s-map-10.mkii, % version=2012.06.06, % title=\CONTEXT\ Style File, % subtitle=\MAPS\ journal style, % author={Hans Hagen, Taco Hoekwater and Siep Kroonenberg}, % date=\currentdate, % copyright={NTG / MAPS}% %] % NOTE: this (MkII) version is not guaranteed to give exactly the % same output as the MkIV one, and exists mostly for compatibility % with old-fashioned authors. All final typesetting for the MAPS % is done with MkIV. If you are reading this: please consider % switching! % This module implements the MAPS style for use with the Context % macro package. The original MAPS layout was designed and % implemented in LaTeX by Taco Hoekwater and Siep Kroonenberg. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \newif\ifMapsInColumns \doifmode{asym}{\enablemode[onecolumn]} % implies onecolumn \doifnotmode{onecolumn}{\MapsInColumnstrue} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% fonts %%%%%%%%% first, font sizes \definebodyfontenvironment [7pt][% LaTeX: scriptsize interlinespace=8pt, big=8pt, small=6pt% ] \definebodyfontenvironment [8pt][% LaTeX: footnotesize interlinespace=9pt, big=9pt, small=7pt, x=6pt% ] \definebodyfontenvironment [9pt][% LaTeX: small interlinespace=10pt, big=10pt, small=8pt,% x=7pt,% script=6pt% ] \definebodyfontenvironment [10pt][% LaTeX: normalsize interlinespace=11pt, big=11pt, a=11pt, small=9pt,% x=8pt,% script=7pt% ] \definebodyfontenvironment [11pt][% LaTeX: large interlinespace=11pt, big=11pt, small=10pt,% x=9pt,% script=8pt% ] \definebodyfontenvironment [14pt][% interlinespace=14pt, big=18pt, small=11pt, x=10pt% ] \definebodyfontenvironment [18pt][% interlinespace=18pt, big=24pt, small=14pt, x=10pt% ] \definebodyfontenvironment [24pt][% interlinespace=24pt, big=24pt, small=18pt, x=11pt% ] %%% font families (no realfonts, no protruding) \starttypescript [maps][ec] \definetypeface [maps] [rm] [serif] [modern] [default] [encoding=ec,rscale=0.95] \definetypeface [maps] [mm] [math] [modern] [computer-modern] \definetypeface [maps] [tt] [mono] [modern] [default] [encoding=ec,rscale=0.90] \definetypeface [maps] [ss] [sans] [modern] [default] [encoding=ec,rscale=0.95] \stoptypescript \writestatus{maps\space warning}{This, the MkII style, is OUTDATED and UNSUPPORTED!} \writestatus{maps\space warning}{Please consider using ConTeXt MkIV instead.} \startmode[realfonts] \writestatus{maps\space error}{The MkII version of the module does not support 'realfonts'!} \wait \stopmode \setupbodyfont[maps,10pt,rm] \setupinterlinespace[line=11pt] %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% additional general typographic details \setupindenting [yes,next,11pt] % indenting after enumerations etc. \definepapersize [maps] [width=21cm,height=26.5cm] \setuppapersize [maps][maps] % parameters: % margin -> latex marginparwith \setuplayout[% topspace=40pt, height=688pt, header=33pt, margin=106pt, leftmargindistance=11pt, rightmargindistance=11pt% ] \setupblank[5.5pt] \setuppagenumbering [location=] \definetyping [widetyping] \setupheader [style=\ss] \setupfooter [style=\ss] \def\AuHead{% %\ifnum\pageno=\MapsPage \hbox{}\else \MapsRunningAuthor%\fi } \def\TiHead{% \ifnum\pageno=\MapsPage \relax \MapsRunningAuthor %\hbox{} \else \MapsRunningTitle\fi} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% sectioning \setupheads[sectionnumber=no, align=right] \def\hfonti{\ssbfa} \def\hfontii{\ssbf} \def\hfontiii{\rm\it} \def\runin#1#2{#2.} \doifmodeelse{nosubsub}{% \setuphead [section][% style=\hfontii, before={\blank[line]}, after={}% ] \setuphead [subsection][% style=\hfontiii, command=\runin, alternative=text, distance=6pt, before={\blank[halfline]}% ]}{% \setuphead [section][% style=\hfonti, before={\blank[line]}, after={\blank[halfline]}% ] \setuphead [subsection][% style=\hfontii, before={\blank[halfline]}, after={}% ] \setuphead [subsubsection][% style=\hfontiii, command=\runin, distance=6pt, alternative=text, before={\blank[halfline]}% ]} \doifmodeelse{nosubsub}{% \setuphead [subject][% style=\hfontii, before={\blank[halfline]}, after={}% ] \setuphead [subsubject][% style=\hfontiii, command=\runin, alternative=text, before={\blank[halfline]}% ]}{% \setuphead [subject][% style=\hfonti, before={\blank}, after={\blank[halfline]}% ] \setuphead [subsubject][% style=\hfontii, before={\blank[halfline]}, after={}% ] \setuphead [subsubsubject][% style=\hfontiii, command=\runin, alternative=text, before={\blank[halfline]}% ]} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% floats \setupfloats [location=center, before={\ss}] \setupcaptions [headstyle={\ssbf},style={\ssx}, suffix=,distance=6pt, inbetween={\blank[halfline]}] %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%% various document elements \def\ChkBox{% \hbox {\boxrulewidth=.4pt \raise.2ex\ruledvbox {\phantom{\vrule width .85ex height .85ex% }}}} \definesymbol [1][\ChkBox] \setupitemize[1][packed] \setupitemize [each][% indentnext=no, align=right, width=1em, distance=0pt% ] % an outer form of itemize that does not indent % the paragraph. \definecomplexorsimpleempty\startouteritemize \def\complexstartouteritemize[#1]{\begingroup \startitemize[width=1sp,#1] \let\doitem\item \def\item{\doitem[]\hbox{}\kern12pt\rightskip=0pt}% } \def\stopouteritemize{\stopitemize\endgroup} \setupenumerations [indentnext=no] \setupdescriptions [indentnext=no] \unexpanded\def\smalltyping{% \switchtobodyfont[tt]% \parindent=0pt } % typing: % - prettyverbatim is NOT the default % - smaller size \unexpanded\def \XeTeX{X\lower.5ex\hbox{\kern-.1em\mirror{E}}\kern-.1667em\TeX} \setuptyping [% style={\smalltyping}, option=none, indentnext=no% ] \def\footnum#1{#1.} \setupfootnotes [location=none, width=\textwidth, before={\blank}, numbercommand=, command=\footnum] \setupfootnotedefinition [location=serried, before=, after=, distance=0.5em] \setuptabulate [before=\blank, inner=\ss, after=\blank] \def\startIntroEntry#1% {\startlinecorrection \bgroup \setupalign[right] \setuptolerance[verytolerant] \setupindenting[no] \noindent \switchtobodyfont[9pt]% \setuplocalinterlinespace[line=10pt]% %\hyphenpenalty10000 \parfillskip 0pt plus 1fill \rightskip6pt plus 1fill \ss \bgroup\bf #1\par\egroup \ignorespaces } \def\stopIntroEntry {\par\egroup \stoplinecorrection \blank[line] } \def\defineIntroEntry[#1][#2][#3]% {\setvalue{start#1}{\startIntroEntry{#2}}% \setvalue {stop#1}{\stopIntroEntry#3}} \defineIntroEntry[Keywords][Keywords][] \defineIntroEntry[Abstract][Abstract][] % article parameters (other fields and defaults) \def\MapsBibData[#1]% {\getparameters [Maps] [SubTitle=, RunningAuthor=, RunningTitle=, Email=, Address=, Page=1, Title=, Author=, Period=, Number=, Year=, #1]% \doifnothing{\MapsPeriod}{% \ifnum \normalmonth<6 \gdef\MapsPeriod{VOORJAAR}\else \gdef\MapsPeriod{NAJAAR}\fi} \doifinstringelse{oorjaar}{\MapsPeriod}{\gdef\MapsPeriod{VOORJAAR}}{}% \doifinstringelse{pring}{\MapsPeriod}{\gdef\MapsPeriod{VOORJAAR}}{}% \doifinstringelse{ajaar}{\MapsPeriod}{\gdef\MapsPeriod{NAJAAR}}{}% \doifinstringelse{utumn}{\MapsPeriod}{\gdef\MapsPeriod{NAJAAR}}{}% \doifnothing{\MapsYear}{\gdef\MapsYear{\the\year}}% \doifnothing{\MapsNumber}{% \ifnum \normalmonth<6 \xdef\MapsNumber{\the\numexpr (\the\year-1990)*2\relax}% \else \xdef\MapsNumber{\the\numexpr (\the\year-1990)*2+1\relax}% \fi }% \doifnothing\MapsRunningAuthor {\global\let\MapsRunningAuthor\MapsAuthor}% \doifnothing\MapsRunningTitle {\global\let\MapsRunningTitle\MapsTitle}}% \def\dostartArticle[#1]{% \MapsBibData[#1] \pageno=\MapsPage \setuppagenumber[start=\MapsPage] \startbaselinecorrection \bgroup \hsize = 457pt \let\\\crlf \blank[35pt,force] \switchtobodyfont[24pt] \setupalign[right] {\noindent\bf\MapsTitle\par} \ifx\MapsSubTitle\empty \blank[30pt] \else \bgroup \blank[12pt] \switchtobodyfont[18pt]\noindent \it \advance \rightskip 0pt plus 2em \MapsSubTitle\par \egroup \blank[30pt] \fi \egroup \setupalign[width] \switchtobodyfont[rm,10pt] \stopbaselinecorrection \ifMapsInColumns \startcolumns\hyphenpenalty1000 \else \clubpenalty10000 \widowpenalty10000 \fi } \def\startArticle{\dosingleempty\dostartArticle} \def\signArticle{% \blank\let\\\crlf \noindent\switchtobodyfont[ss,9pt]% \MapsAuthor \doifsomething{\MapsAddress}{\\\MapsAddress}% \doifsomething{\MapsEmail}{\\\MapsEmail}% \switchtobodyfont[10pt]% \def\signArticle{}% } \def\stopArticle{% \par\signArticle \ifMapsInColumns \stopcolumns \fi \page } \installpagebreakhandler{last}{} %%% `logos' %%%%%%%%%%%%%%%%%%%%%%%%%% \unexpanded\def\LaTeX % requested by erik frambach {{\setbox\scratchbox\hbox{L}% \scratchdimen\ht\scratchbox \setbox\scratchbox\hbox{\switchtobodyfont[script]A}% L\kern-.55\wd\scratchbox \raise\scratchdimen\hbox{\lower\ht\scratchbox\copy\scratchbox}% \kern-.2\wd\scratchbox\TeX}} \def\CONTEXT{Con{\TeX}t} \def\ConTeXt{Con{\TeX}t} \def\METAFONT{Metafont} \def\METAPOST{MetaPost} \def\POSTSCRIPT{PostScript} \def\acro#1{{\switchtobodyfont[9pt]#1}} %%%%%%%%%%% \doifmodeelse{onecolumn}{% \setuplayout[width=340pt] \doifmodeelse{asym}{% one col, asymmetric \setuplayout[backspace=187.3pt]% \setuptyping [widetyping][oddmargin=-117pt] \setuppagenumbering [alternative={singlesided,doublesided}] \setupheadertexts [{\hbox{}\hskip-117pt\TiHead}] [{\cap{\MapsPeriod\ \MapsYear}\quad\bf \pagenumber\hskip-30pt\hbox{}}] [{\hbox{}\hskip-147pt{\bf \pagenumber}\quad \cap {maps\ \MapsNumber}}] [\AuHead] \setupfootertexts }{% one col, symmetric \setuplayout[backspace=70.3pt] \setuppagenumbering [alternative=doublesided] \setuptyping[blank=halfline] \setupheadertexts [\TiHead] [{\cap{\MapsPeriod\ \MapsYear}\quad\bf \pagenumber\hskip-147pt\hbox{}}] [{\hbox{}\hskip-147pt{\bf \pagenumber}\quad \cap {maps\ \MapsNumber}}] [\AuHead] \setupfootertexts }}{% two col \setuplayout[width=457pt] \setupcolumns[n=2,tolerance=verytolerant,distance=11pt] \setuplayout[backspace=70.3pt,grid=yes] \setuppagenumbering [alternative=doublesided] \setuptyping[blank=halfline] \setupheadertexts [\TiHead] [{\cap{\MapsPeriod\ \MapsYear}\quad\bf \pagenumber\hskip-30pt\hbox{}}] [{\hbox{}\hskip-30pt{\bf \pagenumber}\quad \cap {maps\ \MapsNumber}}] [\AuHead] \setupfootertexts } \def\fulltextwidth{457pt} \def\startdescription {\blank \bgroup \def\sym##1{\par\noindent\hbox{\bf\kern -16pt ##1}\hskip 12pt} \startnarrower[left] } \def\stopdescription {\par \stopnarrower \egroup \blank \noindentation } \frenchspacing \setuptolerance[tolerant] \endinput