OpenCores
URL https://opencores.org/ocsvn/scarts/scarts/trunk

Subversion Repositories scarts

[/] [scarts/] [trunk/] [toolchain/] [scarts-gcc/] [gcc-4.1.1/] [libjava/] [classpath/] [doc/] [www.gnu.org/] [cp-tools/] [texidoclet.html] - Blame information for rev 14

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 14 jlechner
<!DOCTYPE html PUBLIC "-//IETF//DTD HTML 2.0//EN">
2
<HTML>
3
<HEAD>
4
<TITLE>GNU texidoclet - GNU Project - Free Software Foundation (FSF)</TITLE>
5
<A HREF=""></A>
6
</HEAD>
7
<BODY BGCOLOR="#ffffff" TEXT="#000000" LINK="#1F00FF" ALINK="#FF0000" VLINK="#9900DD">
8
<H1>GNU texidoclet</H1>
9
 
10
<h2>Table Of Contents</h2>
11
<ol>
12
  </li><li><a href="#Introduction">Introduction</a>
13
 
14
  <ul>
15
    <li><a href="#whatis">What is TexiDoclet?</a>
16
    </li><li><a href="#whyuse">Why use the info format?</a>
17
    </li><li><a href="#howstart">How do I get started?</a>
18
  </li></ul>
19
 
20
  </li><li><a href="#Requirements">Requirements</a>
21
 
22
  </li><li><a href="#Download">Download</a>
23
 
24
  </li><li><a href="#Installation">Installation</a>
25
 
26
  </li><li><a href="#configure">Configure</a>
27
 
28
  </li><li><a href="#Usage">Usage</a>
29
  </li><li><a href="#Bugs">BUGS</a>
30
  </li><li><a href="#History">History</a>
31
  </li><li><a href="#Todo">TODO</a>
32
  </li>
33
</ol>
34
 
35
<hr>
36
 
37
<a name="Introduction"></a> <h2>1. Introduction</h2>
38
 
39
<h3><a name="whatis"></a>What is GNU TexiDoclet?</h3>
40
 
41
GNU TexiDoclet is a system for creating <b>info</b> pages from Java
42
source documentation. It is part of the <a
43
href="/software/classpath/">GNU Classpath</a> project, however it can
44
also be used as standalone doclet used with any Java-compatible
45
platform.
46
 
47
<p>You can use TexiDoclet to create API documentation in <b>info</b>
48
format for any set of Java packages (including classpath). The latter
49
will reproduce the full Java API documentation for use on text-only
50
displays, or for integrating it into the GNU Emacs online help
51
facility.  </p><p>TexiDoclet also includes an Elisp package which adds
52
context-sensitive help features to GNU Emacs.
53
</p>
54
 
55
<table bgcolor="#cccccc" border="0" cols="1" width="100%">
56
  <tbody>
57
  <tr>
58
    <td><b>Note:</b> This is alpha software. You should not use
59
      TexiDoclet in a production environment, because it has not yet
60
      been tested for reliability. Also, see <a href="#Bugs">Bugs</a>
61
      for a list of currently missing
62
      features.</td></tr></tbody></table> <h3><a name="whyuse"></a>Why
63
      use the <b>info</b> format?</h3>Although the <b>info</b> format
64
      is raw text with nearly no formatting or highlighting, using the
65
      <b>info</b> version of the Java API documentation can have a
66
      number of advantages even on graphical displays - especially if
67
      you are using GNU Emacs:
68
 
69
<ul>
70
  <li>Because it is text-only, <b>info</b> is pretty fast.
71
  </li><li>You can easily navigate through <b>info</b> pages using only the keyboard
72
  - which doesn't hold true for most HTML browsers available today, where you
73
  always have to grab the mouse or tab the focus.
74
  </li><li>You can use all the powerful Emacs facilities to browse the documentation
75
  (e.g. incremental search, regular expressions, bookmarks).
76
  </li><li>You can copy documentation fragments (like the definition of a method you
77
  want to overload) easily using the keyboard, again having all Emacs facilities
78
  right at hand, such as the ring buffer.
79
  </li><li>You have no frames in <b>info</b>, but you can use the Speedbar contained
80
  in recent Emacs distributions for the same purpose [not tested as yet].
81
  </li></ul>
82
 
83
<h3><a name="howstart"></a>How do I get started?</h3>
84
<ul>
85
  <li>Check the <a href="#Requirements">Requirements</a>
86
  section and download/install any missing tools.
87
  </li><li><a href="#Download">Download</a>
88
  and <a href="#Installation">unpack</a>
89
  the TexiDoclet package.
90
  </li><li>See section <a href="#configure">Configure</a>
91
  for further instructions. </li></ul>
92
 
93
<h3>Thanks!</h3>
94
<p>TexiDoclet was originally written as a standalone doclet by <a
95
href="http://savannah.gnu.org/users/julian/">Julian Scheid</a> and was
96
contributed to the GNU Project as part of GNU Classpath.</a>
97
</p>
98
 
99
 
100
<hr>
101
 
102
<a name="Requirements"></a>
103
 
104
<h2>2. Requirements</h2>In order to use TexiDoclet, you need the
105
following software installed:
106
 
107
<ul>
108
  <li>A Java platform 1.2 or better. The intention is to be able have
109
  TexiDoclet work first and foremost with <a
110
  href="/software/classpath/">GNU Classpath</a> and other completely
111
  free toolchains (<em>with <a href="gjdoc.en.html">gjdoc</a> we are
112
  99% there!</em>) although it can be used with non-free VMs.</li>
113
 
114
  <li>GNU Make and GNU makeinfo. Note: makeinfo is contained in the GNU
115
  texinfo package. </li>
116
 
117
  <li>A Unix environment:
118
  <ul>
119
    <li><tt>bash</tt> and the standard commands like <tt>cp</tt> are essential
120
    </li><li><tt>which</tt> and <tt>awk</tt> are required for checking the setup
121
    </li><li><tt>gzip</tt> is used to compress the <b>info</b> pages. </li>
122
  </ul>
123
 
124
<!--
125
  </li><li>The Java Community source code, if you want to reproduce
126
  documentation for the Java core API. <strong>Note: this is
127
  <em>not</em> distributed with TexiDoclet because it is released
128
  under a non-free software license, the SCSL, which is incompatible
129
  with the GNU GPL.  If you wish to create the Java API documentation
130
  you must download and agree to it's terms (we cannot do
131
  this).</strong></li>
132
-->
133
 
134
  </ul>
135
 
136
  Makeinfo is required to convert the texinfo source into the
137
  <b>info</b> format. If you only need the texinfo source, you don't
138
  need makeinfo. Unix users will probably find a makeinfo preinstalled
139
  on their system.  Windows users can find free precompiled binaries
140
  on the Internet (look for the Texinfo package). <br> 
141
 
142
<table bgcolor="#cccccc" border="0" cols="1" width="100%">
143
  <tbody>
144
  <tr>
145
    <td><b>Note:</b> There are some 16-bit makeinfo binaries available online,
146
      but they won't work. You need to look for an up-to-date 32-bit
147
  binary.</td></tr></tbody>
148
</table>
149
 
150
<p>GNU Make is required because if you want to generate the full
151
standard Java API documentation, each package must be processed
152
individually. The Makefile works with patterns to process the packages
153
individually and merge the results.</p>
154
 
155
<p>Again, Unix users will find Make preinstalled. Windows users can
156
find precompiled binaries on the Internet for free. <br> 
157
</p>
158
 
159
<table bgcolor="#cccccc" border="0" cols="1" width="100%">
160
  <tbody>
161
  <tr>
162
      <td><b>Note:</b> Use only GNU Make - you will probably get into
163
      trouble if you try to use a different Make tool, because the
164
      TexiDoclet Makefile uses some GNU-specific
165
      features.</td></tr>
166
      </tbody>
167
</table>
168
 
169
<!--
170
<p>You need the Java community source code if you want to reproduce the full
171
core API documentation. Get it from <a href="http://developer.java.sun.com/">Sun's Java Developer Website</a>. Having
172
the source at hand is generally recommended. <br> 
173
</p>
174
-->
175
 
176
<table bgcolor="#cccccc" border="0" cols="1" width="100%">
177
  <tbody>
178
  <tr>
179
    <td><b>Tip:</b> Configuring TexiDoclet is much easier if you make sure
180
      that all utilities (including the Java tools) are on your system search
181
      path.</td></tr></tbody></table>
182
 
183
<p>
184
TexiDoclet has been tested on the following systems:
185
</p><p>
186
 
187
</p><table border="1" cols="3" width="100%">
188
  <tbody>
189
  <tr>
190
    <td><b>Operating System</b></td>
191
    <td><b>JDK</b></td>
192
    <td><b>Other</b></td></tr>
193
 
194
<!-- Windows untested at the moment
195
  <tr>
196
    <td>Windows 98</td>
197
    <td>Sun JDK 1.3 RC2</td>
198
    <td>Cygwin B-20 (GNU bash 2.02.1) <br>GNU Make 3.78.1 <br>GNU makeinfo
199
      1.68 (GNU texinfo 3.12)  <br>GNU Emacs 20.6.1</td>
200
 </tr>
201
-->
202
  <tr>
203
    <td>Linux kernel 2.2.16 on Intel / Red Hat 7.0 distribution</td>
204
    <td>Sun JDK 1.2.2</td>
205
 
206
    <td>GNU bash 2.04.11 <br>GNU Make 3.79.1 <br>GNU makeinfo 4.0
207
    <br>GNU Emacs 20.3.1</td></tr>
208
 
209
    <tr>
210
    <td>Linux kernel 2.2.9-27mdk / Mandrake distribution
211
    <em>(thanks to Owen Lydiard for the report)</em></td>
212
    <td>JDK 1.3</td>
213
    <td> GNU make 3.77<br>
214
    makeinfo (GNU texinfo) 4.0<br>
215
    GNU Emacs 20.3.1</td>
216
    </tr>
217
 
218
  <tr>
219
 
220
    <td colspan="3">As of the date of this document, no other
221
      configurations have been tested.  If you install TexiDoclet on a
222
      different system, be it successful or not, please contact the <a
223
      href="http://savannah.gnu.org/project/memberlist.php?group_id=508">developers</a>
224
      so that this list can be extended.</td></tr></tbody>
225
</table>
226
 
227
 
228
<h3>3.1 Tool download locations for Windows users [untested]</h3>
229
 
230
<p>Although the present version of TexiDoclet has not been tested on
231
Windows, a previous incarnation was working using the following:
232
Windows 98 / Sun JDK 1.3 RC2 / Cygwin B-20 (GNU bash 2.02.1) / GNU
233
Make 3.78.1 / GNU makeinfo 1.68 (GNU texinfo 3.12) / GNU Emacs
234
20.6.1</p>
235
 
236
<p>Here are a few URLs for getting the Windows ports of the required
237
software:</p>
238
 
239
<ul>
240
<li><a href="http://sourceware.cygnus.com/cygwin/">The Cygwin project</a> offers the most
241
    sophisticated port of Unix utilities for free download. Their "full" package
242
    includes a Bash and a full-featured Unix environment (including <tt>grep</tt>, <tt>less</tt>, <tt>awk</tt> and other
243
    useful commands.) With regard to TexiDoclet, only GNU <tt>make</tt> and <tt>makeinfo</tt>
244
    are missing.
245
 
246
</li><li><a href="http://www.tertius.com/projects/library/#cygwin32">tertius.com</a> contains a
247
    link to a Windows port of the texinfo package,
248
    including the required <tt>makeinfo</tt> tool. It also includes a standalone <b>info</b> viewer.
249
 
250
</li>
251
 
252
<li>Refer to the <a
253
href="http://www.gnu.org/software/make/make.html">GNU Make
254
homepage</a> and to <a
255
href="http://ftp.gnu.org/pub/gnu/">http://ftp.gnu.org</a> for
256
downloading the GNU Make binaries for Windows.  </li></ul>
257
 
258
<hr>
259
 
260
<a name="Download"></a>
261
 
262
<a name="Download">
263
<h2>3. Download</a></h2>
264
 
265
The old (pre-GNU) version of TexiDoclet is still located at our old
266
development site on sourceforge and is available from <a
267
href="http://sourceforge.net/project/showfiles.php?group_id=7984">SourceForge</a>.
268
This (old) 0.5 version is provided purely as a convenience, and will
269
soon be replaced by a new version .  Subsequent releases will be made
270
available at via the GNU ftp site (<a
271
href="http://ftp.gnu.org/pub/gnu/">http://ftp.gnu.org/pub/gnu/).</a>
272
 
273
<p>The package includes an autoconfiguration system, the full source
274
code, and additional Emacs add-ons.  It unpacks into a separate
275
directory named "<tt>texidoclet-(version)</tt>".  </p>
276
 
277
<p>If you want to take a look at TexiDoclet's output first, here is a
278
<a
279
href="http://texidoclet.sf.net/texidoclet-api-info-0.5.tar.gz">sample
280
(32 K gzipped tar)</a>.  It's the converted `info' docs for the
281
TexiDoclet API (please note that the package name
282
<tt>gnu.texidoclet</tt> is now obsoleted by
283
<tt>gnu.classpath.tools.doclets.texidoclet</tt>) itself.  [To view run
284
the standalone <tt>info</tt> viewer: <tt>info -f
285
texidoclet.info</tt>.]
286
</p>
287
 
288
<hr>
289
 
290
<a name="Installation"></a>
291
 
292
<h2>4. Installation</h2>
293
 
294
 
295
<p><strong>Please note the following instructions relate purely to the
296
old 0.5 version of GNU texidoclet, which is currently the only
297
release</strong></p>
298
 
299
<p>In order to install TexiDoclet, you should unpack it to a location
300
of your choice. TexiDoclet will unpack into a separate subdirectory,
301
which contains the following files and directories:</p>
302
 
303
<table>
304
  <tbody>
305
  <tr>
306
    <td><tt>Makefile </tt></td>
307
    <td></td>
308
    <td>the TexiDoclet main Makefile.</td></tr>
309
  <tr>
310
    <td><tt>COPYING </tt></td>
311
    <td> </td>
312
    <td>the GNU public license (Version 2)</td></tr>
313
  <tr>
314
    <td><tt>etc/ </tt></td> <td></td>
315
 
316
    <td>contains Makefile template for generating the docs for Sun's
317
    code.</td></tr>
318
  <tr>
319
    <td><tt>lisp/ </tt></td>
320
    <td></td>
321
    <td>contains add-ons for enabling context-sensitive help in Emacs.</td></tr>
322
  <tr>
323
    <td><tt>source/ </tt></td>
324
    <td></td>
325
    <td>contains the full Java source code for TexiDoclet</td></tr>
326
</tbody></table>
327
 
328
<p>After you have unpacked the archive, you should configure TexiDoclet as
329
described in the following section, <a href="#configure">Configure</a>.</p>
330
 
331
<hr>
332
 
333
<a name="configure"></a>
334
 
335
<h2>6. Configure</h2>
336
 
337
<p><strong>Please note the following instructions relate purely to the
338
old 0.5 version of GNU texidoclet, which is currently the only
339
release</strong></p>
340
 
341
[Taken from the <tt>README</tt> file in the distribution]
342
 
343
<pre>
344
Installation:
345
============
346
 
347
1. The usual GNU autoconf procedure applies:
348
 
349
   ./configure
350
   make
351
 
352
   Read the generic INSTALL file for the details.
353
 
354
2. Extra texidoclet-specific options for `configure':
355
 
356
   `--with-jdkdir=DIR'
357
 
358
    DIR specifies the location of the JDK (if it's not on the PATH)
359
 
360
   `--with-javadocjar=FILE'
361
 
362
   Use FILE as jar file with javadoc support.
363
 
364
3. This will generate the jar file in source/TexiDoclet.jar.  You can
365
   choose to run "make install" at this point, although this is not,
366
   strictly speaking, necessary.
367
 
368
4.  To see an example of the invocation of TexiDoclet, type "make
369
    check".  This will build the `info' docs for texidoclet itself in
370
    the "source" subdirectory.
371
</pre>
372
 
373
<hr>
374
 
375
<a name="Usage"></a>
376
 
377
<h2>8. Usage</h2>
378
 
379
<p><strong>Please note the following instructions relate purely to the
380
old 0.5 version of GNU texidoclet, which is currently the only
381
release</strong></p>
382
 
383
[Taken from the <tt>README</tt> file in the distribution]
384
 
385
<pre>
386
Usage:
387
=====
388
 
389
1.  TexiDoclet now works like any other doclet [Consult
390
    http://java.sun.com/j2se/javadoc/ for further information on
391
    Javadoc and the Javadoc API], it can be invoked with default
392
    options by merely supplying the path the doclet and the doclet
393
    invocation class (which is `gnu.texidoclet.Driver'):
394
 
395
javadoc -docletpath TexiDoclet.jar -doclet gnu.texidoclet.Driver &lt;filename&gt; ...
396
 
397
2.  It also accepts all the Standard Sun doclet options, in addition
398
    to some TexiDoclet-specific ones, which are listed if you invoke
399
    javadoc without any Java source files or packages.  Here are those
400
    options:
401
 
402
-d &lt;directory&gt;            Destination directory for output files
403
-tocbase         &lt;base&gt;   Prefix for all package-level texi files (default 'packages'
404
-indexbase       &lt;base&gt;   Prefix for package index
405
-allclassesbase  &lt;base&gt;   Prefix for all class list
406
-treebase        &lt;base&gt;   Prefix for tree output
407
-etagsname       &lt;base&gt;   Prefix for package etags
408
-tocheader       &lt;text&gt;   Header for each texi file
409
-tocfooter       &lt;text&gt;   Footer for each texi file
410
-copyrightnotice &lt;text&gt;   Copyright information on each texi page
411
-wordwrappos     &lt;chars&gt;  Number of columns at which to wrap
412
-firstlineindent &lt;chars&gt;  Number of columns to indent
413
-includeauthor            Include author information?
414
-fulltreealignment &lt;type&gt; 'replace' or null
415
-heritagealignment &lt;type&gt; 'replace' or null
416
 
417
    Most of these options are self-explanatory and all have
418
    `reasonable' defaults, and are in the process of being more fully
419
    documented.
420
 
421
3.  To generate the `info' documentation, invoke `makeinfo' on the
422
    resultant `.texi' file.  See the documentation accompanying your
423
    texinfo installation for more details.  [Note you can use texinfo
424
    to also generate printed and HTML documentation from the `.texi'
425
    files, but note that there are more specialised doclets for that
426
    purpose].
427
</pre>
428
 
429
<hr>
430
 
431
<a name="Bugs"></a>
432
 
433
<h2>7. Bugs</h2>
434
 
435
<p><strong>Please note the following instructions relate purely to the
436
old 0.5 version of GNU texidoclet, which is currently the only
437
release</strong></p>
438
 
439
[Taken from <tt>BUGS</tt> in the distribution]
440
 
441
<pre>Known Bugs, or "features not yet implemented", in roughly the order
442
they will be attacked. New versions of this software implementing all
443
or part of the missing features can be expected soon.
444
 
445
* No cross-links for parameter types, return types, and thrown exceptions.
446
 
447
* No support for {@link}.
448
 
449
* Not very configurable at the time.
450
 
451
* Various small improvements on Info page layout pending.
452
 
453
* Elisp scripts for context sensitive help are preliminary. (Can
454
  anyone help me out here? I am new to Lisp and would need some
455
  advice.)
456
 
457
* Autoconf support for the Cygnus environment (simply untested at the
458
  moment).</pre>
459
 
460
<hr>
461
 
462
<a name="History"></a>
463
 
464
<h2>8. History</h2>
465
 
466
 [Taken from <tt>NEWS</tt> in the distribution]
467
 
468
<pre>
469
 
470
2002-01-24 -- CVS
471
 
472
* now a GNU project (part of classpath)
473
* all copyright changed to FSF.
474
* distribution now based at http://savannah.gnu.org/projects/cp-tools/
475
 
476
2001-04-02 -- 0.5
477
 
478
* complete overhaul of distribution
479
* distribution now based at SourceForge.
480
* rewrote Makefile system to use GNU automake/autoconf
481
* added a new Driver class to generate the .texi in one pass
482
 
483
2000.04.02 -- 0.4.1
484
 
485
* features full information - all documentation nodes are implemented
486
* added "implements" information
487
* added post-processing to include information about derived and
488
  implementing classes.
489
* removed self-reference in heritage tree
490
* improved node reference formatting ("(package) class" instead of
491
  "(package)class")
492
* added switch to control inclusion of author information
493
* added caption to index, all classes, and full tree node
494
* added "abstract" keyword and class prototype to class node
495
* added serialization node
496
* added ability to split the full index into 27 parts (A-Z|_)
497
 (not configurable yet)
498
 
499
2000.04.01 -- 0.3.3
500
 
501
* index is now sorted case-insensitive
502
* major revision of configuration file structure
503
* added preliminary version of inherited fields and methods
504
* took preparations for adding derivation information after generating
505
  the texi files.
506
 
507
2000.04.01 -- 0.3.2
508
 
509
* improved front page layout
510
* added copyright messages as requested by Sun Microsystems Inc. so
511
  that the core API docs
512
* can be distributed in converted format.
513
* removed heritage chart from interfaces
514
* added "extends" line to class node
515
* added @author tag to all nodes
516
 
517
2000.03.30 -- 0.3.1
518
 
519
* added Interfaces, Exceptions and Errors to package node
520
* fixed bug: bad layout when HTML paragraph ends with &lt;br&gt;
521
* added @deprecated and @since info to all nodes
522
* added support for multiple source paths
523
 
524
2000.03.29 -- 0.2.1
525
 
526
* fixed bug: class node only displayed first description line.
527
* added @since tag for all nodes.
528
* fixed bug: generated text displayed bogus texi tags.
529
* corrected/finished full tree layout.
530
* fixed bug: field prototype was missing.
531
* &lt;sup&gt; is now translated to ^ (caret) for denoting powers.
532
* Method listing in class node is now sorted.
533
* added "see also" for classes
534
 
535
2000.03.28 -- 0.1.2
536
 
537
* Source code structure significantly improved.
538
* added "all classes", full index, and full tree.
539
* added preliminary emacs .el-script for context-sensitive help.
540
 
541
2000.03.27 -- 0.1.1
542
 
543
* Initial non-public pre-alpha release.
544
</pre>
545
 
546
<hr>
547
 
548
<a name="Todo"></a>
549
 
550
<h2>9. TODO</h2>
551
 
552
[Taken from <tt>TODO</tt> in distribution]
553
 
554
<pre>
555
* Check bug list.
556
 
557
* Improve source code documentation and this page.
558
 
559
* Check Speedbar compatibility.
560
 
561
* Look for a way to add a link to the corresponding Java source code
562
  into all Info nodes.
563
 
564
* Same for original HTML documentation (using browse-url)
565
 
566
* Perhaps integrate XML/XSL support when it becomes part of the Java
567
  standard. Currently, the user would have had to download a package
568
  of some MB and install it, if an XML library would have been
569
  employed for TexiDoclet.
570
</pre>
571
 
572
<BR>
573
<HR>
574
 
575
Return to <A HREF="/home.html">GNU's home page</A>.
576
<P>
577
Please send FSF &amp; GNU inquiries &amp; questions to
578
<A HREF="mailto:gnu@gnu.org"><EM>gnu@gnu.org</EM></A>.
579
There are also <A HREF="/home.html#ContactInfo">other ways to
580
contact</A> the FSF.
581
<P>
582
Please send comments on these web pages to
583
<A HREF="mailto:webmasters@www.gnu.org"><EM>webmasters@www.gnu.org</EM></A>,
584
send other questions to
585
<A HREF="mailto:gnu@gnu.org"><EM>gnu@gnu.org</EM></A>.
586
<P>
587
Copyright (C) 1999, 2005 Free Software Foundation, Inc.,
588
51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
589
<P>
590
Verbatim copying and distribution of this entire article is
591
permitted in any medium, provided this notice is preserved.<P>
592
Updated:
593
 
594
$Date: 2007/08/18 13:54:52 $ by $Author: jeunes2 $
595
<HR>
596
</BODY>
597
</HTML>

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.