summaryrefslogtreecommitdiffstats
path: root/doc/doxytag_usage.doc
blob: 25d45fd2ae56be5f28ca473d214148e4a8189cd0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
/******************************************************************************
 *
 * 
 *
 * Copyright (C) 1997-2011 by Dimitri van Heesch.
 *
 * Permission to use, copy, modify, and distribute this software and its
 * documentation under the terms of the GNU General Public License is hereby 
 * granted. No representations are made about the suitability of this software 
 * for any purpose. It is provided "as is" without express or implied warranty.
 * See the GNU General Public License for more details.
 *
 * Documents produced by Doxygen are derivative works derived from the
 * input used in their production; they are not affected by this license.
 *
 */
/*! \page doxytag_usage Doxytag usage

Doxytag is a small command line based utility.
It can generate <em>tag files</em>.
These tag files can be used with <a href="doxygen_usage.html">doxygen</a> 
to generate references to external documentation 
(i.e. documentation not contained in the input files that are used by 
doxygen).

A tag file contains information about files, classes and members 
documented in external documentation. Doxytag extracts this information 
directly from the HTML files. This has the advantage that you do not need 
to have the sources from which the documentation was extracted.

If you \e do have the sources it is better to let \c doxygen generate the
tag file by putting the name of the tag file after 
\ref cfg_generate_tagfile "GENERATE_TAGFILE" in
the configuration file.

The input of doxytag consists of a set of HTML files.

\par Important:
  If you use tag files, the links that 
  are generated by doxygen will contain \e dummy links. You have to run 
  the \c installdox script to change these dummy links into real links.
  See \ref installdox_usage for more information.
  The use of dummy links may seem redundant, but it is really useful,
  if you want to move the external documentation to another location.
  Then the documentation does not need to be regenerated by \c doxygen, 
  only \c installdox has to be run. 

\par Note: 
  Because the HTML files are expected to have a certain 
  structure, only HTML files generated with doxygen or with Qt's class 
  browser generator can be used. Doxytag only <em>reads</em> the HTML files, 
  they are not altered in any way.

Doxytag expects a list of all HTML files that form the documentation
or a directory that contains all HTML files. If neither is present doxytag
will read all files with a <tt>.html</tt> extension from the current directory.
If doxytag is used with the <code>-t</code> flag it generates a tag file. 

\par Example 1:
  Suppose the file \c example.cpp from the \c examples directory that is listed
  below is included in some package for which you do not have the sources. 
  Fortunately, the distributor of the packages included the HTML documentation 
  that was generated by doxygen in the package.
  \verbinclude example.cpp
  Now you can create a tag file from the HTML files in the package by 
  typing:
\verbatim
doxytag -t example.tag example/html
\endverbatim
  from the examples directory.
  Finally you can use this tag file with your own piece of code, such
  as done in the following example:
  \verbinclude tag.cpp
  Doxygen will now include links to the external package in your own
  documentation. Because the tag file does not specify where the 
  documentation is located, you will have to specify that by running the 
  installdox script that doxygen generates 
  (See section \ref installdox_usage for more information). 

  Note that this is actually a feature because if you (or someone else)
  moves the external documentation to a different 
  directory or URL you can simply run the script again and all links in 
  the HTML files will be updated.

  \htmlonly
  Click <a href="$(DOXYGEN_DOCDIR)/examples/tag/html/index.html">here</a> 
  for the corresponding HTML documentation that is generated by Doxygen using
  only the tag file and second piece of code.
  \endhtmlonly

\par Example 2:
  To generate a tag file of the Qt documentation you can do the following:
\verbatim
doxytag -t qt.tag $QTDIR/doc/html
\endverbatim

*/