1
This is sgmltexi.info, produced by makeinfo version 4.3 from
4
INFO-DIR-SECTION Texinfo documentation system
6
* Sgmltexi: (sgmltexi). Sgmltexi
9
Sgmltexi is an SGML system (DTD and tools) to make Texinfo
10
documentation using SGML. The Sgmltexi DTD is designed to follow most
11
of the Texinfo philosofy, hiding the node managing.
13
Sgmltexi is to be intended as a simplified Texinfo using SGML; that
14
is: you cannot do all that it is possible with Texinfo alone. Sgmltexi
15
impose some restrictions, but maybe it can be simpler to write Texinfo
16
documentation this way.
18
Copyright (C) 2000-2003 Daniele Giacomini <daniele@swlibero.org>
20
Permission is granted to copy, distribute and/or modify this
21
document under the terms of the GNU Free Documentation License, Version
22
1.1 or any later version published by the Free Software Foundation;
23
with no Invariant Sections, with no Front-Cover Texts, and with no
24
Back-Cover Texts. A copy of the license is included in the section
25
entitled "GNU Free Documentation License".
28
File: sgmltexi.info, Node: Top, Next: Top, Prev: Top, Up: (dir)
33
Sgmltexi is an SGML system (DTD and tools) to make Texinfo
34
documentation using SGML. The Sgmltexi DTD is designed to follow most
35
of the Texinfo philosofy, hiding the node managing.
37
Sgmltexi is to be intended as a simplified Texinfo using SGML; that
38
is: you cannot do all that it is possible with Texinfo alone. Sgmltexi
39
impose some restrictions, but maybe it can be simpler to write Texinfo
40
documentation this way.
44
* intro:: What is Sgmltexi
46
* chap 1:: General structure for a Sgmltexi source file
47
* chap 2:: Sectioning, nodes and menus
48
* chap 3:: Block and in-line
49
* chap 4:: Index and cross reference
50
* chap 5:: Marking words and phrases
51
* chap 6:: Marking block of text
52
* chap 7:: List and tables
54
* chap 9:: Definitions
55
* chap 10:: Conditional and literal back-end code
56
* chap 11:: How to use the front-end
57
* chap 12:: How to install
58
* chap 13:: Dependencies
60
* chap 15:: Supported and unsupported Texinfo feature
62
* ISOnum:: Supported ISOnum entities: numeric and special graphic
63
* ISOpub:: Supported ISOpub entities: publishing
64
* ISOtech:: Supported ISOtech entities: general technical
65
* ISOlat1:: Supported ISOlat1 entities: added latin 1
66
* ISOlat2:: Supported ISOlat2 entities: added latin 2
67
* GNU FDL:: GNU Free Documentation License
72
File: sgmltexi.info, Node: intro, Next: chap 1, Prev: Top, Up: Top
74
Introduction to Sgmltexi
75
************************
77
Sgmltexi is a DTD with tools to get Texinfo. The idea is to have
78
another way to write Texinfo documents, intended to be a little bit
79
easier, but also with some limitations.
81
Sgmltexi manages Texinfo nodes automatically, generating a an Info
82
menu at the Top node, and other menus if required. The node names may be
83
generated automatically with string like "chap 1", "app A" and so on, or
84
can be inserted manually, with different names.
86
The Sgmltexi document has a precise scheme: there may be one or more
87
introductions, there is a body (made probably of chapters), there may be
88
appendixes and indexes. The body is organized into chapters, that may be
89
grouped into parts and also tomes. This way, also big documents are
92
Sgmltexi is a work derived form ALtools and Alml, from the same
93
author. These are the SGML typesetting systems made for the need of an
94
Italian documentation project:
95
Appunti di informatica libera (http://a2.swlibero.org/).
100
At the moment, the main distribution source for Sgmltexi is the
103
`http://a2.swlibero.org/~daniele/software/sgmltexi/'
105
What's new about Sgmltexi
106
=========================
108
The new Sgmltexi is simplified: the derivation system was removed,
109
and the Sgmltexi source files should be "expanded" to avoid the
110
horizontal tabs presence. The expansion is needed when reproducing
111
literal text, otherwise, strings like `\011' will appear, instead of
114
This modification will reduce the pre-elaboration time, and will
115
avoid also some possible troubles with SGML files included inside the
118
Please consider that this one might be the last release for
119
Sgmltexi, because the Texinfo development is taking different SGML/XML
124
File: sgmltexi.info, Node: chap 1, Next: chap 2, Prev: intro, Up: Top
126
General structure for a Sgmltexi source file
127
********************************************
129
The typical Sgmltexi source start like this:
131
<!DOCTYPE Sgmltexi PUBLIC "-//GNU//DTD Sgmltexi//EN">
133
It can be useful to define also some internal entities, like this:
135
<!DOCTYPE Sgmltexi PUBLIC "-//GNU//DTD Sgmltexi//EN"
137
<!ENTITY EDITION "2003.10.11" >
142
All the document is enclosed inside the element `sgmltexi'. Inside,
143
there must be an `head' element, there may be an `intro' element, there
144
must be a `body' element, and there may be an `appendix' element. The
145
space after the `appendix' element may be occupied by some indexes
146
(will be shown later).
163
The element `sgmltexi' has three possible attribute: `lang',
164
`charset' and `spacing'.
167
This is a two letter code defining the text language. The use of
168
this attribute generates a `@documentlanguage' command.
172
This is the input character set, like it can be done with the
173
Texinfo `@documentencoding' command. It is obscured by the
174
`--input-encoding' option, that take precedence and generate a
175
pure ISO 646 Texinfo output.
179
This is a deprecated feature that help controlling the spacing
180
after sentences. It is deprecated because this action should be
181
controlled with the language specific configuration. This attribute
182
is here only as a last resort. Valid values are: `normal',
183
`french' and `uniform'. Selecting `french' or `uniform' it is
184
introduced the command `@frenchspacing'.
187
<sgmltexi lang="it" charset="ISO-8859-1" spacing="uniform">
193
* sect 1.3:: `titlepage'
194
* sect 1.4:: Table of contents
198
* sect 1.8:: `appendix'
202
File: sgmltexi.info, Node: sect 1.1, Next: sect 1.2, Up: chap 1
207
The `head' element is the more complicated. It is important to
208
define many informations about the document. Here it is the example
213
<setfilename content="sgmltexi.info">
214
<settitle content="Sgmltexi">
215
<setchapternewpage content="odd">
217
<syncodeindex from="sg" to="cp">
218
<syncodeindex from="vr" to="cp">
219
<infodir cat="Texinfo documentation system">
222
<title>Sgmltexi</title>
223
<subtitle>An alternative way to write Texinfo
224
documentation</subtitle>
225
<subtitle>This edition is for Sgmltexi
226
&EDITION; for Texinfo 4</subtitle>
228
<p>Sgmltexi is an SGML system (DTD and tools) to
229
make Texinfo documentation using SGML...</p>
232
<author>Daniele Giacomini
233
<daniele@swlibero.org></author>
235
<copyright>Copyright © 2000-2003 Daniele Giacomini
236
<daniele@swlibero.org></copyright>
238
<p>Published by...</p>
241
<p>Permission is granted to make and distribute
242
verbatim copies of this manual...</p>
246
<p>Cover art by ...</p>
254
This is not all necessary, but it is a good starting point. Looking
255
at this example, can be recognized some important elements: `admin',
256
for administrative informations, and `titlepage'.
259
File: sgmltexi.info, Node: sect 1.2, Next: sect 1.3, Prev: sect 1.1, Up: chap 1
264
The `admin' element is used to enclose some empty elements that
265
describe informations that should go inside the Texinfo header. The
266
order for these elements is not important, as Texinfo source will be
267
build in the right one. It follows a summary table and then the detailed
270
*Element* *Attribute* *Content* *Description or Texinfo equivalence*
271
setfilename empty `@setfilename'
272
content Info file name
273
settitle empty `@settitle'
275
setchapternewpage empty `@setchapternewpage'
276
content on, off, odd tell how to separate chapters
277
footnotestyle empty `@footnotestyle'
278
content end, separate where to place footnotes
279
headings empty `@headings'
280
content on, off, how headings should work
285
defindex empty `@defindex'
286
name define a two letter index name
287
defcodeindex empty `@defcodeindex'
288
name define a two letter index name with
290
synindex empty `@synindex'
291
from source index, as a two letters name
292
to destination index, as a two letters
294
syncodeindex empty `@syncodeindex'
295
from source index, as a two letters name
296
to destination index, with `@code'
298
infodir empty or Info directory information
301
cat The `@dircategory' argument
303
- Element: setfilename
304
This element is empty and is used to define the file name for
305
Info, with the Texinfo command `@setfilename'.
308
This attribute is used to assign the file name.
311
Use this element like this, only with the opening tag:
313
<setfilename content="sgmltexi.info">
317
This element is empty and is used to define the title for Info,
318
with the Texinfo command `@settitle'.
321
This attribute is used to assign the title.
324
Use this element like this, only with the opening tag:
326
<settitle content="Sgmltexi">
329
- Element: setchapternewpage
330
This element is empty and is used to define the Texinfo command
331
`@setchapternewpage'.
334
This attribute is used to assign the desired value, that can
335
be: `on', `off' or `odd'.
338
Use this element like this, only with the opening tag:
340
<setchapternewpage content="on">
342
This element is not essential.
345
- Element: footnotestyle
346
This element is empty and is used to define the Texinfo command
350
This attribute is used to assign the desired value, that can
351
be: `end' or `separate'.
354
Use this element like this, only with the opening tag:
356
<footnotestyle content="end">
358
This element is not essential.
362
This element is empty and is used to define the Texinfo command
366
This attribute is used to assign the desired value, that can
367
be: `on', `off', `single', `double', `singleafter',
371
Use this element like this, only with the opening tag:
373
<headings content="double">
375
This element is not essential.
379
- Element: defcodeindex
380
These two empty elements are used to define the Texinfo commands
381
`@defindex' and `@defcodeindex'.
384
This attribute is used to define the name of the new user
385
index that is to be created. The name must be a two letter
389
Use these elements like this, only with the opening tag:
393
<defcodeindex name="xx">
395
These elements are used only as needed, for as many user defined
396
index that are to be created.
400
- Element: syncodeindex
401
These two elements are used to copy one index into another, like
402
the command `@synindex' and `@syncodeindex' do with Texinfo.
406
The first attribute is used to define the index to copy; the
407
second is the index that receive the first one.
410
Use this element like this, only with the opening tag:
412
<syncodeindex from="fn" to="cp">
414
This element is used only as needed, for as many user defined
415
index that are to be created.
419
This element is used to define the Info directory menu item, when
420
the file is installed with `install-info'.
423
This attribute defines the category, like the Texinfo command
427
This element can be used empty, like this:
429
<infodir cat="Texinfo documentation system">
431
But this element can be used also more explicitly, like this:
433
<infodir cat="Texinfo documentation system">
434
* Sgmltexi: (sgmltexi). SGML for Texinfo.
435
* Sgmltexi install: (sgmltexi)install. Install Sgmltexi.
438
This element is used only if needed. If the element is use empty,
439
only one line inside the `@direntry' environment is inserted, with
440
information already given.
444
File: sgmltexi.info, Node: sect 1.3, Next: sect 1.4, Prev: sect 1.2, Up: chap 1
449
The `titlepage' element is used to enclose all informations that go
450
on the first pages of the document. The order of elements is important.
451
It follows a summary table and then the detailed description.
453
*Element* *Attribute* *Content* *Description or Texinfo equivalence*
454
title IN-LINE `@title'
455
subtitle IN-LINE `@subtitle'
456
abstract BLOCK abstract of the document
457
author IN-LINE `@author'
458
frontcovertext BLOCK text shown on the printed front
460
tpextra BLOCK extra text shown inside title pages
461
legal copyright, legal information
465
legal BLOCK simplified legal information
466
copyright One copyright owner
467
publishnote BLOCK publishing note that should appear
469
license BLOCK license or reference to the
470
license, or other conditions
471
related to the document
472
coverart BLOCK coverart note that should appear
474
dedications BLOCK dedications for a book
477
This element contains the document title; the title for the
478
"printed" document. It is equivalent to `@title' for Texinfo. Use
479
this element like this:
481
<title>Sgmltexi</title>
485
This element can be used to define one or more subtitles. It is
486
equivalent to `@subtitle' for Texinfo. Use this element like this,
489
<subtitle>An alternative way to write Texinfo documentation</subtitle>
491
This element is used only as needed, without limitations.
495
This element can be used to define a brief description for the
496
document. The content must be block text, like the element `p'.
497
This text is used for Info typesetting, inside the Top node. Use
498
this element like this:
502
<p>Sgmltexi is an SGML system (DTD and tools) to
503
make Texinfo documentation using SGML.
504
The Sgmltexi DTD is designed to...</p>
510
This element can be used at most one time.
514
This element can be used to define one of the document authors.
515
This element is equivalent to the Texinfo command `@author'. Use
516
this element like this:
518
<author>Tizio Tizi <tizio@dinkel.brot.dg></author>
519
<author>Caio Cai <caio@dinkel.brot.dg></author>
521
This element must be used at least one time.
524
- Element: frontcovertext
525
This element can be used to include one or more block of text,
526
that should appear on the front cover, for the printed edition.
527
Use this element like this:
533
<p><image name="good-thing" height="5cm"></p>
539
This element can be used to include one or more block of text,
540
that should appear on different places: before the legal
541
informations; after legal information; after the dedications. The
542
name `tpextra' stand for "title page extra" text. Use this element
547
<p><strong>Pinco Pallino</strong> is a very old man...</p>
549
<p><strong>Tizio Tizi</strong> studied telecommunication
559
<p>The front cover picture is made by Sempronio.</p>
568
<p>The software is very important; true free software is much more
573
The use of this element is optional, but notice that the last one
574
can be used only if there is the dedications element before.
578
This element is used to enclose other elements describing
579
informations about copyright, license and publication.
582
This element contains a line of text describing the copyright
583
owner for the document.
586
- Element: publishnote
587
This optional element, contains block of text that show
588
information about the printed publication.
592
This element contains block of text to show the license
593
conditions for the document.
597
This optional element, contains block of text that show who
598
is responsible for the cover design.
601
Use this element like this:
604
<copyright>Copyright © 2003 Free Software Foundation,
607
<p>Published by...</p>
610
<p>Permission is granted to copy, distribute and/or
611
modify this document under the terms of the GNU Free
612
Documentation License, Version 1.1 or any later version
613
published by the Free Software Foundation; with no
614
Invariant Sections, with no Front-Cover Texts, and with
615
no Back-Cover Texts. A copy of the license is included
616
in the section entitled "GNU Free Documentation
620
<p>Cover art by ...</p>
624
This element must be used at least one time.
626
Actually, this element can have non special internal structure,
627
enclosing simply other block elements. This way, if the standard
628
structure described above is not good for the author intention, it
629
may be used also like this:
632
<p>Copyright © 2003 Free Software Foundation, Inc.</p>
634
<p>Published by...</p>
636
<p>Permission is granted to copy, distribute and/or modify this
637
document under the terms of the GNU Free Documentation License,
638
Version 1.1 or any later version published by the Free Software
639
Foundation; with no Invariant Sections, with no Front-Cover Texts,
640
and with no Back-Cover Texts. A copy of the license is included in
641
the section entitled "GNU Free Documentation License".</p>
643
<p>Cover art by ...</p>
647
- Element: dedications
648
This optional element, contains block of text that show one or
653
File: sgmltexi.info, Node: sect 1.4, Next: sect 1.5, Prev: sect 1.3, Up: chap 1
658
After the `titlepage', there is the place for one or more table of
659
contents. To obtain the insertion of these table of contents can be
660
used one of the following empty element.
663
The standard table of contents, like the command `@contents' for
667
- Element: shortcontents
668
- Element: summarycontents
669
A reduced table of contents, like the command `@shortcontents' and
670
`@summarycontents' for Texinfo.
674
File: sgmltexi.info, Node: sect 1.5, Next: sect 1.6, Prev: sect 1.4, Up: chap 1
679
After the contents elements, may appear the `menu' element. This
680
element ask explicitly for the correspondent Texinfo `@menu' command.
681
At this level, the menu is inserted automatically, also without
682
inserting this element. But the `menu' element may be used to define a
683
specific (manual) menu for texinfo. See the following example:
686
* introduction :: Introduction
687
* structure:: General structure for a Sgmltexi source file
688
* how to use:: How to use the front-end
689
* install:: How to install
690
* GFDL:: GNU Free Documentation License
694
The `menu' may be used also at chapter level and below, and there
695
can be also empty: in this case, an automatic Texinfo menu will be
699
File: sgmltexi.info, Node: sect 1.6, Next: sect 1.7, Prev: sect 1.5, Up: chap 1
704
After the `head' element there may be one `intro' element. This is
705
just a way to define a group of chapter that have no numbering.
706
Chapters inside this element are delimited in the same way as for the
707
`body' and `appendix' elements.
710
<h1>Introduction to Sgmltexi</h1>
712
<p>Sgmltexi is a DTD with tools to get Texinfo...</p>
714
<p>Sgmltexi manage Texinfo nodes automatically,...</p>
719
File: sgmltexi.info, Node: sect 1.7, Next: sect 1.8, Prev: sect 1.6, Up: chap 1
724
After the `head' and `intro' elements, there must be one `body'
725
element. This is the body of the document.
727
The body may be divided into chapters, or parts, or tomes, depending
728
on the documentation project that is started. Tomes are delimited with
729
the element `tomeheading', that contains the tome title; parts are
730
delimited using the element `partheading', with the same meaning.
732
Chapters and lower sectioning are a little anonymous, like HTML:
733
`h1', `h2', `h3' and `h4'. This is done that way because introduction,
734
body and appendix may have the same method for text sectioning.
737
<partheader>Networking</partheader>
739
<h1>IP protocol history</h1>
741
<p>Bla bla bla...</p>
743
<p>Bla bla bla...</p>
745
<h2>ISO/OSI model</h2>
747
<p>Bla bla bla...</p>
749
<p>Bla bla bla...</p>
751
<h1>IPv4 and IPv6</h1>
753
<p>Bla bla bla...</p>
759
Every sectioning element, from tome to last sub-subsection, have an
760
optional attribute: `id'. This attribute may be used to define an
761
identification string that can be the target for cross references.
763
<h1 id="ip history">IP protocol history</h1>
765
Note that due to Texinfo design limitations, cross references labels
766
cannot contain the comma.
770
File: sgmltexi.info, Node: sect 1.8, Next: sect 1.9, Prev: sect 1.7, Up: chap 1
775
After the body, it may be placed the `appendix'. This one is used to
776
delimit a group of chapters that must be intended as appendixes. This
777
way, also the appendix is organized in chapter delimited with `h1'
778
heading, and smaller sections.
781
File: sgmltexi.info, Node: sect 1.9, Prev: sect 1.8, Up: chap 1
786
After the body and after the optional appendix, can be placed one or
787
more analytic index. This is obtained with a special heading element:
788
`indexheading'. This can be used only in conjunction with `printindex'
789
to define the type of index to include. The example should be clear
793
<indexheading>Index of functions</indexheading>
794
<printindex name="fn">
795
<indexheading>Concept index</indexheading>
796
<printindex name="cp">
800
As can be seen from the example, `printindex' has an attribute,
801
`name', that tells the type of index to include. In fact, this way is
802
generated the Texinfo command `@printindex'.
805
File: sgmltexi.info, Node: chap 2, Next: chap 3, Prev: chap 1, Up: Top
807
Sectioning, nodes and menus
808
***************************
810
To write good documentation with Texinfo, it is required to have
811
control on nodes and menus. With Sgmltexi, nodes and menus can be
812
forgotten, but the Info result may suffer for this choice. Anyway, with
813
Sgmltexi it is possible to choose different levels of manual/automatic
816
Headings elements can incorporate some more attributes: `node' and
817
`menu'. The first one define the node name, overriding any automatic
818
determination; the second define the node description on the menu (the
819
automatical choice is otherwise the title).
821
<h1 id="ip history" node="history" menu="History of IP protocol">
822
IP protocol history</h1>
824
This will generate on the Info menu, the following line:
826
* history:: History of IP protocol
828
The `node' and `menu' attribute may be used independently: the
829
attribute that is not used, will be determined automatically.
831
Having access to nodes, it is possible to use them for cross
832
reference, without the need for the `id' attribute.
834
Sgmltexi creates automatically the Top node menu. As already
835
explained before (*note top node menu::), the menu can be explicitly
836
defined. In this way, all nodes and descriptions must be made manually.
838
Inserting the `menu' element at the bottom of a chapter, or at a
839
lower section, will ask an insertion of a lower Info menu. See the
842
<h1>IP protocol history</h1>
844
<p>Bla bla bla...</p>
846
<p>Bla bla bla...</p>
850
<h2>ISO/OSI model</h2>
852
<p>Bla bla bla...</p>
854
<p>Bla bla bla...</p>
856
<h2>More information</h2>
858
<p>Bla bla bla...</p>
862
The example shows the insertion of an automatic Info menu before
863
`h2' sections. This menu may otherwise be described completely, like
867
* IP layer:: IP ISO/OSI layer model
868
* more on IP:: More details on IP
871
When the menu is described this way, node names must be the same as
872
the one used with the heading elements. That is: when writing the menu,
873
also nodes must be exactly declared, like this:
875
<h1>IP protocol history</h1>
877
<p>Bla bla bla...</p>
879
<p>Bla bla bla...</p>
882
* IP layer:: IP ISO/OSI layer model
883
* more on IP:: More details on IP
886
<h2 node="IP layer">ISO/OSI model</h2>
888
<p>Bla bla bla...</p>
890
<p>Bla bla bla...</p>
892
<h2 node="more on IP">More information</h2>
894
<p>Bla bla bla...</p>
898
It is evident that a `menu' attribute (like `<h2 menu="Much more
899
information">') has no effect in this case.
901
*Element* *Attribute* *Content* *Description or Texinfo equivalence*
902
tomeheading IN-LINE title of a tome
903
partheading title of a part
904
h1 IN-LINE title of a chapter, introduction or
906
h2 IN-LINE title of a section
907
h3 IN-LINE title of a subsection
908
h4 IN-LINE title of a sub-subsection
909
indexheading IN-LINE title of an analytic index
911
menu Info node description
913
prev Previous node name
915
type numbered, type of section, for `h1' to `h4'
919
Unnumbered sections and simple headings
920
=======================================
922
Elements `h1', `h2', `h3' and `h4' may have an additional attribute:
923
`type'. The keywords `numbered', `unnumbered' and `heading' may be
924
assigned. `numbered' is the default value; it means that the title will
925
be numbered (with numbers if inside `body', with letters if inside
926
`appendix'). Assigning `unnumbered', the titles are not numbered.
927
Assigning `heading', the titles are not numbered and not annotated
928
inside the table of context.
930
<h1 type="unnumbered">Acknowledgements</h1>
933
Inside the `intro' elements, titles cannot be numbered: it is
937
File: sgmltexi.info, Node: chap 3, Next: chap 4, Prev: chap 2, Up: Top
942
Sgmltexi has a DTD where most of the elements are divided into two
943
categories, block and in-line, with the help of two parameter entities:
944
`block' and `inline' (SGML macro are `%block;' and `%inline;').
946
A block is something like a paragraph, a list, a table; an in-line
947
is text, text emphatisation, anchors, cross references, and other
948
things that stay inside a text.
950
Usually, but not necessarily, an in-line element contains text and
951
possibly other in-line elements; but a block element may be made to
952
contain in-line or other blocks. The Sgmltexi DTD don't consider the
953
possibility of block elements that may contain either block or in-line.
954
These kinds of contents are known as "flow" (this name is used inside
955
the HTML DTD) and are rarely useful.
957
Some block elements, like `example', may contain block elements or a
958
single `pre' element (a special block element not classified as part of
959
the `%block;' macro). The `pre' element can contain only in-line that
960
is preformatted, that is: it maintains line breaks.
962
The two basic block element are shown in the following table:
964
*Element* *Attribute* *Content* *Description or Texinfo equivalence*
965
p IN-LINE paragraph, or simple block of text
966
indent `on', `off' first line indentation; default is
968
center IN-LINE `@center'
971
File: sgmltexi.info, Node: chap 4, Next: chap 5, Prev: chap 3, Up: Top
973
Index and cross reference
974
*************************
976
There are different kind of insertions for making indexes and cross
977
references, that reproduce equivalent Texinfo commands.
982
Index entries are inserted with a group of empty elements: `cindex',
983
`findex', `vindex', `kindex', `pindex', `tindex' and `userindex'. All
984
these elements have the same attribute, `entry', that define the item
985
text to be inserted. The `userindex' has an additional attribute, to
986
define the user index name (that should be made of two letters).
988
These elements are a kind of block that may be inserted just after
989
any sectioning title, like this:
991
<h1>IP protocol history</h1>
992
<cindex entry="IP protocol">
993
<cindex entry="history">
995
<p>Bla bla bla...</p>
997
The following table resumes the meaning for so many different index
1000
*Element* *Attribute* *Content* *Description or Texinfo equivalence*
1001
cindex entry empty concept index item
1002
findex entry empty function index item
1003
vindex entry empty variable index item
1004
kindex entry empty keystroke index item
1005
pindex entry empty program index item
1006
tindex entry empty data type index item
1007
userindex entry empty user defined index item
1008
name user defined index name (two
1010
printindex name print the named index (two letters)
1012
The index is inserted with the element `printindex', already
1013
described. Standard index names are listed in the following table.
1015
*Index name* *Description*
1026
Cross reference elements are all in-line empty elements. All
1027
information is given via attributes. As all cross reference elements are
1028
implementations of equivalent Texinfo commands, there is only the
1029
following table as description. Every attribute description follow its
1030
own element. Please note that not all attributes are necessary.
1032
*Element* *Attribute* *Content* *Description or Texinfo equivalence*
1033
anchor empty `@anchor'
1034
id anchor identity string
1036
id node or anchor name
1037
name cross reference name
1038
title title or topic
1040
ptitle printed manual title
1042
id node or anchor name
1043
name cross reference name
1044
title title or topic
1046
ptitle printed manual title
1047
pxref empty `@pxref'
1048
id node or anchor name
1049
name cross reference name
1050
title title or topic
1052
ptitle printed manual title
1053
inforef empty `@inforef'
1054
id node or anchor name
1055
name cross reference name
1059
name title or description
1060
replace replacement text
1061
email empty `@email'
1062
email electronic mail address
1063
name title or description
1067
<p>Sgmltexi creates automatically the Top node menu. As already
1068
explained before (<pxref id="top node menu">), the menu can be
1072
File: sgmltexi.info, Node: chap 5, Next: chap 6, Prev: chap 4, Up: Top
1074
Marking words and phrases
1075
*************************
1077
A lot of in-line elements are used to mark words or phrases.
1078
Actually, the DTD is very permissive, so that every element of these can
1079
contain any in-line element. It is so only to assure compatibility with
1080
Texinfo, but may change in the future. The following table list these
1081
elements, included `kbdinputstyle', used to select the style for the
1084
*Element* *Attribute* *Content* *Description or Texinfo equivalence*
1085
code IN-LINE `@code'
1087
kbdinputstyle empty `@kbdinputstyle'
1088
style `code', how to show keyboard input style;
1089
`example', default is `distinct'
1092
samp IN-LINE `@samp'
1095
file IN-LINE `@file'
1096
command IN-LINE `@command'
1097
option IN-LINE `@option'
1099
cite IN-LINE `@cite'
1100
acronym IN-LINE `@acronym'
1102
emph IN-LINE `@emph'
1103
strong IN-LINE `@strong'
1108
typewriter IN-LINE `@t'
1112
<p><strong>Pinco Pallino</strong> is a very old man...</p>
1114
<p><strong>Tizio Tizi</strong> studied telecommunication
1118
File: sgmltexi.info, Node: chap 6, Next: chap 7, Prev: chap 5, Up: Top
1120
Marking block of text
1121
*********************
1123
Some block elements are used to mark other block of text or special
1124
kind of in-line text. The DTD is very permissive, to assure maximum
1125
compatibility with Texinfo, but this may change in the future. The
1126
following table list these elements, included the special element
1127
`pre', used to insert in-line preformatted text, and `exdent', used
1128
inside `pre' to obtain an exdented line.
1130
*Element* *Attribute* *Content* *Description or Texinfo equivalence*
1131
exdent IN-LINE `@exdent'
1132
pre IN-LINE preformatted text
1133
quotation BLOCK `@quotation'
1134
display BLOCK or `pre' `@display'
1135
smalldisplay BLOCK or `pre' `@smalldisplay'
1136
example BLOCK or `pre' `@example'
1137
smallexample BLOCK or `pre' `@smallexample'
1138
flushleft IN-LINE `@flushleft'
1139
flushright IN-LINE `@flushright'
1140
lisp BLOCK or `pre' `@lisp'
1141
smalllisp BLOCK or `pre' `@smalllisp'
1142
cartouche BLOCK or `pre' `@cartouche'
1143
format BLOCK or `pre' `@format'
1144
smallformat BLOCK or `pre' `@smallformat'
1145
texinfo literal embedded literal Texinfo code
1151
<p>Hello everybody</p>
1152
<p>Hello to the world</p>
1155
In this case the `example' element contains preformatted text
1156
(please not the use of two SGML entities, `lt' and `gt'):
1161
while ($line = <STDIN>)
1164
print ("$line\r\n");
1169
If it is necessary to include a preformatted literal text, do like
1170
this (please note that there is no need to hide `<' and `>'):
1176
while ($line = <STDIN>)
1179
print ("$line\r\n");
1186
File: sgmltexi.info, Node: chap 7, Next: chap 8, Prev: chap 6, Up: Top
1191
List and tables are block elements. The following table list the
1192
elements used to implement list and tables.
1194
*Element* *Attribute* *Content* *Description or Texinfo equivalence*
1195
itemize `item', `@itemize'
1197
mark mark before items; default is
1199
enumerate `item', `@enumerate'
1201
start starting number
1202
table `item', `@table'
1204
emphasis `asis', emphasis for the descriptive item
1209
vtable `item', `@vtable'
1211
emphasis `asis', emphasis for the descriptive
1212
`code', variable item
1215
ftable `item', `@ftable'
1217
emphasis `asis', emphasis for the descriptive
1218
`code', function item
1221
item IN-LINE or `@item'
1223
itemx IN-LINE or `@itemx'
1225
multitable `columnfraction'`@multitable'
1229
columnfraction .N column fraction, where ".N" is the
1230
0.N fraction of the horizontal space
1231
columnexample pure text column fraction, where the inserted
1232
text gives the example of the
1234
raw IN-LINE, `tab' row of the table
1235
tab empty column separation
1237
It follows some examples; first an unnumbered list:
1257
Here is a numbered list:
1259
<enumerate start="3">
1277
Here is a descriptive list:
1279
<table emphasis="code">
1282
<p>List directory contents.</p>
1284
<p>Change directory.</p>
1291
List directory contents.
1297
File: sgmltexi.info, Node: chap 8, Next: chap 9, Prev: chap 7, Up: Top
1302
Here are described some mixed elements that have not found a better
1303
place. There are two types of such insertions: in-line and block
1304
insertions. The first of the following tables list the in-line elements
1305
and the second the block elements.
1307
*Element* *Attribute* *Content* *Description or Texinfo equivalence*
1312
footnote IN-LINE `@footnote'
1313
image empty `@image'
1314
name file name to be inserted (without
1318
whole IN-LINE `@w' (preventing line break)
1319
br empty `@*' (line break)
1320
dh empty `@-' (discretionary hyphen)
1321
hyphenation empty `@hyphenation'
1322
words list of hy-phen-a-ted words
1324
*Element* *Attribute* *Content* *Description or Texinfo equivalence*
1328
group BLOCK `@group'
1330
mils thousandths of inch