summaryrefslogtreecommitdiff
path: root/doc/context/presentations/bachotex/2013/bachotex-2013-luatex.tex
blob: 1dc6f2f892d59d1f02fc3ea75bc54f4af9e75018 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
% \enablemode[print]

\usemodule[pre-stepwise,present-tiles,abr-02]

\definecolor[maincolor] [darkgray]
\definecolor[othercolor][g=.3,b=.3]

% \setupinteractionscreen
%   [option=max]

\setupbodyfont[opendyslexic,ss]

\startdocument
  [title={Lua\TeX\ for dummies\\\\(so you can still leave)},
   subtitle={Hans Hagen\\EuroBacho\TeX\\May 2013}]

\StartSteps

\starttopic[title={The \TEX\ perspective}]

    \startitemize
        \startitem it started out as \PDFTEX \FlushStep \stopitem
        \startitem then got merged with \ALEPH \FlushStep \stopitem
        \startitem but we left out the ugly bits of both \FlushStep \stopitem
        \startitem it's exclusively \UTF-8 \FlushStep \stopitem
        \startitem it's math machinery got extended with \OPENTYPE\ like features \FlushStep \stopitem
        \startitem there are no fundamental extensions as it's impossible to agree in them \FlushStep \stopitem
    \stopitemize

\stoptopic

\StopSteps

\StartSteps

\starttopic[title={The \LUA\ perspective}]

    \startitemize
        \startitem it just a \LUA\ engine \FlushStep \stopitem
        \startitem it has some extra libraries on board \FlushStep \stopitem
        \startitem you don't even have to use \TEX \FlushStep \stopitem
        \startitem but there are hooks into the \TEX\ machinery \FlushStep \stopitem
        \startitem and we can go further by loading libraries \FlushStep \stopitem
    \stopitemize

\stoptopic

\StopSteps

\StartSteps

\starttopic[title={The hybrid perspective}]

    \startitemize
        \startitem we can extend \TEX\ using \LUA \FlushStep \stopitem
        \startitem eventually everything will be opened up \FlushStep \stopitem
        \startitem users never have to see any of that \FlushStep \stopitem
        \startitem they can simply use \LUA\ for scripting and print results to \TEX \FlushStep \stopitem
        \startitem but developers can go deep into the \TEX\ internals and mess around \FlushStep \stopitem
        \startitem the average user will just depend on what a macro package will provide \FlushStep \stopitem
    \stopitemize

\stoptopic

\StopSteps

\StartSteps

\starttopic[title={The complications}]

    \startitemize
        \startitem normally one wants a bit of infrastructure (management) \FlushStep \stopitem
        \startitem and maybe a special user space, hidden from core extensions \FlushStep \stopitem
        \startitem but history has tought that users can't be controlled that way \FlushStep \stopitem
        \startitem so we stick to just providing the mechanisms \FlushStep \stopitem
    \stopitemize

\stoptopic

\StopSteps

\StartSteps

\starttopic[title={The future}]

    \startitemize
        \startitem there are a couple of generic modules (derived from \CONTEXT) \FlushStep \stopitem
        \startitem in principle I can make more generic modules \FlushStep \stopitem
        \startitem that's after all the idea behind the (to be) \METATEX\ variant \FlushStep \stopitem
        \startitem but does it really make sense as one still needs substantial subsystems \FlushStep \stopitem
    \stopitemize

\stoptopic

\StopSteps

\StartSteps

\starttopic[title={This workshop}]

    \startitemize
        \startitem just using \LUA: it's what most users will do \FlushStep \stopitem
        \startitem showing the hooks: it's what developers want to use \FlushStep \stopitem
        \startitem answering questions: it's probably the most I can do \FlushStep \stopitem
    \stopitemize

\stoptopic

\StopSteps

\StartSteps

\starttopic[title={Just plain}]

    We need to make a format, like:

    \starttyping
    luatex --ini plain \dump
    \stoptyping

    \FlushStep

    and can then run files with:

    \starttyping
    luatex --fmt=plain somefile.tex
    \stoptyping

    \FlushStep

    This is a another way:

    \starttyping
    mtxrun --script plain --make --texformat=plain
    \stoptyping

    \FlushStep

    with:

    \starttyping
    mtxrun --script plain --texformat=plain somefile.tex
    \stoptyping

    \FlushStep

\stoptopic

\StopSteps

\StartSteps

\starttopic[title={A bit less plain}]

    In order to profit from \OPENTYPE\ fonts:

    \starttyping
    mtxrun --script plain --make
    \stoptyping

    \FlushStep

    with:

    \starttyping
    mtxrun --script plain somefile.tex
    \stoptyping

    \FlushStep

    On windows you can copy \type {mtxrun.exe} to \type {plain.exe} and stick to:

    \starttyping
    plain --make
    \stoptyping

    \FlushStep

    with:

    \starttyping
    plain somefile.tex
    \stoptyping

\stoptopic

\StopSteps

\StartSteps

\starttopic[title={Hardly plain}]

    If you can live with a bit less plain:

    \starttyping
    context yourfile.tex
    \stoptyping

    \FlushStep

\stoptopic

\StopSteps

\stopdocument