beta-0.89.2
[luatex.git] / manual / old / luatexref-env.tex
blob8c9fd6477af1ea66d7381d06dca5733aba7f527e
1 % engine=luatex
3 \startenvironment luatexref-env
5 \usemodule[abr-02]
7 % \tex : tex command
8 % \lua : native lua code
9 % \luatex : lua lib, function, value defined in luatex
11 % \nonknuthmode
13 \setuplayout
14 [height=middle,
15 width=middle,
16 backspace=2cm,
17 topspace=2cm]
19 \setuppagenumbering
20 [alternative=doublesided]
22 \setuptolerance
23 [stretch,tolerant]
25 \setuptype
26 [lines=hyphenated]
28 \setuptyping
29 [lines=hyphenated]
31 \setupitemize
32 [each]
33 [packed]
35 \setupwhitespace
36 [medium]
38 \let\lua \type
39 \let\luatex \type
41 \def\|{\string|}
42 \def\>{\string>}
44 \def\showfields#1{\ctxlua
45 { do
46 local t = string.split('#1',',')
47 local r = { }
48 for _,a in pairs(node.fields(t[1],t[2])) do
49 if not (a == 'id' or a == 'subtype' or a =='next' or a=='prev') then
50 table.insert(r,'\\type{'.. a .. '}')
51 end
52 end
53 tex.sprint(table.concat(r, ', '))
54 end
58 \def\showid#1{\ctxlua
59 { do
60 local t = string.split('#1',',')
61 tex.sprint('\\type{'.. node.id(t[1]) .. '}')
62 if t[2] then
63 tex.sprint(', \\type{'.. node.subtype(t[2]) .. '}')
64 end
65 end
69 \starttexdefinition unexpanded todo #1
70 \dontleavehmode
71 \startcolor[red]
72 \bf<TODO: #1>
73 \stopcolor
74 \stoptexdefinition
77 \definetypeface[mainfacenormal] [ss][sans] [iwona] [default]
78 \definetypeface[mainfacenormal] [rm][serif][palatino] [default]
79 \definetypeface[mainfacenormal] [tt][mono] [modern] [default][rscale=1.1]
80 \definetypeface[mainfacenormal] [mm][math] [iwona] [default][encoding=default]
82 \definetypeface[mainfacemedium] [ss][sans] [iwona-medium][default]
83 \definetypeface[mainfacenormal] [rm][serif][palatino] [default]
84 \definetypeface[mainfacemedium] [tt][mono] [modern] [default][rscale=1.1]
85 \definetypeface[mainfacemedium] [mm][math] [iwona-medium][default][encoding=default]
87 \definetypeface[mainfacenarrowtt][tt][mono] [modern] [default][rscale=1.1]
89 \setupbodyfont
90 [mainfacenormal,11pt]
92 \definehead
93 [remark]
94 [subsubsubject]
96 \setuphead [chapter] [style=\mainfacemedium\bfd,color=blue]
97 \setuphead [section] [style=\mainfacemedium\bfc,color=blue]
98 \setuphead [subsection] [style=\mainfacemedium\bfb,color=blue]
99 \setuphead [subsubsection][style=\mainfacemedium\bfa,color=blue]
101 \setupheadertexts
104 \setuptyping
105 [color=blue] % style=\mainfacenarrowtt
107 \definetyping
108 [functioncall]
110 \setuptype
111 [color=blue] % style=\mainfacenarrowtt
113 \definecolor[blue] [b=.5]
114 \definecolor[red] [r=.5]
115 \definecolor[green][g=.5]
117 \startuseMPgraphic{lualogo}
118 color luaplanetcolor ; luaplanetcolor := .5blue ;
119 color luaholecolor ; luaholecolor := white ;
120 numeric luaextraangle ; luaextraangle := 0 ;
122 vardef lualogo = image (
123 % Graphic design by A. Nakonechnyj. Copyright (c) 1998, All rights reserved.
125 save luaorbitcolor, d, r, p ; color luaorbitcolor ; numeric d, r, p ;
127 luaorbitcolor := .5luaholecolor ; d := sqrt(2)/4 ; r := 1/4 ; p := r/8 ;
129 fill fullcircle scaled 1 withcolor luaplanetcolor ;
130 draw fullcircle rotated 40.5 scaled (1+r) dashed evenly scaled p withpen pencircle scaled (p/2) withcolor luaorbitcolor ;
131 fill fullcircle scaled r shifted (d+1/8,d+1/8) rotated luaextraangle withcolor luaplanetcolor ;
132 fill fullcircle scaled r shifted (d-1/8,d-1/8) withcolor luaholecolor ;
133 ) enddef ;
135 \stopuseMPgraphic
137 \startuseMPgraphic{luapage}
138 \includeMPgraphic{lualogo}
140 StartPage ;
142 fill Page withcolor (white-luaplanetcolor) ;
144 picture p ; p := lualogo xsized (3PaperWidth/5) ;
145 draw p shifted center Page shifted (0,-ypart center ulcorner p) ;
147 StopPage ;
148 \stopuseMPgraphic
150 \starttexdefinition luaextraangle
151 % we can also just access the last page and so in mp directly
152 \ctxlua {
153 context(\lastpage == 0 and 0 or \realfolio*360/\lastpage)
155 \stoptexdefinition
157 \startuseMPgraphic{luanumber}
158 \includeMPgraphic{lualogo}
159 luaextraangle := \luaextraangle;
160 picture p ; p := lualogo ;
161 setbounds p to boundingbox fullcircle ;
162 draw p ysized 1cm ;
163 \stopuseMPgraphic
165 \definelayer
166 [page]
167 [width=\paperwidth,
168 height=\paperheight]
170 \setupbackgrounds
171 [leftpage]
172 [background=page]
174 \setupbackgrounds
175 [rightpage]
176 [background=page]
178 \startsetups pagenumber:right
179 \setlayerframed
180 [page]
181 [preset=rightbottom,offset=1cm]
182 [frame=off,height=1cm,offset=overlay]
183 {\useMPgraphic{luanumber}}
184 \setlayerframed
185 [page]
186 [preset=rightbottom,offset=1cm,x=1.5cm]
187 [frame=off,height=1cm,width=1cm,offset=overlay]
188 {\pagenumber}
189 \setlayerframed
190 [page]
191 [preset=rightbottom,offset=1cm,x=2.5cm]
192 [frame=off,height=1cm,offset=overlay]
193 {\getmarking[chapter]}% Lua\TeX\ Reference Manual}
194 \stopsetups
196 \startsetups pagenumber:left
197 \setlayerframed
198 [page]
199 [preset=leftbottom,offset=1cm,x=2.5cm]
200 [frame=off,height=1cm,offset=overlay]
201 {\getmarking[chapter]}
202 \setlayerframed
203 [page]
204 [preset=leftbottom,offset=1cm,x=1.5cm]
205 [frame=off,height=1cm,width=1cm,offset=overlay]
206 {\pagenumber}
207 \setlayerframed
208 [page]
209 [preset=leftbottom,offset=1cm]
210 [frame=off,height=1cm,offset=overlay]
211 {\useMPgraphic{luanumber}}
212 \stopsetups
214 \startsetups [titlepage]
216 \startstandardmakeup
218 \switchtobodyfont[mainfacemedium]
219 \definedfont[Bold at \the\dimexpr.08\paperheight\relax] \setupinterlinespace
221 \setlayer[page]{\useMPgraphic{luapage}}
223 \setlayerframed
224 [page]
225 [preset=middletop,
226 voffset=.05\paperheight]
227 [align=middle,
228 foregroundcolor=blue,
229 frame=off]
230 {Lua\TeX\\Reference}
232 \definedfont[Bold at 24pt] \setupinterlinespace
234 \setlayerframed
235 [page]
236 [preset=middletop,
237 voffset=.35\paperheight]
238 [align=middle,
239 foregroundcolor=blue,
240 frame=off]
241 {\doifsomething
242 {\getvariable{document}{snapshot}}
243 {snapshot \getvariable{document}{snapshot}}%
244 \doifsomething
245 {\getvariable{document}{beta}}
246 {beta \getvariable{document}{beta}}%
249 \stopstandardmakeup
251 \startstandardmakeup
253 \raggedleft
255 \definedfont[Bold at 48pt] \setupinterlinespace
257 \start \blue Lua\TeX \endgraf Reference \endgraf Manual \stop
259 \blank
261 \definedfont[Bold at 24pt] \setupinterlinespace
263 \blank
265 \vfill
267 \definedfont[Bold at 12pt] \setupinterlinespace
269 copyright: Lua\TeX\ development team \endgraf
270 more info: www.luatex.org \endgraf
271 version: \currentdate \doifsomething{\getvariable{document}{snapshot}}{(snapshot \getvariable{document}{snapshot})} \endgraf
273 \stopstandardmakeup
275 \setupbackgrounds
276 [leftpage]
277 [setups=pagenumber:left]
279 \setupbackgrounds
280 [rightpage]
281 [setups=pagenumber:right]
283 \stopsetups
285 \def\nonterminal#1>{\mathematics{\langle\hbox{{\rm #1}}\rangle}}
287 % taco's brainwave -)
289 \newcatcodetable\syntaxcodetable
291 \def\makesyntaxcodetable
292 {\begingroup
293 \catcode`\<=13 \catcode`\|=12
294 \catcode`\!= 0 \catcode`\\=12
295 \savecatcodetable\syntaxcodetable
296 \endgroup}
298 \makesyntaxcodetable
300 \def\startsyntax {\begingroup\catcodetable\syntaxcodetable \dostartsyntax}
301 \def\syntax {\begingroup\catcodetable\syntaxcodetable \dosyntax}
303 \def\syntaxenvbody#1%
304 {\par
306 \startnarrower
307 {\blue #1}%
308 \stopnarrower
309 \par}
311 \def\syntaxbody#1%
312 {{\blue \tt #1}}
314 \bgroup \catcodetable\syntaxcodetable
316 !gdef!dostartsyntax#1\stopsyntax{!let<!nonterminal!syntaxenvbody{#1}!endgroup}
317 !gdef!dosyntax #1{!let<!nonterminal!syntaxbody{#1}!endgroup}
319 !egroup
321 % end of wave
323 \setupinteraction
324 [state=start,
325 focus=standard,
326 color=,
327 contrastcolor=]
329 \placebookmarks
330 [chapter,section,subsection]
332 \setuplist
333 [chapter,section,subsection,subsubsection]
334 [interaction=all]
336 % Hans doesn't like the bookmarks opening by default so we comment this:
338 % \setupinteractionscreen[option=bookmark]
340 \appendtoks
341 \let\luatex\firstofoneargument
342 \to \simplifiedcommands
344 \stopenvironment