Commit 9175a82e7ba46d35c18232a04b8394326ee65889
1 parent
759ea33c
Minor enhancements in MAML4.
Showing
7 changed files
with
317 additions
and
144 deletions
Show diff stats
anubis_dev/library/doc_tools/basis.maml
... | ... | @@ -43,11 +43,11 @@ $if($defined(article)) |
43 | 43 | $pushcounter(sec)(0)$pushcounter(subsec)(0)$pushcounter(subsubsec)(0)$// counters for sections etc... |
44 | 44 | $accumulator(tableofcontents)$// accumulator for the table of contents |
45 | 45 | $// Layout for section titles. |
46 | -$if($defined(seclayout))()($define(seclayout)(1)($par$big($big($bold($1)))$par$par)) | |
47 | -$if($defined(subseclayout))()($define(subseclayout)(1)($par$big($bold($1))$par)) | |
48 | -$if($defined(subsubseclayout))()($define(subsubseclayout)(1)($par$bold($1)$par)) | |
46 | +$if($defined(seclayout))()($define(seclayout)(1)($par$par$big($big($bold($1)))$par$par)) | |
47 | +$if($defined(subseclayout))()($define(subseclayout)(1)($par$big($bold($1))$par$par)) | |
48 | +$if($defined(subsubseclayout))()($define(subsubseclayout)(1)($par$bold($1)$par$par)) | |
49 | 49 | $// Layout for table of contents lines. |
50 | -$if($defined(tocsec))()($define(tocsec)(1)($bold($1)$par)) | |
50 | +$if($defined(tocsec))()($define(tocsec)(1)($par$bold($1)$par)) | |
51 | 51 | $if($defined(tocsubsec))()($define(tocsubsec)(1)($box(20)()$1$par)) |
52 | 52 | $if($defined(tocsubsubsec))()($define(tocsubsubsec)(1)($box(40)()$1$par)) |
53 | 53 | $define(tableofcontents)(0)($postpone($content(tableofcontents))) | ... | ... |
anubis_dev/library/doc_tools/maml4.anubis
... | ... | @@ -196,6 +196,19 @@ execute echo Warning: this program needs Anubis 1.15 because it uses type aliase |
196 | 196 | read maml4_pdf.anubis |
197 | 197 | |
198 | 198 | |
199 | +define String | |
200 | + force_sub_string | |
201 | + ( | |
202 | + String s, | |
203 | + Int start, | |
204 | + Int l | |
205 | + ) = | |
206 | + if sub_string(s,start,l) is | |
207 | + { | |
208 | + failure then "", | |
209 | + success(c) then c | |
210 | + }. | |
211 | + | |
199 | 212 | *** Separating options from other command line arguments. |
200 | 213 | |
201 | 214 | define (List(MAML_Option),List(String)) |
... | ... | @@ -211,6 +224,13 @@ define (List(MAML_Option),List(String)) |
211 | 224 | if h = "-pdf" then iprint("Warning: PDF output not yet implemented in MAML4.\n"); |
212 | 225 | ([pdf . opts1],others1) else |
213 | 226 | if h = "-verbose" | h = "-v" then ([verbose . opts1],others1) else |
227 | + if h = "-justify" then ([justify . opts1],others1) else | |
228 | + if force_sub_string(h,0,6) | |
229 | + = "-width" then if decimal_scan(force_sub_string(h,6,length(h)-6)) is | |
230 | + { | |
231 | + failure then (opts1,others1), | |
232 | + success(w) then ([width(w) . opts1],others1) | |
233 | + } else | |
214 | 234 | (opts1,[h . others1]) |
215 | 235 | }. |
216 | 236 | |
... | ... | @@ -223,6 +243,8 @@ define One |
223 | 243 | iprint("Usage: anbexec maml4 <file name> [options]\n" + |
224 | 244 | " Options:\n"+ |
225 | 245 | " -pdf produce LaTeX and PDF outputs\n"+ |
246 | + " -justify the text is right justified\n"+ | |
247 | + " -widthxxx (where xxx is an integer) sets the width of the text\n"+ | |
226 | 248 | " -verbose \n"). |
227 | 249 | |
228 | 250 | |
... | ... | @@ -235,6 +257,18 @@ define String |
235 | 257 | "Unknown mark '"+name+"' at '"+format(pos)+"'". |
236 | 258 | |
237 | 259 | |
260 | +define Int | |
261 | + get_width | |
262 | + ( | |
263 | + List(MAML_Option) opts | |
264 | + ) = | |
265 | + if opts is | |
266 | + { | |
267 | + [ ] then 600, | |
268 | + [h . t] then if h is width(n) then n else get_width(t) | |
269 | + }. | |
270 | + | |
271 | + | |
238 | 272 | *** 'maml' as a command line tool. |
239 | 273 | |
240 | 274 | global define One |
... | ... | @@ -254,6 +288,10 @@ global define One |
254 | 288 | { |
255 | 289 | failure then iprint("Cannot read file '"+fname+"'.\n"), |
256 | 290 | success(ls) then |
291 | + with html_opts = options("png","png","tmp",12,10, | |
292 | + get_width(opts), | |
293 | + justify:opts | |
294 | + ), | |
257 | 295 | with gcount_v = var((Int)0), |
258 | 296 | with kbox = toolboxkeep(opts, |
259 | 297 | var((Bool)false), // $noprimitive |
... | ... | @@ -267,7 +305,7 @@ global define One |
267 | 305 | var((AccumulatorTree)new_tree(bt24cmp)), |
268 | 306 | var((Int)30), |
269 | 307 | noprimitive_default_msg, |
270 | - default | |
308 | + html_opts | |
271 | 309 | ), |
272 | 310 | since ((String,String))split_path(fname) is (rel_path,fname1), |
273 | 311 | with start_path = get_current_directory/rel_path, |
... | ... | @@ -279,12 +317,12 @@ global define One |
279 | 317 | map_forget((MAML_Error me) |-> |
280 | 318 | print(cyan("Error: ")+to_English(me)+"\n"), |
281 | 319 | errors); |
282 | - with html_text = if_verbose(tbox,"Producing HTML ... ",to_HTML(start_path,default,cresult),"done\n"), | |
320 | + with html_text = if_verbose(tbox,"Producing HTML ... ",to_HTML(start_path,html_opts,cresult),"done\n"), | |
283 | 321 | if file(fname+".html",new) is |
284 | 322 | { |
285 | 323 | failure then print("Cannot create file '"+fname+".html"+"'\n"), |
286 | 324 | success(htmlfp) then if_verbose(tbox,"Outputing HTML ... ",print(weaken(htmlfp), |
287 | - html_encapsulate(tbox.keep.html_options,html_text)),"done\n") | |
325 | + html_encapsulate(html_opts,html_text)),"done\n") | |
288 | 326 | } |
289 | 327 | |
290 | 328 | } | ... | ... |
anubis_dev/library/doc_tools/maml4_html.anubis
... | ... | @@ -26,7 +26,8 @@ public define MAML_HTML_Options |
26 | 26 | "tmp", // tmp_path |
27 | 27 | 12, // font size |
28 | 28 | 10, // footnote font size |
29 | - 600 // width of text (pixels) | |
29 | + 600, // width of text (pixels) | |
30 | + false // don't right justify | |
30 | 31 | ). |
31 | 32 | |
32 | 33 | |
... | ... | @@ -147,12 +148,12 @@ define String |
147 | 148 | ( |
148 | 149 | MAML_HTML_Options opts |
149 | 150 | ) = |
150 | - since opts is options(spath,cpath,tpath,fsize,fnsize,twidth), | |
151 | + since opts is options(spath,cpath,tpath,fsize,fnsize,twidth,justif), | |
151 | 152 | "<head><meta http-equiv=\"Content-Type\" content=\"text/html; charset=UTF-8\"> |
152 | 153 | <style> |
153 | 154 | body { counter-reset: section; |
154 | 155 | font-size: "+fsize+"px; } |
155 | -p { align: justify; width: "+twidth+"px; } | |
156 | +p { "+(if justif then "align: justify;" else "")+" width: "+twidth+"px; } | |
156 | 157 | h2 { counter-reset: subsection; } |
157 | 158 | h2::before { counter-increment: section; |
158 | 159 | content: counter(section) \". \"; } |
... | ... | @@ -185,10 +186,11 @@ public define Text |
185 | 186 | MAML_HTML_Options opts, |
186 | 187 | Text html_text |
187 | 188 | ) = |
188 | - "<html>"+html_head(default)+ | |
189 | - "<body><center><table style=\"width: 600px; font-size:12px;\"><tr><td>"+ | |
190 | - "<div style=\"text-align: justify; text-justify: inter-word; width: "+ | |
191 | - to_decimal(text_width(default))+"px;\">"+ | |
189 | + since opts is options(spath,cpath,tpath,fsize,fnsize,twidth,justif), | |
190 | + "<html>"+html_head(opts)+ | |
191 | + "<body><center><table style=\"width: "+to_decimal(twidth)+"px; font-size:12px;\"><tr><td>"+ | |
192 | + "<div style=\""+(if justif then "text-align: justify;" else "")+" text-justify: inter-word; width: "+ | |
193 | + to_decimal(twidth)+"px;\">"+ | |
192 | 194 | html_text+"</div></td></tr></table></center></body></html>". |
193 | 195 | |
194 | 196 | ... | ... |
anubis_dev/library/doc_tools/maml4_interface.anubis
... | ... | @@ -197,7 +197,9 @@ public define String to_English (MAML_Error e). |
197 | 197 | $acode( |
198 | 198 | public type MAML_Option: |
199 | 199 | verbose, |
200 | - pdf. // produce a PDF output (HTML only by default) | |
200 | + pdf, // produce a PDF output (HTML only by default) | |
201 | + justify, | |
202 | + width(Int). | |
201 | 203 | ) |
202 | 204 | |
203 | 205 | |
... | ... | @@ -287,8 +289,9 @@ public type MAML_HTML_Options: |
287 | 289 | // font size for main text (in pixels) |
288 | 290 | Int note_font_size, |
289 | 291 | // font size for text in footnotes |
290 | - Int text_width | |
292 | + Int text_width, | |
291 | 293 | // width of text in pixels |
294 | + Bool right_justify | |
292 | 295 | ). |
293 | 296 | ) |
294 | 297 | ... | ... |
anubis_dev/library/doc_tools/maml4_png.anubis
... | ... | @@ -108,7 +108,7 @@ define ResultPNG_height |
108 | 108 | MAML_HTML_Options opts |
109 | 109 | ) = |
110 | 110 | //iprint("(1) LaTeX text: ["+text+"]\n"); |
111 | - since opts is options(spath,cpath,tpath,fsize,fnsize,twidth), | |
111 | + since opts is options(spath,cpath,tpath,fsize,fnsize,twidth,justif), | |
112 | 112 | forget(make_directory(spath,default_directory_mode)); |
113 | 113 | forget(make_directory(cpath,default_directory_mode)); |
114 | 114 | forget(make_directory(tpath,default_directory_mode)); | ... | ... |
anubis_dev/library/doc_tools/maml4_tutorial.maml
... | ... | @@ -54,15 +54,15 @@ $//$define(advcol)(0)($if($equals($countervalue(catacol))(3))($setcounter(cataco |
54 | 54 | |
55 | 55 | $// Displaying marks in the catalog and accumulating links to them. |
56 | 56 | $define(mark0)(1) |
57 | - ($append(tabmark)($1)$label($1)$marklo($red($mtt($$$1)))) | |
57 | + ($append(tabmark)($1)$label($1)$marklo($mtt($$$1))) | |
58 | 58 | $define(mark1)(2) |
59 | - ($append(tabmark)($1)$label($1)$marklo($red($mtt($$$1$lpar$argu($2)$rpar)))) | |
59 | + ($append(tabmark)($1)$label($1)$marklo($mtt($$$1$lpar$argu($2)$rpar))) | |
60 | 60 | $define(mark2)(3) |
61 | - ($append(tabmark)($1)$label($1)$marklo($red($mtt($$$1$lpar$argu($2)$rpar$lpar$argu($3)$rpar)))) | |
61 | + ($append(tabmark)($1)$label($1)$marklo($mtt($$$1$lpar$argu($2)$rpar$lpar$argu($3)$rpar))) | |
62 | 62 | $define(mark3)(4) |
63 | - ($append(tabmark)($1)$label($1)$marklo($red($mtt($$$1$lpar$argu($2)$rpar$lpar$argu($3)$rpar$lpar$argu($4)$rpar)))) | |
63 | + ($append(tabmark)($1)$label($1)$marklo($mtt($$$1$lpar$argu($2)$rpar$lpar$argu($3)$rpar$lpar$argu($4)$rpar))) | |
64 | 64 | $define(mark4)(5) |
65 | - ($append(tabmark)($1)$label($1)$marklo($red($mtt($$$1$lpar$argu($2)$rpar$lpar$argu($3)$rpar$lpar$argu($4)$rpar$lpar$argu($5)$rpar)))) | |
65 | + ($append(tabmark)($1)$label($1)$marklo($mtt($$$1$lpar$argu($2)$rpar$lpar$argu($3)$rpar$lpar$argu($4)$rpar$lpar$argu($5)$rpar))) | |
66 | 66 | |
67 | 67 | |
68 | 68 | |
... | ... | @@ -277,6 +277,49 @@ $mcode($$if($$defined($argu(name)))()($$define($argu(name))(...)(...))) |
277 | 277 | that is that you provide a $em(default) definition, but only in case your user did not define $argu(name). Of course, this |
278 | 278 | implies that your user must define $argu(name) $em(before) writing $mtt($$input($argu(your style file))).$p |
279 | 279 | |
280 | +$subsection(definewithindefine)($mtt($$define) within $mtt($$define)) | |
281 | +You may wonder what happens if we write something like: | |
282 | +$mcode($$define(m1)(1)( ... $$define(m2)(1)(... $$1 ...) ... )) | |
283 | +Does this $mtt($$1) represent the operand of $mtt(m1) or the operand of $mtt(m2)$sp?$p | |
284 | + | |
285 | +The answer is that it represents | |
286 | +the operand of $mtt(m1) and that the operand of $mtt(m2) is represented by $mtt($$2). More generally, if we have a | |
287 | +$mtt($$define) within a $mtt($$define), the names of the variables of the second (inner) $mtt($$define) are $em(shifted) by the | |
288 | +number of variables of the first (outer) $mtt($$define). As another example, in | |
289 | +$mcode($$define(m1)(2) | |
290 | + ($tbgc($_pink)( $argu(zone 1) $$define(m2)(4) | |
291 | + ($tbgc($_yellow)( $argu(zone 2) $$define(m3)(3) | |
292 | + ($tbgc($_azure)( $argu(zone 3) )) | |
293 | + $argu(zone 2) )) | |
294 | + $argu(zone 1) ))) | |
295 | +the valid variables are: | |
296 | +$list( | |
297 | + $item $mtt($$1) to $mtt($$2) in $argu(zone 1) | |
298 | + $item $mtt($$1) to $mtt($$6) in $argu(zone 2) | |
299 | + $item $mtt($$1) to $mtt($$9) in $argu(zone 3) | |
300 | +) | |
301 | +In other words, the variables of an inner $mtt($$define) do not hide the variables of an outer $mtt($$define).$p | |
302 | + | |
303 | +As an example, consider the following $MAML code: | |
304 | +$mcode($$define()()($$define()()())) | |
305 | + | |
306 | + | |
307 | + | |
308 | +$subsection(memorymarks)(Marks remember their birth environment) | |
309 | +When you define a new mark with $mtt($$define), you can include in the body of the definition a reference to a counter or to | |
310 | +an accumulator. For example, you can write: | |
311 | +$mcode($$pushcounter(n)(0) | |
312 | +$$define(count)(0)($$addtocounter(n)(1)$$countervalue(n))) | |
313 | +$pushcounter(n)(0) | |
314 | +$define(count)(0)($addtocounter(n)(1)$countervalue(n)) | |
315 | +Then if you write $mtt($$count $$count $$count), you get $mtt($count $count $count).$p | |
316 | + | |
317 | +Now, what if you write $mtt($$count $$count $$pushcounter(n)(7)$$count)$sp? | |
318 | + | |
319 | +$count $count $pushcounter(n)(17)$count | |
320 | + | |
321 | + | |
322 | +$p | |
280 | 323 | $///////////////////////////////////////////////////////////////////////// |
281 | 324 | $section(style)(Be stylish) |
282 | 325 | The primitive $MAML marks are rather basic, and should preferably be used for creating macros. |
... | ... | @@ -858,7 +901,7 @@ $apply(putpar)($transpose($content(table))) |
858 | 901 | $par |
859 | 902 | This last manipulation makes even more obvious the fact that we actually got our table in the form of |
860 | 903 | a list of lists. |
861 | - | |
904 | +$p | |
862 | 905 | |
863 | 906 | |
864 | 907 | |
... | ... | @@ -895,13 +938,18 @@ or put viruses on your server by using $mtt($$output), and probably destroy your |
895 | 938 | |
896 | 939 | This is the reason why the incoming text must be wrapped into another $MAML text before being submitted to the $MAML |
897 | 940 | compiler. We have adopted a very simple and flexible way of insuring your web server security as far as $MAML is |
898 | -concerned. Indeed, we have the primitive mark $mtt($$macrosonly) which forbids the direct use of a primitive mark | |
899 | -(except a small number of them which are not dangerous) for | |
900 | -the rest of the text. Hence, if you append $mtt($$macrosonly) in front of the incomming text, any call to a primitive in | |
901 | -this text is rejected.$p | |
902 | - | |
903 | -Nevertheless, $MAML can't do much without using primitives, but it will use them only though the macros you define | |
904 | -yourself in the preambule of the wrapper text, and of course before $mtt($$macrosonly), otherwise your macros | |
941 | +concerned. Indeed, we have the primitive mark $mtt($$noprimitive) which forbids the direct use of a primitive mark | |
942 | +(except $ref(noprimitive)(a small number of them) which are not dangerous) for | |
943 | +the rest of the text. Hence, if you append $mtt($$noprimitive) in front of the incomming text, any call to a primitive in | |
944 | +this text is rejected. Notice that the marks comming from a library loaded by $mtt($$loadadm) are still allowed | |
945 | +after $mtt($$noprimitive), so that you should not load any library containing some dangerous stuff. If you want to | |
946 | +forbid the marks from the libraries as well, use $mtt($$nolibrary). The marks comming from the libraries can then only | |
947 | +be used through your macros, just as what happens for primitives.$p | |
948 | + | |
949 | +Nevertheless, $MAML can't do much without using primitives (and possibly library marks), | |
950 | +but it will use them only though the macros you define | |
951 | +yourself in the preambule of the wrapper text, and of course before $mtt($$noprimitive) and $mtt($$nolibrary), | |
952 | +otherwise your macros | |
905 | 953 | could not do much. Now, its up to you to define the |
906 | 954 | macros your web users are allowed to write down. Depending on how you do that, your server is more or less in danger. |
907 | 955 | For example if you define: |
... | ... | @@ -933,7 +981,8 @@ set already defined in $fname(doc_tools/maml_web_macros.maml).$p |
933 | 981 | |
934 | 982 | |
935 | 983 | $subsection(commonerrors)(Common errors) |
936 | -Below are most of the errors the author made himself during the writting of this tutorial. | |
984 | +Below are most of the errors the author made himself during the writting of this tutorial, plus some errors he did not | |
985 | +make but which are likely to happen. | |
937 | 986 | $list( |
938 | 987 | |
939 | 988 | $item Thinking that $mtt($$tbgc($$_red)($$box(100)())) produces a red rectangle of the given width |
... | ... | @@ -946,7 +995,9 @@ $list( |
946 | 995 | character (or the contrary).$p |
947 | 996 | |
948 | 997 | $item Writing $tt(#$$//.*) instead of $tt(#$$#/#/.*) as a regular expression in order to colorize $MAML line comments. |
949 | - Of course, the first form $em(is seen) as the beginning of a line comment, and the final result is quite surprising. | |
998 | + Of course, the first form $em(is seen) as the beginning of a line comment, and the final result is quite surprising.$p | |
999 | + | |
1000 | + $item Forgetting to shift variable names in case of a $mtt($$define) within a $mtt($$define). | |
950 | 1001 | ) |
951 | 1002 | |
952 | 1003 | $///////////////////////////////////////////////////////////////////////////////// |
... | ... | @@ -1043,6 +1094,7 @@ $////////////////////////////////////////////////////////////////////////////: |
1043 | 1094 | $section(catalog)(The catalog of $MAML marks) |
1044 | 1095 | Below is a description of the $postpone($countervalue(markcount)) primitive $MAML marks.$p |
1045 | 1096 | |
1097 | + $// Produce a table of contents on 4 columns for the catalog | |
1046 | 1098 | $define(putboxmark)(1)($box(130)($ref($1)($mtt($$$1)))) |
1047 | 1099 | $define(displaymarkgroup)(1)($apply(putboxmark)($1)$par) |
1048 | 1100 | $postpone($center($apply(displaymarkgroup)($transpose($groupby |
... | ... | @@ -1279,6 +1331,13 @@ $$undefine(T)))) |
1279 | 1331 | This mark has a boolean value which is $em(true) if $argu(expr 1) and $argu(expr 2) are equal. By $em(equal), we |
1280 | 1332 | mean identical after $argu(expr 1) and $argu(expr 2) are computed. |
1281 | 1333 | |
1334 | + $mark1(error)(text) | |
1335 | + This mark produces an error message. This is useful when you write macros whose operands must satisfy a particular | |
1336 | + property. The operand $argu(text) is the text of the message. This text can contain the $MAML mark $mtt($$position) | |
1337 | + (taking no operand) | |
1338 | + which will be replaced by the position (file path + line number + column number) in the source text where your macro | |
1339 | + is used. | |
1340 | + | |
1282 | 1341 | $mark0(false) This mark represents the truth value $em(false). |
1283 | 1342 | |
1284 | 1343 | $mark2(groupby)(n)(list) |
... | ... | @@ -1355,7 +1414,7 @@ otherwise we shall have one column too many. |
1355 | 1414 | as a PNG image with transparent background. |
1356 | 1415 | $par$par |
1357 | 1416 | You can use $mtt($$latex) in the text. The result is correctly aligned with the text. For example,$par |
1358 | - $mcenter($mcode(the polynomial $$latex($$X^2+X+1$dollar) is of degree 2)) | |
1417 | + $mcenter($mcode(the polynomial $$latex($black($$X^2+X+1$$)) is of degree 2)) | |
1359 | 1418 | is rendered as: |
1360 | 1419 | $mcenter(the polynomial $latex($X^2+X+1$) is of degree 2) |
1361 | 1420 | |
... | ... | @@ -1370,7 +1429,9 @@ otherwise we shall have one column too many. |
1370 | 1429 | the result is $mtt(1) if the operand is not empty (i.e. if it contains at least one character), and $mtt(0) if it is |
1371 | 1430 | empty. |
1372 | 1431 | |
1373 | - $mark1(list)(items) This mark allows to create a list. The operand $argu(items) must be a sequence of $em(items), | |
1432 | + $mark1(list)(items) This mark allows to create a list (not in the sens of $MAML $ref(lists)(lists), | |
1433 | + but as a sequence of indented items in the output). | |
1434 | + The operand $argu(items) must be a sequence of $em(items), | |
1374 | 1435 | i.e. texts which are all prefixed by the mark $ref(item)($mtt($$item)).$par$par |
1375 | 1436 | Example: |
1376 | 1437 | $mcode($$list( |
... | ... | @@ -1382,24 +1443,17 @@ otherwise we shall have one column too many. |
1382 | 1443 | $item Girls: $list($item Julie $item Geraldine $item Sophia)) |
1383 | 1444 | |
1384 | 1445 | $mark1(loadadm)(module name) |
1385 | - This mark loads the secondary Anubis module whose name is given. The Anubis type of this module must be | |
1446 | + This mark loads the secondary Anubis module whose path is given. The Anubis type of this module must be | |
1386 | 1447 | $tt(MAML_Library) as explained in the section $ref(loadadm)(Loading a library of Anubis functions).$p |
1387 | 1448 | |
1388 | 1449 | Of course, this results in an error if the module is either not found, of another type, compiled with another version |
1389 | 1450 | of Anubis, etc... If the loading succeeds the Anubis functions defined in the library become automatically new $MAML |
1390 | 1451 | marks. |
1391 | 1452 | |
1392 | - | |
1393 | 1453 | $mark0(lpar) This mark inserts a left (opening) parenthese into the text. You must use $mtt($$lpar) and/or |
1394 | - $mtt($$rpar) if you want to introduce unbalanced parentheses within an operand of a mark. | |
1454 | + $mtt($$rpar) (or alternatively $mtt($$$() and $mtt($$$))) if you want to introduce unbalanced parentheses | |
1455 | + within an operand of a mark. | |
1395 | 1456 | |
1396 | - $mark0(macrosonly) | |
1397 | - This mark disables the use of all primitive marks until the end of the document, except for the marks | |
1398 | - $mtt($$alphabetic), $mtt($$colorize), $mtt($$define), $mtt($$if) and $mtt($$undefine). Hence, after $mtt($$macrosonly), | |
1399 | - only the | |
1400 | - macros and the marks listed above are allowed. This can be used for securing the usage of $MAML by web users. See | |
1401 | - $ref(guidelinesweb)(the guidelines for the web). | |
1402 | - | |
1403 | 1457 | $mark2(mailto)(address)(text) This marks, which appears as $argu(text), |
1404 | 1458 | creates a link which is supposed, in the HTML case, to open your mail agent in order to let you |
1405 | 1459 | send an email to the indicated $argu(address). In the PDF case, the $argu(address) is just indicated between parentheses |
... | ... | @@ -1412,6 +1466,15 @@ otherwise we shall have one column too many. |
1412 | 1466 | This mark inhibits the recognition of the square brackets and the comma as list delimitors within $argu(text). See |
1413 | 1467 | $ref(lists)(Lists). |
1414 | 1468 | |
1469 | + $mark0(noprimitive) | |
1470 | + This mark disables the use of all primitive marks until the end of the document, except for the marks | |
1471 | + $mtt($$alphabetic), $mtt($$colorize), $mtt($$define), $mtt($$if) and $mtt($$undefine). Hence, after $mtt($$noprimitive), | |
1472 | + only the | |
1473 | + macros, the marks listed above and the marks coming from a library via | |
1474 | + $mtt($$loadadm) are allowed. This can be used for securing the usage of $MAML by web users, | |
1475 | + since the macros you define before $mtt($$noprimitive) can filter their operands. See | |
1476 | + $ref(guidelinesweb)(the guidelines for the web). | |
1477 | + | |
1415 | 1478 | $mark1(note)(text) This mark produces a footnote containing $argu(text). |
1416 | 1479 | In the case of $LaTeX/PDF this is a usual |
1417 | 1480 | footnote.$ifpdf($note(Like this one.)) In the case of HTML, this is a popup which appears at the bottom of the browser's window when the mouse |
... | ... | @@ -1474,7 +1537,8 @@ otherwise we shall have one column too many. |
1474 | 1537 | See also $ref(colors)(the predefined colors). |
1475 | 1538 | |
1476 | 1539 | $mark0(rpar) This mark inserts a right (closing) parenthese into the text. You must use $mtt($$lpar) and/or |
1477 | - $mtt($$rpar) if you want to introduce unbalanced parentheses within an operand of a mark. | |
1540 | + $mtt($$rpar) (or alternatively $mtt($$$() and $mtt($$$))) if you want to introduce unbalanced parentheses within | |
1541 | + an operand of a mark. | |
1478 | 1542 | |
1479 | 1543 | $mark2(setcounter)(name)(value) |
1480 | 1544 | This mark puts the value $argu(value) in the most recent counter whose name is $argu(name). See $ref(counters)(Counters). | ... | ... |
anubis_dev/library/doc_tools/maml4_tutorial.maml.html
... | ... | @@ -168,11 +168,11 @@ remains (partly because it's funny when pronounced in French and English). |
168 | 168 | |
169 | 169 | <br><br> |
170 | 170 | <center><table style="color: inherit; font-size: inherit;"><tr><td><strong>Table of Contents</strong></td></tr></table></center><br> |
171 | -<a rel="tag" href="#howto"><br><strong>1. How to use <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong></strong><br></a><a rel="tag" href="#ascmdlinetool"><div align="left" style="display: inline-block; width: 20px;"></div>1.1. As a command line tool<br></a><a rel="tag" href="#fromyoursource"><div align="left" style="display: inline-block; width: 20px;"></div>1.2. From within your Anubis source code<br></a><a rel="tag" href="#aswebuser"><div align="left" style="display: inline-block; width: 20px;"></div>1.3. As a web user<br></a><a rel="tag" href="#syntax"><br><strong>2. The <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> syntax</strong><br></a><a rel="tag" href="#beginend"><div align="left" style="display: inline-block; width: 20px;"></div>2.1. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$begin</div></strong></span>, <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$end</div></strong></span> and special characters<br></a><a rel="tag" href="#syntaxmark"><div align="left" style="display: inline-block; width: 20px;"></div>2.2. Marks<br></a><a rel="tag" href="#linecomments"><div align="left" style="display: inline-block; width: 20px;"></div>2.3. Line comments<br></a><a rel="tag" href="#balanced"><div align="left" style="display: inline-block; width: 20px;"></div>2.4. Parentheses must be balanced<br></a><a rel="tag" href="#marknamedelim"><div align="left" style="display: inline-block; width: 20px;"></div>2.5. How mark names are delimited<br></a><a rel="tag" href="#definingmarks"><div align="left" style="display: inline-block; width: 20px;"></div>2.6. Defining new marks with <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span><br></a><a rel="tag" href="#style"><br><strong>3. Be stylish</strong><br></a><a rel="tag" href="#basismaml"><div align="left" style="display: inline-block; width: 20px;"></div>3.1. The file <div style="display: inline; color: rgb(0,80,50)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">basis.maml</span></div><br></a><a rel="tag" href="#styleexample"><div align="left" style="display: inline-block; width: 20px;"></div>3.2. An example<br></a><a rel="tag" href="#inputstyle"><div align="left" style="display: inline-block; width: 20px;"></div>3.3. Inputting a style file<br></a><a rel="tag" href="#tools"><br><strong>4. Basic tools</strong><br></a><a rel="tag" href="#arithmetics"><div align="left" style="display: inline-block; width: 20px;"></div>4.1. Elementary arithmetics<br></a><a rel="tag" href="#booleans"><div align="left" style="display: inline-block; width: 20px;"></div>4.2. Booleans and control<br></a><a rel="tag" href="#counters"><div align="left" style="display: inline-block; width: 20px;"></div>4.3. Counters<br></a><a rel="tag" href="#lists"><div align="left" style="display: inline-block; width: 20px;"></div>4.4. Lists<br></a><a rel="tag" href="#loadadm"><div align="left" style="display: inline-block; width: 20px;"></div>4.5. Loading a library of Anubis functions<br></a><a rel="tag" href="#colorize"><br><strong>5. Automatic colorization</strong><br></a><a rel="tag" href="#createcolorizer"><div align="left" style="display: inline-block; width: 20px;"></div>5.1. Creating a colorizer<br></a><a rel="tag" href="#mycolorizer"><div align="left" style="display: inline-block; width: 20px;"></div>5.2. A colorizer example<br></a><a rel="tag" href="#colorizerprecedence"><div align="left" style="display: inline-block; width: 20px;"></div>5.3. Primitive marks and colorizers<br></a><a rel="tag" href="#severalcolorizers"><div align="left" style="display: inline-block; width: 20px;"></div>5.4. Using several colorizers together<br></a><a rel="tag" href="#colorizercall"><div align="left" style="display: inline-block; width: 20px;"></div>5.5. Calling a colorizer from within a colorizer<br></a><a rel="tag" href="#colorcallexample"><div align="left" style="display: inline-block; width: 20px;"></div>5.6. A colorizer call example<br></a><a rel="tag" href="#noncolor"><div align="left" style="display: inline-block; width: 20px;"></div>5.7. A non colorizing example.<br></a><a rel="tag" href="#tips"><br><strong>6. Tips and tricks</strong><br></a><a rel="tag" href="#guidelinesweb"><div align="left" style="display: inline-block; width: 20px;"></div>6.1. Guidelines for using <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> on the web<br></a><a rel="tag" href="#commonerrors"><div align="left" style="display: inline-block; width: 20px;"></div>6.2. Common errors<br></a><a rel="tag" href="#toolsbasis"><br><strong>7. Tools available in <div style="display: inline; color: rgb(0,80,50)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">basis.maml</span></div></strong><br></a><a rel="tag" href="#colors"><div align="left" style="display: inline-block; width: 20px;"></div>7.1. Colors<br></a><a rel="tag" href="#stylearticle"><div align="left" style="display: inline-block; width: 20px;"></div>7.2. The style <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">article</span><br></a><a rel="tag" href="#_"></a><a rel="tag" href="#_"></a><a rel="tag" href="#book"><div align="left" style="display: inline-block; width: 20px;"></div>7.3. The style <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">book</span><br></a><a rel="tag" href="#catalog"><br><strong>8. The catalog of <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> marks</strong><br></a> | |
171 | +<a rel="tag" href="#howto"><br><strong>1. How to use <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong></strong><br></a><a rel="tag" href="#ascmdlinetool"><div align="left" style="display: inline-block; width: 20px;"></div>1.1. As a command line tool<br></a><a rel="tag" href="#fromyoursource"><div align="left" style="display: inline-block; width: 20px;"></div>1.2. From within your Anubis source code<br></a><a rel="tag" href="#aswebuser"><div align="left" style="display: inline-block; width: 20px;"></div>1.3. As a web user<br></a><a rel="tag" href="#syntax"><br><strong>2. The <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> syntax</strong><br></a><a rel="tag" href="#beginend"><div align="left" style="display: inline-block; width: 20px;"></div>2.1. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$begin</div></strong></span>, <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$end</div></strong></span> and special characters<br></a><a rel="tag" href="#syntaxmark"><div align="left" style="display: inline-block; width: 20px;"></div>2.2. Marks<br></a><a rel="tag" href="#linecomments"><div align="left" style="display: inline-block; width: 20px;"></div>2.3. Line comments<br></a><a rel="tag" href="#balanced"><div align="left" style="display: inline-block; width: 20px;"></div>2.4. Parentheses must be balanced<br></a><a rel="tag" href="#marknamedelim"><div align="left" style="display: inline-block; width: 20px;"></div>2.5. How mark names are delimited<br></a><a rel="tag" href="#definingmarks"><div align="left" style="display: inline-block; width: 20px;"></div>2.6. Defining new marks with <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span><br></a><a rel="tag" href="#definewithindefine"><div align="left" style="display: inline-block; width: 20px;"></div>2.7. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span> within <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span><br></a><a rel="tag" href="#memorymarks"><div align="left" style="display: inline-block; width: 20px;"></div>2.8. Marks remember their birth environment<br></a><a rel="tag" href="#style"><br><strong>3. Be stylish</strong><br></a><a rel="tag" href="#basismaml"><div align="left" style="display: inline-block; width: 20px;"></div>3.1. The file <div style="display: inline; color: rgb(0,80,50)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">basis.maml</span></div><br></a><a rel="tag" href="#styleexample"><div align="left" style="display: inline-block; width: 20px;"></div>3.2. An example<br></a><a rel="tag" href="#inputstyle"><div align="left" style="display: inline-block; width: 20px;"></div>3.3. Inputting a style file<br></a><a rel="tag" href="#tools"><br><strong>4. Basic tools</strong><br></a><a rel="tag" href="#arithmetics"><div align="left" style="display: inline-block; width: 20px;"></div>4.1. Elementary arithmetics<br></a><a rel="tag" href="#booleans"><div align="left" style="display: inline-block; width: 20px;"></div>4.2. Booleans and control<br></a><a rel="tag" href="#counters"><div align="left" style="display: inline-block; width: 20px;"></div>4.3. Counters<br></a><a rel="tag" href="#lists"><div align="left" style="display: inline-block; width: 20px;"></div>4.4. Lists<br></a><a rel="tag" href="#loadadm"><div align="left" style="display: inline-block; width: 20px;"></div>4.5. Loading a library of Anubis functions<br></a><a rel="tag" href="#colorize"><br><strong>5. Automatic colorization</strong><br></a><a rel="tag" href="#createcolorizer"><div align="left" style="display: inline-block; width: 20px;"></div>5.1. Creating a colorizer<br></a><a rel="tag" href="#mycolorizer"><div align="left" style="display: inline-block; width: 20px;"></div>5.2. A colorizer example<br></a><a rel="tag" href="#colorizerprecedence"><div align="left" style="display: inline-block; width: 20px;"></div>5.3. Primitive marks and colorizers<br></a><a rel="tag" href="#severalcolorizers"><div align="left" style="display: inline-block; width: 20px;"></div>5.4. Using several colorizers together<br></a><a rel="tag" href="#colorizercall"><div align="left" style="display: inline-block; width: 20px;"></div>5.5. Calling a colorizer from within a colorizer<br></a><a rel="tag" href="#colorcallexample"><div align="left" style="display: inline-block; width: 20px;"></div>5.6. A colorizer call example<br></a><a rel="tag" href="#noncolor"><div align="left" style="display: inline-block; width: 20px;"></div>5.7. A non colorizing example.<br></a><a rel="tag" href="#tips"><br><strong>6. Tips and tricks</strong><br></a><a rel="tag" href="#guidelinesweb"><div align="left" style="display: inline-block; width: 20px;"></div>6.1. Guidelines for using <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> on the web<br></a><a rel="tag" href="#commonerrors"><div align="left" style="display: inline-block; width: 20px;"></div>6.2. Common errors<br></a><a rel="tag" href="#toolsbasis"><br><strong>7. Tools available in <div style="display: inline; color: rgb(0,80,50)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">basis.maml</span></div></strong><br></a><a rel="tag" href="#colors"><div align="left" style="display: inline-block; width: 20px;"></div>7.1. Colors<br></a><a rel="tag" href="#stylearticle"><div align="left" style="display: inline-block; width: 20px;"></div>7.2. The style <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">article</span><br></a><a rel="tag" href="#_"></a><a rel="tag" href="#_"></a><a rel="tag" href="#book"><div align="left" style="display: inline-block; width: 20px;"></div>7.3. The style <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">book</span><br></a><a rel="tag" href="#catalog"><br><strong>8. The catalog of <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> marks</strong><br></a> | |
172 | 172 | |
173 | 173 | |
174 | 174 | |
175 | -<a id="howto"></a><br><big><big><strong>1. How to use <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong></strong></big></big><br><br> | |
175 | +<a id="howto"></a><br><br><big><big><strong>1. How to use <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong></strong></big></big><br><br> | |
176 | 176 | |
177 | 177 | <a id="ascmdlinetool"></a><br><big><strong>1.1. As a command line tool</strong></big><br><br> |
178 | 178 | |
... | ... | @@ -211,7 +211,7 @@ marks is restricted for ensuring the security of the web server.<br><br> |
211 | 211 | |
212 | 212 | |
213 | 213 | |
214 | -<a id="syntax"></a><br><big><big><strong>2. The <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> syntax</strong></big></big><br><br> | |
214 | +<a id="syntax"></a><br><br><big><big><strong>2. The <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> syntax</strong></big></big><br><br> | |
215 | 215 | |
216 | 216 | <a id="beginend"></a><br><big><strong>2.1. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$begin</div></strong></span>, <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$end</div></strong></span> and special characters</strong></big><br><br> |
217 | 217 | |
... | ... | @@ -361,8 +361,53 @@ to define these other macros conditionally, i.e. as follows: |
361 | 361 | that is that you provide a <em>default</em> definition, but only in case your user did not define <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>. Of course, this |
362 | 362 | implies that your user must define <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div> <em>before</em> writing <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$input</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><your style file></span></strong></div>)</span>.<br><br> |
363 | 363 | |
364 | +<a id="definewithindefine"></a><br><big><strong>2.7. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span> within <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span></strong></big><br><br> | |
365 | + | |
366 | +You may wonder what happens if we write something like: | |
367 | +<pre style="color: inherit; font-size: inherit; background-color: rgb(230,235,220); width: 600px;"><br><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong>(m<div style="display: inline; color: rgb(160,082,045)">1</div>)(<div style="display: inline; color: rgb(160,082,045)">1</div>)( ... <strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong>(m<div style="display: inline; color: rgb(160,082,045)">2</div>)(<div style="display: inline; color: rgb(160,082,045)">1</div>)(... <div style="display: inline; color: rgb(255,000,255)">$1</div> ...) ... )<br><br></pre> | |
368 | +Does this <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><div style="display: inline; color: rgb(255,000,255)">$1</div></span> represent the operand of <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">m<div style="display: inline; color: rgb(160,082,045)">1</div></span> or the operand of <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">m<div style="display: inline; color: rgb(160,082,045)">2</div></span> ?<br><br> | |
369 | + | |
370 | +The answer is that it represents | |
371 | +the operand of <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">m<div style="display: inline; color: rgb(160,082,045)">1</div></span> and that the operand of <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">m<div style="display: inline; color: rgb(160,082,045)">2</div></span> is represented by <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><div style="display: inline; color: rgb(255,000,255)">$2</div></span>. More generally, if we have a | |
372 | +<span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span> within a <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span>, the names of the variables of the second (inner) <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span> are <em>shifted</em> by the | |
373 | +number of variables of the first (outer) <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span>. As another example, in | |
374 | +<pre style="color: inherit; font-size: inherit; background-color: rgb(230,235,220); width: 600px;"><br><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong>(m<div style="display: inline; color: rgb(160,082,045)">1</div>)(<div style="display: inline; color: rgb(160,082,045)">2</div>) | |
375 | + (<div style="display: inline; background-color: rgb(255,182,193); "> <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><zone 1></span></strong></div> $define(m2)(4) | |
376 | + (<div style="display: inline; background-color: rgb(255,255,000); "> <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><zone 2></span></strong></div> $define(m3)(3) | |
377 | + (<div style="display: inline; background-color: rgb(190,210,210); "> <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><zone 3></span></strong></div> </div>) | |
378 | + <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><zone 2></span></strong></div> </div>) | |
379 | + <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><zone 1></span></strong></div> </div>)<br><br></pre> | |
380 | +the valid variables are: | |
381 | +<span><ul> | |
382 | + <li> <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><div style="display: inline; color: rgb(255,000,255)">$1</div></span> to <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><div style="display: inline; color: rgb(255,000,255)">$2</div></span> in <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><zone 1></span></strong></div> | |
383 | + <li> <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><div style="display: inline; color: rgb(255,000,255)">$1</div></span> to <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><div style="display: inline; color: rgb(255,000,255)">$6</div></span> in <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><zone 2></span></strong></div> | |
384 | + <li> <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><div style="display: inline; color: rgb(255,000,255)">$1</div></span> to <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><div style="display: inline; color: rgb(255,000,255)">$9</div></span> in <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><zone 3></span></strong></div> | |
385 | +</ul></span> | |
386 | +In other words, the variables of an inner <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span> do not hide the variables of an outer <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span>.<br><br> | |
387 | + | |
388 | +As an example, consider the following <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> code: | |
389 | +<pre style="color: inherit; font-size: inherit; background-color: rgb(230,235,220); width: 600px;"><br><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong>()()(<strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong>()()())<br><br></pre> | |
390 | + | |
391 | + | |
392 | + | |
393 | +<a id="memorymarks"></a><br><big><strong>2.8. Marks remember their birth environment</strong></big><br><br> | |
394 | + | |
395 | +When you define a new mark with <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span>, you can include in the body of the definition a reference to a counter or to | |
396 | +an accumulator. For example, you can write: | |
397 | +<pre style="color: inherit; font-size: inherit; background-color: rgb(230,235,220); width: 600px;"><br><strong><div style="display: inline; color: rgb(110,000,000)">$pushcounter</div></strong>(n)(<div style="display: inline; color: rgb(160,082,045)">0</div>) | |
398 | +<strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong>(count)(<div style="display: inline; color: rgb(160,082,045)">0</div>)(<strong><div style="display: inline; color: rgb(110,000,000)">$addtocounter</div></strong>(n)(<div style="display: inline; color: rgb(160,082,045)">1</div>)<strong><div style="display: inline; color: rgb(110,000,000)">$countervalue</div></strong>(n))<br><br></pre> | |
399 | + | |
400 | + | |
401 | +Then if you write <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$count</div></strong> <strong><div style="display: inline; color: rgb(110,000,000)">$count</div></strong> <strong><div style="display: inline; color: rgb(110,000,000)">$count</div></strong></span>, you get <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><div style="display: inline; color: rgb(160,082,045)">1</div> <div style="display: inline; color: rgb(160,082,045)">2</div> <div style="display: inline; color: rgb(160,082,045)">3</div></span>.<br><br> | |
402 | + | |
403 | +Now, what if you write <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$count</div></strong> <strong><div style="display: inline; color: rgb(110,000,000)">$count</div></strong> <strong><div style="display: inline; color: rgb(110,000,000)">$pushcounter</div></strong>(n)(<div style="display: inline; color: rgb(160,082,045)">7</div>)<strong><div style="display: inline; color: rgb(110,000,000)">$count</div></strong></span> ? | |
404 | + | |
405 | +4 5 18 | |
406 | + | |
407 | + | |
408 | +<br><br> | |
364 | 409 | |
365 | -<a id="style"></a><br><big><big><strong>3. Be stylish</strong></big></big><br><br> | |
410 | +<a id="style"></a><br><br><big><big><strong>3. Be stylish</strong></big></big><br><br> | |
366 | 411 | |
367 | 412 | The primitive <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> marks are rather basic, and should preferably be used for creating macros. |
368 | 413 | In other words, it's better to first define (using the <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span> mark) the concepts you will use in your |
... | ... | @@ -400,7 +445,7 @@ of your source file. Notice that the input file also needs to contain a <span st |
400 | 445 | |
401 | 446 | |
402 | 447 | <br><br> |
403 | -<a id="tools"></a><br><big><big><strong>4. Basic tools</strong></big></big><br><br> | |
448 | +<a id="tools"></a><br><br><big><big><strong>4. Basic tools</strong></big></big><br><br> | |
404 | 449 | |
405 | 450 | <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> is <em>not a programming language</em>. It is a <em>document formatting language</em>. Nevertheless, it provides some |
406 | 451 | programming capabilities, but only those which are (to our opinion) required for the needs of the layout of the |
... | ... | @@ -619,7 +664,7 @@ in <div style="display: inline; color: rgb(0,80,50)"><span style="font-family:'L |
619 | 664 | |
620 | 665 | |
621 | 666 | |
622 | -<a id="colorize"></a><br><big><big><strong>5. Automatic colorization</strong></big></big><br><br> | |
667 | +<a id="colorize"></a><br><br><big><big><strong>5. Automatic colorization</strong></big></big><br><br> | |
623 | 668 | |
624 | 669 | <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> has a simple system for automatic colorization of texts. Within a <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> source text, |
625 | 670 | you can define one or several colorizers, and later apply them at will. Actually, by <em>colorization</em> we mean |
... | ... | @@ -951,13 +996,13 @@ and <span style="font-family:'Lucida Console', monospace; font-size:inherit; fon |
951 | 996 | <br> |
952 | 997 | This last manipulation makes even more obvious the fact that we actually got our table in the form of |
953 | 998 | a list of lists. |
999 | +<br><br> | |
954 | 1000 | |
955 | 1001 | |
956 | 1002 | |
957 | 1003 | |
958 | 1004 | |
959 | - | |
960 | -<a id="tips"></a><br><big><big><strong>6. Tips and tricks</strong></big></big><br><br> | |
1005 | +<a id="tips"></a><br><br><big><big><strong>6. Tips and tricks</strong></big></big><br><br> | |
961 | 1006 | |
962 | 1007 | If your text needs to display some computer code, it can be the case (depending on the programming language) |
963 | 1008 | that this code uses dollar characters. This is the case of Anubis for example, since dollars are used by |
... | ... | @@ -990,13 +1035,18 @@ or put viruses on your server by using <span style="font-family:'Lucida Console' |
990 | 1035 | |
991 | 1036 | This is the reason why the incoming text must be wrapped into another <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> text before being submitted to the <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> |
992 | 1037 | compiler. We have adopted a very simple and flexible way of insuring your web server security as far as <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> is |
993 | -concerned. Indeed, we have the primitive mark <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$macrosonly</div></strong></span> which forbids the direct use of a primitive mark | |
994 | -(except a small number of them which are not dangerous) for | |
995 | -the rest of the text. Hence, if you append <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$macrosonly</div></strong></span> in front of the incomming text, any call to a primitive in | |
996 | -this text is rejected.<br><br> | |
997 | - | |
998 | -Nevertheless, <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> can't do much without using primitives, but it will use them only though the macros you define | |
999 | -yourself in the preambule of the wrapper text, and of course before <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$macrosonly</div></strong></span>, otherwise your macros | |
1038 | +concerned. Indeed, we have the primitive mark <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$noprimitive</div></strong></span> which forbids the direct use of a primitive mark | |
1039 | +(except <a rel="tag" href="#noprimitive">a small number of them</a> which are not dangerous) for | |
1040 | +the rest of the text. Hence, if you append <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$noprimitive</div></strong></span> in front of the incomming text, any call to a primitive in | |
1041 | +this text is rejected. Notice that the marks comming from a library loaded by <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$loadadm</div></strong></span> are still allowed | |
1042 | +after <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$noprimitive</div></strong></span>, so that you should not load any library containing some dangerous stuff. If you want to | |
1043 | +forbid the marks from the libraries as well, use <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$nolibrary</div></strong></span>. The marks comming from the libraries can then only | |
1044 | +be used through your macros, just as what happens for primitives.<br><br> | |
1045 | + | |
1046 | +Nevertheless, <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> can't do much without using primitives (and possibly library marks), | |
1047 | +but it will use them only though the macros you define | |
1048 | +yourself in the preambule of the wrapper text, and of course before <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$noprimitive</div></strong></span> and <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$nolibrary</div></strong></span>, | |
1049 | +otherwise your macros | |
1000 | 1050 | could not do much. Now, its up to you to define the |
1001 | 1051 | macros your web users are allowed to write down. Depending on how you do that, your server is more or less in danger. |
1002 | 1052 | For example if you define: |
... | ... | @@ -1029,7 +1079,8 @@ set already defined in <div style="display: inline; color: rgb(0,80,50)"><span s |
1029 | 1079 | |
1030 | 1080 | <a id="commonerrors"></a><br><big><strong>6.2. Common errors</strong></big><br><br> |
1031 | 1081 | |
1032 | -Below are most of the errors the author made himself during the writting of this tutorial. | |
1082 | +Below are most of the errors the author made himself during the writting of this tutorial, plus some errors he did not | |
1083 | +make but which are likely to happen. | |
1033 | 1084 | <span><ul> |
1034 | 1085 | |
1035 | 1086 | <li> Thinking that <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$tbgc</div></strong>(<strong><div style="display: inline; color: rgb(110,000,000)">$_red</div></strong>)(<strong><div style="display: inline; color: rgb(110,000,000)">$box</div></strong>(<div style="display: inline; color: rgb(160,082,045)">100</div>)())</span> produces a red rectangle of the given width |
... | ... | @@ -1042,11 +1093,13 @@ Below are most of the errors the author made himself during the writting of this |
1042 | 1093 | character (or the contrary).<br><br> |
1043 | 1094 | |
1044 | 1095 | <li> Writing <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">#$//.*</span> instead of <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">#$#/#/.*</span> as a regular expression in order to colorize <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> line comments. |
1045 | - Of course, the first form <em>is seen</em> as the beginning of a line comment, and the final result is quite surprising. | |
1096 | + Of course, the first form <em>is seen</em> as the beginning of a line comment, and the final result is quite surprising.<br><br> | |
1097 | + | |
1098 | + <li> Forgetting to shift variable names in case of a <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span> within a <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span>. | |
1046 | 1099 | </ul></span> |
1047 | 1100 | |
1048 | 1101 | |
1049 | -<a id="toolsbasis"></a><br><big><big><strong>7. Tools available in <div style="display: inline; color: rgb(0,80,50)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">basis.maml</span></div></strong></big></big><br><br> | |
1102 | +<a id="toolsbasis"></a><br><br><big><big><strong>7. Tools available in <div style="display: inline; color: rgb(0,80,50)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">basis.maml</span></div></strong></big></big><br><br> | |
1050 | 1103 | |
1051 | 1104 | This <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> file provides some tools of common usage. In order to use these tools, you must write |
1052 | 1105 | <center><table style="color: inherit; font-size: inherit;"><tr><td><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$input</div></strong>(basis.maml)</span></td></tr></table></center><br> |
... | ... | @@ -1124,7 +1177,7 @@ equivalent to <span style="font-family:'Lucida Console', monospace; font-size:in |
1124 | 1177 | This <em>style</em> provides definitions for the marks <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$section</div></strong></span>, <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$subsection</div></strong></span> and <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$subsubsection</div></strong></span> (which |
1125 | 1178 | are not primitive marks), and also defines a mark <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$tableofcontents</div></strong></span>.<br><br> |
1126 | 1179 | |
1127 | -<a id="_"></a><br><strong>7.2.1. How to use it</strong><br> | |
1180 | +<a id="_"></a><br><strong>7.2.1. How to use it</strong><br><br> | |
1128 | 1181 | |
1129 | 1182 | In order to use this style, you must write:<br><br> |
1130 | 1183 | <center><table style="color: inherit; font-size: inherit;"><tr><td><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong>(article)(<div style="display: inline; color: rgb(160,082,045)">0</div>)()</span></td></tr></table></center><br> |
... | ... | @@ -1142,7 +1195,7 @@ The mark |
1142 | 1195 | <a rel="tag" href="#postpone"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$postpone</div></strong></span></a>, |
1143 | 1196 | so that it provides a complete table of contents regardless of its position in your source text.<br><br> |
1144 | 1197 | |
1145 | -<a id="_"></a><br><strong>7.2.2. Customizing <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">article</span></strong><br> | |
1198 | +<a id="_"></a><br><strong>7.2.2. Customizing <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">article</span></strong><br><br> | |
1146 | 1199 | |
1147 | 1200 | The lines of the table of contents are displayed by the marks <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$tocsec</div></strong></span>, |
1148 | 1201 | <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$tocsubsec</div></strong></span> and <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$tocsubsubsec</div></strong></span>. If you are not satisfied with the layout provided by these marks, you can |
... | ... | @@ -1165,17 +1218,18 @@ This style is the same as article, except that it also has a notion of chapter. |
1165 | 1218 | |
1166 | 1219 | |
1167 | 1220 | |
1168 | -<a id="catalog"></a><br><big><big><strong>8. The catalog of <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> marks</strong></big></big><br><br> | |
1221 | +<a id="catalog"></a><br><br><big><big><strong>8. The catalog of <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> marks</strong></big></big><br><br> | |
1169 | 1222 | |
1170 | -Below is a description of the 63 primitive <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> marks.<br><br> | |
1223 | +Below is a description of the 64 primitive <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> marks.<br><br> | |
1171 | 1224 | |
1225 | + | |
1172 | 1226 | |
1173 | 1227 | |
1174 | -<center><table style="color: inherit; font-size: inherit;"><tr><td><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#accumulator"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$accumulator</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#define"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#list"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$list</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#rpar"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$rpar</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#addtocounter"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$addtocounter</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#defined"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$defined</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#loadadm"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$loadadm</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#setcounter"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$setcounter</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#append"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$append</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#end"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$end</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#lpar"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$lpar</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#sort"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$sort</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#apply"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$apply</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#equals"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$equals</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#macrosonly"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$macrosonly</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#sp"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$sp</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#begin"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$begin</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#false"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$false</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#mailto"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$mailto</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#sub"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$sub</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#big"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$big</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#groupby"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$groupby</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#nolist"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$nolist</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#sublist"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$sublist</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#bold"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$bold</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#if"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$if</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#note"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$note</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#sup"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$sup</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#box"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$box</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#ifhtml"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$ifhtml</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#nth"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$nth</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#tbgc"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$tbgc</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#center"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$center</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#ifpdf"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$ifpdf</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#output"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$output</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#thisfilepath"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$thisfilepath</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#code"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$code</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#image"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$image</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#par"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$par</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#tlink"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$tlink</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#colorize"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$colorize</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#input"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$input</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#popcounter"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$popcounter</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#transpose"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$transpose</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#colorizer"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$colorizer</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#italic"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$italic</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#postpone"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$postpone</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#true"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$true</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#colorizercall"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$colorizercall</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#item"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$item</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#pushcounter"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$pushcounter</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#tt"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$tt</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#colorrule"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$colorrule</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#label"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$label</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#ref"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$ref</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#undefine"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$undefine</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#content"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$content</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#latex"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$latex</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#reverse"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$reverse</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#verbatim"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$verbatim</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#countervalue"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$countervalue</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#length"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$length</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#rgb"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$rgb</div></strong></span></a></div><br></td></tr></table></center> | |
1228 | +<center><table style="color: inherit; font-size: inherit;"><tr><td><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#accumulator"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$accumulator</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#define"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#length"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$length</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#rgb"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$rgb</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#addtocounter"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$addtocounter</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#defined"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$defined</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#list"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$list</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#rpar"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$rpar</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#append"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$append</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#end"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$end</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#loadadm"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$loadadm</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#setcounter"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$setcounter</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#apply"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$apply</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#equals"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$equals</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#lpar"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$lpar</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#sort"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$sort</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#begin"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$begin</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#error"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$error</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#mailto"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$mailto</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#sp"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$sp</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#big"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$big</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#false"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$false</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#nolist"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$nolist</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#sub"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$sub</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#bold"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$bold</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#groupby"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$groupby</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#noprimitive"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$noprimitive</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#sublist"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$sublist</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#box"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$box</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#if"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$if</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#note"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$note</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#sup"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$sup</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#center"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$center</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#ifhtml"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$ifhtml</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#nth"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$nth</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#tbgc"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$tbgc</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#code"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$code</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#ifpdf"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$ifpdf</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#output"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$output</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#thisfilepath"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$thisfilepath</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#colorize"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$colorize</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#image"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$image</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#par"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$par</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#tlink"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$tlink</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#colorizer"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$colorizer</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#input"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$input</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#popcounter"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$popcounter</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#transpose"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$transpose</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#colorizercall"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$colorizercall</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#italic"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$italic</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#postpone"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$postpone</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#true"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$true</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#colorrule"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$colorrule</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#item"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$item</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#pushcounter"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$pushcounter</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#tt"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$tt</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#content"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$content</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#label"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$label</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#ref"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$ref</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#undefine"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$undefine</div></strong></span></a></div><br><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#countervalue"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$countervalue</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#latex"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$latex</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#reverse"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$reverse</div></strong></span></a></div><div align="left" style="display: inline-block; width: 130px;"><a rel="tag" href="#verbatim"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$verbatim</div></strong></span></a></div><br></td></tr></table></center> | |
1175 | 1229 | |
1176 | 1230 | |
1177 | 1231 | |
1178 | - <a id="accumulator"></a><br><br><strong>8.1. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$accumulator</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)</span></div></strong><br><br> | |
1232 | + <a id="accumulator"></a><br><br><strong>8.1. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$accumulator</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)</span></strong><br><br> | |
1179 | 1233 | This mark creates a <em>variable</em> named <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div> called an <em>accumulator</em>. |
1180 | 1234 | The content of an accumulator is always a list, and this list is empty when the accumulator is created. With the mark |
1181 | 1235 | <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$append</div></strong></span>, you can add content to the accumulator. Each use of <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$append</div></strong></span> adds an element to the end of the list |
... | ... | @@ -1207,16 +1261,16 @@ Below is a description of the 63 primitive <strong><div style="display: inline; |
1207 | 1261 | tables of content and indexes. |
1208 | 1262 | See also <a rel="tag" href="#append"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$append</div></strong></span></a> and <a rel="tag" href="#content"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$content</div></strong></span></a>. |
1209 | 1263 | |
1210 | - <a id="addtocounter"></a><br><br><strong>8.2. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$addtocounter</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><value></span></strong></div>)</span></div></strong><br><br> | |
1264 | + <a id="addtocounter"></a><br><br><strong>8.2. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$addtocounter</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><value></span></strong></div>)</span></strong><br><br> | |
1211 | 1265 | This marks adds <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><value></span></strong></div> to the most recent instance of the counter whose name is <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>. |
1212 | 1266 | |
1213 | - <a id="append"></a><br><br><strong>8.3. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$append</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> | |
1267 | + <a id="append"></a><br><br><strong>8.3. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$append</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> | |
1214 | 1268 | This mark appends <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> at the end of the content of the <a rel="tag" href="#accumulator">accumulator</a> <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>. More |
1215 | 1269 | precisely, since the content of an accumulator is a list, the new content of the accumulator is the list obtained |
1216 | 1270 | by adding <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> as the last element of this list. |
1217 | 1271 | See also <a rel="tag" href="#accumulator"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$accumulator</div></strong></span></a> and <a rel="tag" href="#content"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$content</div></strong></span></a>. |
1218 | 1272 | |
1219 | - <a id="apply"></a><br><br><strong>8.4. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$apply</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><list></span></strong></div>)</span></div></strong><br><br> | |
1273 | + <a id="apply"></a><br><br><strong>8.4. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$apply</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><list></span></strong></div>)</span></strong><br><br> | |
1220 | 1274 | This mark applies the macro whose name is <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div> to all elements of the list <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><list></span></strong></div>. This creates a new list |
1221 | 1275 | of the same length. If <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><list></span></strong></div> is not a list, the result is the same as if it was a one element list.<br><br> |
1222 | 1276 | |
... | ... | @@ -1243,7 +1297,7 @@ abcd<br> |
1243 | 1297 | See also <a rel="tag" href="#box"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$box</div></strong></span></a> for a more sophisticated example. |
1244 | 1298 | |
1245 | 1299 | |
1246 | - <a id="begin"></a><br><br><strong>8.5. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$begin</div></strong></span></div></strong><br><br> This mark is looked for by <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> before it parses anything (even within a file refered to by | |
1300 | + <a id="begin"></a><br><br><strong>8.5. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$begin</div></strong></span></strong><br><br> This mark is looked for by <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> before it parses anything (even within a file refered to by | |
1247 | 1301 | <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$input</div></strong></span>). When <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$begin</div></strong></span> is found, <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> parses the text until it |
1248 | 1302 | encounters the mark <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$end</div></strong></span>. After this mark, <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> continues ignoring everything until the next <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$begin</div></strong></span>, |
1249 | 1303 | etc... <br><br> |
... | ... | @@ -1253,7 +1307,7 @@ abcd<br> |
1253 | 1307 | ... your comment ... |
1254 | 1308 | <strong><div style="display: inline; color: rgb(110,000,000)">$begin</div></strong><br><br></pre> |
1255 | 1309 | |
1256 | - <a id="big"></a><br><br><strong>8.6. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$big</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> Prints its operand <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> bigger. This mark can be nested. For example, | |
1310 | + <a id="big"></a><br><br><strong>8.6. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$big</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> Prints its operand <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> bigger. This mark can be nested. For example, | |
1257 | 1311 | <span><ul> |
1258 | 1312 | <li> <div align="left" style="display: inline-block; width: 200px;"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$big</div></strong>(text)</span></div> produces <big>text</big> |
1259 | 1313 | <li> <div align="left" style="display: inline-block; width: 200px;"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$big</div></strong>(<strong><div style="display: inline; color: rgb(110,000,000)">$big</div></strong>(text))</span></div> produces <big><big>text</big></big> |
... | ... | @@ -1261,9 +1315,9 @@ abcd<br> |
1261 | 1315 | </ul></span> |
1262 | 1316 | |
1263 | 1317 | |
1264 | - <a id="bold"></a><br><br><strong>8.7. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$bold</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> The operand is rendered in <strong>bold</strong>. | |
1318 | + <a id="bold"></a><br><br><strong>8.7. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$bold</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> The operand is rendered in <strong>bold</strong>. | |
1265 | 1319 | |
1266 | - <a id="box"></a><br><br><strong>8.8. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$box</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><width></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> This mark puts <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> into an invisible box of width <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><width></span></strong></div>. The text is left aligned | |
1320 | + <a id="box"></a><br><br><strong>8.8. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$box</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><width></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> This mark puts <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> into an invisible box of width <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><width></span></strong></div>. The text is left aligned | |
1267 | 1321 | within the box. This mark can be used for simulating tabulators. For example, |
1268 | 1322 | <pre style="color: inherit; font-size: inherit; background-color: rgb(230,235,220); width: 600px;"><br><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong>(tableline)(<div style="display: inline; color: rgb(160,082,045)">4</div>)(<strong><div style="display: inline; color: rgb(110,000,000)">$box</div></strong>(<div style="display: inline; color: rgb(160,082,045)">50</div>)(<div style="display: inline; color: rgb(255,000,255)">$1</div>) <strong><div style="display: inline; color: rgb(110,000,000)">$box</div></strong>(<div style="display: inline; color: rgb(160,082,045)">50</div>)(<div style="display: inline; color: rgb(255,000,255)">$2</div>) <strong><div style="display: inline; color: rgb(110,000,000)">$box</div></strong>(<div style="display: inline; color: rgb(160,082,045)">30</div>)(<strong><div style="display: inline; color: rgb(110,000,000)">$red</div></strong>(<div style="display: inline; color: rgb(255,000,255)">$3</div>)) <div style="display: inline; color: rgb(255,000,255)">$4</div> <strong><div style="display: inline; color: rgb(110,000,000)">$par</div></strong>) |
1269 | 1323 | |
... | ... | @@ -1317,11 +1371,11 @@ abcd<br> |
1317 | 1371 | The macro <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$pajamatable</div></strong></span> defined in <div style="display: inline; color: rgb(0,80,50)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">basis.maml</span></div> realises such a table and accepts the data in the form of a |
1318 | 1372 | list of lists. |
1319 | 1373 | |
1320 | - <a id="center"></a><br><br><strong>8.9. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$center</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> This mark horizontally centers the <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> in the page. For example, | |
1374 | + <a id="center"></a><br><br><strong>8.9. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$center</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> This mark horizontally centers the <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> in the page. For example, | |
1321 | 1375 | <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$center</div></strong>(centered text)</span> produces:<br> |
1322 | 1376 | <br><center><table style="color: inherit; font-size: inherit;"><tr><td>centered text</td></tr></table></center><br> |
1323 | 1377 | |
1324 | - <a id="code"></a><br><br><strong>8.10. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$code</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><background color></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> This marks is for writing computer code. | |
1378 | + <a id="code"></a><br><br><strong>8.10. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$code</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><background color></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> This marks is for writing computer code. | |
1325 | 1379 | The <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> operand is formated using a fixed width |
1326 | 1380 | (typewriter) font, spaces and newlines are taken into account, so that the result has essentially the same layout as the |
1327 | 1381 | original. Nevertheless, <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> marks are allowed within <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>, but some of them, such as <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$list</div></strong></span>, |
... | ... | @@ -1357,19 +1411,19 @@ define Int |
1357 | 1411 | <br><br> |
1358 | 1412 | See also <a rel="tag" href="#tt"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$tt</div></strong>(...)</span></a> and <a rel="tag" href="#verbatim"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$verbatim</div></strong>(...)</span></a> |
1359 | 1413 | |
1360 | - <a id="colorize"></a><br><br><strong>8.11. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$colorize</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> See <a rel="tag" href="#colorize">Automatic colorization</a>. | |
1361 | - <a id="colorizer"></a><br><br><strong>8.12. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$colorizer</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)</span></div></strong><br><br> See <a rel="tag" href="#colorize">Automatic colorization</a>. | |
1362 | - <a id="colorizercall"></a><br><br><strong>8.13. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$colorizercall</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><regexpr></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><regexpr></span></strong></div>)</span></div></strong><br><br> See <a rel="tag" href="#colorize">Automatic colorization</a>. | |
1363 | - <a id="colorrule"></a><br><br><strong>8.14. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$colorrule</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><regexpr></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> See <a rel="tag" href="#colorize">Automatic colorization</a>. | |
1414 | + <a id="colorize"></a><br><br><strong>8.11. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$colorize</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> See <a rel="tag" href="#colorize">Automatic colorization</a>. | |
1415 | + <a id="colorizer"></a><br><br><strong>8.12. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$colorizer</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)</span></strong><br><br> See <a rel="tag" href="#colorize">Automatic colorization</a>. | |
1416 | + <a id="colorizercall"></a><br><br><strong>8.13. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$colorizercall</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><regexpr></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><regexpr></span></strong></div>)</span></strong><br><br> See <a rel="tag" href="#colorize">Automatic colorization</a>. | |
1417 | + <a id="colorrule"></a><br><br><strong>8.14. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$colorrule</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><regexpr></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> See <a rel="tag" href="#colorize">Automatic colorization</a>. | |
1364 | 1418 | |
1365 | - <a id="content"></a><br><br><strong>8.15. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$content</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)</span></div></strong><br><br> | |
1419 | + <a id="content"></a><br><br><strong>8.15. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$content</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)</span></strong><br><br> | |
1366 | 1420 | The value of this mark is the content of the <a rel="tag" href="#accumulator">accumulator</a> <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>. Recall that this content |
1367 | 1421 | is a list. See also <a rel="tag" href="#accumulator"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$accumulator</div></strong></span></a> and <a rel="tag" href="#append"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$append</div></strong></span></a>. |
1368 | 1422 | |
1369 | - <a id="countervalue"></a><br><br><strong>8.16. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$countervalue</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)</span></div></strong><br><br> | |
1423 | + <a id="countervalue"></a><br><br><strong>8.16. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$countervalue</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)</span></strong><br><br> | |
1370 | 1424 | This mark produces the value of the counter <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div> in decimal notation. See <a rel="tag" href="#counters">Counters</a>. |
1371 | 1425 | |
1372 | - <a id="define"></a><br><br><strong>8.17. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><number of operands></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><value></span></strong></div>)</span></div></strong><br><br> | |
1426 | + <a id="define"></a><br><br><strong>8.17. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><number of operands></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><value></span></strong></div>)</span></strong><br><br> | |
1373 | 1427 | This mark let you define new marks (i.e. <em>macros</em>). It takes three operands. The first operand <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div> |
1374 | 1428 | is the name of the new mark. If it is |
1375 | 1429 | already in use, the new definition masks the previous one until you use an <a rel="tag" href="#undefine"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$undefine</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)</span></a>. |
... | ... | @@ -1385,20 +1439,27 @@ define Int |
1385 | 1439 | see <a rel="tag" href="#undefine"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$undefine</div></strong></span></a> where more explanations are given on the behavior of <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span>. |
1386 | 1440 | |
1387 | 1441 | |
1388 | - <a id="defined"></a><br><br><strong>8.18. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$defined</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)</span></div></strong><br><br> | |
1442 | + <a id="defined"></a><br><br><strong>8.18. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$defined</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)</span></strong><br><br> | |
1389 | 1443 | This mark has a boolean value which is <em>true</em> if a macro is defined with name <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div> and <em>false</em> |
1390 | 1444 | otherwise. |
1391 | 1445 | |
1392 | - <a id="end"></a><br><br><strong>8.19. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$end</div></strong></span></div></strong><br><br> This mark indicates that the <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> compiler should stop parsing until the next <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$begin</div></strong></span> (or the end | |
1446 | + <a id="end"></a><br><br><strong>8.19. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$end</div></strong></span></strong><br><br> This mark indicates that the <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> compiler should stop parsing until the next <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$begin</div></strong></span> (or the end | |
1393 | 1447 | of file). See <a rel="tag" href="#begin"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$begin</div></strong></span></a>. |
1394 | 1448 | |
1395 | - <a id="equals"></a><br><br><strong>8.20. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$equals</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><expr 1></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><expr 2></span></strong></div>)</span></div></strong><br><br> | |
1449 | + <a id="equals"></a><br><br><strong>8.20. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$equals</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><expr 1></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><expr 2></span></strong></div>)</span></strong><br><br> | |
1396 | 1450 | This mark has a boolean value which is <em>true</em> if <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><expr 1></span></strong></div> and <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><expr 2></span></strong></div> are equal. By <em>equal</em>, we |
1397 | 1451 | mean identical after <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><expr 1></span></strong></div> and <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><expr 2></span></strong></div> are computed. |
1398 | 1452 | |
1399 | - <a id="false"></a><br><br><strong>8.21. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$false</div></strong></span></div></strong><br><br> This mark represents the truth value <em>false</em>. | |
1453 | + <a id="error"></a><br><br><strong>8.21. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$error</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> | |
1454 | + This mark produces an error message. This is useful when you write macros whose operands must satisfy a particular | |
1455 | + property. The operand <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> is the text of the message. This text can contain the <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> mark <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$position</div></strong></span> | |
1456 | + (taking no operand) | |
1457 | + which will be replaced by the position (file path + line number + column number) in the source text where your macro | |
1458 | + is used. | |
1459 | + | |
1460 | + <a id="false"></a><br><br><strong>8.22. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$false</div></strong></span></strong><br><br> This mark represents the truth value <em>false</em>. | |
1400 | 1461 | |
1401 | - <a id="groupby"></a><br><br><strong>8.22. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$groupby</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><n></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><list></span></strong></div>)</span></div></strong><br><br> | |
1462 | + <a id="groupby"></a><br><br><strong>8.23. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$groupby</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><n></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><list></span></strong></div>)</span></strong><br><br> | |
1402 | 1463 | This mark accepts a positive non zero integer <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><n></span></strong></div> as its first operand and a list <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><list></span></strong></div> |
1403 | 1464 | as its second operand. The result is a |
1404 | 1465 | list of lists, where all lists, except possibly the last one, have length <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><n></span></strong></div>. For example, |
... | ... | @@ -1418,17 +1479,17 @@ the wanted number of columns, the quotient is the right answer, but if not, we m |
1418 | 1479 | otherwise we shall have one column too many. |
1419 | 1480 | |
1420 | 1481 | |
1421 | - <a id="if"></a><br><br><strong>8.23. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$if</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><test></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><if true></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><if false></span></strong></div>)</span></div></strong><br><br> | |
1482 | + <a id="if"></a><br><br><strong>8.24. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$if</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><test></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><if true></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><if false></span></strong></div>)</span></strong><br><br> | |
1422 | 1483 | This mark represents <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><if true></span></strong></div> if <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><test></span></strong></div> is true, and <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><if false></span></strong></div> otherwise. Only one of |
1423 | 1484 | <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><if true></span></strong></div> and <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><if false></span></strong></div> is evaluated. |
1424 | 1485 | |
1425 | - <a id="ifhtml"></a><br><br><strong>8.24. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$ifhtml</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> The operand <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> is present in the HTML output, but not in the <img src="png/fNScTnBA4MH-qH_w0pRfArXeeKE8.png" width="36" height="14" style="vertical-align: -3px"> nor in the PDF | |
1486 | + <a id="ifhtml"></a><br><br><strong>8.25. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$ifhtml</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> The operand <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> is present in the HTML output, but not in the <img src="png/fNScTnBA4MH-qH_w0pRfArXeeKE8.png" width="36" height="14" style="vertical-align: -3px"> nor in the PDF | |
1426 | 1487 | output. |
1427 | 1488 | |
1428 | - <a id="ifpdf"></a><br><br><strong>8.25. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$ifpdf</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> The operand <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> is present in the <img src="png/fNScTnBA4MH-qH_w0pRfArXeeKE8.png" width="36" height="14" style="vertical-align: -3px"> and in the PDF | |
1489 | + <a id="ifpdf"></a><br><br><strong>8.26. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$ifpdf</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> The operand <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> is present in the <img src="png/fNScTnBA4MH-qH_w0pRfArXeeKE8.png" width="36" height="14" style="vertical-align: -3px"> and in the PDF | |
1429 | 1490 | output, but not in the HTML output. |
1430 | 1491 | |
1431 | - <a id="image"></a><br><br><strong>8.26. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$image</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><width></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><file path></span></strong></div>)</span></div></strong><br><br> | |
1492 | + <a id="image"></a><br><br><strong>8.27. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$image</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><width></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><file path></span></strong></div>)</span></strong><br><br> | |
1432 | 1493 | This mark inserts an image in the text. The operand <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><width></span></strong></div> is the width the image will have |
1433 | 1494 | when displayed (in pixels in the case of HTML, and points in the case of <img src="png/fNScTnBA4MH-qH_w0pRfArXeeKE8.png" width="36" height="14" style="vertical-align: -3px">), and <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><file path></span></strong></div> is the path of the file |
1434 | 1495 | containing the image. For example, |
... | ... | @@ -1445,7 +1506,7 @@ otherwise we shall have one column too many. |
1445 | 1506 | can be computed using <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> marks. |
1446 | 1507 | |
1447 | 1508 | |
1448 | - <a id="input"></a><br><br><strong>8.27. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$input</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><file name></span></strong></div>)</span></div></strong><br><br> | |
1509 | + <a id="input"></a><br><br><strong>8.28. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$input</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><file name></span></strong></div>)</span></strong><br><br> | |
1449 | 1510 | This mark let you insert the content of another <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> file. This other file could for example contain your own <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> |
1450 | 1511 | macros.<br><br> |
1451 | 1512 | Notice that the input file also needs to have a <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$begin</div></strong></span> and an <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$end</div></strong></span>. |
... | ... | @@ -1455,14 +1516,14 @@ otherwise we shall have one column too many. |
1455 | 1516 | This mark can be <strong><div style="display: inline; color: rgb(220,0,0)">unsafe</div></strong> on the web, except if you filter the operand. See the Anubis library documentation. |
1456 | 1517 | |
1457 | 1518 | |
1458 | - <a id="italic"></a><br><br><strong>8.28. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$italic</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> Prints its operand <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> in <em>italic</em>. | |
1519 | + <a id="italic"></a><br><br><strong>8.29. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$italic</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> Prints its operand <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> in <em>italic</em>. | |
1459 | 1520 | |
1460 | - <a id="item"></a><br><br><strong>8.29. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$item</div></strong></span></div></strong><br><br> Marks the begining of an <em>item</em> within a <a rel="tag" href="#list"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$list</div></strong></span></a> | |
1521 | + <a id="item"></a><br><br><strong>8.30. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$item</div></strong></span></strong><br><br> Marks the begining of an <em>item</em> within a <a rel="tag" href="#list"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$list</div></strong></span></a> | |
1461 | 1522 | |
1462 | - <a id="label"></a><br><br><strong>8.30. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$label</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><tag></span></strong></div>)</span></div></strong><br><br> This mark defines a <em>label</em> in the text, in other words, a position where to jump. | |
1523 | + <a id="label"></a><br><br><strong>8.31. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$label</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><tag></span></strong></div>)</span></strong><br><br> This mark defines a <em>label</em> in the text, in other words, a position where to jump. | |
1463 | 1524 | This is to be used in conjunction with <a rel="tag" href="#ref"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$ref</div></strong></span></a>. |
1464 | 1525 | |
1465 | - <a id="latex"></a><br><br><strong>8.31. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$latex</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><formula></span></strong></div>)</span></div></strong><br><br> This mark allows to include math formulas to be formated by <img src="png/fNScTnBA4MH-qH_w0pRfArXeeKE8.png" width="36" height="14" style="vertical-align: -3px">. | |
1526 | + <a id="latex"></a><br><br><strong>8.32. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$latex</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><formula></span></strong></div>)</span></strong><br><br> This mark allows to include math formulas to be formated by <img src="png/fNScTnBA4MH-qH_w0pRfArXeeKE8.png" width="36" height="14" style="vertical-align: -3px">. | |
1466 | 1527 | For example, |
1467 | 1528 | <br><center><table style="color: inherit; font-size: inherit;"><tr><td><pre style="color: inherit; font-size: inherit; background-color: rgb(230,235,220); width: 600px;"><br><strong><div style="display: inline; color: rgb(110,000,000)">$latex</div></strong>(<strong><div style="display: inline; color: rgb(110,000,000)">$$</div></strong>\int_<div style="display: inline; color: rgb(160,082,045)">0</div>^\infty\frac{dx}{<div style="display: inline; color: rgb(160,082,045)">1</div>+x^<div style="display: inline; color: rgb(160,082,045)">2</div>}<strong><div style="display: inline; color: rgb(110,000,000)">$$</div></strong>)<br><br></pre></td></tr></table></center><br> |
1468 | 1529 | is rendered as: |
... | ... | @@ -1472,7 +1533,7 @@ otherwise we shall have one column too many. |
1472 | 1533 | as a PNG image with transparent background. |
1473 | 1534 | <br><br> |
1474 | 1535 | You can use <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$latex</div></strong></span> in the text. The result is correctly aligned with the text. For example,<br> |
1475 | - <br><center><table style="color: inherit; font-size: inherit;"><tr><td><pre style="color: inherit; font-size: inherit; background-color: rgb(230,235,220); width: 600px;"><br>the polynomial <strong><div style="display: inline; color: rgb(110,000,000)">$latex</div></strong>(<strong><div style="display: inline; color: rgb(110,000,000)">$X</div></strong>^<div style="display: inline; color: rgb(160,082,045)">2</div>+X+<div style="display: inline; color: rgb(160,082,045)">1</div><strong><div style="display: inline; color: rgb(110,000,000)">$)</div></strong> is of degree <div style="display: inline; color: rgb(160,082,045)">2</div><br><br></pre></td></tr></table></center><br> | |
1536 | + <br><center><table style="color: inherit; font-size: inherit;"><tr><td><pre style="color: inherit; font-size: inherit; background-color: rgb(230,235,220); width: 600px;"><br>the polynomial <strong><div style="display: inline; color: rgb(110,000,000)">$latex</div></strong>(<div style="display: inline; color: rgb(000,000,000)">$X^2+X+1$</div>) is of degree <div style="display: inline; color: rgb(160,082,045)">2</div><br><br></pre></td></tr></table></center><br> | |
1476 | 1537 | is rendered as: |
1477 | 1538 | <br><center><table style="color: inherit; font-size: inherit;"><tr><td>the polynomial <img src="png/fyKx7xRolFAoYjXkjs4VdbNyRjAQ.png" width="77" height="16" style="vertical-align: -1px"> is of degree <div style="display: inline; color: rgb(160,082,045)">2</div></td></tr></table></center><br> |
1478 | 1539 | |
... | ... | @@ -1482,12 +1543,14 @@ otherwise we shall have one column too many. |
1482 | 1543 | <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$latex</div></strong></span> mark is mainly used for inserting math formulas. See the Anubis library documentation to learn how |
1483 | 1544 | to install this list of safe <img src="png/fNScTnBA4MH-qH_w0pRfArXeeKE8.png" width="36" height="14" style="vertical-align: -3px"> commands. |
1484 | 1545 | |
1485 | - <a id="length"></a><br><br><strong>8.32. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$length</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><list></span></strong></div>)</span></div></strong><br><br> | |
1546 | + <a id="length"></a><br><br><strong>8.33. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$length</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><list></span></strong></div>)</span></strong><br><br> | |
1486 | 1547 | This mark returns the number of elements in its operand which is supposed to be a list. If the operand is not a list, |
1487 | 1548 | the result is <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><div style="display: inline; color: rgb(160,082,045)">1</div></span> if the operand is not empty (i.e. if it contains at least one character), and <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><div style="display: inline; color: rgb(160,082,045)">0</div></span> if it is |
1488 | 1549 | empty. |
1489 | 1550 | |
1490 | - <a id="list"></a><br><br><strong>8.33. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$list</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><items></span></strong></div>)</span></div></strong><br><br> This mark allows to create a list. The operand <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><items></span></strong></div> must be a sequence of <em>items</em>, | |
1551 | + <a id="list"></a><br><br><strong>8.34. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$list</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><items></span></strong></div>)</span></strong><br><br> This mark allows to create a list (not in the sens of <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> <a rel="tag" href="#lists">lists</a>, | |
1552 | + but as a sequence of indented items in the output). | |
1553 | + The operand <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><items></span></strong></div> must be a sequence of <em>items</em>, | |
1491 | 1554 | i.e. texts which are all prefixed by the mark <a rel="tag" href="#item"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$item</div></strong></span></a>.<br><br> |
1492 | 1555 | Example: |
1493 | 1556 | <pre style="color: inherit; font-size: inherit; background-color: rgb(230,235,220); width: 600px;"><br><strong><div style="display: inline; color: rgb(110,000,000)">$list</div></strong>( |
... | ... | @@ -1498,26 +1561,19 @@ otherwise we shall have one column too many. |
1498 | 1561 | <li> Boys: <span><ul> <li> John <li> Max</ul></span> |
1499 | 1562 | <li> Girls: <span><ul><li> Julie <li> Geraldine <li> Sophia</ul></span></ul></span> |
1500 | 1563 | |
1501 | - <a id="loadadm"></a><br><br><strong>8.34. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$loadadm</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><module name></span></strong></div>)</span></div></strong><br><br> | |
1502 | - This mark loads the secondary Anubis module whose name is given. The Anubis type of this module must be | |
1564 | + <a id="loadadm"></a><br><br><strong>8.35. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$loadadm</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><module name></span></strong></div>)</span></strong><br><br> | |
1565 | + This mark loads the secondary Anubis module whose path is given. The Anubis type of this module must be | |
1503 | 1566 | <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">MAML_Library</span> as explained in the section <a rel="tag" href="#loadadm">Loading a library of Anubis functions</a>.<br><br> |
1504 | 1567 | |
1505 | 1568 | Of course, this results in an error if the module is either not found, of another type, compiled with another version |
1506 | 1569 | of Anubis, etc... If the loading succeeds the Anubis functions defined in the library become automatically new <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> |
1507 | 1570 | marks. |
1508 | 1571 | |
1509 | - | |
1510 | - <a id="lpar"></a><br><br><strong>8.35. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$lpar</div></strong></span></div></strong><br><br> This mark inserts a left (opening) parenthese into the text. You must use <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$lpar</div></strong></span> and/or | |
1511 | - <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$rpar</div></strong></span> if you want to introduce unbalanced parentheses within an operand of a mark. | |
1572 | + <a id="lpar"></a><br><br><strong>8.36. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$lpar</div></strong></span></strong><br><br> This mark inserts a left (opening) parenthese into the text. You must use <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$lpar</div></strong></span> and/or | |
1573 | + <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$rpar</div></strong></span> (or alternatively <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$(</div></strong></span> and <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$)</div></strong></span>) if you want to introduce unbalanced parentheses | |
1574 | + within an operand of a mark. | |
1512 | 1575 | |
1513 | - <a id="macrosonly"></a><br><br><strong>8.36. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$macrosonly</div></strong></span></div></strong><br><br> | |
1514 | - This mark disables the use of all primitive marks until the end of the document, except for the marks | |
1515 | - <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$alphabetic</div></strong></span>, <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$colorize</div></strong></span>, <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span>, <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$if</div></strong></span> and <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$undefine</div></strong></span>. Hence, after <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$macrosonly</div></strong></span>, | |
1516 | - only the | |
1517 | - macros and the marks listed above are allowed. This can be used for securing the usage of <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> by web users. See | |
1518 | - <a rel="tag" href="#guidelinesweb">the guidelines for the web</a>. | |
1519 | - | |
1520 | - <a id="mailto"></a><br><br><strong>8.37. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$mailto</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><address></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> This marks, which appears as <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>, | |
1576 | + <a id="mailto"></a><br><br><strong>8.37. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$mailto</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><address></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> This marks, which appears as <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>, | |
1521 | 1577 | creates a link which is supposed, in the HTML case, to open your mail agent in order to let you |
1522 | 1578 | send an email to the indicated <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><address></span></strong></div>. In the PDF case, the <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><address></span></strong></div> is just indicated between parentheses |
1523 | 1579 | beside <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>. |
... | ... | @@ -1525,28 +1581,37 @@ otherwise we shall have one column too many. |
1525 | 1581 | <br><center><table style="color: inherit; font-size: inherit;"><tr><td><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$blue</div></strong>(<strong><div style="display: inline; color: rgb(110,000,000)">$mailto</div></strong>(XZ<div style="display: inline; color: rgb(160,082,045)">32</div>@planet.mars)(the martian))</span></td></tr></table></center><br> produces: |
1526 | 1582 | <div style="display: inline; color: rgb(000,000,255)"><a href="mailto:XZ32@planet.mars">the martian</a></div> (you can try it). |
1527 | 1583 | |
1528 | - <a id="nolist"></a><br><br><strong>8.38. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$nolist</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> | |
1584 | + <a id="nolist"></a><br><br><strong>8.38. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$nolist</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> | |
1529 | 1585 | This mark inhibits the recognition of the square brackets and the comma as list delimitors within <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>. See |
1530 | 1586 | <a rel="tag" href="#lists">Lists</a>. |
1531 | 1587 | |
1532 | - <a id="note"></a><br><br><strong>8.39. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$note</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> This mark produces a footnote containing <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>. | |
1588 | + <a id="noprimitive"></a><br><br><strong>8.39. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$noprimitive</div></strong></span></strong><br><br> | |
1589 | + This mark disables the use of all primitive marks until the end of the document, except for the marks | |
1590 | + <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$alphabetic</div></strong></span>, <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$colorize</div></strong></span>, <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span>, <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$if</div></strong></span> and <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$undefine</div></strong></span>. Hence, after <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$noprimitive</div></strong></span>, | |
1591 | + only the | |
1592 | + macros, the marks listed above and the marks coming from a library via | |
1593 | + <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$loadadm</div></strong></span> are allowed. This can be used for securing the usage of <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> by web users, | |
1594 | + since the macros you define before <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$noprimitive</div></strong></span> can filter their operands. See | |
1595 | + <a rel="tag" href="#guidelinesweb">the guidelines for the web</a>. | |
1596 | + | |
1597 | + <a id="note"></a><br><br><strong>8.40. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$note</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> This mark produces a footnote containing <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>. | |
1533 | 1598 | In the case of <img src="png/fNScTnBA4MH-qH_w0pRfArXeeKE8.png" width="36" height="14" style="vertical-align: -3px">/PDF this is a usual |
1534 | 1599 | footnote. In the case of HTML, this is a popup which appears at the bottom of the browser's window when the mouse |
1535 | 1600 | passes over this indication : <div class="dropdown"><span>(<sup>note</sup>)</span> |
1536 | 1601 | <div class="drp-content" style="font-size:10px; width:600-100; padding: 6px 6px 6px 6px;">Here is the note !</div></div>. Try it ! |
1537 | 1602 | |
1538 | - <a id="nth"></a><br><br><strong>8.40. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$nth</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><n></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><list></span></strong></div>)</span></div></strong><br><br> | |
1603 | + <a id="nth"></a><br><br><strong>8.41. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$nth</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><n></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><list></span></strong></div>)</span></strong><br><br> | |
1539 | 1604 | This mark extracts the <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><n></span></strong></div><sup>th</sup> element of the list <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><list></span></strong></div>. It generates an error if this element doesn't |
1540 | 1605 | exist. Numbering begins at zero. |
1541 | 1606 | |
1542 | - <a id="output"></a><br><br><strong>8.41. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$output</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><file path></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> This mark does not produce anything in the resulting HTML or PDF files, but outputs | |
1607 | + <a id="output"></a><br><br><strong>8.42. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$output</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><file path></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> This mark does not produce anything in the resulting HTML or PDF files, but outputs | |
1543 | 1608 | <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> (without any modification) into the file <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><file path></span></strong></div>. |
1544 | 1609 | <br> |
1545 | 1610 | <br> |
1546 | 1611 | <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$output</div></strong></span> can be very <strong><div style="display: inline; color: rgb(220,0,0)">unsafe</div></strong> for the web. In any case it is not very useful on the web because web pages offer |
1547 | 1612 | other ways of uploading files. So, the best is just to forbid it. |
1548 | 1613 | |
1549 | - <a id="par"></a><br><br><strong>8.42. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$par</div></strong></span></div></strong><br><br> This marks generates a line break. You can use several <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$par</div></strong></span> in order to make some | |
1614 | + <a id="par"></a><br><br><strong>8.43. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$par</div></strong></span></strong><br><br> This marks generates a line break. You can use several <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$par</div></strong></span> in order to make some | |
1550 | 1615 | vertical space in your text. |
1551 | 1616 | <br><br> |
1552 | 1617 | <em>Warning:</em> The MAML parser doesn't take newline characters into account (they are just read as spaces). Hence, |
... | ... | @@ -1555,10 +1620,10 @@ otherwise we shall have one column too many. |
1555 | 1620 | |
1556 | 1621 | |
1557 | 1622 | |
1558 | - <a id="popcounter"></a><br><br><strong>8.43. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$popcounter</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)</span></div></strong><br><br> | |
1623 | + <a id="popcounter"></a><br><br><strong>8.44. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$popcounter</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)</span></strong><br><br> | |
1559 | 1624 | This mark destroys the most recent counter whose name is <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>. |
1560 | 1625 | |
1561 | - <a id="postpone"></a><br><br><strong>8.44. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$postpone</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> | |
1626 | + <a id="postpone"></a><br><br><strong>8.45. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$postpone</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> | |
1562 | 1627 | The <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> text <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> is evaluated only after the entire <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> source is parsed and evaluated (including the |
1563 | 1628 | sources obtained via <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$input</div></strong></span>). |
1564 | 1629 | On the contrary, everything not within a <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$postpone</div></strong></span> is |
... | ... | @@ -1566,24 +1631,24 @@ otherwise we shall have one column too many. |
1566 | 1631 | <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$append</div></strong></span> and <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$content</div></strong></span> for creating a table of contents at the beginning of a document. This is how |
1567 | 1632 | the table of contents at the beginning of this tutorial was made.<br><br> |
1568 | 1633 | |
1569 | - As another easy example, the sentence <em>Below is a description of the 63 | |
1634 | + As another easy example, the sentence <em>Below is a description of the 64 | |
1570 | 1635 | primitive <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> marks.</em> that you can find just after the section title <a rel="tag" href="#catalog">The catalog of <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> marks</a> contains a |
1571 | - <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$postpone</div></strong>(<strong><div style="display: inline; color: rgb(110,000,000)">$countervalue</div></strong>(markcount))</span> producing the number 63 (where | |
1636 | + <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$postpone</div></strong>(<strong><div style="display: inline; color: rgb(110,000,000)">$countervalue</div></strong>(markcount))</span> producing the number 64 (where | |
1572 | 1637 | <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">markcount</span> is the name of the counter used for numbering the marks in this catalog). |
1573 | 1638 | |
1574 | - <a id="pushcounter"></a><br><br><strong>8.45. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$pushcounter</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><init></span></strong></div>)</span></div></strong><br><br> | |
1639 | + <a id="pushcounter"></a><br><br><strong>8.46. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$pushcounter</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><init></span></strong></div>)</span></strong><br><br> | |
1575 | 1640 | This mark creates a new counter under the name <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>, with <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><init></span></strong></div> as its initial value. See |
1576 | 1641 | <a rel="tag" href="#counters">Counters</a>. |
1577 | 1642 | |
1578 | - <a id="ref"></a><br><br><strong>8.46. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$ref</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><tag></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> | |
1643 | + <a id="ref"></a><br><br><strong>8.47. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$ref</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><tag></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> | |
1579 | 1644 | This mark creates an internal hyperlink. When clicked upon, this moves the text |
1580 | 1645 | to the position of the <a rel="tag" href="#label"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$label</div></strong></span></a> (this is a <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$ref</div></strong></span> !) with the same tag name. |
1581 | 1646 | |
1582 | - <a id="reverse"></a><br><br><strong>8.47. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$reverse</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><list></span></strong></div>)</span></div></strong><br><br> | |
1647 | + <a id="reverse"></a><br><br><strong>8.48. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$reverse</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><list></span></strong></div>)</span></strong><br><br> | |
1583 | 1648 | This mark return its operand (assumed to be a list), but in reverse order. If the operand is not a list, an error |
1584 | 1649 | message is generated. |
1585 | 1650 | |
1586 | - <a id="rgb"></a><br><br><strong>8.48. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$rgb</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><color></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> This mark sets the color of characters in <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> to <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><color></span></strong></div>, where | |
1651 | + <a id="rgb"></a><br><br><strong>8.49. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$rgb</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><color></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> This mark sets the color of characters in <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> to <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><color></span></strong></div>, where | |
1587 | 1652 | <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><color></span></strong></div> has the form of three integers separated by commas, representing the intensities of red, green and blue. |
1588 | 1653 | These numbers must be between 0 and 255. For example,<br> |
1589 | 1654 | <br><center><table style="color: inherit; font-size: inherit;"><tr><td><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$rgb</div></strong>(<div style="display: inline; color: rgb(160,082,045)">255</div>,<div style="display: inline; color: rgb(160,082,045)">0</div>,<div style="display: inline; color: rgb(160,082,045)">0</div>)(the text)</span></td></tr></table></center><br> |
... | ... | @@ -1591,13 +1656,14 @@ otherwise we shall have one column too many. |
1591 | 1656 | <br><center><table style="color: inherit; font-size: inherit;"><tr><td><div style="display: inline; color: rgb(255,0,0)">the text</div></td></tr></table></center><br> |
1592 | 1657 | See also <a rel="tag" href="#colors">the predefined colors</a>. |
1593 | 1658 | |
1594 | - <a id="rpar"></a><br><br><strong>8.49. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$rpar</div></strong></span></div></strong><br><br> This mark inserts a right (closing) parenthese into the text. You must use <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$lpar</div></strong></span> and/or | |
1595 | - <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$rpar</div></strong></span> if you want to introduce unbalanced parentheses within an operand of a mark. | |
1659 | + <a id="rpar"></a><br><br><strong>8.50. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$rpar</div></strong></span></strong><br><br> This mark inserts a right (closing) parenthese into the text. You must use <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$lpar</div></strong></span> and/or | |
1660 | + <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$rpar</div></strong></span> (or alternatively <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$(</div></strong></span> and <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$)</div></strong></span>) if you want to introduce unbalanced parentheses within | |
1661 | + an operand of a mark. | |
1596 | 1662 | |
1597 | - <a id="setcounter"></a><br><br><strong>8.50. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$setcounter</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><value></span></strong></div>)</span></div></strong><br><br> | |
1663 | + <a id="setcounter"></a><br><br><strong>8.51. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$setcounter</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><value></span></strong></div>)</span></strong><br><br> | |
1598 | 1664 | This mark puts the value <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><value></span></strong></div> in the most recent counter whose name is <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>. See <a rel="tag" href="#counters">Counters</a>. |
1599 | 1665 | |
1600 | - <a id="sort"></a><br><br><strong>8.51. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$sort</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><list></span></strong></div>)</span></div></strong><br><br> | |
1666 | + <a id="sort"></a><br><br><strong>8.52. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$sort</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><list></span></strong></div>)</span></strong><br><br> | |
1601 | 1667 | This marks performs a quick sorting of its operand which is supposed to be a list. If the operand is not a list, an |
1602 | 1668 | error message is generated.<br><br> |
1603 | 1669 | |
... | ... | @@ -1608,12 +1674,12 @@ otherwise we shall have one column too many. |
1608 | 1674 | At the rendering stage <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$alphabetic</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><part></span></strong></div>)</span> is just replaced by <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><part></span></strong></div></span>. See <a rel="tag" href="#box"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$box</div></strong></span></a> |
1609 | 1675 | for an example. |
1610 | 1676 | |
1611 | - <a id="sp"></a><br><br><strong>8.52. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$sp</div></strong></span></div></strong><br><br> This mark (space) produces an unbreakable space (translated into <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">&nbsp;</span> in HTML and <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">~</span> in <img src="png/fNScTnBA4MH-qH_w0pRfArXeeKE8.png" width="36" height="14" style="vertical-align: -3px">). | |
1677 | + <a id="sp"></a><br><br><strong>8.53. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$sp</div></strong></span></strong><br><br> This mark (space) produces an unbreakable space (translated into <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">&nbsp;</span> in HTML and <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">~</span> in <img src="png/fNScTnBA4MH-qH_w0pRfArXeeKE8.png" width="36" height="14" style="vertical-align: -3px">). | |
1612 | 1678 | |
1613 | - <a id="sub"></a><br><br><strong>8.53. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$sub</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> This mark lowers <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> and renders it in a smaller size. For example, <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">x<strong><div style="display: inline; color: rgb(110,000,000)">$sub</div></strong>(<div style="display: inline; color: rgb(160,082,045)">1</div>)</span> | |
1679 | + <a id="sub"></a><br><br><strong>8.54. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$sub</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> This mark lowers <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> and renders it in a smaller size. For example, <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">x<strong><div style="display: inline; color: rgb(110,000,000)">$sub</div></strong>(<div style="display: inline; color: rgb(160,082,045)">1</div>)</span> | |
1614 | 1680 | produces x<sub>1</sub>. |
1615 | 1681 | |
1616 | - <a id="sublist"></a><br><br><strong>8.54. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$sublist</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><start></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><end></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><list></span></strong></div>)</span></div></strong><br><br> | |
1682 | + <a id="sublist"></a><br><br><strong>8.55. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$sublist</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><start></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><end></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><list></span></strong></div>)</span></strong><br><br> | |
1617 | 1683 | The third operand of this mark is supposed to be a list. If it's not a list, an error message is generated.<br><br> |
1618 | 1684 | |
1619 | 1685 | If it is a list, the result is the sublist beginning at element number <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><start></span></strong></div> (included) and finishing at |
... | ... | @@ -1631,23 +1697,23 @@ otherwise we shall have one column too many. |
1631 | 1697 | |
1632 | 1698 | |
1633 | 1699 | |
1634 | - <a id="sup"></a><br><br><strong>8.55. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$sup</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> This mark raises <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> and renders it in a smaller size. For example, <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">x<strong><div style="display: inline; color: rgb(110,000,000)">$sup</div></strong>(<div style="display: inline; color: rgb(160,082,045)">1</div>)</span> | |
1700 | + <a id="sup"></a><br><br><strong>8.56. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$sup</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> This mark raises <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> and renders it in a smaller size. For example, <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">x<strong><div style="display: inline; color: rgb(110,000,000)">$sup</div></strong>(<div style="display: inline; color: rgb(160,082,045)">1</div>)</span> | |
1635 | 1701 | produces x<sup>1</sup>. |
1636 | 1702 | |
1637 | - <a id="tbgc"></a><br><br><strong>8.56. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$tbgc</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><color></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> This mark (<em>text background color</em>) shows <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> over a background of color | |
1703 | + <a id="tbgc"></a><br><br><strong>8.57. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$tbgc</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><color></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> This mark (<em>text background color</em>) shows <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> over a background of color | |
1638 | 1704 | <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><color></span></strong></div>. For example, <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$tbgc</div></strong>(<strong><div style="display: inline; color: rgb(110,000,000)">$_lavender</div></strong>)(Some text.)</span> |
1639 | 1705 | produces: <div style="display: inline; background-color: rgb(200,200,220); ">Some text.</div> |
1640 | 1706 | <br><br> |
1641 | 1707 | This is valuable for short texts. For long texts, <a rel="tag" href="#code"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$code</div></strong>(...)</span></a> may be more |
1642 | 1708 | appropriate. |
1643 | 1709 | |
1644 | - <a id="thisfilepath"></a><br><br><strong>8.57. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$thisfilepath</div></strong></span></div></strong><br><br> | |
1710 | + <a id="thisfilepath"></a><br><br><strong>8.58. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$thisfilepath</div></strong></span></strong><br><br> | |
1645 | 1711 | This marks provides the absolute path of the file it is written into.<br><br> |
1646 | 1712 | |
1647 | 1713 | <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$thisfilepath</div></strong></span> is <strong><div style="display: inline; color: rgb(220,0,0)">unsafe</div></strong> for the web, because it can reveal an absolute path of your web server. You should forbid |
1648 | 1714 | it. |
1649 | 1715 | |
1650 | - <a id="tlink"></a><br><br><strong>8.58. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$tlink</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><url></span></strong></div>)</span></div></strong><br><br> This mark creates an hypertext link targeting the <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><url></span></strong></div>, and shown as the clickable | |
1716 | + <a id="tlink"></a><br><br><strong>8.59. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$tlink</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><url></span></strong></div>)</span></strong><br><br> This mark creates an hypertext link targeting the <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><url></span></strong></div>, and shown as the clickable | |
1651 | 1717 | <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> (which can also be an image). For example, |
1652 | 1718 | <pre style="color: inherit; font-size: inherit; background-color: rgb(230,235,220); width: 600px;"><br><strong><div style="display: inline; color: rgb(110,000,000)">$tlink</div></strong>(Visit |
1653 | 1719 | <strong><div style="display: inline; color: rgb(110,000,000)">$big</div></strong>(<strong><div style="display: inline; color: rgb(110,000,000)">$blue</div></strong>(G)<strong><div style="display: inline; color: rgb(110,000,000)">$red</div></strong>(o)<strong><div style="display: inline; color: rgb(110,000,000)">$yellow</div></strong>(o)<strong><div style="display: inline; color: rgb(110,000,000)">$blue</div></strong>(g)<strong><div style="display: inline; color: rgb(110,000,000)">$green</div></strong>(l)<strong><div style="display: inline; color: rgb(110,000,000)">$red</div></strong>(e))) |
... | ... | @@ -1659,7 +1725,7 @@ otherwise we shall have one column too many. |
1659 | 1725 | |
1660 | 1726 | |
1661 | 1727 | |
1662 | - <a id="transpose"></a><br><br><strong>8.59. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$transpose</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><list of lists></span></strong></div>)</span></div></strong><br><br> | |
1728 | + <a id="transpose"></a><br><br><strong>8.60. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$transpose</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><list of lists></span></strong></div>)</span></strong><br><br> | |
1663 | 1729 | This mark <em>transposes</em> (somehow as in mathematics) a list of lists considered as a <em>matrix</em>. As an example, |
1664 | 1730 | we define: |
1665 | 1731 | <pre style="color: inherit; font-size: inherit; background-color: rgb(230,235,220); width: 600px;"><br><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong>(mylist)(<div style="display: inline; color: rgb(160,082,045)">0</div>)([[a,b],[c,d,e],[f,g]]) |
... | ... | @@ -1731,16 +1797,16 @@ Finally, we can get the wanted result by writing: |
1731 | 1797 | |
1732 | 1798 | |
1733 | 1799 | |
1734 | - <a id="true"></a><br><br><strong>8.60. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$true</div></strong></span></div></strong><br><br> This mark represents the truth value <em>true</em>. | |
1800 | + <a id="true"></a><br><br><strong>8.61. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$true</div></strong></span></strong><br><br> This mark represents the truth value <em>true</em>. | |
1735 | 1801 | |
1736 | - <a id="tt"></a><br><br><strong>8.61. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$tt</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> This mark renders <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> in fixed width (typewriter) font. It is similar to | |
1802 | + <a id="tt"></a><br><br><strong>8.62. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$tt</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> This mark renders <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> in fixed width (typewriter) font. It is similar to | |
1737 | 1803 | <a rel="tag" href="#code"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$code</div></strong>(...)</span></a>, with the difference that <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> is put inline instead of as a separate block. |
1738 | 1804 | For example, <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$red</div></strong>(<strong><div style="display: inline; color: rgb(110,000,000)">$tt</div></strong>(This)) is <strong><div style="display: inline; color: rgb(110,000,000)">$code</div></strong>(<div style="display: inline; color: rgb(160,082,045)">220</div>,<div style="display: inline; color: rgb(160,082,045)">220</div>,<div style="display: inline; color: rgb(160,082,045)">220</div>)(an) example.</span> |
1739 | 1805 | produces: <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;">This</span></div> is <pre style="color: inherit; font-size: inherit; background-color: rgb(220,220,220); width: 600px;">an</pre> example. |
1740 | 1806 | <br><br> |
1741 | 1807 | See also <a rel="tag" href="#code"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$code</div></strong>(...)</span></a> and <a rel="tag" href="#verbatim"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$verbatim</div></strong>(...)</span></a>. |
1742 | 1808 | |
1743 | - <a id="undefine"></a><br><br><strong>8.62. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$undefine</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)</span></div></strong><br><br> This mark allows to <em>undefine</em> a macro previously defined by <a rel="tag" href="#define"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span></a>. | |
1809 | + <a id="undefine"></a><br><br><strong>8.63. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$undefine</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div>)</span></strong><br><br> This mark allows to <em>undefine</em> a macro previously defined by <a rel="tag" href="#define"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$define</div></strong></span></a>. | |
1744 | 1810 | Actually, it removes only the last definition of the macro whose name is given, so that the previous definition of |
1745 | 1811 | this same mark name (if any) is working again. |
1746 | 1812 | If no macro with name <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><name></span></strong></div> exists, nothing happens. <br><br> |
... | ... | @@ -1779,7 +1845,7 @@ Finally, we can get the wanted result by writing: |
1779 | 1845 | <div style="display: inline; color: rgb(120,0,0)"><em>Text1</em> Text2</div><br> |
1780 | 1846 | |
1781 | 1847 | |
1782 | - <a id="verbatim"></a><br><br><strong>8.63. <div style="display: inline; color: rgb(255,000,000)"><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$verbatim</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></div></strong><br><br> This marks reproduces its content without any change with two exceptions. | |
1848 | + <a id="verbatim"></a><br><br><strong>8.64. <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$verbatim</div></strong>(<div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div>)</span></strong><br><br> This marks reproduces its content without any change with two exceptions. | |
1783 | 1849 | Indeed, <strong><div style="display: inline; color: rgb(180,0,0)">M</div><div style="display: inline; color: rgb(0,120,0)">A</div><div style="display: inline; color: rgb(80,80,80)">M</div><div style="display: inline; color: rgb(0,0,220)">L</div></strong> marks within |
1784 | 1850 | <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> are not interpreted, except the two marks <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$lpar</div></strong></span> and <span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><strong><div style="display: inline; color: rgb(110,000,000)">$rpar</div></strong></span>, which allows you |
1785 | 1851 | to produce unbalanced parentheses in <div style="display: inline; color: rgb(0,80,0)"><strong><span style="font-family:'Lucida Console', monospace; font-size:inherit; font-style: normal;"><text></span></strong></div> despite the fact that actual parentheses <em>must</em> be | ... | ... |