File: texi2html.texi

package info (click to toggle)
texi2html 1.64-cvs20010402-2
  • links: PTS
  • area: main
  • in suites: woody
  • size: 712 kB
  • ctags: 87
  • sloc: perl: 3,277; sh: 391; makefile: 107
file content (434 lines) | stat: -rw-r--r-- 15,071 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
\input texinfo @c -*-texinfo-*-
@c
@c This is the ``Texinfo to HTML Converter'' manual which
@c which is part of the ``texi2html'' distribution.
@c
@c License:
@c    Copyright (C) 1999, 2000  Free Software Foundation, Inc.
@c
@c    This program is free software; you can redistribute it
@c    and/or modify it under the terms of the GNU General Public
@c    License as published by the Free Software Foundation;
@c    either version 2 of the License, or (at your option) any
@c    later version.
@c
@c    This program is distributed in the hope that it will be
@c    useful, but WITHOUT ANY WARRANTY; without even the implied
@c    warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
@c    PURPOSE.  See the GNU General Public License for more
@c    details.
@c
@c    You should have received a copy of the GNU General
@c    Public License along with this program; if not, write to
@c    the Free Software Foundation, Inc., 59 Temple Place, Suite
@c    330, Boston, MA  02111-1307  USA
@c
@c
@c Revisions:
@c $Id: texi2html.texi,v 1.1 2000/08/14 18:10:24 texi2htm Exp $
@c
@c Author:
@c   Karl Heinz Marbaise <khmarbaise@gmx.de>
@c
@c --------------------------------------------------------
@c
@c Currently most of the material is copied out of
@c texi2html.init file. It's just a start point.
@c In other words this is a draft manual ;-)
@c
@setfilename texi2html.info
@c --------------------------------------------------------
@c Edition and last update date of the manual which might
@c differ to the scripts last update date etc.
@set MANUAL_UPD 14. August 2000
@set MANUAL_ED 0.21
@c
@set MANUAL_AUTHOR Karl Heinz Marbaise
@set MANUAL_AUTHOR_EMAIL khmarbaise@@gmx.de
@c
@c Get the version of the script itself through
@c configure/autoconf etc.
@c version.texi is automatically generated through
@c configure/autoconf.
@include version.texi
@c --------------------------------------------------------
@c Index for command line options
@defcodeindex op
@c --------------------------------------------------------
@settitle Texinfo to HTML
@c @setchapternewpage on
@setchapternewpage odd
@footnotestyle separate
@ifset shorttitlepage-enabled
@shorttitlepage Texinfo to HTML
@end ifset
@c --------------------------------------------------------
@c support old style Info Dir entries.
@ifset OLDSTYLE-INFO-DIR
@ifinfo
@format
START-INFO-DIR-ENTRY
* Texi2html: (texi2html).  Texinfo 2 HTML Converter (texi2html).
END-INFO-DIR-ENTRY
@end format
@end ifinfo
@end ifset
@c --------------------------------------------------------
@c Informations for install-info.
@c I think the conversion script should be found
@c where the documentation system lives.
@c What do you think?
@dircategory Texinfo documentation system
@direntry
* Texi2html: (texi2html).  Texinfo to HTML Converter.
@end direntry
@c --------------------------------------------------------
@ifinfo
This file documents the texi2html script which converts
Texinfo into HTML.

Copyright (C) 1999, 2000  Free Software Foundation, Inc.

This edition is for texi2html version @value{VERSION},
@value{UPDATED}.

Permission is granted to make and distribute verbatim
copies of this manual provided the copyright notice and
this permission notice are preserved on all copies.

@ignore
Permission is granted to process this file through TeX and
print the results, provided the printed document carries
copying permission notice identical to this one except for
the removal of this paragraph (this paragraph not being
relevant to the printed manual).

@end ignore
Permission is granted to copy and distribute modified
versions of this manual under the conditions for verbatim
copying, provided that the entire resulting derived work is
distributed under the terms of a permission notice
identical to this one.

Permission is granted to copy and distribute translations
of this manual into another language, under the above
conditions for modified versions, except that this
permission notice may be stated in a translation approved
by the Free Software Foundation.
@end ifinfo
@c --------------------------------------------------------
@titlepage
@title Texinfo to HTML Converter
@subtitle Manual Edition @value{MANUAL_ED}
@subtitle Last Update: @value{MANUAL_UPD}
@subtitle for Version @value{VERSION} of @command{texi2html} script.
@author Lionel Cons
@author Karl Berry
@author Olaf Bachmann
@author and many others.
@author Karl Heinz Marbaise (manual)
@page
@vskip 0pt plus 1filll
Copyright @copyright{} Lionel Cons@*
Copyright @copyright{} Karl Berry@*
Copyright @copyright{} Olaf Bachmann@*
Copyright @copyright{} and many others.@*
Copyright @copyright{} Karl Heinz Marbaise (manual)@*

Permission is granted to make and distribute verbatim
copies of this manual provided the copyright notice and
this permission notice are preserved on all copies.

Permission is granted to copy and distribute modified
versions of this manual under the conditions for verbatim
copying, provided that the entire resulting derived work is
distributed under the terms of a permission notice
identical to this one.

Permission is granted to copy and distribute translations
of this manual into another language, under the above
conditions for modified versions, except that this
permission notice may be stated in a translation approved
by the Free Software Foundation.
@sp 2
Cover art by Etienne Suvasa.
@end titlepage
@c ========================================================
@summarycontents
@contents
@c
@ifnottex
@node Top
@top Texi2html
@c @page
@c ========================================================
@c @node Top, Overview, (dir), (dir)
@c @top
@c @chapter About
This Manual (Edition @value{MANUAL_ED}, last updated at
@value{MANUAL_UPD}) describes the @command{texi2html} Perl
script which converters
@c The following construct allows me to get
@c real URL link in HTML and working refs in
@c info.
@ifhtml
@uref{http://www.texinfo.org,Texinfo}
@end ifhtml
@ifnothtml
Texinfo (@pxref{Top,,Texinfo,Texinfo})
@end ifnothtml
into @acronym{HTML}.

@c @inforef{Top, Top, Texinfo} does not work yet ;-)
@c here we should paste a @inforef or @xref on the
@c Texinfo manual.

Please send bug reports about this manual to Karl Heinz
Marbaise @email{khmarbaise@@gmx.de}. Please state exact
version/edition of the manual (can be found at start of
Texinfo source file; use the entry Id under Revisions).

Please note:
@example
This manual is currently under
construction and of course incomplete ;-)
@end example

@c The following line within a menu does not work!
@c * Why texi2html and not Makeinfo?:whytexi2html.      Why texi2html and not makeinfo?.
@ifinfo
@menu
@c * MenuName:NodeName.       Description.
* Overview::                  Overview about @command{texi2html}.
* Installation::              Installation process.
* Customizing::               Customizing.
* CustomizingExpand::         Customizing what gets expanded.
* CustomizingPage::           Customizing page layout.
* CustHTML::                  Customizing HTML.
* InitFile::                  Initialization files.
@c * ExtFile::                   Extension file.
* IFOs::                      Initialization file options
* Options::                   Command Line Options.

* Reference::                 Reference Manual of functions.

@detailmenu

/// The Detailed Node Listing ///

--- Overview ---

* whytexi2html::              Why @file{texi2html} and
                                not @file{makeinfo}?.


--- Installation process ---

* Installation::             Installation process.


--- Initialization file options ---

* IFOnumber::                 Number sectioning.
* IFOmenu::                   Avoid menu redundancy.
* IFOCenterImage::            Center Image.
* IFOExampleIndentCell::      Example Indent Cell.
* IFOSampleIndentCell::       Sample Indent Cell.
* IFOSmallFontSize::          Small Font Size.
* IFOTopHeading::             Top Heading.
* IFOIndexChapter::           Index Chapter.
* IFOSplitIndex::             Split Index.
* IFOhrefDirInsteadFile::     HREF Dir Instead file.


--- Command Line Options ---

* OptionDebug::               Debugging.
* OptionDocType::             DocType (HTML)
* OptionCheck::               Checking files.
* OptionExpand::              Expanding info, tex areas etc.
* OptionGlossary::            Glossary.
* OptionInvisible::           Invisible.
* OptionIso::                 Iso.
* OptionInclude::             Include directories.
* OptionTopFile::             Top File.
* OptionTocFile::             Table of content File.
* OptionFrames::              Frames.
* OptionMenu::                Menus.
* OptionNumber::              Number sections.
* OptionSplit::               Splitting.
* OptionSectionNavigation::   Navigation.
* OptionSubDir::              Subdirectory.
* OptionShortExt::            Short extension.
* OptionPrefix::              Prefix.
* OptionOutput::              Output.
* OptionShortRef::            Short Ref.
* OptionIndexSummary::        Index Summary.
* OptionVerbose::             Verbose.
* OptionLanguage::            Language.
* OptionL2H::                 La@TeX{}2HTML.


--- La@TeX{}2HTML for @code{@@math} and @code{@@tex} ---

* OptionL2HL2H::              Where to find La@TeX{}2HTML.
* OptionL2HSkip::             Skip calling La@TeX{}2HTML.
* OptionL2Htmp::              Temporary files for La@TeX{}2HTML.


--- Indices ---

* Indexop::                   Command Line Option Index.
* Indexvr::                   Variable Index.
* Indexcp::                   Concept Index.
@end detailmenu
@end menu
@end ifinfo
@end ifnottex
@c ========================================================
@node Overview, HowToGetHTML, Top, Top
@chapter Overview about @command{texi2html}
@uref{http://www.texinfo.org,Texinfo} is the official
documentation format of the @uref{http://www.gnu.org,GNU}
project. It uses a single source file to produce both
online information and printed output.

@c much thinking about ...
It is often proposed to have a way to produce
@acronym{HTML} from Texinfo sources, like the GNU-Info
format. It is much simpler to create one converter instead
of writing all documentation new in @acronym{HTML}, cause
there is so much documentation in Texinfo all over
the world.

A few time ago @command{makeinfo} wasn't able to produce
@acronym{HTML} output format, but there are needth to have
@acronym{HTML}. This was the borning hour for
@command{texi2html}. The basic purpose of @file{texi2html}
is to convert Texinfo documents into HTML.


@menu
* HowToGetHTML::       Ways to get HTML files.
* whytexi2html::       Why texi2html and not makeinfo?.
@end menu
@c --------------------------------------------------------
@node HowToGetHTML, whytexi2html, Overview, Overview
@section Ways to get HTML
You would like to @acronym{HTML} files out of your Texinfo
files? There exist two ways which you can go.
This first is to use @command{makeinfo} itself to produce
@acronym{HTML} output. The second is to use
@command{texi2html}.

@c --------------------------------------------------------
@node whytexi2html, Installation, HowToGetHTML, Overview
@section Why @file{texi2html} and not @file{makeinfo}?
The basic idea of @command{makeinfo}'s @acronym{HTML}
output was to get an readable @acronym{HTML} output.
Nothing sophisticated nor good styling just readable.

The current development of texi2html is going into
different direction.

The main purpose is to get better styling, better design
etc. of the created @acronym{HTML} pages. This way is
supported using differnt command line options and of course
possible changings of the initialization file to fit your
own needs.

The main disadvantage of @acronym{makeinfo}'s
@acronym{HTML} output is your getting only one big file.
This is of course readable but not very usable. The problem
of this is, while you like to have splitted chapters or
nodes the Texinfo source has to be read at minimum twice
times. This makes it impossible to implement this in
@command{makeinfo}. This would result in complete new
implementation of @command{makeinfo}'s source.

@c think more about this????
In contrast to the HTML produced by @command{makeinfo
--html} (the @command{makeinfo} program is part of the
Texinfo distribution), the HTML output of @file{texi2html}
is highly configurable. Among other differences, with
@command{texi2html} allows you to customize your entire
page layout (like headers, footers, style sheets, etc),
split documents at various levels, and use
@command{latex2html} to convert @code{@@tex} sections.

@command{texi2html} should reasonably convert all Texinfo
4.0 constructs. If not, please send a bug report to
@email{texi2html@@mathematik.uni-kl.de}.

@c ========================================================
@node Installation, Customizing, whytexi2html, Top
@chapter Installation of @command{texi2html}
@cindex Installation
description of the installation process.
What do you need?
How?

@c ========================================================
@node Customizing, CustomizingExpand, Installation, Top
@chapter Customizing files
@cindex Installation
@opindex frames
@c 4.) Customizing files to output
@c   ==> -out_file, -prefix, -subdir, -split, -frames etc
Result based on using @option{-frames}

@example
texi2html -V -frames texi2html.texi
@end example
Explanation of the output differences against default,
whatever this is ;-)


@c ========================================================
@node CustomizingExpand, CustomizingPage, Customizing, Top
@chapter Customizing what gets expanded
@c 5.) Customizing what gets expanded
@c   ==> -expand, and latex2html
Test starting.

@option{-expand info}
@option{-expand tex}
Take a look at optionexpand.

@c ========================================================
@node CustomizingPage, CustHTML, CustomizingExpand, Top
@include custpage.texi
@c ========================================================
@node CustHTML, InitFile, CustomizingPage, Top
@include custhtml.texi
@c ========================================================
@node InitFile, IFOs, CustHTML, Top
@include initfile.texi
@c --------------------------------------------------------
@node IFOs, Options, InitFile, Top
@include ifo.texi
@c ========================================================
@c @include extfile.texi obsolete now, is not documented!
@c ========================================================
@node Options, Reference, IFOs, Top
@include options.texi
@c ========================================================
@node Reference, Indexop, Options, Top
@include reference.texi
@c ========================================================
@c commandline option index.
@node Indexop, Indexvr, Reference, Top
@appendix Indices
@appendixsec Command Line Option Index
@printindex op
@c --------------------------------------------------------
@node Indexvr, Indexcp, Indexop, Top
@appendixsec Variable Index
@printindex vr
@c --------------------------------------------------------
@node Indexcp,, Indexvr, Top
@appendixsec Concept Index
@printindex cp
@c printindex init file options dito.
@c concept index.
@bye