mkhtml2: add a todos
[gtk-doc.git] / doc / authors.txt
blobb46b41c8310bc30c694918c69e31ee89da826200
1 Note
2 ====
4 There is now a user manual which can be read using yelp and can be found under
5 'development'. Please refer to this documentation for up-to-date information.
8 General
9 =======
11 The files to edit manually are generated in the tmpl/ directory.
12 Remember to use &lt; or &gt; instead of '<' and '>', in these files.
14 The first part of each function/macro/struct etc. description should be
15 a very short summary of what it is. This may be used at some point to
16 produce a short reference guide which can be printed out.
18 For macros which return a value just like a function, you must manually
19 add a '@Returns: ' field.
21 You may want to rearrange the functions/macros etc. to split them into
22 related sections. To do this rearrange the MODULE-sections.txt
23 files. You can also add <SUBSECTION> between functions. Currently this just
24 results in a blank line between them in the synopsis.
26 If a function or macro has a very long description, you may want the table
27 of parameters to go somewhere in the middle rather than after the description
28 as would normally happen. To place the table of parameters in the middle of
29 the description simple write "<!--PARAMETERS-->" on its own line at the
30 desired location.
33 Abbreviations
34 =============
36 These are expanded into appropriate DocBook tags, saving a lot of typing.
37 I've used the Gnome ones (see gnome.txt) but also added '#'.
39   Use function() to refer to functions or macros which take arguments.
41   Use @param to refer to parameters. (I've also used this when referring to
42   parameters of other functions, related to the one being described.)
44   Use %constant to refer to a constant, e.g. %G_TRAVERSE_LEAFS.
46   Use #symbol to refer to other types of symbol, e.g. structs and enums
47     and macros which don't take arguments.
51 Useful DocBook Tags
52 ===================
54 These are the DocBook tags which I have used or I think could be useful.
55 Let me know if I'm doing something wrong!
58 To link to another section in the GTK docs:
60     <link linkend="glib-Hash-Tables">Hash Tables</link>
62   The linkend is the SGML id on the top item of the page you want to link to.
63   For most pages this is currently the part ("gtk", "gdk", glib") and then
64   the page title ("Hash Tables"). For widgets it is just the class name.
65   Spaces and underscores are converted to '-' to conform to SGML.
68 To refer to an external function, e.g. a standard C function:
70     <function>...</function> 
73 To include example code:
75     <example>
76     <title>Using a GHashTable.</title>
77     <programlisting>
78       ...
79     </programlisting>
80     </example>
82   or possibly this, for very short code fragments which don't need a title:
84     <informalexample>
85     <programlisting>
86       ...
87     </programlisting>
88     </informalexample>
91 To include bulleted lists:
93     <itemizedlist>
95     <listitem>
96     <para>
97       ...
98     </para>
99     </listitem>
101     <listitem>
102     <para>
103       ...
104     </para>
105     </listitem>
107     </itemizedlist>
110 To include a note which stands out from the text:
112     <note>
113     <para>
114       Make sure you free the data after use.
115     </para>
116     </note>
118 To refer to a type:
120     <type>unsigned char</type>
123 To refer to an external structure (not one described in the GTK docs):
125     <structname>XFontStruct</structname>
128 To refer to a field of a structure:
130     <structfield>len</structfield>
133 To refer to a class name, we could possibly use:
135     <classname>GtkWidget</classname>
137   but you'll probably be using #GtkWidget instead (to automatically create
138   a link to the GtkWidget page - see the abbreviations above).
141 To emphasize text:
143     <emphasis>This is important</emphasis>
145   but I haven't been using it so far.
148 For filenames use:
150     <filename>c:\windows</filename>