summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/context/base/s-mod-01.mkiv
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/context/base/s-mod-01.mkiv')
-rw-r--r--Master/texmf-dist/tex/context/base/s-mod-01.mkiv345
1 files changed, 293 insertions, 52 deletions
diff --git a/Master/texmf-dist/tex/context/base/s-mod-01.mkiv b/Master/texmf-dist/tex/context/base/s-mod-01.mkiv
index ed87346d6f5..ae119a7eed8 100644
--- a/Master/texmf-dist/tex/context/base/s-mod-01.mkiv
+++ b/Master/texmf-dist/tex/context/base/s-mod-01.mkiv
@@ -2,37 +2,271 @@
%D [ file=s-mod-01,
%D version=very-old,
%D title=\CONTEXT\ Style File,
-%D subtitle=Documentation Paper Environment,
-%D author=Hans Hagen,
+%D subtitle=Module Documentation,
+%D author={Hans Hagen \& Luigi Scarso},
%D date=\currentdate,
-%D copyright={PRAGMA / Hans Hagen \& Ton Otten}]
+%D copyright={PRAGMA ADE \& \CONTEXT\ Development Team}]
%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 looks like crap, is not documented, will
-%D change, and used to be called modu-*.tex.
+\unprotect
-% now split in mkii/mkiv so we will cleanup
+%D Usage:
+%D
+%D \starttyping
+%D context --ctx=s-mod somefile.mkiv
+%D \stoptyping
+%D
+%D In due time there will be a \type {mtx-context-module} as well.
+%D
+%D Luigi Scarso coordinates the processing of modules so best contact
+%D him when you run into problems. Bugs in this style can be sent to
+%D Hans.
+
+\setvariables
+ [document]
+ [ file=\jobname,
+ type=unknown,
+ version={\currentdate[\v!year,{.},\v!month,{.},\v!day]},
+ system=\CONTEXT,
+ title=Unknown Title,
+ subtitle=,
+ author=Unknown Author,
+ date=\currentdate,
+ copyright=Unknown Copyright,
+ suggestions=]
-\usemodule[mod-00,abr-01]
+\let\module\setupdocument
-\dontcomplain
+\definepalet [module:unknown] [localone=black,localtwo=white]
-\unprotect
+\definepalet [module:tex] [localone=blue,localtwo=green]
+\definepalet [module:mkii] [localone=blue,localtwo=green]
+\definepalet [module:mkiv] [localone=blue,localtwo=green]
+\definepalet [module:mkvi] [localone=blue,localtwo=green]
-\setupbodyfont
- [10pt]
+\definepalet [module:lua] [localone=red,localtwo=green]
+\definepalet [module:cld] [localone=red,localtwo=green]
+
+\definepalet [module:mp] [localone=red,localtwo=blue]
+\definepalet [module:mpii] [localone=red,localtwo=blue]
+\definepalet [module:mpiv] [localone=red,localtwo=blue]
+\definepalet [module:metapost][localone=red,localtwo=blue]
+
+\setuppalet
+ [module:unknown]
+
+\startuseMPgraphic{page}
+
+ StartPage ;
+
+ color local_white ; local_white := .8white ;
+ color local_one ; local_one := \MPcolor{localone} randomized (.6,.8) ;
+ color local_two ; local_two := \MPcolor{localtwo} randomized (.3,.4) ;
+
+ color local_one ; local_one := .75[\MPcolor{localone},white] ;
+ color local_two ; local_two := .75[\MPcolor{localtwo},white] ;
+
+ numeric width ; width := bbwidth Page ;
+ numeric height ; height := bbheight Page ;
+
+ u := width/400 ;
+
+ def a_module (expr dx, dy) =
+ picture p ; p := image (
+ ddy := 0 ; sx := 60u ;
+ for i=1 upto (4 randomized 2) :
+ sy := 7u randomized 3u ;
+ fill unitsquare xyscaled(sx,sy) shifted (0,ddy) withcolor local_two ;
+ ddy := ddy + sy + 4u ;
+ endfor ;
+ ) ;
+ p := p shifted (dx,dy) shifted - center p ;
+ fill boundingbox p enlarged 8u withcolor local_white ;
+ fill boundingbox p enlarged 4u withcolor local_one ;
+ draw p ;
+ enddef ;
+
+ set_grid(width, height, width/15, height/15) ;
+
+ forever:
+ if new_on_grid(uniformdeviate width,uniformdeviate height):
+ a_module(dx,dy) ;
+ fi ;
+ exitif grid_full ;
+ endfor ;
+
+ picture p ;
+
+ draw image (
+ draw anchored.urt(textext("\bf\strut\documentvariable{system}") ysized 5.0cm,urcorner Page shifted (-1cm,- 1cm)) ;
+ draw anchored.urt(textext("\bf\strut\documentvariable{title}") ysized 1.5cm,urcorner Page shifted (-1cm,- 8cm)) ;
+ draw anchored.urt(textext("\bf\strut\documentvariable{subtitle}") ysized 1.5cm,urcorner Page shifted (-1cm,-10cm)) ;
+ draw anchored.urt(textext("\bf\strut\documentvariable{author}") ysized 1.5cm,lrcorner Page shifted (-1cm, 5cm)) ;
+ draw anchored.urt(textext("\bf\strut\currentdate") ysized 1.5cm,lrcorner Page shifted (-1cm, 3cm)) ;
+ ) withcolor .25white ;
+
+ StopPage ;
+
+\stopuseMPgraphic
+
+\startsetups[document:start]
+
+ \setuppalet
+ [module:\documentvariable{type}]
+
+ \startTEXpage
+ \useMPgraphic{page}
+ \stopTEXpage
+
+ \page[right]
+
+\stopsetups
+
+\startsetups[document:stop]
+
+ \page
+
+ \placeregister
+ [\v!index]
+ [\c!balance=\v!yes,
+ \c!indicator=\v!no,
+ \c!criterium=\v!text]
+
+\stopsetups
+
+% In order to be able to typeset this one too, we need to avoid
+% direct backslashed names.
+
+\starttexdefinition startmoduledocumentation
+ \starttext
+ \page
+ \begingroup
+ \startdocument
+\stoptexdefinition
+
+\starttexdefinition stopmoduledocumentation
+ \stopdocument
+ \page
+ \endgroup
+ \stoptext
+\stoptexdefinition
+
+\starttexdefinition startdocumentation
+ \par
+ \bgroup
+\stoptexdefinition
+
+\starttexdefinition stopdocumentation
+ \par
+ \egroup
+\stoptexdefinition
+
+\definetyping
+ [definition]
+
+\starttexdefinition startcompressdefinitions
+ \blank
+ \begingroup
+ \setuptyping[definition][bodyfont=small]
+\stoptexdefinition
+
+\starttexdefinition stopcompressdefinitions
+ \blank
+ \endgroup
+\stoptexdefinition
+
+\definetyping [PL] [\c!option=PL]
+\definetyping [JV] [\c!option=JV]
+\definetyping [MP] [\c!option=MP]
+\definetyping [TEX] [\c!option=TEX]
+\definetyping [LUA] [\c!option=LUA]
+
+\setuptyping [\v!typing] [\c!margin=\v!standard]
+\setuptyping [\v!file] [\c!margin=\v!standard]
+\setuptyping [definition] [\c!margin=0pt,\c!numbering=\v!line,\c!continue=\v!yes] % this continue wins
+
+\setuplinenumbering
+ [definition]
+ [\c!style=\ttx,
+ \c!distance=\leftmargindistance,
+ \c!align=\v!flushright]
+
+% This will be cleaned up.
+
+\unexpanded\def\domodulemarginstuff#1#2%
+ {\marginstuff
+ {\ifx#1\relax
+ \index{#2}%
+ \else
+ \index{#1{#2}}%
+ \fi
+ #1{\doboundtext{#2}{\leftmarginwidth}{..}}}}
+
+\unexpanded\def\modulemarginstuff#1#2% to be renamed
+ {\processcommalist[#2]{\domodulemarginstuff#1}}
+
+\definemargindata
+ [marginstuff]
+ [left]
+ [stack=yes,
+ hoffset=2em,
+ style=\ttxx]
+
+\unexpanded\def\macros {\modulemarginstuff\tex }
+\unexpanded\def\extras {\modulemarginstuff\relax}
+\unexpanded\def\elements{\modulemarginstuff\someelement}
-\definetypeface [narrowtt] [tt] [mono] [modern-cond] [default]
+\unexpanded\def\someelement#1{\type{<#1>}}
-\setuptyping[\v!typing][\c!style=\narrowtt]
-\setuptype [\v!type] [\c!style=\narrowtt]
+% [index]{command}
+
+% \macros{a,b}
+% \macros{a,b}{b}
+% \macros[a]{a,b}{b}
+
+% weg ermee (indeed):
+%
+% \defineparagraphs [interface] [\c!n=2]
+% \setupparagraphs [interface] [1] [\c!width=4cm]
+
+\starttexdefinition startexample
+ \par
+ \startnarrower
+\stoptexdefinition
+
+\starttexdefinition stopexample
+ \stopnarrower
+\stoptexdefinition
+
+%D Command references:
+
+\usemodule[int-load] \loadsetups
+
+\let\showsetup\setup
+
+\setupframedtexts
+ [setuptext]
+ [\c!background=\v!screen,
+ \c!frame=\v!off]
+
+% style (we use dejavu as it supports more characters)
+
+\switchtobodyfont
+ [dejavu-condensed,10pt] % preload
+
+\setupbodyfont
+ [dejavu,10pt] % main font
\mainlanguage
[en]
+\setuptyping
+ [\v!typing]
+ [\c!bodyfont=dejavu-condensed]
+
\setupwhitespace
[\v!big]
@@ -54,49 +288,30 @@
\c!height=middle,
\c!style=\ss]
-\setupsetup
- [\c!reference=1] % mkiv?
-
-\startnotmode[single]
-
- \setuppagenumbering
- [\c!alternative={\v!doublesided,\v!singlesided}]
-
-\stopnotmode
-
\setuppagenumbering
[\c!location=]
+\setuppagenumbering
+ [\c!alternative={\v!doublesided,\v!singlesided}]
+
\setupfootertexts
[\v!edge]
- [][\v!pagenumber]
+ [][\pagenumber]
-\startmode[single]
-
- \setupfootertexts
- [\v!margin]
- [\filename{\Modulefile}][]
-
-\stopmode
-
-\startnotmode[single]
-
- \setupfootertexts
- [\v!margin]
- [\filename{\Modulefile}][]
- [\filename{\Modulefile}][]
-
-\stopnotmode
+\setupfootertexts
+ [\v!margin]
+ [\filename{\documentvariable{file}}][]
+ [\filename{\documentvariable{file}}][]
\setupfootertexts
[\v!text]
[\CONTEXT]
- [\Moduletitle]
+ [\documentvariable{title}]
\setupheadertexts
[\v!text]
[]
- [\Modulesubtitle]
+ [\documentvariable{subtitle}]
\setupinmargin
[\c!location=\v!left]
@@ -106,15 +321,19 @@
\setuphead
[\v!chapter]
- [\c!style=\ssc,
+ [\c!style=\bfc,
\c!page=\v!right,
\c!header=\v!empty]
\setuphead
[\v!section]
- [\c!style=\ssb,
+ [\c!style=\bfb,
\c!page=\v!right]
+\setuphead
+ [\v!subsection]
+ [\c!style=\bfa]
+
\setuplist
[\v!chapter]
[\c!style=\v!bold,
@@ -130,17 +349,39 @@
[\c!balance=\v!yes,
\c!indicator=\v!no]
-\startmode[nocolor]
-
- \setupcolors
- [\c!conversion=\v!always]
-
-\stopmode
-
\setupinteraction
[\c!state=\v!start,
\c!color=,
\c!contrastcolor=,
\c!style=]
+% modes
+
+\doifmode {nocolor} {
+
+ \setupcolors
+ [\c!conversion=\v!always]
+
+}
+
+\doifmode {singlesided} {
+
+ \setuppagenumbering
+ [\c!alternative=\v!singlesided]
+
+ \setupfootertexts
+ [\v!margin]
+ [\filename{\documentvariable{file}}][]
+
+}
+
+% bonus
+
+\usemodule
+ [abr-02]
+
+% another one
+
+\dontcomplain
+
\protect \endinput