• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/router/libxml2/test/relaxng/
1<?xml version="1.0"?>
2<!DOCTYPE article [
3<!ENTITY version "1.0.53">
4<!ENTITY mdash  "--">
5<!ENTITY hellip "...">
6<!ENTITY copy       "&#x00A9;"> <!-- COPYRIGHT SIGN -->
7        <!-- replace version above with actual application version number-->
8	<!--  Template Version: 1.0.1  (do not remove this line) -->
9
10
11
12<!ENTITY APPLET-TEMPLATE-1x-SHELL SYSTEM
13"templates/applet_template_1-applet.sgml.cdata">
14<!ENTITY APPLET-TEMPLATE-1x SYSTEM
15"templates/applet_template_1.sgml.cdata">
16]>
17
18<!--  Version: 1.0.1  -->
19
20<article id="index">
21  <articleinfo>
22
23    <authorgroup>
24
25      <author>
26        <firstname>David</firstname>
27        <surname>Mason</surname>
28        <affiliation>
29          <orgname>Red Hat, Inc.</orgname>
30          <address>
31            <email>dcm@redhat.com</email>
32          </address>
33        </affiliation>
34      </author>
35
36      <author>
37        <firstname>Daniel</firstname>
38        <surname>Mueth</surname>
39        <affiliation>
40          <address>
41            <email>d-mueth@uchicago.edu</email>
42          </address>
43        </affiliation>
44      </author>
45
46      <author>
47        <firstname>Alexander</firstname>
48        <surname>Kirillov</surname>
49        <affiliation>
50          <address>
51            <email>kirillov@math.sunysb.edu</email>
52          </address>
53        </affiliation>
54      </author>
55
56    </authorgroup>
57
58    <releaseinfo>
59      This is a pre-release!
60    </releaseinfo>
61    
62    <revhistory>
63      <revision>
64        <revnumber>
65          0.99
66        </revnumber>
67        <date>
68         04.10.2000
69        </date>
70      </revision>
71    </revhistory>
72    
73    <copyright>
74      <year>2000</year>
75      <holder>Red Hat, Inc., Daniel Mueth, and Alexander Kirillov</holder>
76    </copyright>
77
78    <legalnotice>
79     <para>
80      Permission is granted to copy, distribute and/or modify this
81      document under the terms of the <citetitle>GNU Free Documentation
82      License</citetitle>, Version 1.1 or any later version published
83      by the Free Software Foundation with no Invariant Sections, no
84      Front-Cover Texts, and no Back-Cover Texts. You may obtain a copy
85      of the <citetitle>GNU Free Documentation License</citetitle> from
86      the Free Software Foundation by visiting <ulink type="http"
87      url="http://www.fsf.org">their Web site</ulink> or by writing to:
88      Free Software Foundation, Inc., 59 Temple Place - Suite 330,
89      Boston, MA 02111-1307, USA.
90     </para>
91     <para>
92      Many of the names used by companies to distinguish their products and
93      services are claimed as trademarks. Where those names appear in any
94      GNOME documentation, and those trademarks are made aware to the members
95      of the GNOME Documentation Project, the names have been printed in caps
96      or initial caps.
97     </para>
98    </legalnotice>
99
100    <title>The GNOME Handbook of Writing Software Documentation</title>
101
102  </articleinfo>
103  
104  <!-- ################# Introduction ############### -->
105
106  <sect1 id="intro">
107    <title>Introduction</title>
108
109    <!-- ####### Introduction | The GNOME Documentation Project ####### -->
110
111    <sect2 id="gdp">
112      <title>The GNOME Documentation Project</title>
113
114      <sect3 id="goals">
115        <title>Goals</title>
116        <para>
117          The GNOME Documentation Project (GDP) aims to provide GNOME
118          and GNOME applications with a complete, intuitive, and clear
119          documentation system.  At the center of the GDP is the
120          <application>GNOME Help Browser</application>, which
121          presents a unified interface to GNOME-specific documentation
122          as well as other Linux documentation such as man pages and
123          texinfo documents. The GNOME Help System provides a
124          comprehensive view of documentation on a machine by
125          dynamically assembling the documentation of GNOME
126          applications and components which are installed. The GDP is
127          responsible for writing numerous GNOME-related documents,
128          both for developers and for users.  Developer documentation
129          includes <ulink url="http://developer.gnome.org/doc/API/"
130          type="http">APIs for the GNOME libraries</ulink>, <ulink
131          url="http://developer.gnome.org/doc/whitepapers/"
132          type="http"><citetitle>GNOME White
133          Papers</citetitle></ulink>, GNOME developer <ulink
134          url="http://developer.gnome.org/doc/tutorials/"
135          type="http">tutorials</ulink>, the <ulink
136          url="http://developer.gnome.org/doc/FAQ/"
137          type="http"><citetitle>GNOME Developer
138          FAQ</citetitle></ulink>, the <ulink
139          url="http://developer.gnome.org" type="http">GNOME
140          Developer's Website</ulink>, and <citetitle>GNOME
141          Handbook</citetitle>'s, such as the one you are reading.
142          User documentation include the <ulink
143          url="http://www.gnome.org/learn/"
144          type="http"><citetitle>GNOME User's
145          Guide</citetitle></ulink>, the <ulink
146          url="http://www.gnome.org/learn/"
147          type="http"><citetitle>GNOME FAQ</citetitle></ulink>, and
148          GNOME application documentation.  Most GNOME applications
149          have their own manual in addition to context sensitive help.
150        </para>
151      </sect3>
152
153      <sect3 id="joining">
154       <title>Joining the GDP</title>
155       <para>
156         Documenting GNOME and all the numerous GNOME applications is
157         a very large project.  The GDP is always looking for people
158         to help write, update, and edit documentation.  If you are
159         interested in joining the GDP team, you should join the
160         <ulink url="http://mail.gnome.org/mailman/listinfo/gnome-doc-list/">
161         <citetitle>gnome-doc-list mailing list</citetitle> </ulink>.
162         Read <xref linkend="gettingstarted" />, for help selecting a
163         project to work on.  Feel free to introduce yourself on the
164         gnome-doc-list mailing list and indicate which project you
165         intend to work on, or else ask for suggestions of important
166         documents which need work done. You may also want to join the
167         #docs IRC channel on irc.gnome.org to meet other GDP members
168         and discuss any questions you may have.  For a list of GDP
169         projects and members, see the
170         <ulink url="http://developer.gnome.org/projects/gdp">
171           <citetitle>GDP Website</citetitle></ulink>.
172       </para>
173      </sect3>
174
175      <sect3 id="collaborating">
176       <title>Collaborating with the GDP</title>
177       <para>
178        GNOME developers, packagers, and translators may not be
179        writing GNOME documentation but will want to understand how
180        the GNOME documentation system works and will need to
181        collaborate with GDP members.  This document should help to
182        outline the structure of how the GNOME documentation system
183        works.  Developers who do not write the documentation for
184        their applications are encouraged to find a GDP member to
185        write the documentation.  This is best done by sending an
186        email to the <ulink
187        url="http://mail.gnome.org/mailman/listinfo/gnome-doc-list/">
188        <citetitle>gnome-doc-list mailing list</citetitle> </ulink>
189        describing the application, where it can be downloaded from,
190        and that the developer(s) would like a GDP member to write
191        documentation for the application. The #docs IRC channel on
192        irc.gnome.org is another option for contacting GDP members.
193       </para>
194      </sect3>
195    </sect2>
196
197    <!-- ####### Introduction | Notation and Conventions  ####### -->
198
199    <sect2 id="notation">
200      <title>Notation and Conventions</title>
201      <para>
202        This Handbook uses the following notation:
203        <informaltable frame="none">
204          <tgroup cols="2">
205            <tbody>
206              <row>
207                <entry>
208                  <filename class="directory">/usr/bin</filename>
209                </entry>
210                <entry>
211                  Directory
212                </entry>
213              </row>
214              <row>
215                <entry>
216                  <filename>foo.sgml</filename>
217                </entry>
218                <entry>
219                  Filename
220                </entry>
221              </row>
222              <row>
223                <entry>
224                  <command>command</command>
225                </entry>
226                <entry>
227                  Command or text that would be typed.
228                </entry>
229              </row>
230              <row>
231                <entry>
232                  <command><replaceable>replaceable</replaceable></command>
233                </entry>
234                <entry>
235                  "Variable" text that can be replaced.
236                </entry>
237              </row>
238              <row>
239                <entry>
240                  <literal>Program or Doc Code</literal>
241                </entry>
242                <entry>Program or document code</entry>
243              </row>
244            </tbody>
245          </tgroup>
246        </informaltable>
247      </para>
248    </sect2>
249
250    <!-- ####### Introduction | About This Handbook  ####### -->
251
252    <sect2 id="about">
253      <title>About This Handbook</title>
254      <para>
255       This Handbook is a guide for both writing documentation for
256       GNOME components and applications and for properly binding and
257       packaging documentation into GNOME applications.
258      </para>
259      <para>
260       This Handbook, like all GNOME documentation, was written in
261       DocBook(SGML) and is available in several formats including
262       SGML, HTML, PostScript, and PDF.  For the latest version, see
263       <ulink
264       url="http://developer.gnome.org/projects/gdp/handbook.html"> 
265       <citetitle>Getting The GNOME Handbook of Writing Software
266       Documentation</citetitle> </ulink>.  Alternately, one may
267       download it anonymously from GNOME CVS under <filename
268       class="directory">gnome-docu/gdp</filename>.
269      </para>
270    </sect2>
271  </sect1>
272
273<!-- ################# Getting Started  ############### -->
274
275  <sect1 id="gettingstarted">
276    <title>Getting Started Writing GNOME Documentation</title>
277
278<!--####### Getting Started | Selecting A Document ####### -->
279
280    <sect2 id="selecting">
281      <title>Selecting A Document</title>
282    
283      <sect3 id="know">
284        <title>Document Something You Know</title>
285        <para>
286          The most frequently asked question of new contributors who
287          join the GDP is "which document should I start
288          with?". Because most people involved are volunteers, we do
289          not <emphasis>assign</emphasis> projects and applications to
290          write documents for. The first step is all yours - you must
291          decide what about GNOME interests you most and find out if
292          it has complete documents or not.
293        </para>
294        <para>
295          It is also important to spend some time with GNOME to make
296          sure you are familiar enough with it to be
297          <emphasis>authoritative</emphasis>  in your writing. The
298          best way to do this is to just sit down and play with GNOME
299          as much as possible before starting to write.
300        </para>
301        <para>
302          The easiest way to get started is to improve existing
303          documentation. If you notice some inaccuracies or omissions
304          in the documentation, or you think that you can explain the
305          material more clearly, just send your suggestions to the
306          author of the original documentation or to the GNOME
307          documentation project at <email>docs@gnome.org</email>.
308        </para>
309      </sect3>
310      
311      <sect3 id="doctable">
312        <title>The GNOME Documentation Status Table</title>
313        <para>
314          The <citetitle>GDP Documentation Status Table</citetitle>
315          (<citetitle>DocTable</citetitle>) (<ulink
316          url="http://www.gnome.org/gdp/doctable/"
317          type="http">http://www.gnome.org/gdp/doctable/</ulink>) is a
318          web page which tracks the status of all the various
319          documentation components of GNOME.  These components include
320          application documentation, internal GNOME component
321          documentation, user documentation, and developer
322          documentation.  For each documentation item, it tracks the
323          current status of the documentation, who is working on the
324          particular document, where the documentation can be found,
325          and provides a forum for the discussion of each item.
326        </para>
327        <para>
328          You should use the <citetitle>DocTable</citetitle> to help
329          you select a documentation item which needs work done.  Once
330          you have selected an item to work on, please register
331          yourself as an author so that other authors do not duplicate
332          your work and may contact you to help or offer suggestions.
333          Also be sure to keep the status icons up-to-date  so that
334          the GDP team can easily identify which items need additional
335          help.  The <citetitle>DocTable</citetitle> also allows
336          people to make announcements and suggestions and to discuss
337          issues in the comments section.
338        </para>
339        <note>
340         <title>Note</title>
341         <para>
342          Note that the information in the
343          <citetitle>DocTable</citetitle> may not always be up-to-date
344          or accurate.  When you assign yourself to documenting an
345          application, make sure you find out the latest status of
346          documentation by contacting the application author.  
347         </para>
348        </note>
349      </sect3>
350    </sect2>
351
352<!-- ####### Getting Started | Installing And Using DocBook ####### -->
353
354    <sect2 id="docbook">
355      <title>Installing and Using DocBook</title>
356      <para>
357        All documentation for the GNOME project is written in SGML
358        using the DocBook DTD. There are many advantages to using
359        this for documentation, not least of which is the single
360        source nature of SGML. To contribute to the GDP you should
361        learn to use DocBook.
362      </para>
363      <note>
364        <title>NOTE</title>
365        <para>
366          To get started writing for the GDP you do not need to rush
367          out and learn DocBook - if you feel it is too much to handle
368          for now, you can submit plain ASCII text to the <ulink
369          url="http://mail.gnome.org/mailman/listinfo/gnome-doc-list/">
370          <citetitle>gnome-doc-list mailing list</citetitle>
371          </ulink>and a volunteer will mark it up for you. Seeing your
372          document marked up will also be a great way for you to start
373          learning DocBook.
374        </para>
375      </note>
376      <sect3 id="installingdocbook">
377        <title>Installing DocBook</title>
378        <para>
379          Download and install the following <ulink
380          url="ftp://sourceware.cygnus.com:/pub/docbook-tools/"
381          type="ftp">DocBook Tools packages</ulink>: jade, docbook,
382          jadetex, sgml-common, and stylesheets. (RPM users should note
383          that jade is platform dependent (eg. i386), while the other packages
384          are in the <filename class="directory">noarch</filename>
385          directory.) You can find more 
386          information on DocBook Tools <ulink url="
387          http://sourceware.cygnus.com/docbook-tools/"
388          type="http">here</ulink>.
389        </para>
390        <para>
391          If you are an <application>Emacs</application> user you may
392          want to grab the psgml package as well. This is a major mode
393          for editing sgml files in <application>Emacs</application>.
394        </para>
395      </sect3>
396      
397      <sect3 id="gdpstylesheets">
398        <title>GDP Stylesheets</title>
399        <para>
400          The GDP uses its own DocBook stylesheets.  To use the GDP
401          stylesheets, you should download the file
402          <filename>gdp-both.dsl</filename> from the <filename
403          class="directory">gnome-docu/gdp/dsssl</filename> module in
404          CVS (or from <ulink
405          url="http://developer.gnome.org/projects/gdp/stylesheets.html">
406          GDP Custom DSSSL Stylesheet</ulink>)and copy it
407<!--      into <filename
408          class="directory">/usr/lib/sgml/stylesheets</filename>. You
409          will need to point DocBook Tools to this stylesheet with the
410          <command><option>-d</option></command> option:
411          <command>db2html -d /usr/lib/sgml/stylesheets/gdp-both.dsl
412          <replaceable>foo.sgml</replaceable></command>. (Creating an
413          alias to include this option and path is convenient.)
414          Alternately, you could overwrite
415          <filename>/usr/lib/sgml/stylesheets/cygnus-both.dsl</filename>
416          with <filename>gdp-both.dsl</filename>.
417-->
418          over the file
419          <filename>/usr/lib/sgml/stylesheets/cygnus-both.dsl</filename>.
420          Alternately, you can download and install the
421          <ulink url="http://people.redhat.com/dcm/software.html"
422          type="http">gnome-doc-tools package</ulink> which will set
423          up the stylesheets as well as the DTD discussed below.
424        </para>
425
426<!--        <note>
427          <para>
428            The current version of the DocBook Tools command
429            <command>db2ps</command> does not have a
430            <command><option>-d</option></command> option. In order to
431            create PostScript output, you must overwrite
432            <filename>/usr/lib/sgml/stylesheets/cygnus-both.dsl</filename>
433            with <filename>gdp-both.dsl</filename>.
434          </para>
435        </note>
436-->
437      </sect3>
438      
439      <sect3 id="gdpdtd">
440        <title>GDP DTD (PNG Image Support)</title>
441        <para>
442          Due to some license issues involved with the creation of
443          gifs, the GNOME Documentation Project has decided to use the
444          PNG image format for all images in GNOME documentation. You
445          can read more about the issues involved with gifs at <ulink
446          url="http://www.gnu.org/philosophy/gif.html"
447          type="http">http://www.gnu.org/philosophy/gif.html</ulink>.
448        </para>
449        <para>
450          The current DocBook DTD(3.1) does not include support for
451          embedding PNG images in your documents.  Since the GDP uses
452          many screenshots in its documentation, we use our own
453          variation on the DocBook DTD which has PNG image support.
454          We encourage everybody to use this DTD instead of the
455          default DocBook DTD since your source document header and
456          your output document appearance subtly vary between the two
457          DTD's.  To install the GDP custom DTD with PNG image support
458          by hand:
459        </para>
460        <itemizedlist mark="opencircle">
461          <listitem>
462            <para>
463              Download <ulink
464              url="http://www.labs.redhat.com/png/png-support.html">the
465              GDP DocBook DTD for PNG support</ulink> and install it
466              where you keep your DTD's. (On Red Hat use <filename
467              class="directory">/usr/lib/sgml/</filename>.) Note that
468              the 3.0 DTD is missing support for the
469              <sgmltag>&lt;legalnotice></sgmltag> tag, so it is
470              recommended that you use version 3.1
471            </para>
472          </listitem>
473          <listitem override="bullet">
474            <para>
475              Add the new DTD to your SGML CATALOG file.  The location
476              of your SGML CATALOG file may vary depending upon your
477              distribution. (On Red Hat it is usually in
478              /usr/lib/sgml/CATALOG.) Add the following line to this
479              file:
480              <programlisting>
481PUBLIC "-//GNOME//DTD DocBook PNG Variant V1.0//EN" "png-support-3.0.dtd"
482              </programlisting> 
483              If you are using the 3.1 DTD, use:
484              <programlisting>
485PUBLIC "-//GNOME//DTD DocBook PNG Variant V1.1//EN" "png-support-3.1.dtd"
486              </programlisting> 
487            </para>
488          </listitem>
489        </itemizedlist>
490        <para>
491          Alternately, you can download and install the
492          <ulink url="http://people.redhat.com/dcm/software.html"
493          type="http">gnome-doc-tools package</ulink> which will set
494          up the custom stylesheets and DTD for you.
495        </para>
496        <para>
497          To include PNG files in your documents, you will need to
498          indicate that you are using this special DTD.  To do
499          this, use the following headers:
500        </para>
501        <para>
502          Articles:
503          <programlisting>
504<![CDATA[<!DOCTYPE Article PUBLIC "-//GNOME//DTD DocBook PNG Variant
505V1.1//EN"[]>]]>
506          </programlisting>
507        </para>
508        <para>
509          Books:
510          <programlisting>
511<![CDATA[<!DOCTYPE Book PUBLIC "-//GNOME//DTD DocBook PNG Variant
512V1.1//EN"[]>]]>
513          </programlisting>
514        </para>
515
516      </sect3>
517      
518      <sect3 id="editors">
519        <title>Editors</title>
520        <para>
521          There are many editors on Linux and UNIX systems available
522          to you. Which editor you use to work on the sgml documents
523          is completely up to you, as long as the editor is able to
524          preserve sgml and produce the source in a format that is
525          readable by everyone.
526        </para>
527        <para>
528          Probably the two most popular editors available are
529          <application>Emacs</application> and
530          <application>vi</application>. These and other editors are
531          used regularly by members of the GDP. Emacs has a major
532          mode, psgml, for editing sgml files which can save you time
533          and effort in adding and closing tags. You will find the
534          psgml package in DocBook Tools, which is the standard set of
535          tools for the GDP. You may find out more about DocBook Tools
536          in <xref linkend="installingdocbook" />.
537        </para>
538      </sect3>
539      
540      <sect3 id="make-output">
541        <title>Creating Something Useful with your Docs</title>
542        <para>
543          The tools available in DocBook Tools allow you to convert
544          your sgml document to many different formats including html
545          and Postscript. The primary tool used to do the conversion
546          is an application called <application>Jade</application>. In
547          most cases you will not have to work directly with
548          <application>Jade</application>; Instead,  you will use the
549          scripts provided by DocBook Tools.
550        </para>
551        <para>
552          To preview your DocBook document, it is easiest to convert
553          it to <filename>html</filename>. If you have installed the
554          DocBook tools described above, all you have to do is to run
555          the command <prompt>$</prompt><command>db2html
556          mydocument.sgml</command>. If there are no sgml syntax
557          errors, this will create a directory <filename
558          class="directory">mydocument</filename> and place the
559          resulting html files in it. The title page of the document
560          will typically be
561          <filename>mydocument/index.html</filename>.  If you have
562          screenshots in your document, you will have to copy these
563          files into the <filename
564          class="directory">mydocument</filename> directory by
565          hand. You can use any web browser to view your document.
566          Note that every time you run <command>db2html</command>, it
567          creates the <filename
568          class="directory">mydocument</filename> directory over, so
569          you will have to copy the screenshots over each time.
570        </para>
571        <para>
572          You can also convert your document to PostScript by running
573          the command <prompt>$</prompt><command>db2ps
574          mydocument.sgml</command>, after which you can print out or
575          view the resulting .ps file.  
576        </para>
577        <note>
578          <title>NOTE</title>
579          <para>
580            The html files you get will not look quite the same as the
581            documentation distributed with GNOME unless you have the
582            custom stylesheets installed on your machine. DocBook
583            Tools' default stylesheets will produce a different look
584            to your docs. You can read more about the GDP stylesheets
585            in <xref linkend="gdpstylesheets" />.
586          </para>
587        </note>
588      </sect3>
589      
590      <sect3 id="jadeimages">
591        <title>Images in DocBook Tools</title>
592        <para>
593          If your document uses images you will need to take note of a
594          few things that should take place in order for you to make
595          use of those images in your output.
596        </para>
597        <para>
598          The DocBook Tools scripts and applications are smart enough
599          to know that when you are creating html you will be using
600          PNG files and when you are creating Postscript you will be
601          using EPS files (you must use EPS with Postscript).
602        </para>
603        <para>
604          Thus, you should never explicitly
605          include the extension of the image file, since DocBook
606          Tools will automatically insert it for you. For example:
607        </para>
608        <programlisting>
609<![CDATA[
610<figure>
611 <title>My Image</title>
612 <screenshot>
613  <screeninfo>Sample GNOME Display</screeninfo>
614  <graphic  format="png" fileref="myfile" srccredit="me">
615  </graphic>
616 </screenshot>
617</figure>
618]]>     </programlisting>
619        <para>
620          You will notice in this example that the file
621          <filename>myfile.png</filename> was referred to as simply
622          <filename>myfile</filename>. Now when you run
623          <command>db2html</command> to create an html file, it will
624          automatically look for <filename>myfile.png</filename> in
625          the directory.
626        </para>
627        <para>
628          If you want to create PostScript ouput, you will need to create an
629          EPS version of your image file to be displayed in the
630          PostScript file. There is a simple script available which
631          allows you to change a PNG image into an EPS file
632          easily. You can download this file - img2eps - from <ulink
633          url="http://people.redhat.com/dcm/sgml.html"
634          type="html">http://people.redhat.com/dcm/sgml.html</ulink>
635          (look for the img2eps section).  Note that this script is
636          included in the gnome-doc-tools package, so if you are using
637          this package, you should already have
638          <command>img2eps</command> on you system.
639        </para>
640      </sect3>
641      
642      <sect3 id="moredocbookinfo">
643        <title>Learning DocBook</title>
644        <para>
645          There are many resources available to help you learn DocBook.
646          The following resources on the web are useful for learning
647          DocBook:
648        </para>
649        <itemizedlist mark="bullet">
650          <listitem>
651            <para>
652              <ulink url="http://www.docbook.org"
653              type="http">http://www.docbook.org</ulink>  - Norman
654              Walsh's <citetitle>DocBook: The Definitive
655              Guide</citetitle>.  Online O'Reilly book on using
656              DocBook. Contains an excellent element reference. May be
657              too formal for a beginner.
658            </para>
659          </listitem>
660          <listitem>
661            <para>
662              <ulink
663              url="http://www.oswg.org/oswg-nightly/oswg/en_US.ISO_8859-1/articles/DocBook-Intro/docbook-intro/index.html"
664              type="http">A Practical Introduction to DocBook</ulink>
665              - The Open Source Writers Group's introduction to using
666              DocBook. This is an excellent HOW-TO type article on
667              getting started.
668            </para>
669          </listitem>
670          <listitem>
671            <para>
672              <ulink
673              url="http://nis-www.lanl.gov/~rosalia/mydocs/docbook-intro/docbook-intro.html"
674              type="http">Getting Going with DocBook: Notes for
675              Hackers</ulink> - Mark Galassi's introduction to DocBook
676              for hackers. This has to be one of the first
677              introductions to DocBook ever - still as good as it ever
678              was.
679            </para>
680          </listitem>
681          <listitem>
682            <para>
683              <ulink type="http" url="http://www.freebsd.org/tutorials/docproj-primer/">
684              FreeBSD Documentation Project Primer for New
685              Contributors</ulink> - FreeBSD documentation project
686              primer. Chapter 4.2 provides a very good introduction to
687              writing documentation using DocBook. Note that it also
688              describes some custom extensions of DocBook;
689              fortunately, they are clearly marked as such.
690            </para>
691          </listitem>
692        </itemizedlist>
693        <para>
694          Norman Walsh's book is also available in print.
695        </para>
696        <para>
697          The following sections of this document are designed to help
698          documentation authors write correct and consistent DocBook:
699        </para>
700        <itemizedlist mark="bullet">
701          <listitem>
702            <para>
703              <xref linkend="docbookbasics" /> - Descriptions of
704              commonly used DocBook tags.
705            </para>
706          </listitem>
707        </itemizedlist>
708        <para>
709          You may also discuss specific DocBook questions with GDP
710          members on the #docs IRC channel at irc.gnome.org and on the
711          gnome-doc-list mailing list.
712        </para>
713      </sect3>
714    </sect2>
715   
716<!-- ####### Getting Started | GDP Document Examples ####### -->
717<!--
718    <sect2 id="examples">
719      <title>GDP Document Examples</title>
720      <para>
721        Examples of various types of GNOME documents are found in
722        <xref linkend="examples" />.  There is also an example GNOME
723        application with documentation called
724        <application>gnome-hello</application> in GNOME cvs.
725      </para>
726    </sect2>
727-->
728<!-- ####### Getting Started | GDP Document Templates ####### -->
729
730    <sect2 id="gdptemplates">
731      <title>GDP Document Templates</title>
732      <para>
733        Templates for various types of GNOME documents are found in
734        <xref linkend="templates" />.  They are kept in CVS in
735        gnome-docu/gdp/templates. The easiest source to get them from
736        is probably the <ulink
737        url="http://developer.gnome.org/projects/gdp/templates.html" 
738        type="http">GDP
739        Document Templates</ulink> web page, which is typically kept
740        completely up-to-date with CVS and has a basic description of
741        each file from CVS.
742      </para>
743    </sect2>
744
745<!-- ####### Getting Started | Screenshots ####### -->
746
747    <sect2 id="screenshots">
748      <title>Screenshots</title>
749      <para>
750        Most GNOME documents will have screenshots of the particular
751        applet, application, GNOME component, or widget being
752        discussed.  As discussed above in <xref linkend="gdpdtd"/> you
753        will need to install the special GDP DocBook DTD which
754        supports PNG images, the format used for all images in GNOME
755        documentation. For the basic DocBook structure used to insert
756        images in a document, see <xref linkend="jadeimages"/> above.
757      </para>
758      <sect3 id="screenshotappearance">
759        <title>Screenshot Appearance</title>
760        <para>
761          For all screenshots of windows that typically have border
762          decorations (e.g. applications and dialogs, but not applets
763          in a <interface>panel</interface>), GDP standards dictate
764          the appearance of the window.  (This is to minimize possible
765          confusion to the reader, improve the appearance of GNOME
766          documents, and guarantee the screenshot is readable when
767          printed.) All screenshots should be taken with the SawFish
768          (formerly known as Sawmill) window manager using the
769          MicroGui theme and Helvetica 12pt font. (A different window
770          manager can be used provided the MicroGui theme is available
771          for this window manager and the appearance is identical to
772          that when using the SawFish window manager.) The default
773          GTK+ theme(gtk) and font (Helvetica 12 pt) should be used
774          for all screenshots.  If you are unable to provide
775          screenshots in this form, you should create screenshots as
776          you wish them to appear and send them to the
777          <ulink url="http://mail.gnome.org/mailman/listinfo/gnome-doc-list/">
778          <citetitle>gnome-doc-list mailing list</citetitle> </ulink>
779          requesting a GDP member reproduce these screenshots in the
780          correct format and email them to you.
781        </para>
782      </sect3>
783      <sect3 id="screenshottools">
784        <title>Screenshot Tools</title>
785        <para>
786          There are many tools for taking screenshots in
787          GNOME/Linux. Perhaps the most convenient is the
788          <application>Screen-Shooter Applet</application>. Just click
789          on the window icon in the applet and then on the window you
790          would like to take a screenshot of. (Note that
791          at the time of this writing, PNG images taken by
792          screenshooter do not appear properly in
793          <application>Netscape</application> or the
794          <application>GNOME Help Browser</application>.  You
795          should save your screenshot as a GIF and
796          then use <command>convert filename.gif
797          filename.png</command>.) For applets
798          in a <interface>Panel</interface>,
799          <application>xv</application> can be used to crop the
800          screenshot to only include the relevant portion of the
801          <interface>Panel</interface>. Note that
802          <application>xv</application> and 
803          <application>gimp</application> can both be used for taking
804          screenshots, cropping screenshots, and converting image
805          formats. 
806        </para>
807      </sect3>
808      <sect3 id="screenshotfiles">
809        <title>Screenshot Files</title>
810        <para>
811          Screenshots should be kept in the main documentation
812          directory with your SGML file for applets, or should be
813          kept in a directory called "figs" for application and other
814          documentation.  After you use <command>db2html</command> to
815          convert your SGML file to HTML (see <xref
816          linkend="make-output"/>), you will need to copy your
817          screenshots (either the individual PNG files for applet
818          documentation, or the whole "figs" directory for other
819          documentation) into the newly created HTML directory.  Note
820          that every time you use <command>db2html</command> the HTML
821          directory is erased and rewritten, so do not store your only
822          copy of the screenshots in that directory.  If you wish to
823          create PostScript or PDF output, you will need to manually
824          convert the PNG images to EPS as described in <xref
825          linkend="jadeimages"/>, but will not need to copy these
826          images from their default location, as they are included
827          directly into the output(PostScript of PDF) file.
828        </para>
829      </sect3>
830    </sect2>
831
832
833<!-- ####### Getting Started | Application Bugs ####### -->
834
835    <sect2 id="applicationbugs">
836      <title>Application Bugs</title>
837      <para>
838        Documentation authors tend to investigate and test applets and
839        applications more thoroughly than most 
840        users.  Often documentation authors will discover one or
841        more bugs in the software.  These bugs vary from small ones,
842        such as mis-spelled words or missing
843        <interface>About</interface> dialogs in the menu, to large
844        ones which cause the applet to crash.  As all users, you
845        should be sure to report these bugs so that application
846        developers know of them and can fix them.  The easiest way to
847        submit a bug report is by using the <application>Bug
848        Buddy</application> applet which is part of the gnome-applets
849        package.  
850      </para>
851    </sect2>
852
853
854<!-- ####### Getting Started | Using CVS  ####### -->
855
856    <sect2 id="cvs">
857      <title>Using CVS</title>
858      <para>
859        CVS (Concurrent Versions System) is a tool that allows
860        multiple developers to concurrently work on a set of
861        documents, keeping track of the modifications made by each
862        person.  The files are stored on a server and each developer
863        checks files out, modifies them, and then checks in their
864        modified version of the files.  Many GNOME programs and
865        documents are stored in CVS.  The GNOME CVS server allows
866        users to anonymously check out CVS files. Most GDP members
867        will need to use anonymous CVS to download the most up-to-date
868        version of documentation or programs.  Modified documents will
869        typically be emailed to the the application developer. Core
870        GDP members may also be granted login CVS privileges so they
871        may commit modified files directly to CVS.
872      </para>
873
874      <sect3 id="anonymouscvs">
875        <title>Anonymous CVS</title>
876        <para>
877          To anonymously check out documents from CVS, you must first
878          log in.  From the bash shell, you should set your CVSROOT
879          shell variable with <command>  export
880          CVSROOT=':pserver:anonymous@anoncvs.gnome.org:/cvs/gnome'</command>
881          and then login with <command>cvs login</command>(there is no
882          password, just hit return). As an example, we will use the
883          "gnome-docu/gdp" module which contains this and several
884          other documents. To check these documents out for the first
885          time, type <command>cvs -z3 checkout
886          gnome-docu/gdp</command>. After you have this document
887          checked out and you would like to download any updates on
888          the CVS server, use <command>cvs -z3 update -Pd</command>.
889        </para>
890      </sect3>
891
892      <sect3 id="logincvs">
893        <title>Login CVS</title>  <para>  If you have been given a
894        login for the GNOME CVS server,  you may commit your file
895        modifications to CVS.  Be sure to read the following section
896        on CVS etiquette before making any commits to CVS.  To log in
897        to the CVS server as user
898        <command><replaceable>username</replaceable></command> with a
899        password, you must first set your CVSROOT shell variable with
900        <command> export
901        CVSROOT=':pserver:<replaceable>username</replaceable>@cvs.gnome.org:/cvs/gnome'</command>.
902        Log in with <command>cvs login</command> and enter your
903        password. You may check out and update modules as described
904        above for anonymous CVS access.  As a login CVS user, you may
905        also check modified versions of a file into the CVS server.
906        To check
907        <command><replaceable>filename</replaceable></command> into
908        the CVS server, type <command>cvs -z3 commit
909        <replaceable>filename</replaceable></command>. You will be
910        given a vi editor window to type in a brief log entry,
911        summarizing your changes.  The default editor can be changed
912        using the <varname>EDITOR</varname> environment variable or
913        with the <command><option>-e</option></command> option. You
914        may also check in any modifications to files in the working
915        directory and subdirectories using <command>cvs -z3
916        commit</command>.  To
917        add a new file to the CVS server, use <command>cvs -z3 add
918        <replaceable>filename</replaceable></command>, followed by the
919        commit command.
920        </para>
921      </sect3>
922
923      <sect3 id="cvsetiquette">
924        <title>CVS Etiquette</title>
925        <para>
926          Because files in CVS are typically used and modified by
927          multiple developers and documentation authors, users should
928          exercise a few simple practices out of courtesy towards the
929          other CVS users and the project leader.  First, you should
930          not make CVS commits to a package without first discussing
931          your plans with the project leader.  This way, the project
932          leader knows who is modifying the files and generally, what
933          sort of changes/development is being done.  Also, whenever a
934          CVS user commits a file to CVS, they should make an entry in
935          the CVS log and in the <filename>ChangeLog</filename> so
936          that other users know who is making modifications and what
937          is being modified.  When modifying files created by others,
938          you should follow the indentation scheme used by the initial
939          author.
940        </para>
941      </sect3>
942    </sect2>
943  </sect1>
944  
945<!-- ################# The GNOME Documentation System###############
946-->
947
948  <sect1 id="gnomedocsystem">
949    <title>The GNOME Documentation System</title>
950
951<!-- ####### The GNOME Documentation System | The GNOME Help Browser
952####### -->
953    
954    <sect2 id="gnomehelpbrowser">
955      <title>The GNOME Help Browser</title>
956      <para>
957        At the core of the GNOME help system is the <application>GNOME
958        Help Browser</application>. The <application>Help
959        Browser</application> provides a unified interface to several
960        distinct documentation systems on Linux/Unix systems: man
961        pages, texinfo pages, Linux Documentation Project(LDP)
962        documents, GNOME application documentation, and other GNOME
963        documents.
964      </para>
965      <para>
966        The <application>GNOME Help Browser</application> works by
967        searching standard directories for documents which are to be
968        presented.  Thus, the documentation that appears in the GHB is
969        specific to each computer and will typically only represent
970        software that is installed on the computer.
971      </para>
972    </sect2>
973
974<!-- ####### The GNOME Documentation System | The GNOME Help Browser
975####### -->
976
977    <sect2 id="gnomehelpbrowser2">
978      <title>The GNOME Help Browser (GNOME-2.0)</title> <para> In
979      GNOME 2.0, the <application>GNOME Help Browser</application>
980      will be replaced by <application>Nautilus</application>.
981      Nautilus will be the file manager/graphical shell for GNOME 2.0
982      and will also implement a more sophisticated help system than
983      that used by the <application>GNOME Help Browser</application>
984      used in GNOME 1.0.  It will read and display DocBook files
985      directly, avoiding the need for duplicating documents in both
986      DocBook and HTML formats.  Its display engine for DocBook will
987      be much faster than running <application>jade</application> to
988      convert to HTML for rendering.  Because it uses the original
989      DocBook source for documentation, it will be possible to do more
990      sophisticated searching using the meta information included in
991      the documents.  And since Nautilus is a virtual file system
992      layer which is Internet-capable, it will be able to find and
993      display documents which are on the web as well as those on the
994      local file system. For more information on
995      <application>Nautilus</application>, visit the #nautilus IRC
996      channel on irc.gnome.org.  </para>
997    </sect2>
998
999<!-- ####### The GNOME Documentation System | GNOME On-The-Fly
1000Documentation Generation  ####### -->
1001    
1002    <sect2 id="gnomehelponthefly">
1003      <title>Dynamic Document Synthesis(GNOME-2.0)</title>
1004      <para>
1005        GNOME uses the documentation presented by all the various
1006        GNOME components and applications installed on the system to
1007        present a complete and customized documentation environment
1008        describing only components which are currently installed on a
1009        users system.  Some of this documentation, such as the manuals
1010        for applets, will be combined in such a way that it appears to
1011        be a single document.
1012      </para>
1013      <para>
1014        By using such a system, you can be sure that any GNOME app you
1015        install that has documentation will show up in the index,
1016        table of contents, any search you do in the help browser.
1017      </para>
1018    </sect2>
1019    
1020<!-- ####### The GNOME Documentation System | The GNOME Documentation
1021Components  ####### -->
1022
1023    <sect2 id="gnomehelpcomponents">
1024      <title>The GNOME Documentation Components</title>
1025
1026      <sect3 id="applicationmanualsintro">
1027        <title>Application Manuals</title>
1028        <para>
1029          Every GNOME application should have an application manual.
1030          An application manual is a document specific to the
1031          particular application which explains the various windows
1032          and features of the application.  Application Manuals
1033          typically use screenshots (PNG format) for clarity.  Writing
1034          application manuals is discussed in more detail in <xref
1035          linkend="writingapplicationmanuals" /> below.
1036        </para>
1037      </sect3>
1038
1039      <sect3 id="applicationhelpintro">
1040        <title>Application Help</title>
1041        <para>
1042          Applications should have a <guibutton>Help</guibutton>
1043          button on screens on which users may need help.  These
1044          <guibutton>Help</guibutton> buttons should pull up the
1045          default help browser, determined by the
1046          <varname>ghelp</varname> URL Handler (configured using the
1047          <application>Control Center</application>), typically the
1048          <application>GNOME Help Browser</application>.  The help
1049          browser should show either the first page of the application
1050          manual, or else the relevant page thereof. Application help
1051          is described in more detail in <xref
1052          linkend="applicationhelpbuttons" /> below.
1053        </para>
1054      </sect3>
1055
1056      <sect3 id="contextsensitivehelpintro">
1057        <title>Application Context Sensitive Help (coming in
1058        GNOME-2.0)</title>
1059        <para>
1060          Context sensitive help is a system which will allow the user
1061          to query any part (button, widget, etc.) of an application
1062          window.  This is done by either entering a CS Help mode by
1063          clicking on an icon or by right clicking on the application
1064          part and selecting "What's This" or whatever is decided on
1065          at the time.  Context sensitive help is described in more
1066          detail in <xref linkend="writingcontextsensitivehelp" />
1067          below.
1068        </para>
1069      </sect3>
1070
1071      <sect3 id="userguide">
1072        <title>The GNOME User Guide</title>
1073        <para>
1074          The <citetitle>GNOME User Guide</citetitle> describes the
1075          GNOME desktop environment and core components of GNOME such
1076          as the <application>panel</application> and
1077          <application>control center</application>. In GNOME 1.x this
1078          was the main and only source of documentation. In GNOME 2.0
1079          this will become a document for the web and for printing
1080          that is derived from various parts chosen in the system that
1081          are necessary for the new user to understand.
1082        </para>
1083      </sect3>
1084
1085      <sect3 id="userdocs">
1086        <title>User Documents</title>
1087        <para>
1088          Aside from the <citetitle>GNOME User Guide</citetitle>,
1089          there are several other documents to help GNOME users learn
1090          GNOME, including the <citetitle>GNOME FAQ</citetitle>,
1091          <citetitle>GNOME Installation and Configuration
1092          Guide</citetitle>, and the <citetitle>GNOME Administrators
1093          Guide</citetitle>.
1094        </para>
1095      </sect3>
1096
1097      <sect3 id="developerdocs">
1098        <title>Developer Documents</title>
1099        <para>
1100          There are many White Papers, Tutorials, HOWTO's and FAQ's to
1101          make programming GNOME and GNOME applications as easy as
1102          possible.
1103        </para>
1104        <para>
1105          API documentation is also available for the GNOME libraries. This is
1106          detailed documentation of the code that is used to build GNOME
1107          apps. You can keep up with the GNOME API docs on the <ulink
1108          url="http://developer.gnome.org/doc/API/" type="http">GNOME API
1109          Reference</ulink> page.
1110        </para>
1111      </sect3>
1112
1113      <sect3 id="projectdocs">
1114        <title>Project Documents</title>
1115        <para>
1116          Some GNOME projects have documentation to maintain
1117          consistency in their product and to help new contributors
1118          get up to speed quickly. Among these are the GDP documents,
1119          such as the one you are reading now.
1120        </para>
1121      </sect3>
1122    </sect2>
1123  </sect1>
1124  
1125  
1126<!-- ################# DocBook Basics ############### -->
1127
1128  <sect1 id="docbookbasics">
1129    <title>DocBook Basics </title>  
1130<!-- ####### DocBook Basics | Introduction to DocBook ####### -->
1131
1132    <sect2 id="introtodocbook">
1133      <title>Introduction to DocBook</title>
1134      <para>
1135        To understand DocBook, a basic understanding of SGML is
1136        helpful. SGML stands for Standard General Markup Language and
1137        is one of the first markup languages every created. HTML is
1138        actually derived from SGML and XML is a subset of SGML.  SGML
1139        uses what is called a Document Type Definition to specify
1140        <emphasis>elements</emphasis> which are contained between
1141        brackets, &lt; and >. Text is marked by both beginning and
1142        ending elements, for example in the DocBook DTD, one denotes a
1143        title with <sgmltag>&lt;title></sgmltag>The
1144        Title<sgmltag>&lt;/title></sgmltag>.
1145      </para>
1146      <para>
1147        The DTD (in the case of the GDP, DocBook) defines rules for how the
1148        elements can be used. For example, if one element can only be used when
1149        embedded within another, this is defined in the DTD.
1150      </para>
1151      <para> 
1152	An SGML file is just a plain ASCII file containing the text
1153	with the markup specified above. To convert it  to some easily
1154	readable format, you need special tools. The GDP uses <emphasis>DocBook
1155        Tools</emphasis>, a free package of utilities for working with DocBook
1156        which includes <emphasis>Jade</emphasis>, which does the SGML/DSSL
1157        parsing. You can read more about DocBook Tools in <xref
1158        linkend="installingdocbook" />. 
1159      </para>
1160      <para>
1161        The final appearance of the output (e.g. PostScript or HTML)
1162        is determined by a
1163        <emphasis>stylesheet</emphasis>. Stylesheets are files,
1164        written in a special language (DSSSL &mdash; Document Style
1165        Semantics and Specification Language), which  specify the
1166        appearance of various DocBook elements, for example,
1167        what fonts to use for titles and various inline elements, page
1168        numbering style, and much more. DocBook tools come with a
1169        collection of stylesheets (Norman Walsh's modular
1170        stylesheets); GNOME Document Project uses some customized
1171        version of this stylesheets &mdash; see <xref
1172        linkend="gdpstylesheets"/>.   
1173      </para>
1174      <para>
1175        The advantage of specifying the <emphasis>structure</emphasis>
1176        of a document with SGML instead of specifying the
1177        <emphasis>appearance</emphasis> of the document with a typical
1178        word processor, or with html, is that the resulting document
1179        can be processed in a variety of ways using the structural
1180        information.  Whereas formatting a document for appearance
1181        assumes a medium (typically written text on a standard-sized
1182        piece of paper), SGML can be processed to produce output for a
1183        large variety of media such as text, postscript, HTML,
1184        Braille, audio, and potentially many other formats.
1185      </para>
1186      <para>
1187        Using 'content' as the elements to define the text of a document also
1188        allows for search engines to make use of the actual elements to make a
1189        "smarter search". For example, if you are searching for all documents
1190        written by the author "Susie" your search engine could be made smart
1191        enough to only search &lt;author> elements, making for a faster and more
1192        accurate search.
1193      </para>
1194      <para>
1195        Since the overall appearance of the output is determined not by the DTD
1196        or the SGML document, but rather by a stylesheet, the appearance of a
1197        document can be easily changed just by changing the stylesheet. This
1198        allows everyone in the project to create documents that all look the
1199        same.
1200      </para>
1201      <para>
1202        As stated before, the GDP uses the DocBook DTD.  For a list of
1203        introductory and reference resources on DocBook, see <xref
1204        linkend="resources" />.  The following sections also provide
1205        convenient instructions on which markup tags to use in various
1206        circumstances.  Be sure to read <xref linkend="conventions" />
1207        for GDP documentation-specific guidelines.
1208      </para>
1209    </sect2>
1210    
1211 <!-- ######  DocBook Basics | XML and SGML       ########--> 
1212 <sect2 id="xml">
1213      <title>XML and SGML</title>
1214
1215      <para> In not so distant future (probably before GNOME 2.0),
1216      DocBook itself and GNOME Documentation project will migrate from
1217      SGML to XML. This transition should be relatively painless:
1218      (almost) all DocBook tags will remain the same. However, XML has
1219      stricter syntax rules than SGML; thus, some constructions which
1220      are valid in SGML will not be valid in XML. Therefore, to be
1221      ready for this transistion, it is <emphasis>strongly
1222      advised</emphasis> that the documentation writers conform to XML
1223      syntax rules. Here are most important differences:
1224      </para>
1225	
1226      <variablelist>
1227	  <varlistentry>
1228	    <term> <emphasis>Minimization</emphasis></term> 
1229	    <listitem>
1230	    
1231	    <para>
1232	      It is possible with some implementations of SGML to use
1233	      minimizations to close elements in a document by using
1234	      &lt;/>, for example:
1235	      <literal><sgmltag>&lt;title></sgmltag>The
1236		Title<sgmltag>&lt;/></sgmltag></literal>. This is not
1237              allowed in XML. You can use <command>sgmlnorm</command> command,
1238              included in DocBook Tools package, to expand minimized tags;
1239              if you are using <application>Emacs</application> with psgml
1240              mode, you can also use menu command
1241          <menuchoice>
1242             <guimenu>Modify</guimenu>
1243             <guimenuitem>Normalize</guimenuitem>
1244          </menuchoice>.
1245         </para> 
1246	    </listitem>
1247	    </varlistentry>
1248	  <varlistentry>
1249	    <term> <emphasis>Self-closing tags</emphasis></term> 
1250	    <listitem>
1251 
1252         <para>
1253            Also, in SGML some tags are allowed not to have closing
1254            tags.  For example, it is legal for
1255            <sgmltag>&lt;xref></sgmltag> not to have a closing tag: 
1256            <literal><sgmltag>&lt;xref 
1257                   linkend="someid"></sgmltag></literal>. In
1258            XML, it is illegal; instead, you should use  
1259            <literal><sgmltag>&lt;xref 
1260                   linkend="someid"/></sgmltag></literal> (note the
1261            slash!).
1262          </para> 
1263  </listitem>
1264  </varlistentry>
1265
1266	<varlistentry>
1267	    <term> <emphasis>Case sensitive tags</emphasis></term> 
1268	    <listitem>
1269	    <para>
1270	      In XML, unlike SGML, tags are case-senstive
1271	      <sgmltag>&lt;title></sgmltag> and
1272	      <sgmltag>&lt;TITLE></sgmltag> are different tags!
1273	      Therefore, please always use lowercase tags (except for
1274	      things like <literal>DOCTYPE, CDATA</literal> and
1275	      <literal>ENTITY</literal>, which are not DocBook tags). 
1276	    </para>
1277	  </listitem>
1278	</varlistentry>
1279
1280
1281
1282</variablelist> 
1283</sect2>
1284
1285
1286
1287    <!-- ####### DocBook Basics | Structure Elements ####### -->
1288
1289    
1290    <sect2 id="structure"> <title> Structure Elements</title>
1291
1292      <sect3 id="section">
1293        <title>Sections and paragraphs</title>
1294        <para>
1295          Top-level element of a book body must be
1296          <sgmltag>&lt;chapter></sgmltag>; it may contain one or more
1297          <sgmltag>&lt;sect1></sgmltag>, each of them may contain
1298          <sgmltag>&lt;sect2></sgmltag> and so on up to
1299          <sgmltag>&lt;sect5></sgmltag>. The top-level element of an
1300          article body is always
1301          <sgmltag>&lt;sect1></sgmltag>. Regardless of which elements
1302          you use, give each structural element a unique id, so that
1303          you can link to it. For usage example, see the template.
1304        </para>
1305        <para> Please try to avoid using deeply nested sections; for
1306          most situations, <sgmltag>&lt;sect1></sgmltag> and
1307          <sgmltag>&lt;sect2></sgmltag> should be sufficient. If not,
1308          you probably should split your <sgmltag>&lt;sect1></sgmltag>
1309          into several smaller ones.
1310        </para>
1311        <para> Use the tag <sgmltag>&lt;para></sgmltag> for
1312          paragraphs, even if there is only one paragraph in a
1313          section&mdash;see template for examples.
1314        </para>
1315      </sect3>
1316
1317      <sect3 id="notes">
1318        <title>Notes, Warnings, And Tips</title>
1319        <para>
1320          For notes, tips, warnings, and important information, which
1321          should be set apart from the main text (usually as a
1322          paragraph with some warning sign on the margin), use tags
1323          <sgmltag>&lt;note></sgmltag>, <sgmltag>&lt;tip></sgmltag>,
1324          <sgmltag>&lt;warning></sgmltag>,
1325          <sgmltag>&lt;important></sgmltag> respectively. For example:
1326          <programlisting>
1327<![CDATA[
1328<tip>
1329 <title>TIP</title>
1330 <para>
1331  To speed up program compilation, use <application>gcc</application>
1332  compiler with Pentium optimization.
1333 </para>
1334</tip>]]> </programlisting>  produces
1335        </para>
1336        <tip id="extip">
1337          <title>TIP</title>
1338          <para>
1339            To speed up program compilation, use
1340            <application>gcc</application> compiler with Pentium
1341            optimization.  </para>
1342        </tip>
1343        <para>
1344          Note that this should not be inside a
1345          <sgmltag>&lt;para></sgmltag> but between paragraphs.
1346        </para>
1347      </sect3>
1348      <sect3 id="figures">
1349        <title> Screenshots and other figures</title>
1350        <para>
1351          To include screenshots and other figures, use the following
1352          tags:
1353          
1354          <programlisting>
1355<![CDATA[
1356<figure id="shot1">
1357 <title>Screenshot</title>
1358 <screenshot>
1359  <screeninfo>Screenshot of a program</screeninfo>
1360  <graphic format="PNG"  fileref="figures/example_screenshot" srccredit="ME">
1361  </graphic>
1362 </screenshot>
1363</figure>]]>
1364          </programlisting>
1365          replacing <filename>example_screenshot</filename> with the
1366          actual file name (without extension). The result will look like this:
1367          
1368          <figure id="shot1">
1369            <title>Screenshot</title>
1370            <screenshot>
1371              <screeninfo>Screenshot of a program</screeninfo>
1372              <graphic format="PNG"
1373		       fileref="figures/example_screenshot" srccredit="ME"/>
1374              
1375            </screenshot>
1376          </figure>
1377        </para>
1378        <note>
1379          <title>NOTE</title>
1380          <para>
1381            Notice in this example that the screenshot file name does
1382            not include the file type extension &mdash; to find out
1383            why, please read <xref linkend="jadeimages" />.
1384          </para>
1385        </note>          
1386      </sect3>
1387      <sect3 id="listing">
1388        <title>Program listings and terminal session</title> <para>
1389          To show a file fragment&mdash;for example, program
1390          listing&mdash;use <sgmltag>&lt;programlisting></sgmltag> tag:
1391          <programlisting>
1392<![CDATA[
1393<programlisting>
1394[Desktop Entry] 
1395Name=Gnumeric spreadsheet
1396Exec=gnumeric 
1397Icon=gnome-gnumeric.png 
1398Terminal=0
1399Type=Application
1400</programlisting>]]>
1401          </programlisting>
1402          which produces
1403          <programlisting>
1404[Desktop Entry] 
1405Name=Gnumeric spreadsheet 
1406Exec=gnumeric
1407Icon=gnome-gnumeric.png 
1408Terminal=0 
1409Type=Application
1410          </programlisting>
1411          As a matter of fact, all examples in this document were
1412          produced using <sgmltag>&lt;programlisting></sgmltag>.
1413        </para>
1414        <para>
1415          To show a record of terminal session&mdash;i.e., sequence of
1416          commands entered at the command line&mdash;use
1417          <sgmltag>&lt;screen></sgmltag> tag:
1418          <programlisting>
1419<![CDATA[
1420<screen>
1421<prompt>bash$</prompt><userinput>make love</userinput> 
1422make: *** No rule to make target `love'. Stop.
1423</screen>]]>
1424          </programlisting>
1425          which produces
1426          <screen>
1427<prompt>bash$</prompt><userinput>make love</userinput>  
1428make: *** No rule to make target `love'.  Stop.
1429          </screen>
1430          Note the use of tags <sgmltag>&lt;prompt></sgmltag> and
1431          <sgmltag>&lt;userinput></sgmltag> for marking system prompt
1432          and commands entered by user.
1433          <note>
1434            <title>NOTE</title>
1435            <para>
1436              Note that both <sgmltag>&lt;programlisting></sgmltag>
1437              and <sgmltag>&lt;screen></sgmltag> preserve linebreaks,
1438              but interpret SGML tags (unlike LaTeX
1439              <markup>verbatim</markup> environment). Take a look at
1440              the source of this document to see how you can have SGML
1441              tags literally shown but not interpreted,
1442            </para>
1443          </note>
1444        </para>
1445      </sect3>
1446      <sect3 id="lists">
1447	<title> Lists</title>
1448	<para>
1449	  The most common list types  in DocBook are
1450	  <sgmltag>&lt;itemizedlist></sgmltag>,
1451	  <sgmltag>&lt;orderedlist></sgmltag>, and 
1452	  <sgmltag>&lt;variablelist></sgmltag>.
1453	</para>
1454	<variablelist>
1455	  <varlistentry>
1456	    <term> <sgmltag>&lt;itemizedlist></sgmltag></term> 
1457	    <listitem><para> 
1458		This is the simplest unnumbered list, parallel to
1459	    <sgmltag>&lt;ul></sgmltag> in HTML. Here is an example: 
1460		<programlisting>
1461<![CDATA[
1462<itemizedlist>
1463  <listitem>
1464    <para>
1465      <guilabel>Show backup files</guilabel> &mdash; This will
1466      show any backup file that might be on your system.
1467    </para>
1468  </listitem>
1469  <listitem>
1470    <para>
1471      <guilabel>Show hidden files</guilabel> &mdash; This will
1472      show all "dot files" or files that begin with a dot.  This
1473      files typically include configuration files and directories.
1474    </para>
1475  </listitem>
1476  <listitem>
1477    <para>
1478      <guilabel>Mix files and directories</guilabel> &mdash; This
1479      option will  display files and directories in the order you
1480      sort them instead of 
1481      always having directories shown above files.
1482    </para>
1483   </listitem>
1484</itemizedlist> 
1485]]>
1486		</programlisting>
1487		and output:
1488                </para>
1489		<itemizedlist>
1490		  <listitem>
1491		    <para>
1492		      <guilabel>Show backup files</guilabel> &mdash;
1493		      This will show any backup file that might be on
1494		      your system.
1495		    </para>
1496		  </listitem>
1497
1498		  <listitem>
1499		    <para>
1500		      <guilabel>Show hidden files</guilabel> &mdash;
1501		      This will show all "dot files" or files that
1502		      begin with a dot.  This files typically include
1503		      configuration files and directories.
1504		    </para>
1505		  </listitem>
1506
1507		  <listitem>
1508		    <para>
1509		      <guilabel>Mix files and directories</guilabel>
1510		      &mdash; This option will display files and
1511		      directories in the order you sort them instead
1512		      of always having directories shown above files.
1513		    </para>
1514		  </listitem>
1515		</itemizedlist>
1516              <para> Note the use of <sgmltag>&amp;mdash;</sgmltag>
1517              for long dash (see <xref linkend="specsymb" />). Also,
1518              please note that the result looks much nicer because the
1519              terms being explained (<guilabel>Show backup
1520              files</guilabel>, etc.) are set in a different font. In
1521              this case, it was achieved by using <link
1522              linkend="gui"><sgmltag>&lt;guilabel></sgmltag></link>
1523              tag. In other cases, use appropriate tags such as
1524              <link linkend="gui"><sgmltag>&lt;guimenuitem></sgmltag></link>,
1525              <link
1526              linkend="filenames"><sgmltag>&lt;command></sgmltag></link>,
1527              or &mdash; if none of
1528              this applies &mdash; use
1529              <link linkend="gui"><sgmltag>&lt;emphasis></sgmltag></link>.
1530	      </para>
1531	    </listitem>
1532	  </varlistentry>
1533	  <varlistentry>
1534	    <term> <sgmltag>&lt;orderedlist></sgmltag></term> 
1535	    <listitem><para>
1536		This list is completely analogous to
1537		<sgmltag>&lt;itemizedlist></sgmltag> and has the same
1538		syntax, but  it produces numbered list. By default,
1539		this list uses Arabic numerals for numbering entries;
1540		you can override this using <sgmltag>numeration</sgmltag>,
1541		for example <sgmltag>&lt;orderedlist
1542		  numeration="lowerroman"></sgmltag>. Possible values of
1543		these attribute are <sgmltag>arabic</sgmltag>,
1544		<sgmltag>upperalpha</sgmltag>,
1545		<sgmltag>loweralpha</sgmltag>,
1546		<sgmltag>upperroman</sgmltag>,
1547		<sgmltag>lowerroman</sgmltag>.
1548	      </para></listitem>
1549	  </varlistentry>
1550
1551	  <varlistentry>
1552	    <term> <sgmltag>&lt;variablelist></sgmltag></term>
1553	    <listitem><para> This list is used when each entry is
1554	    rather long, so it should be formatted as a block of text
1555	    with some subtitle, like a small subsection.  The
1556	    <sgmltag>&lt;variablelist></sgmltag> is more complicated
1557	    than itemizedlists, but for larger blocks of text, or when
1558	    you're explaining or defining something, it's best to use
1559	    them.  Their greatest advantage is that it's easier for a
1560	    computer to search.  The lines you are reading now were
1561	    produced by <sgmltag>&lt;variablelist></sgmltag>. The
1562	    source looked liked this:
1563		<programlisting>
1564<![CDATA[
1565<variablelist>
1566  <varlistentry>
1567    <term> <sgmltag>&lt;itemizedlist></sgmltag></term> 
1568    <listitem><para> 
1569	This is the simplest unnumbered list, parallel to
1570        <sgmltag>&lt;ul></sgmltag> in HTML. Here is an example:...
1571    </para></listitem>
1572    </varlistentry>
1573    <varlistentry>		 
1574	<term> <sgmltag>&lt;orderedlist></sgmltag></term>
1575     <listitem><para>	
1576	This list is completely analogous to
1577	<sgmltag>&lt;itemizedlist></sgmltag> 
1578    </para></listitem>
1579    </varlistentry>
1580    <varlistentry>		 
1581	<term> <sgmltag>&lt;variablelist></sgmltag></term>
1582     <listitem><para>	
1583		This list is used when each entry is rather long,...
1584    </para></listitem>
1585    </varlistentry>
1586</variablelist>        
1587]]>
1588		</programlisting>		
1589		</para>
1590	    </listitem>
1591	  </varlistentry>
1592	</variablelist>
1593	<para>
1594	Lists can be nested; in this case, the stylesheets
1595	are smart enough to change the numeration (for
1596	<sgmltag>&lt;orderedlist></sgmltag>) or marks of each entry
1597	(in  <sgmltag>&lt;itemizedlist></sgmltag>) for sub-lists
1598	</para>
1599      </sect3>
1600
1601    </sect2>
1602
1603<!-- ####### DocBook Basics | Inline Elements ####### -->
1604
1605    <sect2 id="inline">
1606      <title>Inline Elements</title>
1607
1608      <sect3 id="gui">
1609        <title>GUI elements</title>
1610        <itemizedlist>
1611          <listitem>
1612            <para>
1613              <sgmltag>&lt;guibutton></sgmltag> &mdash; used for
1614              buttons, including checkbuttons and radio buttons
1615            </para>
1616          </listitem>
1617          
1618          <listitem>
1619            <para>
1620              <sgmltag>&lt;guimenu></sgmltag>, 
1621              <sgmltag>&lt;guisubmenu></sgmltag> &mdash;used for 
1622	      top-level menus and submenus
1623              respectively, for example <literal><![CDATA[
1624              <guisubmenu>Utilities</guisubmenu> submenu of the
1625              <guimenu>Main Menu</guimenu>]]></literal>
1626            </para>
1627          </listitem>
1628          
1629          <listitem>
1630            <para>
1631              <sgmltag>&lt;guimenuitem></sgmltag>&mdash;an entry in a
1632              menu
1633            </para>
1634          </listitem>
1635          
1636          <listitem>
1637            <para>
1638              <sgmltag>&lt;guiicon></sgmltag>&mdash;an icon
1639            </para>
1640          </listitem>
1641          
1642          <listitem>
1643            <para>
1644              <sgmltag>&lt;guilabel></sgmltag>&mdash;for items which have
1645              labels, like tabs, or bounding boxes. 
1646            </para>
1647          </listitem>
1648          <listitem>
1649            <para>
1650              <sgmltag>&lt;interface></sgmltag>&mdash; for most everything
1651              else... a window, a dialog box, the Panel, etc.
1652            </para>
1653          </listitem>
1654        </itemizedlist>
1655        <para>
1656          If you need to refer to a sequence of menu choices, such as
1657          <menuchoice>
1658            <guimenu>Main Menu</guimenu>
1659            <guisubmenu>Utilities</guisubmenu> <guimenuitem>GNOME
1660            terminal</guimenuitem>
1661          </menuchoice>
1662          there is a special construction for this, too:
1663          <programlisting>
1664<![CDATA[
1665<menuchoice>
1666 <guimenu>Main Menu</guimenu> <guisubmenu>Utilities</guisubmenu>
1667 <guimenuitem>GNOME terminal</guimenuitem> </menuchoice>]]>
1668          </programlisting>
1669        </para>
1670      </sect3>
1671
1672      <sect3 id="links">
1673        <title>Links and references</title>
1674        <para>
1675          To refer to another place in the same document, you can use
1676          tags <sgmltag>&lt;xref></sgmltag> and
1677          <sgmltag>&lt;link></sgmltag>. The first of them
1678          automatically inserts the full name of the element you refer
1679          to (section, figure, etc.), while the second just creates a
1680          link (in HTML output). Here is an example:
1681          <programlisting>
1682<![CDATA[An example of a <link linkend="extip">tip</link> was given in
1683<xref linkend="notes" />.  ]]>
1684          </programlisting>
1685          which produces: An example of a <link
1686          linkend="extip">tip</link> was given in  <xref
1687          linkend="notes" />.
1688        </para>
1689        <para>
1690          Here <sgmltag>notes</sgmltag> and <sgmltag>extip</sgmltag>
1691          are the id attributes of <xref linkend="notes" /> and of the
1692          example of a tip in it.
1693        </para>
1694        <para>  To produce a link  to an external source, such as a
1695          Web page or a local file, use <sgmltag>&lt;ulink></sgmltag>
1696          tag, for example:
1697          <programlisting>
1698<![CDATA[ To find more about GNOME, please visit <ulink type="http"
1699url="http://www.gnome.org">GNOME Web page</ulink> ]]>
1700          </programlisting>
1701          which produces:  To find more about GNOME, please visit
1702          <ulink type="http" url="http://www.gnome.org">The GNOME Web
1703          Site</ulink> You can use any of the standard URL types, such
1704          as <literal>http, ftp, file, telnet, mailto</literal> (in
1705          most cases, however, use of <literal>mailto</literal> is
1706          unnecessary&mdash;see discussion of
1707          <sgmltag>&lt;email></sgmltag> tag).
1708        </para>
1709      </sect3>
1710
1711      <sect3 id="filenames">  <title>Filenames, commands, and other
1712        computer-related things</title>
1713        <para>
1714          Here are some tags used to describe operating system-related
1715          things:  
1716        </para>
1717	<itemizedlist>
1718          <listitem>
1719            <para>  <sgmltag>&lt;filename></sgmltag> &mdash; used
1720              for filenames,
1721              e.g.<sgmltag>&lt;filename></sgmltag>
1722                    foo.sgml
1723                  <sgmltag>&lt;/filename></sgmltag> 
1724              produces: <filename>foo.sgml</filename>.
1725            </para>
1726          </listitem>
1727          <listitem>
1728            <para>  <sgmltag>&lt;filename
1729              class="directory"></sgmltag> &mdash; used for
1730              directories, e.g.<sgmltag>&lt;filename
1731              class="directory"></sgmltag>/usr/bin
1732                  <sgmltag>&lt;/filename></sgmltag>
1733              produces: <filename
1734              class="directory">/usr/bin</filename>.
1735            </para>
1736          </listitem>
1737          <listitem>
1738            <para>
1739              <sgmltag>&lt;application></sgmltag> &mdash; used for
1740              application names,
1741              e.g. <sgmltag>&lt;application></sgmltag>Gnumeric
1742              <sgmltag>&lt;/application></sgmltag> produces:
1743              <application>Gnumeric</application>.
1744            </para>
1745          </listitem>
1746          <listitem>
1747            <para>
1748	      <sgmltag>&lt;envar></sgmltag> &mdash; used for
1749	      environment variables, e.g. 
1750              <sgmltag>&lt;envar></sgmltag>PATH<sgmltag>&lt;/envar></sgmltag>. 
1751            </para>
1752          </listitem>
1753  
1754          <listitem>
1755            <para>
1756              <sgmltag>&lt;command></sgmltag> &mdash; used for
1757              commands entered on command line, e.g.
1758              <sgmltag>&lt;command></sgmltag>make install
1759              <sgmltag>&lt;/command></sgmltag> produces:
1760              <command>make install</command>.
1761            </para>
1762          </listitem>
1763          <listitem>
1764            <para>
1765              <sgmltag>&lt;replaceable></sgmltag> &mdash; used for
1766              replaceable text, e.g.
1767              <sgmltag>&lt;command></sgmltag>db2html<sgmltag>&lt;replaceable></sgmltag>
1768              foo.sgml
1769              <sgmltag>&lt;/replaceable></sgmltag><sgmltag>&lt;/command></sgmltag>
1770              produces: <command>db2html
1771              <replaceable>foo.sgml</replaceable></command>.
1772            </para>
1773          </listitem>
1774        </itemizedlist>  
1775      </sect3>
1776
1777      <sect3 id="keys">   
1778        <title>Keyboard input</title> 
1779        <para> To mark up text input by the user, use
1780        <sgmltag>&lt;userinput></sgmltag>.
1781        </para>
1782        <para>  To mark keystrokes such as shortcuts and other
1783          commands, use <sgmltag>&lt;keycap></sgmltag>. 
1784          This is used for marking up what is printed on the top 
1785          of the physical key on the keyboard. There are a couple of
1786          other tags for keys, too: <sgmltag>&lt;keysym&gt;</sgmltag>
1787          and <sgmltag>&lt;keycode&gt;</sgmltag>. However you are
1788          unlikely to need these for most documentation. For reference,
1789          <sgmltag>&lt;keysym&gt;</sgmltag> is for the <quote>symbolic
1790          name</quote> of a key. <sgmltag>&lt;keycode&gt;</sgmltag> is
1791          for the <quote>scan code</quote> of a key. These are not
1792          terms commonly required in <acronym>GNOME</acronym> documentation,
1793          although <sgmltag>&lt;keysym&gt;</sgmltag> is useful for marking
1794          up control codes.
1795       </para>
1796       <para>
1797          To mark up a combination of keystrokes, use the
1798          <sgmltag>&lt;keycombo></sgmltag> wrapper:
1799          <programlisting>
1800<![CDATA[
1801<keycombo>
1802 <keycap>Ctrl</keycap>
1803 <keycap>Alt</keycap>
1804 <keycap>F1</keycap>
1805</keycombo>]]>
1806          </programlisting>
1807        </para>
1808        <para>
1809          Finally, if you want to show a shortcut for some menu
1810          command, here are the appropriate tags (rather long):
1811          <programlisting>
1812<![CDATA[
1813<menuchoice>
1814 <shortcut>
1815  <keycombo><keycap>Ctrl</keycap><keycap>q</keycap></keycombo>
1816 </shortcut> 
1817 <guimenuitem> Quit</guimenuitem> 
1818</menuchoice>]]>
1819          </programlisting>
1820          which produces simply
1821          <menuchoice>
1822            <shortcut>   <keysym>Ctrl-q</keysym> </shortcut>
1823            <guimenuitem> Quit</guimenuitem>
1824          </menuchoice>
1825        </para>
1826      </sect3>
1827
1828      <sect3 id="email">
1829        <title>E-mail addresses</title> <para>  To mark up e-mail
1830        address, use <sgmltag>&lt;email></sgmltag>:
1831          <programlisting>
1832<![CDATA[ The easiest way to get in touch with me is by e-mail
1833(<email>me@mydomain.com</email>)]]>
1834          </programlisting>
1835          which produces: The easiest way to get in touch with me is
1836          by e-mail  (<email>me@mydomain.com</email>) Note that
1837          <sgmltag>&lt;email></sgmltag> automatically produces a link
1838          in html version.
1839        </para>
1840      </sect3>
1841
1842      <sect3 id="specsymb">
1843	<title> Special symbols </title>
1844	<para> 
1845	  DocBook also provides special means for entering
1846	typographic symbols which can not be entered directly
1847	form the keyboard (such as copyright sign). This is done using
1848	<emphasis>entities</emphasis>, which is SGML analogue of
1849	macros, or commands, of LaTeX. They generally have the form 
1850	  <sgmltag>&amp;entityname;</sgmltag>. Note that the semicolon
1851	is required. 
1852	</para>
1853	<para>
1854	  here is partial list of most commonly used enitites:
1855	</para>
1856	<itemizedlist>
1857	  <listitem><para>
1858             <sgmltag>&amp;amp;</sgmltag> &mdash; ampersend (&amp;)
1859	  </para></listitem>
1860	  <listitem><para>
1861             <sgmltag>&amp;lt;</sgmltag> &mdash; left angle bracket (&lt;)
1862	  </para></listitem>
1863	  <listitem><para>
1864             <sgmltag>&amp;copy;</sgmltag> &mdash; copyright sign (&copy;)
1865	  </para></listitem>
1866	  <listitem><para>
1867             <sgmltag>&amp;mdash;</sgmltag> &mdash; long dash (&mdash;)
1868	  </para></listitem>
1869	  <listitem><para>
1870             <sgmltag>&amp;hellip;</sgmltag> &mdash; ellipsis (&hellip;)
1871	  </para></listitem>
1872	</itemizedlist>
1873	<para>
1874	  Note that the actual look of the resulting symbols depends
1875	  on the fonts used by your browser; for example, it might
1876	  happen that long dash (<sgmltag>&amp;mdash;</sgmltag>) looks
1877	  exactly like the usual dash (-). However, in the PostScript
1878	  (and thus, in print) the output will look markedly better if
1879	  you use appropriate tags. 
1880	</para>
1881      </sect3>
1882    </sect2>
1883  </sect1>
1884  
1885<!-- ################# GDP Documentation Conventions ############### -->
1886 
1887  <sect1 id="conventions">
1888    <title>GDP Documentation Conventions </title> 
1889
1890<!-- ####### GDP Documentation Conventions | All Documentation ####### -->
1891
1892    <sect2 id="conventionsalldocs">
1893      <title>Conventions for All GDP Documentation</title>
1894      <sect3 id="xmlcomp">
1895	<title> XML compatibility </title>
1896	<para>
1897	  All GNOME documentation  should conform to XML syntax
1898	  requirements, which are stricter than SGML ones &mdash; see
1899	  <xref linkend="xml" /> for more informaion.
1900	</para>
1901      </sect3> 
1902
1903      <sect3 id="authorsnames"> 
1904	<title> Authors' names</title>
1905	<para> 
1906	  All GNOME documentation should contain the names of both the
1907	  application authors and documentation authors, as well as a
1908	  link to the application web page (if it exists) and
1909	  information for bug submission &mdash; see templates for an
1910	  example. 
1911	  </para>
1912      </sect3>
1913    </sect2>
1914
1915<!-- ####### GDP Documentation Conventions | All Documentation ####### -->
1916
1917    <sect2 id="conventionsappdocs">
1918      <title>Conventions for Application Documentation</title>
1919
1920      <sect3 id="applicationversionid">
1921        <title>Application Version Identification</title>
1922        <para>
1923          Application documentation should identify the version of the
1924          application for which the documentation is written:
1925          <programlisting>
1926<![CDATA[
1927<sect1 id="intro">
1928 <title>Introduction</title>
1929 <para>
1930  blah-blah-blah This document describes version 1.0.53 of gfoo.
1931 </para>
1932</sect1>]]>
1933          </programlisting>
1934        </para>
1935      </sect3>
1936      <sect3 id="license">
1937	<title> Copyright information </title> 
1938        <para> Application
1939        documentation should contain a copyright notice, stating the
1940        licensing terms. It is suggested that you use the GNU Free
1941        Documentation License.  You could also use some other license
1942        allowing free redistribution, such as GPL or Open Content
1943        license.  If documentation uses some trademarks (such as UNIX,
1944        Linux, Windows, etc.), proper legal junk should also be
1945        included (see templates).
1946	</para>
1947      </sect3>
1948      <sect3 id="license2">
1949       <title>Software license</title>
1950       <para> 
1951         All GNOME applications must contain information about the
1952       license (for software, not for documentation), either in the
1953       "About" box or in the manual. 
1954       </para>
1955      </sect3>
1956
1957      <sect3 id="bugtraq">
1958	<title> Bug reporting</title> 	
1959        <para> 
1960	  Application documentation should give an address for
1961        reporting bugs and for submitting comments about the
1962        documentaion (see templates for an example). 
1963       </para>
1964      </sect3>
1965    </sect2>
1966  </sect1>
1967  
1968<!-- ################# Writing Application Manuals ###############-->
1969  
1970  <sect1 id="writingapplicationmanuals">
1971    <title>Writing Application and Applet Manuals</title>
1972    <para>
1973       Every GNOME application or applet should have a manual specific
1974      to that particular application. This manual should be a complete
1975      and authoritative guide.  The manual should describe what the
1976      program does and how to use it.  Manuals will typically describe
1977      each window or panel presented to the user using screenshots (in
1978      PNG format only) when appropriate.  They should also describe
1979      each feature and preference option available.
1980    </para>
1981    <note>
1982      <title>Documentation Availability</title>
1983      <para>
1984        Applications and applets should not rely on documentation
1985        which is only available on the internet.  All manuals and
1986        other documentation should be packaged with the application or
1987        applet and be made available to the user through the standard
1988        GNOME help system methods described below.
1989      </para>
1990    </note>
1991    <para> Application manuals should be based on the template in
1992    <xref linkend="template1" />.  Applet manuals should be based on
1993    the templates in <xref linkend="template2-1x" /> for GNOME
1994    versions 1.x and the templates in <xref linkend="template2-2x" />
1995    for GNOME versions 2.x.
1996    </para>
1997    <note>
1998      <title>Manuals For Large Applications</title>
1999      <para>
2000        Manuals for very large applications, such as GNOME Workshop
2001        components should be a <sgmltag>&lt;book></sgmltag> (and thus
2002        use <sgmltag>&lt;chapter></sgmltag> for each primary section)
2003        , instead of <sgmltag>&lt;article></sgmltag> which most
2004        applications use(with each primary section being a
2005        <sgmltag>&lt;sect1></sgmltag>).
2006      </para>
2007    </note>
2008    <note>
2009      <title>Applet Manuals in GNOME 2.0</title>
2010      <para>
2011        Note that applet manuals in GNOME 2.0 are treated in a special
2012        way.  The manuals for all applets are merged into a single
2013        virtual document by Nautilus.  For this reason, the header
2014        information for applet manuals is omitted and the  first
2015        section of each applet is
2016        <sgmltag>&lt;sect1></sgmltag>. Applet manuals will typically
2017        have several sections, each of which is
2018        <sgmltag>&lt;sect2></sgmltag>.
2019      </para>
2020    </note>
2021    <para>
2022      Application manuals should be made available by having a
2023      "Manual" entry in the <guimenu>Help</guimenu> pull-down menu
2024      at the top of the 
2025      application, as described in <xref linkend="listingdocsinhelpmenu" />.
2026      Applets should make their manuals available by
2027      right-clicking on the applet. 
2028    </para>
2029  </sect1>
2030  
2031
2032<!-- ############### Listing Documents in the Help Menu ############# -->
2033
2034  <sect1 id="listingdocsinhelpmenu">
2035    <title>Listing Documents in the Help Menu</title>
2036
2037    <note>
2038      <title>Developer Information</title>
2039      <para>
2040        This section is for developers.  Documentation authors
2041        generally do not need to know this material.
2042      </para>
2043    </note>
2044    <para>
2045      Typically the application manual and possibly additional help
2046      documents will be made available to the user under the
2047      <guimenu>Help</guimenu> menu at the top right of the
2048      application. To do this, you must first write a
2049      <filename>topic.dat</filename> file. The format for this file is:
2050      <programlisting>
2051One line for each 'topic'.
2052
2053Two columns, as defined by perl -e 'split(/\s+/,$aline,2)'
2054
2055First column is the HTML file (and optional section) for the topic,
2056relative to the app's help file dir.
2057
2058Second column is the user-visible topic name.
2059      </programlisting>
2060      For example, <application>Gnumeric</application>'s
2061      <filename>topic.dat</filename> file is:
2062      <programlisting>
2063gnumeric.html   Gnumeric manual
2064function-reference.html Gnumeric function reference
2065      </programlisting>
2066      When the application is installed, the
2067      <filename>topic.dat</filename> file should be placed in the
2068      <filename
2069      class="directory">$prefix/share/gnome/help/<replaceable>appname</replaceable>/C/</filename> directory
2070      where <replaceable>appname</replaceable> is replaced by the
2071      application's name.  The application documentation (converted
2072      from SGML into HTML with <command>db2html</command>) should be
2073      placed in this directory too.
2074    </para>
2075    <note>
2076      <para>
2077       If the help files are not present in the correct directory, the
2078       menu items will NOT appear when the program is run. 
2079      </para>
2080    </note>
2081    <para>
2082      The <filename>topic.dat</filename> file is used by the GNOME
2083      menu building code to generate the <guimenu>Help</guimenu>
2084      menu. When you define your menu:  
2085<programlisting>
2086GnomeUIInfo helpmenu[] = {
2087              {GNOME_APP_UI_ITEM, 
2088               N_("About"), N_("Info about this program"),
2089               about_cb, NULL, NULL, 
2090               GNOME_APP_PIXMAP_STOCK, GNOME_STOCK_MENU_ABOUT,
2091               0, 0, NULL},
2092               GNOMEUIINFO_SEPARATOR,
2093               GNOMEUIINFO_HELP("<emphasis>appname</emphasis>"),
2094               GNOMEUIINFO_END
2095        };
2096</programlisting>
2097      the line specifying <varname>GNOMEUIINFO_HELP</varname> causes
2098      GNOME to create a menu entry which is tied to the documentation
2099      in the directory mentioned above. Also, all the topics in the
2100      <filename>topic.dat</filename> file will get menu entries in the
2101      <guimenu>Help</guimenu> menu. When the user selects any of these
2102      topics from the <guimenu>Help</guimenu> menu, a help browser
2103      will be started with the associated HTML documentation.
2104    </para>
2105  </sect1>
2106
2107
2108<!-- ################# Application Help Buttons ############### -->
2109
2110  <sect1 id="applicationhelpbuttons">
2111    <title>Application Help Buttons</title>
2112
2113    <note>
2114      <title>Developer Information</title>
2115      <para>
2116        This section is for developers.  Documentation authors
2117        generally do not need to know this material.
2118      </para>
2119    </note>
2120    <para>
2121      Most GNOME applications will have <guibutton>Help</guibutton>
2122      buttons.  These are most often seen in Preference windows. (All
2123      Preference windows should have <guibutton>Help</guibutton>
2124      buttons.) Most <guibutton>Help</guibutton> buttons will connect
2125      to the application manual, although some may connect to special
2126      documents.  Because the <guibutton>Help</guibutton> buttons do
2127      not generally have their own special documentation, the
2128      documentation author(s) do not need to do very much.  However,
2129      the application author must be careful to guarantee that the
2130      application correctly opens the help documentation when the
2131      <guibutton>Help</guibutton> buttons are pressed.  
2132    </para>
2133    <para>
2134      To make the Help buttons call the correct document in the GNOME Help
2135      Browser the developer should add code based on the following example:
2136    </para>
2137    <programlisting>
2138gchar *tmp;
2139tmp = gnome_help_file_find_file ("module", "page.html");
2140if (tmp) {
2141  gnome_help_goto(0, tmp);
2142  g_free(tmp);
2143}
2144    </programlisting>
2145    <note>
2146      <title>NOTE</title>
2147      <para>
2148        The example above is in the C language, please refer to other
2149        documentation or forums for other GNOME language bindings.
2150      </para>
2151    </note>
2152 </sect1>
2153
2154<!-- ################# Packaging Applet Documentation ############### -->
2155
2156  <sect1 id="packagingappletdocs">
2157    <title>Packaging Applet Documentation</title>
2158    <sect2 id="appletfiles">
2159      <title>Applet Documentation Files</title>
2160      <para>
2161        In GNOME 2.0 each applet will have its own documentation
2162        installed separately, and the GNOME 2.0 help
2163        browser (<application>Nautilus</application>) will dynamically
2164        merge the applet documents into a single virtual book
2165        called <citetitle>GNOME Applets</citetitle>. During the
2166        transitionary stage between GNOME 1.0 and GNOME 2.0, each
2167        applet in the gnome-applets package has its own manual(stored
2168        with the applet in CVS), but they are merged together manually
2169        to create the <citetitle>GNOME Applets</citetitle> book before
2170        distribution.  Telsa 
2171        <email>hobbit@aloss.ukuu.org.uk</email> is the maintainer of
2172        this document.  Applet documentation should be sent to Telsa
2173        (or placed in CVS) who will make sure they are correctly
2174        packaged with the applets.  The applet author should be
2175        contacted to modify the menu items and help buttons to bind to
2176        the applet documentation if necessary.
2177      </para>
2178      <para>
2179        Images which are part of the applet documentation should be in
2180        PNG format and should reside in the same directory as the SGML
2181        document file in CVS(gnome-applets/APPLETNAME/help/C).
2182      </para>
2183      <para>
2184        Applets which are not part of the gnome-applets package must
2185        package their documentation with the particular applet
2186        package. They should use the same applet template as other
2187        applets.  However, the <sgmltag>&lt;xref></sgmltag> links to
2188        the introductory chapter of the <citetitle>GNOME
2189        Applets</citetitle>  book must be removed (as the 1.x
2190        <application>GNOME Help Browser</application> does not allow
2191        you to create links between separate documents) and replaced
2192        with suitable text.  Note that since this document is not part
2193        of the <citetitle>GNOME Applets</citetitle> book, you must
2194        remember to add <sgmltag>&lt;legalnotice></sgmltag> and
2195        <sgmltag>&lt;copyright></sgmltag> sections.
2196      </para>
2197    </sect2>
2198
2199    <sect2 id="appletmenu">
2200      <title>Adding Documentation to an Applet Menu</title>
2201      <note>
2202        <title>Developer Information</title>
2203        <para>
2204          This section is for developers.  Documentation authors
2205          generally do not need to know this material.
2206        </para>
2207      </note> 
2208      <para>
2209        Applets should have <guimenu>About</guimenu> and
2210        <guimenu>Manual</guimenu> menu items, typically as the first
2211        and second top-most items in the menu respectively.  This
2212        section describes how the developer creates these menu items
2213        and links them to the documentation.
2214      </para>
2215      <para>
2216        To add an applet's manual to its applet menu, use:
2217<programlisting>
2218/* add an item to the applet menu */
2219applet_widget_register_callback(APPLET_WIDGET(applet), "manual",
2220_("Manual"), &amp;open_manual, NULL);
2221</programlisting>
2222        Here the second argument is an arbitrary name for the
2223        callback, the third argument is the label which will appear
2224        when the user right clicks on the applet, and the fourth
2225        argument is the callback function.
2226      </para>
2227      <para>
2228        You will need to write a simple callback function to open the
2229        help browser to the appropriate document.  This is done using
2230        the <function>gnome_help_file_find_file</function> function,
2231        as described in <xref linkend="applicationhelpbuttons" />.
2232      </para>
2233      <para>
2234        You will also want to add an <guimenu>About</guimenu> menu
2235        item to the applet's menu.  This is a
2236        stock menu item and is done:
2237<programlisting>
2238applet_widget_register_stock_callback (APPLET_WIDGET(applet), "about",
2239       GNOME_STOCK_MENU_ABOUT, _("About"), &amp;my_applet_cb_about,
2240       NULL);
2241</programlisting>
2242      </para>
2243      <para>
2244        More information can be found at <ulink type="http"
2245        url="http://developer.gnome.org/doc/tutorials/applet/index.html">Writing
2246        GNOME panel applets using the GTK+/GTK-- widget set</ulink>.
2247      </para>
2248    </sect2>
2249 </sect1>
2250
2251
2252<!-- ################# Writing Context Sensitive Help ###############
2253-->
2254
2255  <sect1 id="writingcontextsensitivehelp">
2256    <title>Writing Context Sensitive Help (coming in GNOME-2.0)</title>
2257    <para>
2258      Context sensitive help, also known as "pop-up" help, will allow
2259      a user to obtain help information about specific buttons or
2260      parts of an application.
2261    </para>
2262    <para>
2263      Context sensitive help is still under development and not all
2264      the details are available at this time. However, the basics can
2265      be shown here so that you can understand how the system will
2266      work.
2267    </para>
2268    <para>
2269      The Context Sensitive Help system is designed to allow the
2270      developer to give an id to a particular portion of the User
2271      Interface, for example, a button. Once the interface is complete
2272      a Perl script can then be run against the interface code to
2273      create a "map" file. This map file allows the developer or
2274      writer to associate particular paragraph sections from an XML
2275      document to the interface items.
2276    </para>
2277    <para>
2278      The XML used for the document is a small XML DTD that is being
2279      developed to use the same tags (albeit, much fewer) as DocBook
2280      so that writers do not have to re-learn a new DTD.
2281    </para>
2282    <para>
2283      Once the document is written and map file is complete, when the
2284      user launches context sensitive help on the interface (either by
2285      pressing a button and then clicking on the interface item they
2286      want information on, or by right mouse clicking on the interface
2287      item and selecting a pop-up menu item like "What's This") a
2288      small transient window will appear with brief but detailed
2289      information on the interface item.
2290    </para>
2291  </sect1>
2292
2293<!-- ################# Referring to Other GNOME Documentation
2294############# -->
2295
2296  <sect1 id="referring">
2297    <title>Referring to Other GNOME Documentation (coming in
2298    GNOME-2.0)</title>
2299    <para>
2300      In the GNOME 2.0 Help System, you will be able to create links
2301      from one document to another.  The exact mechanism for doing
2302      this is in development.
2303    </para>
2304  </sect1>
2305  
2306  
2307<!-- ################# Basics of Documentation Style ############### -->
2308
2309  <sect1 id="basics">
2310    <title>Basics of Documentation Style</title>
2311    <para>
2312       Most people have never enjoyed reading a software manual, and
2313       they probably never will.  Many times, they'll read the
2314       documentation only when they run into problems, and they'll be
2315       frustrated and upset before they even read a word.  On the
2316       other hand, some readers will read the manual all the way
2317       through, or at least look at the introduction before they
2318       start. Your document might serve as a reference for an expert
2319       or a guide to a beginner, and it must have enough depth to
2320       satisfy the first without overwhelming the second.  Ideally, it
2321       will serve beginners as they <emphasis>become</emphasis>
2322       experts. Remember, your goal is to produce <emphasis>complete,
2323       intuitive and clear</emphasis> documentation.
2324    </para>
2325    <para>
2326       In order to write useful documentation, you'll have to know who
2327       your audience is likely to be.  Then, you can look for the
2328       problems they're likely to run into, and solve them.  It will
2329       also help if you focus on the tasks users will perform, and
2330       group features accordingly, rather than simply describing
2331       features at random.  
2332    </para>
2333
2334<!--  *********** Basics of Documentation Style: planning -->
2335
2336    <sect2 id="styleplanning">
2337      <title>Planning</title>
2338      <para>
2339         Begin documenting by learning how to use the application and
2340         reading over any existing documentation.  Pay attention to
2341         places where your document will differ from the template.  It
2342         may help to develop a document skeleton: a valid XML or SGML
2343         document that has little or no content.  For very large
2344         applications, you will need to make significant departures
2345         from the templates, since you'll be using the
2346         <sgmltag>&lt;book></sgmltag> tag instead of
2347         <sgmltag>&lt;chapter></sgmltag> or
2348         <sgmltag>&lt;article></sgmltag>.
2349      </para>
2350    </sect2>
2351
2352
2353<!-- ####### Basics of Documentation Style | Balance ####### -->
2354    <sect2 id="balance">
2355      <title>Achieving a Balanced Style</title>
2356
2357      <para> 
2358         Just as you need to juggle expert and novice readers,
2359         you'll have to juggle a number of other extremes as you write:
2360         <itemizedlist>
2361          <listitem>
2362	    <para>
2363              Documents should be complete, yet concise.  You should
2364              describe every feature, but you'll have decide how much
2365              detail is really necessary.  It's not, for example,
2366              necessary to describe every button and form field in a
2367              dialog box, but you should make sure that your readers
2368              know how to bring up the dialog and what it does.  If
2369              you spend fewer words on the obvious, you can spend more
2370              time clarifying the ambiguous labels and explaining
2371              items that are more complex.
2372            </para>
2373          </listitem>
2374	  <listitem>
2375	    <para>
2376              Be engaging and friendly, yet professional. Games
2377              documents may be less formal than productivity
2378              application documents (people don't
2379              <emphasis>use</emphasis> games, they
2380              <emphasis>play</emphasis> them), but all of them should
2381              maintain a standard of style which holds the reader's
2382              interest without resorting to jokes and untranslatable
2383              allusions or puns.
2384           </para>
2385	  </listitem>
2386	  
2387   	  <listitem>
2388	    <para>
2389              Examples, tips, notes, and screenshots are useful to
2390              break up long stretches of text, but too many can get in
2391              the way, and make your documents too choppy to read.
2392              It's good to provide a screenshot of any dialog windows
2393              a user might run into, but if a dialog box has several
2394              tabs, it's not usually necessary to have one for each.
2395           </para>
2396	  </listitem>
2397
2398   	  <listitem>
2399	    <para>
2400              The GDP strives to have all of its documentation conform
2401              to certain standards of style and content, but every
2402              document (and every writer) is different.  You will need
2403              to use your judgement, and write documents to fit with
2404              the rest of the project, without compromising the
2405              individual needs of your subject, or your own
2406              individuality as a writer.
2407           </para>
2408	  </listitem>
2409
2410	</itemizedlist>
2411       </para>
2412    </sect2>
2413
2414
2415<!-- ####### Basics of Documentation Style | Structure ####### -->
2416
2417    <sect2 id="stylestructure">
2418      <title>Structure</title>
2419      <para>
2420         In general, you won't have to worry too much about structure,
2421         because the templates provide you with an excellent example.
2422         As a general rule, try to follow that structural example.
2423         That means using links, hierarchical nesting, and, if
2424         necessary, a glossary or index.  You probably won't need to
2425         use every available structural tag, but take advantage of
2426         what DocBook provides you.
2427      </para>
2428      <para>
2429         As to linking, there's some disagreement about whether to use
2430         <sgmltag>&lt;xref></sgmltag> <sgmltag>&lt;link></sgmltag>
2431         when you make links within your documents.  You'll have to
2432         decide, based on the different ways that they are presented
2433         in output, which is more appropriate given the context.
2434         Regardless of which you use, you should not forget to use
2435         them.  Help your readers find information that relevant to
2436         the issue at hand.
2437      </para>
2438      <para>
2439         The table of contents will be generated automatically, but
2440         you will probably have to develop your own index if you wish
2441         to have one.  The Nautilus Help Browser will have new, and
2442         currently unknown, indexing capabilities, so index style and
2443         structure are still under discussion.  The GNOME User's Guide
2444         will contain a glossary in its next versions; unless you're
2445         writing a<sgmltag>&lt;book></sgmltag>, it will probably be best to
2446         contribute to that rather than developing your own.
2447      </para>
2448    </sect2>
2449<!-- ####### Basics of Documentation Style | Grammar & Spelling ####### -->
2450
2451    <sect2 id="stylegrammar">
2452      <title>Grammar and Spelling</title>
2453      <para>
2454        Nobody expects you to be perfect; they just expect the
2455        documentation for their software to be error-free.  That means
2456        that, in the same way that developers look for bugs and accept
2457        bug reports, writers must check for errors in their documents.
2458        Poor grammar, bad spelling, and gross technical errors in
2459        draft documents are fine.  However, if those problems show up
2460        in a "real" release, they can count against the credibility of
2461        GNOME and Linux.  They'll also make you look bad.
2462      </para>
2463      <para>
2464        There is no substitute for a human proofreader; use a
2465        spell-check program, then read it over yourself, and then find
2466        someone else to help you.  Other GDP members are, of course,
2467        willing and able to help you, but non-writers are often at
2468        least as helpful.
2469      </para>
2470      <para>
2471        Proofreading documents is both a also a good way to
2472        familiarize yourself with documentation, and it certainly
2473        makes you valuable to the GDP. Help other writers proof their
2474        documents, and they will help you with yours.
2475      </para>
2476    </sect2>
2477  </sect1>
2478  
2479<!-- ################# Teamwork ############### -->
2480
2481  <sect1 id="teamwork">
2482    <title>Teamwork</title>  <!-- ####### Teamwork | Working With The
2483GDP Team ####### -->
2484
2485    <sect2 id="teamworkgdp">
2486      <title>Working With The GDP Team</title>
2487      <para>
2488        The GDP team is a valuable resource for any documentation
2489        author.  GDP members can answer most questions documentation
2490        authors have during the course of their work. It is also
2491        important to make sure you are not duplicating work of other
2492        GDP members by visiting the <citetitle>GDP Documentation
2493        Status Table</citetitle> (<ulink
2494        url="http://www.gnome.org/gdp/doctable/"
2495        type="http">http://www.gnome.org/gdp/doctable/</ulink>) and
2496        assigning a documentation item to yourself.  This table also
2497        provides a forum for making suggestions and announcements for
2498        each documentation item.  The best way to get in touch with
2499        GDP members is on the #docs IRC channel at irc.gnome.org or
2500        else by emailing the <ulink type="http"
2501        url="http://mail.gnome.org/mailman/listinfo/gnome-doc-list/">
2502        <citetitle>gnome-doc-list mailing list</citetitle></ulink>.
2503      </para>
2504      <para>
2505        After an author has finished a document (or even a draft
2506        version of the document), it is a good idea to ask a member of
2507        the GDP team to read the document, checking it for grammar,
2508        proper DocBook markup, and clarity.  One may typically find
2509        another author to do this by either asking on the #docs IRC
2510        channel at irc.gnome.org or by emailing the <ulink type="http"
2511        url="http://mail.gnome.org/mailman/listinfo/gnome-doc-list/">
2512        <citetitle>gnome-doc-list mailing list</citetitle></ulink>.
2513      </para>
2514    </sect2>
2515
2516<!-- ####### Teamwork | Working With Developers ####### -->
2517
2518    <sect2 id="teamworkdevelopers">
2519      <title>Working With Developers</title>
2520      <para>
2521        Writing documentation typically involves a certain amount of
2522        interaction with the developers of GNOME or the application
2523        which is being documented.  Often a document author will need
2524        to ask the developer technical questions during the course of
2525        writing a document. After the document is finished, it is good
2526        idea to ask the developer to read the document to make sure it
2527        is technically correct.  The documentation author should also
2528        make sure that the application author correctly binds and
2529        packages the documentation with the application.
2530      </para>
2531    </sect2>
2532
2533<!-- ####### Teamwork | Working With Users #######
2534
2535    <sect2 id="teamworkusers">
2536      <title>Working With Users</title>
2537      <para>
2538        Some document authors may wish to get feedback on their
2539        documents directly from users.  This may be done by ...
2540      </para>
2541    </sect2>-->
2542  </sect1>
2543  
2544<!-- ################# Finishing a Document ############### -->
2545
2546  <sect1 id="finishing">
2547    <title>Finishing A Document</title>
2548
2549<!-- ####### Finishing a Document | Editting the Document ####### -->
2550
2551    <sect2 id="editting">
2552      <title>Editing The Document</title>
2553      <para>
2554        When the document is finished, the document should be edited
2555        by another member of the GDP for spelling, clarity, and
2556        DocBook markup. It should also be read by an application
2557        author to make sure the document is technically accurate.
2558      </para>
2559    </sect2>
2560
2561<!-- ####### Finishing a Document | Submitting the Document ####### -->
2562
2563    <sect2 id="submitting">
2564      <title>Submitting The Document</title>
2565      <para>
2566        After the document has been edited and checked for technical
2567        accuracy, it is ready to be combined with the application or
2568        documentation package.  This is typically done by passing the
2569        document to the application or package developer.  In some
2570        cases, the documents can be committed directly into CVS,
2571        however this should only be done after obtaining permission to
2572        make CVS commits from the developer.  Note that in many cases,
2573        the application may need to be modified to correctly link to
2574        the documentation.  The packaging system (tarballs and binary
2575        packages) may also need to be modified to include the
2576        documentation in the package.  Generally, this should be done
2577        by the developers.
2578      </para>
2579      <para>
2580        The final step is to email the GNOME Translation Team at
2581        <email>gnome-i18n@nuclecu.unam.mx</email> to notify them that
2582        there is a new document for them to translate.
2583      </para>
2584    </sect2>
2585  </sect1>
2586  
2587<!-- ################# Resources ############### -->
2588
2589  <sect1 id="resources">
2590    <title>Resources</title> 
2591<!-- ####### Resources | Resources on the Web ####### -->
2592
2593    <sect2 id="resourcesweb">
2594      <title>Resources On The Web</title> <para>  The <ulink
2595      type="http" url="http://developer.gnome.org/projects/gdp/">GNOME
2596      Documentation Project Web page</ulink> lists current GDP 
2597      projects and members.
2598      </para>
2599      <para>
2600        The <ulink url="http://www.gnome.org/gdp/doctable/"
2601        type="http">GDP Documentation Status Table</ulink> tracks the
2602        status of all the various documentation components of GNOME.
2603      </para>
2604      <para>
2605        Norman Walsh's  <ulink url="http://www.docbook.org"
2606        type="http"> <citetitle>DocBook: The Definitive
2607        Guide</citetitle></ulink> in an excellent book on DocBook,
2608        available both online and in print.
2609      </para>
2610    </sect2>
2611
2612<!-- ####### Resources | Books ####### -->
2613
2614    <sect2 id="resourcesbooks">
2615      <title>Books</title>
2616      <para>
2617        Docbook: The Definitive Guide is available in both printed
2618        form and on the web at:
2619        <ulink url="http://www.docbook.org/tdg/index.html">
2620        <citetitle>Docbook: The Definitive Guide</citetitle>
2621        </ulink>
2622      </para>
2623    </sect2>
2624
2625<!-- ####### Resources | Mailing Lists ####### -->
2626
2627    <sect2 id="mailinglists">
2628      <title>Mailing Lists</title>
2629      <para>
2630        The <emphasis>gnome-docs-list</emphasis> mailing list is the
2631        main discussion area for all contributors to the GNOME
2632        Documentation Project. You can find out how to subscribe to
2633        this list on <ulink
2634        url="http://www.gnome.org/resources/mailing-lists.html"
2635        type="http">GNOME Mailing Lists</ulink>.  This is a rather
2636        low-volume list, so you will not be flooded with messages.
2637      </para>
2638    </sect2>
2639
2640<!-- ####### Resources | IRC ####### -->
2641
2642    <sect2 id="irc">
2643      <title>IRC</title>
2644      <para>
2645        Internet Relay Chat (IRC) is a fast and easy way to get in
2646        touch with other GDP members.  There are generally at least a
2647        few members here who can answer questions or discuss
2648        documentation issues.  The IRC channel is #docs at
2649        irc.gnome.org.
2650      </para>
2651    </sect2>
2652  </sect1>
2653  
2654<!-- ################# Example Docs ###############
2655
2656  <appendix id="exampledocs">
2657    <title>Example Docs</title> 
2658
2659####### Example Docs | Example 1: Application Manual ####### 
2660
2661    <sect1 id="ex1">
2662      <title>Example 1: Application Manual</title>
2663      <programlisting>
2664<![CDATA[ (Put sgml here.)]]> </programlisting>
2665    </sect1>
2666
2667####### Example Docs | Example 2: Applet Manual ####### 
2668
2669    <sect1 id="ex2">
2670      <title>Example 2: Applet Manual</title>
2671      <programlisting>
2672<![CDATA[(Put sgml here.)]]> </programlisting>
2673    </sect1>
2674
2675##### Example Docs | Example 3: Application Context Sensitive Help ####
2676
2677    <sect1 id="ex3">
2678      <title>Example 3: Application Context Sensitive Help</title>
2679      <programlisting>
2680<![CDATA[(Put sgml here.)]]> </programlisting>
2681    </sect1>
2682
2683####### Example Docs | Example 4: Complete Application: gnome-hello  #######
2684
2685    <sect1 id="ex4">
2686      <title>Example 4: Complete Application: gnome-hello</title>
2687      <programlisting>
2688<![CDATA[(Put sgml here.)]]> </programlisting>
2689    </sect1>
2690
2691####### Example Docs | Example 5: Tutorial #######
2692
2693    <sect1 id="ex5">
2694      <title>Example 5: Tutorial</title>
2695      <programlisting>
2696<![CDATA[(Put sgml here.)]]> </programlisting>
2697    </sect1>
2698  </appendix>-->
2699  
2700<!-- ################# Document Templates ############### -->
2701
2702  <appendix id="templates">
2703    <title>Document Templates</title> 
2704<!-- ####### Document Templates | Templates 1: Application Manual ####### -->
2705
2706    <sect1 id="template1">
2707      <title>Template 1: Application Manual</title>
2708      <para>
2709        The following template should be used for all application
2710        manuals.  You can always get the latest copy of this
2711        template from  <ulink type="http"
2712        url="http://developer.gnome.org/projects/gdp/templates.html">GDP
2713        Documentation Templates</ulink>.
2714        <programlisting>
2715
2716<![CDATA[
2717<!DOCTYPE Article PUBLIC "-//GNOME//DTD DocBook PNG Variant V1.1//EN"[
2718        <!-- if not using PNG graphic, replace reference above with
2719             .....PUBLIC "-//OASIS//DTD DocBook V3.1//EN"[
2720         -->
2721<!ENTITY version "1.0.53">
2722        <!-- replace version above with actual application version number-->
2723	<!--  Template Version: 1.0.1  (do not remove this line) -->
2724]>
2725
2726
2727<!-- This is a GNOME documentation template, designed by the GNOME
2728  Documentation Project Team. Please use it for writing GNOME
2729  documentation, making obvious changes. In particular, all the words
2730  written in UPPERCASE (with the exception of GNOME) should be
2731  replaced. As for "legalnotice", please leave the reference
2732  unchanged.
2733
2734  Remember that this is a guide, rather than a perfect model to follow
2735  slavishly. Make your manual logical and readable.  And don't forget
2736  to remove these comments in your final documentation!  ;-)
2737  -->
2738
2739<!-- =============Document Header ============================= -->
2740
2741<article id="index"> <!-- please do not change the id -->
2742
2743  <artheader>
2744    <title>MY-GNOME-APP</title>
2745    <copyright>
2746      <year>2000</year>
2747      <holder>ME-THE-AUTHOR</holder>
2748    </copyright>
2749
2750  <!-- translators: uncomment this:
2751
2752  <copyright>
2753   <year>2000</year>
2754   <holder>ME-THE-TRANSLATOR (Latin translation)</holder>
2755  </copyright>
2756
2757   -->
2758
2759  <!-- do not put authorname in the header except in copyright - use
2760  section "authors" below -->
2761
2762    <legalnotice>
2763      <para>
2764        Permission is granted to copy, distribute and/or modify this
2765        document under the terms of the <citetitle>GNU Free
2766        Documentation License</citetitle>, Version 1.1 or any later
2767        version published by the Free Software Foundation with no
2768        Invariant Sections, no Front-Cover Texts, and no Back-Cover
2769        Texts. You may obtain a copy of the <citetitle>GNU Free
2770        Documentation License</citetitle> from the Free Software
2771        Foundation by visiting <ulink type="http"
2772        url="http://www.fsf.org">their Web site</ulink> or by writing
2773        to: Free Software Foundation, Inc., 59 Temple Place - Suite
2774        330, Boston, MA 02111-1307, USA.
2775      </para>
2776      <para>
2777        Many of the names used by companies to distinguish their
2778        products and services are claimed as trademarks. Where those
2779        names appear in any GNOME documentation, and those trademarks
2780        are made aware to the members of the GNOME Documentation
2781        Project, the names have been printed in caps or initial caps.
2782      </para>
2783    </legalnotice>
2784
2785  <!-- this is the version of manual, not application --> 
2786    <releaseinfo>
2787       This is version 1.0 of MY-GNOME-APP manual.
2788    </releaseinfo>
2789
2790  </artheader>
2791
2792 <!-- ============= Document Body ============================= -->
2793
2794 <!-- ============= Introduction ============================== -->
2795  <sect1 id="intro">
2796    <title>Introduction</title>
2797
2798    <para>
2799     <application>MY-GNOME-APP</application> is an application which
2800     proves mathematical theorems.  It has all the basic features
2801     expected from a mathematical theorem prover, as well as a number
2802     of advanced ones, such as proof by confusion.  In fact, many of
2803     the proofs produced by <application>MY-GNOME-APP</application>
2804     are so complex that they are capable of proving almost anything
2805     with a virtually null likelihood of being disproven.  It also has
2806     the very popular predecessor of proof by confusion, proof by
2807     dialog, first implemented by Plato.
2808    </para>
2809    <para>
2810      It also allows you to save and print theorem proofs and to add
2811      comments to the proofs it produces.
2812    </para>
2813
2814    <para>
2815      To run <application>MY-GNOME-APP</application>, select
2816      <menuchoice>
2817	<guisubmenu>SUBMENU</guisubmenu>
2818	<guimenuitem>MY-GNOME-APP</guimenuitem>
2819      </menuchoice>
2820      from the <guimenu>Main Menu</guimenu>, or type
2821      <command>MYGNOMEAPP</command> on the command line.
2822  </para>
2823
2824    <para>
2825      <application>MY-GNOME-APP</application> is included in the
2826      <filename>GNOME-PACKAGE</filename> package, which is part of the
2827      GNOME desktop environment. This document describes version
2828      &version; of <application>MY-GNOME-APP</application>.
2829    </para>
2830  </sect1>
2831
2832
2833 <!-- ================ Usage ================================ -->
2834 <!-- This section should describe basic usage of the application. -->
2835
2836  <sect1 id="usage">
2837    <title>Using MY-GNOME-APP</title>
2838    <para>
2839      <application>MY-GNOME-APP</application> can be used to produce a
2840      perfect proof of <emphasis>any</emphasis> mathematical theorem
2841      (provided, of course, that this theorem is correct), thus
2842      providing for new users an easy-to-use graphical interface to
2843      modern mathematics. This section describes basic usage of
2844      <application>MY-GNOME-APP</application>.
2845    </para>
2846
2847    <!-- ========= Basic Usage =========================== -->
2848    <sect2 id="mainwin">
2849      <title>Basic usage</title>
2850      <para>
2851        Starting <application>MY-GNOME-APP</application> opens the
2852        <interface>Main window</interface>, shown in <xref
2853        linkend="mainwindow-fig">. The window is at first empty.
2854
2855        <!-- ==== Figure ==== -->
2856        <figure id="mainwindow-fig">
2857	  <title>MY-GNOME-APP Main Window</title>
2858	  <screenshot>
2859	    <screeninfo>MY-GNOME-APP Main Window</screeninfo>
2860	    <graphic fileref="SCREENSHOT" format="png" srccredit="ME">
2861            </graphic>
2862	  </screenshot>
2863	</figure>
2864    <!-- ==== End of Figure ==== -->
2865      </para> 
2866
2867
2868 <!-- For this app, one could put "proving" or "edit" (probably even
2869      both of them) as sect2's seperate from the main window
2870      section. Since they were both so closely involved with the main
2871      window, I decided to have them as sect3's isntead. Judgement
2872      call. -->
2873
2874      <sect3 id="proving">
2875	<title>Proving a Theorem</title>
2876	<para>
2877          To get a proof of a theorem, select
2878          <menuchoice>
2879	    <guisubmenu>File</guisubmenu>
2880	    <guimenuitem>New</guimenuitem>
2881	  </menuchoice>,
2882            which will
2883	    bring up the <interface>New Proof</interface> dialog box.
2884	    Enter the statement of the theorem in the
2885	    <guilabel>Theorem statement</guilabel> field, select your
2886	    desired proof type from the drop-down menu, and and press
2887	    <guibutton>Prove!</guibutton>.
2888        </para>
2889	<para>
2890          If <application>MY-GNOME-APP</application> cannot prove the
2891          theorem by the method you have chosen, or if you have not
2892          selected a proof type at all,
2893          <application>MY-GNOME-APP</application> will attempt to
2894          choose the one that it thinks is most conclusive.  In order,
2895          it will attempt to prove the theorem with the following techniques: 
2896     
2897                <variablelist>
2898	    <varlistentry>
2899	      <term>Deduction</term>
2900	      <listitem>
2901		<para>
2902                  This is a proof method that is generally accepted
2903                  for full credit by Logic professors.
2904                </para>
2905	      </listitem>
2906	    </varlistentry>
2907	    <varlistentry>
2908            <term>Induction</term>
2909	    <listitem>
2910	      <para>
2911                This logical style will also earn you full credit on
2912                your homework.
2913             </para>
2914	    </listitem>
2915            </varlistentry>
2916	    <varlistentry>
2917	      <term>Dialog</term>
2918	      <listitem>
2919	      <para>
2920                This logical method is best for Philosophy classes,
2921                and will probably only merit partial credit on Logic
2922                or Mathematics homework.
2923              </para>
2924	    </listitem>
2925            </varlistentry>
2926            <varlistentry>
2927	      <term>Confusion</term>
2928	      <listitem>
2929	      <para>
2930                Suitable only for political debates, battles of wits
2931                against the unarmed, and Philosophy classes focusing
2932                on the works of Kant. Use with caution.
2933              </para>
2934	      </listitem>
2935	    </varlistentry>
2936	  </variablelist>
2937          </para>
2938
2939   <!-- You might want to include a note, warning, or tip, e.g. -->
2940	
2941	<warning>
2942	  <title>Proving Incorrect Theorms</title>
2943	  <para>
2944            <application>MY-GNOME-APP</application> cannot prove
2945            incorrect theorems. If the theorem you have entered is not
2946            demonstrably true, you will get a message to that effect
2947            in the main window.  To disprove a theorem, ask
2948            <application>MY-GNOME-APP</application> to prove its
2949            logical inverse.
2950          </para>
2951	</warning>
2952      </sect3>
2953      <sect3 id="editing">
2954	<title>Editing Proofs</title>
2955	<para>
2956          Once you have proven the theorem, it will be displayed in
2957          the <interface>main window</interface>.  There, you can read
2958          it over, choose text styles for different portions of it,
2959          and make comments on it. This section will guide you through
2960          that process.
2961        </para>
2962	<para>
2963          To alter text styles, first select the statement you wish to
2964          change by clicking on it once.  You can select several
2965          statements by Then, choose the style you want to apply from
2966          the <guisubmenu>Style</guisubmenu> submenu of the
2967          <guimenu>Edit</guimenu> menu.
2968          <application>MY-GNOME-APP</application> will convert the
2969          text to that style.
2970        </para>
2971        <para>
2972          You can also enter comments on a statement by selecting that
2973          statement, and then beginning to type.  Comments will appear
2974          after the statement you have selected.
2975        </para>
2976
2977	<note>
2978	  <title>Altering The Proofs Themselves</title>
2979          <para>
2980            <application>MY-GNOME-APP</application> does not allow you
2981            to alter a proof it has produced itself.  You can, save
2982            your proof as a plain text file (using the
2983            <guimenuitem>Save as...</guimenuitem> menu), and alter it
2984            that way.  Be aware, however, that
2985            <application>MY-GNOME-APP</application> uses its own file
2986            format for saved proofs, and cannot re-open a file unless
2987            it is in the .mga format.
2988          </para>
2989	</note>
2990      </sect3>
2991
2992
2993  <!-- If there are other functions performed from the main window,
2994       they belong here.   -->
2995
2996    </sect2>
2997 
2998    <!-- ========================================================= 
2999      Additional Sect2's should describe additional windows, such as
3000      larger dialog boxes, or functionality that differs significantly
3001      from the most immediate functions of the application. Make the
3002      structure logical.
3003      =============================================================  -->
3004
3005
3006    <sect2 id="toolbar">
3007      <title>Toolbar</title>
3008      <para>
3009        The toolbar (shown in <xref linkend="figure-usage-toolbar">)
3010        provides access to several commonly used routines.
3011        <figure id="figure-usage-toolbar">
3012	  <title>MY-GNOME-APP Toolbar</title>
3013	  <screenshot>
3014	    <screeninfo>MY-GNOME-APP Toolbar</screeninfo>
3015	    <graphic fileref="usage-toolbar.png" format="png"></graphic>
3016	  </screenshot>
3017	</figure>
3018        <variablelist>
3019	  <varlistentry>
3020	    <term>New</term>
3021	    <listitem>
3022	      <para>
3023                Brings up the <interface>New Theorem</interface>
3024                dialog.
3025              </para>
3026	    </listitem>
3027	  </varlistentry>
3028	  <varlistentry>
3029	    <term>Open</term>
3030	    <listitem>
3031	      <para>
3032                 Open an exisiting theorem you want to prove, or a
3033                 completed proof you wish to print or format.
3034               </para>
3035	    </listitem>
3036	  </varlistentry>
3037	  <varlistentry>
3038	    <term>Save</term>
3039	    <listitem>
3040	      <para>
3041	         Save the current theorem permanently in a
3042	         file.
3043               </para>
3044	    </listitem> 
3045	  </varlistentry>
3046	</variablelist>
3047       </para>
3048    </sect2>
3049    <!-- ========= Menus =========================== --> 
3050
3051    <sect2 id="menubar">
3052
3053       <!-- Describing the menubar ensures comprehensive feature
3054       coverage. Nest itemizedlists inside variablelists so that each
3055       menu is easily located by indexing software. Proper indentation
3056       makes it easier! -->
3057
3058      <title>Menus</title>
3059      <para>
3060	The menu bar, located at the top of the <interface>Main
3061	Window</interface>, contains the following menus:
3062       </para>
3063      <variablelist>
3064	<varlistentry>
3065	  <term><guimenu>File</guimenu></term>
3066	  <listitem>
3067	    <para>
3068	       This menu contains:
3069	       <itemizedlist>
3070		<listitem>
3071		  <para>
3072	            <menuchoice>
3073		      <shortcut>
3074			<keycap>F3</keycap>
3075		      </shortcut>
3076		      <guimenuitem>Open</guimenuitem>
3077		     </menuchoice>
3078	             &mdash; This opens a file which is saved on your computer.
3079	           </para>
3080		</listitem>
3081		<listitem>
3082		  <para>
3083	             <menuchoice>
3084		      <shortcut>
3085			<keycombo><keycap>Ctrl</keycap><keycap>S</keycap></keycombo>
3086		      </shortcut>
3087		      <guimenuitem>Save</guimenuitem>
3088		    </menuchoice>
3089	            &mdash; This saves your file.
3090	          </para>
3091		</listitem>
3092		<listitem>
3093		  <para>
3094	             <menuchoice>
3095		      <shortcut>
3096			<keycombo><keycap>Ctrl</keycap><keycap>W</keycap></keycombo>
3097		      </shortcut>
3098		      <guimenuitem>Close</guimenuitem>
3099		    </menuchoice>
3100	            &mdash; This closes your file.
3101	          </para>
3102		</listitem>
3103		<listitem>
3104		  <para>
3105	            <menuchoice>
3106		      <shortcut>
3107			<keycombo><keycap>Ctrl</keycap><keycap>Q</keycap></keycombo>
3108		      </shortcut>
3109		      <guimenuitem>Exit</guimenuitem>
3110		    </menuchoice>
3111	            &mdash; This quits the application.
3112	          </para>
3113		</listitem>
3114	      </itemizedlist>
3115	  </para>
3116	  </listitem>
3117	</varlistentry>
3118	
3119	<varlistentry>
3120	  <term><guimenu>Edit</guimenu></term>
3121	  <listitem>
3122	    <para>
3123	   This menu contains:
3124	   <itemizedlist>
3125		<listitem>
3126		  <para>
3127	            <menuchoice>
3128		      <shortcut>
3129			<keycombo><keycap>Ctrl</keycap><keycap>X</keycap></keycombo>
3130		      </shortcut>
3131		      <guimenuitem>Cut</guimenuitem>
3132		    </menuchoice>
3133	            &mdash; This removes any text or data which is selected and
3134	            places it in the buffer.
3135	          </para>
3136		</listitem>
3137		<listitem>
3138		  <para>
3139	            <menuchoice>
3140		      <shortcut>
3141			<keycombo><keycap>Ctrl</keycap><keycap>C</keycap></keycombo>
3142		      </shortcut>
3143		      <guimenuitem>Copy</guimenuitem>
3144		    </menuchoice>
3145	            &mdash; This copies any text or data which is selected into
3146	            the buffer.
3147	          </para>
3148		</listitem>
3149		<listitem>
3150		  <para>
3151	           <menuchoice>
3152		      <shortcut>
3153			<keycombo><keycap>Ctrl</keycap><keycap>V</keycap></keycombo>
3154		      </shortcut>
3155		      <guimenuitem>Paste</guimenuitem>
3156		    </menuchoice>
3157	            &mdash; This pastes any text or data which is copied into
3158	            the buffer.
3159	        </para>
3160		</listitem>
3161		<listitem>
3162		  <para>
3163	             <guimenuitem>COMMAND1&hellip;</guimenuitem>
3164	             &mdash; This opens the <interface>COMMAND1</interface>
3165	             dialog, which is used to ....
3166	          </para>
3167		</listitem>
3168		<listitem>
3169		  <para>
3170	            <guimenuitem>COMMAND2</guimenuitem>
3171	            &mdash; This ....
3172	          </para>
3173		</listitem>
3174	      </itemizedlist>
3175	    </para>
3176	  </listitem>
3177	</varlistentry>
3178	
3179
3180	<varlistentry>
3181	  <term><guimenu>Settings</guimenu></term>
3182	  <listitem>
3183	    <para>
3184	   This menu contains:
3185	   <itemizedlist>
3186		<listitem>
3187		  <para>
3188	      <guimenuitem>Preferences&hellip;</guimenuitem>
3189	       &mdash; This opens the <link
3190	       linkend="prefs"><interface>Preferences
3191	       Dialog</interface></link>, which allows you to configure
3192	       many settings.
3193	     </para>
3194		</listitem>
3195		<listitem>
3196		  <para>
3197	            <guimenuitem>COMMAND3</guimenuitem> &mdash;
3198    	            This command does something.
3199    	    	   </para>
3200		</listitem>
3201	      </itemizedlist>
3202	    </para>
3203	  </listitem>
3204	</varlistentry>
3205	
3206	<varlistentry>
3207	  <term><guimenu>Help</guimenu></term>
3208	  <listitem>
3209	    <para>
3210	      This menu contains:
3211	       <itemizedlist>
3212		<listitem>
3213		  <para>
3214	             <guimenuitem>Manual</guimenuitem> &mdash; This
3215    	              opens the <application>GNOME Help
3216    	              Browser</application> and displays this manual.
3217	          </para>
3218		</listitem>
3219		
3220		<listitem>
3221		  <para>
3222	            <guimenuitem>About</guimenuitem> &mdash; This
3223    	            opens the <interface>About</interface> dialog
3224    	            which shows basic information about
3225    	            <application>MY-GNOME-APP</application>, such as
3226    	            the author's name, the application version number,
3227    	            and the URL for the application's Web page if one
3228    	            exists.
3229	          </para>
3230		</listitem>
3231	      </itemizedlist>
3232            </para>
3233	  </listitem>
3234	</varlistentry>
3235      </variablelist>
3236    </sect2>
3237  </sect1>
3238
3239
3240
3241 <!-- ============= Customization ============================= -->
3242
3243 <sect1 id="prefs">
3244  <title>Customization</title>
3245  <para>
3246   To change the application settings, select
3247   <menuchoice>
3248    <guimenu>Settings</guimenu>
3249    <guimenuitem>Preferences...</guimenuitem>
3250   </menuchoice>.  This opens the
3251   <interface>Preferences</interface> dialog, shown in <xref
3252   linkend="preferences-fig">.
3253  </para>
3254
3255  <figure id="preferences-fig">
3256   <title>Preferences Dialog</title>
3257   <screenshot>
3258    <screeninfo>Preferences Dialog</screeninfo>
3259    <graphic fileref="SCREENSHOT" format="png"
3260     srccredit="ME">
3261    </graphic>
3262   </screenshot>
3263  </figure>
3264
3265  <para>
3266   The properties in the <guilabel>PREFSTABNAME</guilabel> tab are:
3267   
3268   <!--many people use itemizedlists in cases like this. Variablelists
3269   are more appropriate -->
3270
3271      <variablelist>
3272	<varlistentry>
3273	  <term> <guilabel>Default Text Style</guilabel></term>
3274	  <listitem>
3275	    <para>
3276              Select the default text style for statements in your
3277              proof.  You can still change the style for individual
3278              proofs or sections of a proof at a later date.
3279            </para>
3280	  </listitem>
3281	</varlistentry>
3282	<varlistentry>
3283	  <term>(Configuration Item Label)</term>
3284	  <listitem>
3285	    <para>
3286             (Description of Configuration)
3287             </para>
3288	  </listitem>
3289	</varlistentry>
3290	<varlistentry>
3291	  <term>(Configuration Item Label)</term>
3292	  <listitem>
3293	    <para>
3294             (Description of Configuration)
3295             </para>
3296	  </listitem>
3297	</varlistentry>
3298      </variablelist>
3299    </para>
3300
3301    <para>
3302     The properties in the <guilabel>SECONDTABNAME</guilabel> tab are:
3303       <variablelist>
3304	<varlistentry>
3305	  <term>(Configuration Item Label)</term>
3306	  <listitem>
3307	    <para>
3308             (Description of Configuration)
3309             </para>
3310	  </listitem>
3311	</varlistentry>
3312	<varlistentry>
3313	  <term>(Configuration Item Label)</term>
3314	  <listitem>
3315	    <para>
3316             (Description of Configuration)
3317             </para>
3318	  </listitem>
3319	</varlistentry>
3320      </variablelist>
3321    </para>
3322
3323  <para>
3324    After you have made all the changes you want, click on
3325    <guibutton>OK</guibutton> to apply the changes and close the
3326    <interface>Properties</interface> dialog. To cancel the changes
3327    and return to previous values, click the
3328    <guibutton>Close</guibutton> button.
3329  </para>
3330
3331 </sect1>
3332
3333
3334 <!-- ============= Various Sections ============================= -->
3335
3336 <!-- Here you should add, if necessary, several more sect1's,
3337 describing other windows (besides the main one), file formats,
3338 preferences dialogs,  etc. as appropriate. Try not to make any of
3339 these sections too long. -->
3340
3341
3342 <!-- ============= Bugs ================================== -->
3343 <!-- This section should describe known bugs and limitations of
3344      the program if there are any - please be frank and list all
3345      problems you know of. -->
3346 <sect1 id="bugs">
3347  <title>Known Bugs and Limitations</title>
3348  <para>
3349   This application has no known bugs.
3350  </para>
3351 </sect1>
3352
3353
3354<!-- ============= Authors ================================ -->
3355
3356 <sect1 id="authors">
3357  <title>Authors</title>
3358  <para>
3359   <application>MY-GNOME-APP</application> was written by GNOME-HACKER
3360   (<email>hacker@gnome.org</email>). To find more information about
3361   <application>MY-GNOME-APP</application>, please visit the <ulink
3362   url="http://www.my-gnome-app.org" type="http">MY-GNOME-APP Web
3363   page</ulink>.  Please send all comments, suggestions, and bug
3364   reports to the <ulink url="http://bugs.gnome.org" type="http">GNOME
3365   bug tracking database</ulink>. (Instructions for submitting bug
3366   reports can be found <ulink
3367   url="http://bugs.gnome.org/Reporting.html" type="http">
3368   on-line</ulink>.)  You can also use <application>Bug Report
3369   Tool</application> (<command>bug-buddy</command>), available in the
3370   <guisubmenu>Utilities</guisubmenu> submenu of <guimenu>Main
3371   Menu</guimenu>, for submitting bug reports.
3372  </para>
3373
3374  <para>
3375   This manual was written by ME
3376   (<email>MYNAME@MYADDRESS</email>). Please send all comments and
3377   suggestions regarding this manual to the <ulink type="http"
3378   url="http://developer.gnome.org/projects/gdp">GNOME Documentation 
3379   Project</ulink> by sending an email to 
3380   <email>docs@gnome.org</email>. You can also add your comments online 
3381   by using the <ulink type="http" 
3382   url="http://www.gnome.org/gdp/doctable/">GNOME Documentation Status
3383   Table</ulink>.
3384  </para>
3385
3386  <!-- For translations: uncomment this:
3387
3388  <para>
3389   Latin translation was done by ME
3390   (<email>MYNAME@MYADDRESS</email>). Please send all  comments  and
3391   suggestions regarding this translation to SOMEWHERE.
3392  </para>
3393
3394  -->
3395
3396 </sect1>
3397
3398
3399 <!-- ============= Application License ============================= -->
3400
3401 <sect1 id="license">
3402  <title>License</title>
3403  <para>
3404   This program is free software; you can redistribute it and/or
3405   modify it under the terms of the <citetitle>GNU General Public
3406   License</citetitle> as published by the Free Software Foundation;
3407   either version 2 of the License, or (at your option) any later
3408   version.
3409  </para>
3410  <para>
3411   This program is distributed in the hope that it will be useful, but
3412   WITHOUT ANY WARRANTY; without even the implied warranty of
3413   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
3414   <citetitle>GNU General Public License</citetitle> for more details.
3415  </para>
3416  <para>
3417   A copy of the <citetitle>GNU General Public License</citetitle> is
3418   included as an appendix to the <citetitle>GNOME Users
3419   Guide</citetitle>.  You may also obtain a copy of the
3420   <citetitle>GNU General Public License</citetitle> from the Free
3421   Software Foundation by visiting <ulink type="http"
3422   url="http://www.fsf.org">their Web site</ulink> or by writing to
3423   <address>
3424    Free Software Foundation, Inc.
3425    <street>59 Temple Place</street> - Suite 330
3426    <city>Boston</city>, <state>MA</state> <postcode>02111-1307</postcode>
3427    <country>USA</country>
3428   </address>
3429  </para>
3430 </sect1>
3431</article>
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441]]>
3442
3443
3444</programlisting>
3445      </para>
3446    </sect1>
3447
3448<!-- ####### Document Templates | Templates 2-1.x: Applet Manual ####### -->
3449
3450    <sect1 id="template2-1x">
3451      <title>Template 2: Applet Manual For GNOME 1.x</title>
3452      <para>
3453        The following templates should be used for all applet
3454        manuals in GNOME 1.x releases.  You can always get the latest
3455        copy of these templates from  <ulink type="http"
3456        url="http://developer.gnome.org/projects/gdp/templates.html">GDP
3457        Documentation Templates</ulink>.  Note that the template
3458        consists of two files; the first file calls the second as an
3459        entity. You should name the first file
3460        <filename><replaceable>appletname</replaceable>-applet.sgml</filename>
3461        and the second file should be named
3462        <filename><replaceable>appletname</replaceable>.sgml</filename>,
3463        where
3464        <filename><replaceable>appletname</replaceable></filename> is
3465        the name of the applet.
3466        <programlisting>
3467
3468<![CDATA[
3469<!DOCTYPE Article PUBLIC "-//GNOME//DTD DocBook PNG Variant V1.1//EN"[
3470 <!entity APPLETNAME.sgml SYSTEM "applet_template_1.sgml">
3471        <!--  Template Version: 1.0.1  (do not remove this line) -->
3472]>
3473
3474<!-- This is a GNOME documentation template, designed by the GNOME
3475  Documentation Project Team. Please use it for writing GNOME
3476  documentation, making obvious changes. In particular, all the words
3477  written in UPPERCASE (with the exception of GNOME) should be
3478  replaced. As for "legalnotice", please leave the reference
3479  unchanged,make sure to add/remove trademarks to the list as
3480  appropriate for your document.
3481
3482  Please don't forget to remove these comments in your final documentation,
3483  thanks ;-).
3484-->
3485
3486<article id="index"> <!-- please do not change the id -->
3487
3488 <!-- ============= Document Header ============================= -->
3489 <artheader> 
3490  <title>APPLETNAME Applet</title>
3491  <copyright>
3492   <year>2000</year>
3493   <holder>YOURFULLNAME</holder>
3494  </copyright>
3495
3496  <!-- translators: uncomment this:
3497
3498  <copyright>
3499   <year>2000</year>
3500   <holder>ME-THE-TRANSLATOR (Latin translation)</holder>
3501  </copyright>
3502
3503   -->
3504
3505  <!-- do not put authorname in the header except in copyright - use
3506  section "authors" below -->
3507
3508  <legalnotice>
3509   <para>
3510    Permission is granted to copy, distribute and/or modify this
3511    document under the terms of the <citetitle>GNU Free Documentation
3512    License</citetitle>, Version 1.1 or any later version published
3513    by the Free Software Foundation with no Invariant Sections, no
3514    Front-Cover Texts, and no Back-Cover Texts. You may obtain a copy
3515    of the <citetitle>GNU Free Documentation License</citetitle> from
3516    the Free Software Foundation by visiting <ulink type="http"
3517    url="http://www.fsf.org">their Web site</ulink> or by writing to:
3518    Free Software Foundation, Inc., 59 Temple Place - Suite 330,
3519    Boston, MA 02111-1307, USA.
3520   </para>
3521   <para>
3522    Many of the names used by companies to distinguish their products and
3523    services are claimed as trademarks. Where those names appear in any
3524    GNOME documentation, and those trademarks are made aware to the members
3525    of the GNOME Documentation Project, the names have been printed in caps
3526    or initial caps.
3527   </para>
3528  </legalnotice>
3529
3530  <releaseinfo>
3531   This is version XXX of the APPLETNAME applet manual.
3532  </releaseinfo>
3533 </artheader>
3534
3535 <!-- ============= Document Body ============================= -->
3536
3537 &APPLETNAME.sgml;
3538
3539</article>
3540
3541
3542]]>
3543
3544
3545</programlisting>
3546        <programlisting>
3547<![CDATA[
3548        <!--  Template Version: 1.0.1  (do not remove this line) -->
3549
3550 <sect1 id="APPLET">
3551  <title>APPLET Applet</title>
3552
3553  <para>
3554   <application>APPLET</application> applet, shown in <xref
3555   linkend="APPLETapplet-fig">, allows you to &hellip;.  To add this
3556   applet to a <interface>Panel</interface>, 
3557   right-click on the <interface>Panel</interface> and choose
3558   <menuchoice>
3559    <guimenu>Panel</guimenu>
3560    <guisubmenu>Add to panel</guisubmenu>
3561    <guisubmenu>Applet</guisubmenu>
3562    <guisubmenu>SECTION</guisubmenu>
3563    <guimenuitem>APPLET</guimenuitem>
3564   </menuchoice>.
3565  </para>
3566
3567  <figure id="APPLETapplet-fig">
3568   <title>APPLET Applet</title>
3569   <screenshot>
3570    <screeninfo>APPLET Applet</screeninfo>
3571    <graphic format="png" fileref="APPLET_applet" 
3572    srccredit="YOURNAME">
3573    </graphic>
3574   </screenshot>
3575  </figure>
3576
3577  <!-- ============= Usage  ================================ -->
3578  <sect2 id="APPLET-usage">
3579   <title>Usage</title>
3580   <para>
3581    (Place a short description of how to use the applet here.)
3582   </para>
3583
3584   <para>
3585    Right-clicking on the applet brings up a menu containing the
3586    following items:
3587    <itemizedlist>
3588
3589     <listitem>
3590      <para>
3591       <guimenuitem>Properties&hellip;</guimenuitem> &mdash;
3592       opens the <link linkend="APPLET-prefs">
3593       <guilabel>Properties</guilabel></link> dialog.
3594      </para>
3595     </listitem>
3596
3597     <listitem>
3598      <para>
3599       <guimenuitem>Help</guimenuitem> &mdash;
3600       displays this document.
3601      </para>
3602     </listitem>
3603
3604     <listitem>
3605      <para>
3606       <guimenuitem>About&hellip;</guimenuitem> &mdash;
3607       shows basic information about <application>APPLET
3608       Applet</application>, including the applet's version and the
3609       author's name.
3610      </para>
3611     </listitem>
3612
3613    </itemizedlist>
3614   </para>
3615  </sect2>
3616
3617
3618  <!-- ============= Customization ============================= -->
3619  <sect2 id="APPLET-prefs">
3620    <title>Customization</title>
3621    <para>
3622      You can customize <application>APPLET</application>
3623      applet by right-clicking on it and choosing
3624      <guimenuitem>Properties&hellip;</guimenuitem>. This will open the
3625      <interface>Properties</interface> dialog(shown in <xref
3626      linkend="APPLET-settings-fig">), which allows you to
3627      change various settings.
3628    </para>
3629
3630    <figure id="APPLET-settings-fig">
3631     <title>Properties dialog</title>
3632     <screenshot>
3633      <screeninfo>Properties dialog</screeninfo>
3634      <graphic format="png" fileref="APPLET_settings"
3635      srccredit="YOURNAME">
3636      </graphic>
3637     </screenshot>
3638    </figure>
3639
3640    <para>
3641     The properties are:
3642     <itemizedlist>
3643
3644      <listitem>
3645       <para>
3646        (Configuration Item Label) &mdash; If this button is
3647        checked&hellip;(description)
3648       </para>
3649      </listitem>
3650
3651      <listitem>
3652       <para>
3653        (Configuration Item Label) &mdash; Selecting this
3654        button&hellip;(description)
3655       </para>
3656      </listitem>
3657
3658      <listitem>
3659       <para>
3660        (Configuration Item Label) &mdash; Enter the name of
3661        &hellip;(description)
3662       </para>
3663      </listitem>
3664     </itemizedlist>
3665    </para>
3666
3667    <para> 
3668      After you have made all the changes you want, click on
3669      <guibutton>OK</guibutton> to apply the changes and close the
3670      <interface>Properties</interface> dialog. To cancel the changes
3671      and return to previous values, click the
3672      <guibutton>Close</guibutton> button.
3673    </para>
3674  </sect2>
3675
3676
3677  <!-- ============= Bugs ================================== -->
3678  <!-- This section should describe known bugs and limitations of
3679       the program if there are any - please be frank and list all
3680       problems you know of -->
3681  <sect2 id="bugs">
3682   <title>Known Bugs and Limitations</title>
3683   <para>
3684    This applet has no known bugs.
3685   </para>
3686  </sect2>
3687
3688
3689  <!-- ============= Authors ================================ -->
3690
3691  <sect2 id="authors">
3692   <title>Authors</title>
3693   <para>
3694    <application>APPLET</application> was written by GNOME-HACKER
3695    (<email>hacker@gnome.org</email>).  Please send all comments,
3696    suggestions, and bug 
3697    reports to the <ulink url="http://bugs.gnome.org" type="http">GNOME
3698    bug tracking database</ulink>. (Instructions for submitting bug
3699    reports can be found <ulink
3700    url="http://bugs.gnome.org/Reporting.html" type="http">
3701    on-line</ulink>.  You can also use <application>Bug Report
3702    Tool</application> (<command>bug-buddy</command>), available in the
3703    <guisubmenu>Utilities</guisubmenu> submenu of <guimenu>Main
3704    Menu</guimenu>, for submitting bug reports.
3705   </para>
3706
3707   <para>
3708    This manual was written by ME
3709    (<email>MYNAME@MYADDRESS</email>). Please send all comments and
3710    suggestions regarding this manual to the <ulink type="http"
3711    url="http://developer.gnome.org/projects/gdp">GNOME Documentation
3712    Project</ulink>  by sending an email to
3713    <email>docs@gnome.org</email>. You can also submit comments online
3714    by using the <ulink type="http"
3715    url="http://www.gnome.org/gdp/doctable/">GNOME Documentation
3716    Status Table</ulink>.
3717   </para>
3718
3719   <!-- For translations: uncomment this:
3720
3721   <para>
3722    Latin translation was done by ME
3723    (<email>MYNAME@MYADDRESS</email>). Please send all  comments  and
3724    suggestions regarding this translation to SOMEWHERE.
3725   </para>
3726
3727   -->
3728
3729  </sect2>
3730
3731
3732  <!-- ============= Application License ============================= -->
3733
3734  <sect2 id="license">
3735   <title>License</title>
3736   <para>
3737    This program is free software; you can redistribute it and/or
3738    modify it under the terms of the <citetitle>GNU General Public
3739    License</citetitle> as published by the Free Software Foundation;
3740    either version 2 of the License, or (at your option) any later
3741    version.
3742   </para>
3743   <para>
3744    This program is distributed in the hope that it will be useful, but
3745    WITHOUT ANY WARRANTY; without even the implied warranty of
3746    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
3747    <citetitle>GNU General Public License</citetitle> for more details.
3748   </para>
3749   <para>
3750    A copy of the <citetitle>GNU General Public License</citetitle> is
3751    included as an appendix to the <citetitle>GNOME Users
3752    Guide</citetitle>.  You may also obtain a copy of the
3753    <citetitle>GNU General Public License</citetitle> from the Free
3754    Software Foundation by visiting <ulink type="http"
3755    url="http://www.fsf.org">their Web site</ulink> or by writing to
3756    <address>
3757     Free Software Foundation, Inc.
3758     <street>59 Temple Place</street> - Suite 330
3759     <city>Boston</city>, <state>MA</state> <postcode>02111-1307</postcode>
3760     <country>USA</country>
3761    </address>
3762   </para>
3763  </sect2>
3764
3765 </sect1>
3766
3767
3768
3769
3770]]>
3771
3772
3773
3774</programlisting>
3775      </para>
3776    </sect1>
3777
3778<!-- ####### Document Templates | Templates 2-2.x: Applet Manual ####### -->
3779
3780    <sect1 id="template2-2x">
3781      <title>Template 2: Applet Manual For GNOME 2.x</title>
3782      <para>
3783        The following templates should be used for all applet
3784        manuals in GNOME 2.x releases.  You can always get the latest
3785        copy of these templates from  <ulink type="http"
3786        url="http://developer.gnome.org/projects/gdp/templates.html">GDP
3787        Documentation Templates</ulink>.
3788      </para>
3789      <para>
3790        Note that this template consists of two files.  The first file
3791        is an introductory chapter. You should not modify this
3792        chapter. The second file is the actual applet document, which
3793        you should modify to describe the applet you are documenting.
3794        You can name the first file whatever you like, such as
3795        <filename>gnome-applets.sgml</filename>.  Name the second file
3796        according to the applet's name:
3797        <filename><replaceable>appletname</replaceable>-applet.sgml</filename>.
3798        Make sure you update the entity
3799        at the top of the shell document to reflect the new name of
3800        the applet document.
3801      </para>
3802      <para>
3803        <programlisting>
3804<![CDATA[
3805<!DOCTYPE book PUBLIC "-//GNOME//DTD DocBook PNG Variant V1.1//EN"[
3806<!ENTITY TEMPLATE-APPLET SYSTEM "gnome-applet-template.sgml.part">
3807
3808]>
3809
3810<book id="gnome-applets">
3811
3812 <bookinfo>
3813  <title>GNOME Applets</title>
3814  <authorgroup>
3815   <author><firstname>Telsa</firstname><surname>Gwynne</surname></author>
3816   <author><firstname>John</firstname><surname>Fleck</surname></author>
3817   <author><firstname>David</firstname><surname>Mason</surname>
3818      <affiliation><orgname>Red Hat, Inc.</orgname></affiliation>
3819    </author>
3820    <author><firstname>Dan</firstname><surname>Mueth</surname></author>
3821    <author><firstname>Alexander</firstname><surname>Kirillov</surname></author>
3822  </authorgroup>
3823  <edition>GNOME Applets version 0.1 for GNOME 1.1.5</edition>
3824  <pubdate>2000</pubdate>
3825  <copyright>
3826   <year>2000</year>
3827   <holder>Telsa Gwynne, John Fleck, Red Hat Inc., Dan Mueth, and
3828    Alexander Kirillov</holder> 
3829  </copyright>
3830  <legalnotice>
3831   <para>
3832    Permission is granted to make and distribute verbatim copies of this
3833    manual provided the copyright notice and this permission notice are
3834    preserved on all copies.
3835   </para>
3836   <para>
3837    Permission is granted to copy and distribute modified versions of
3838    this manual under the conditions for verbatim copying, provided that
3839    the entire resulting derived work is distributed under the terms of a
3840    permission notice identical to this one.
3841   </para>
3842   <para>
3843    Permission is granted to copy and distribute translations of this
3844    manual into another language, under the above conditions for modified
3845    versions, except that this permission notice may be stated in a
3846    translation approved by the Free Software Foundation.
3847   </para>
3848   <para>
3849    Many of the names used by companies to distinguish their products and
3850    services are claimed as trademarks. Where those names appear in any
3851    GNOME documentation, and those trademarks are made aware to the members
3852    of the GNOME Documentation Project, the names have been printed in caps
3853    or initial caps.
3854   </para>
3855  </legalnotice>
3856 </bookinfo>
3857
3858 <!-- #### Introduction ###### -->
3859 <chapter id="applets-intro">
3860  <title>Introduction</title> 
3861
3862  <!-- #### Intro | What Are Applets? ###### -->
3863  <sect1 id="applets-what-are">
3864   <title>What Are Applets?</title> 
3865   <para>
3866    Applets are one of the most popular and useful objects you can add
3867    to your <interface>Panel</interface> to customize your desktop.
3868    An applet is a small application which runs inside a small area of
3869    your <interface>Panel</interface>. Applets have been written for
3870    a wide range of purposes.  Some are very powerful interactive
3871    tools, such as the <application>Tasklist</application> Applet
3872    which allows you to easily 
3873    control all of your main applications.  Others are simple system
3874    monitors, displaying information such as the amount of power left
3875    in the battery on your laptop (see <application>Battery Charge
3876    Monitor</application>) or weather
3877    information(see <application>GNOME Weather</application>).  Some
3878    are simply for amusement(see <application>Fish</application>).
3879   </para>
3880
3881   <para>
3882    Applets are similar to swallowed applications in that both of them
3883    reside within the <interface>Panel</interface>. However, 
3884    swallowed applications are generally applications which were
3885    not designed to run within the <interface>Panel</interface>.
3886    Typically one will swallow an application which already exists in
3887    the main <interface>desktop</interface> area, putting it into your
3888    <interface>Panel</interface>.  The application will continue to
3889    run in the <interface>Panel</interface> until you end the
3890    application or  unswallow it,  placing it back onto the main part of
3891    your desktop when you need to.
3892   </para>
3893
3894   <para>
3895    <figure id="example-applets-fig">
3896     <title>Example Applets</title>
3897     <screenshot>
3898      <screeninfo>Example Applets</screeninfo>
3899       <graphic fileref="example_applets" format="png"
3900       srccredit="muet">
3901       </graphic>
3902     </screenshot>
3903    </figure>
3904    Several example applets are shown in <xref
3905    linkend="example-applets-fig">.  From left to right, they are: (1)
3906    <application>Mixer Applet</application>, which allows you to turn
3907    on/off sound and control its volume by clicking on the applet.  (2)
3908    <application>Sound Monitor</application> Applet, which displays
3909    the current volume of sound being played and allows you to control
3910    various sound features.  (3) <application>GTCD</application>
3911    Applet, a CD player which has all its controls
3912    available in the applet and displays the track and time. (4)
3913    <application>Drive Mount</application> Applet, used to mount and
3914    unmount drives with a single click of the mouse. (5)
3915    <application>Desk Guide</application> which allows you to view
3916    and control multiple virtual screens. (6)
3917    <application>Tasklist</application> Applet which allows you to
3918    control your various windows and applications.
3919   </para>
3920   <para>
3921    There are many other applets to choose from.  The rest of this
3922    chapter will explain the basic information to get you started
3923    adding, moving, and removing applets from your
3924    <interface>Panels</interface> and using them. The following
3925    chapters go through each of the standard GNOME applets describing
3926    them in detail.  There are also additional applets which can be
3927    downloaded off the Web.   See <ulink type="http"
3928     url="http://www.gnome.org/applist/list-martin.phtml">The GNOME
3929    Software Map</ulink> for lists of additional GNOME applications
3930    and applets. 
3931   </para>
3932   <para>
3933    As you read through the the rest of this chapter, you should try
3934    adding and removing applets from your <interface>Panel</interface> and
3935    experiment with them freely.  
3936   </para>
3937  </sect1>
3938
3939  <!-- #### Intro | Adding, Moving, and Removing Applets ###### -->
3940  <sect1 id="applet-add-move-replace">
3941   <title>Adding, Moving, and Removing Applets</title>
3942
3943   <sect2 id="adding-applets">   
3944    <title>Adding Applets to a Panel</title>
3945    <para>
3946     To add an applet to a <interface>Panel</interface>, right-click
3947     on the <interface>Panel</interface> and select 
3948     <menuchoice><guimenu>Panel</guimenu><guisubmenu>Add to panel</guisubmenu>
3949     <guisubmenu>Applet</guisubmenu></menuchoice>. This will show you
3950     the menu of all the applets on your system, divided into
3951     categories. Choosing any applet from this menu will add it to the
3952     <interface>Panel</interface>.
3953    </para>
3954   </sect2>
3955
3956   <sect2 id="moving-applets">
3957    <title>Moving Applets In or Between Panels</title>
3958    <para>
3959     It is easy to move applets in a <interface>Panel</interface> or
3960     between two <interface>Panels</interface>. If you have a
3961     three-button mouse, just move the mouse over the applet, depress
3962     the middle mouse button and drag the applet to its new location,
3963     releasing the middle mouse button when you are finished.  Note
3964     that you can drag applets within a <interface>Panel</interface>
3965     or between two <interface>Panels</interface> this way. If you
3966     don't have a three-button mouse, just 
3967     right-click on the applet and choose
3968     <guimenuitem>Move</guimenuitem>. The cursor will turn into a
3969     cross and the applet will move with your mouse until you press
3970     any mouse button to indicate you are finished moving it.
3971     If, in the course of this movement, it hits
3972     other objects, the behavior depends on the global preferences
3973     you have set for your <interface>Panels</interface> in the
3974     <application>GNOME Control Center</application>: the applet you are
3975     moving can switch places with other objects, "push" all objects
3976     it meets, or "jump" over all other objects without disturbing
3977     them. You can also override the default behavior by holding
3978     <keycap>Shift</keycap> button (for "push" mode),
3979     <keycap>Ctrl</keycap> (for "switched" mode), or
3980     <keycap>Alt</keycap> (for "free" mode, i.e. jumping other other
3981     objects without disturbing them) button while dragging.
3982    </para>
3983    <para>
3984     To change the global Panel preferences, right-click on any applet
3985     or <interface>Panel</interface> and select 
3986     <menuchoice>
3987      <guimenu>Panel</guimenu>
3988      <guimenuitem>Global Preferences...</guimenuitem>
3989     </menuchoice>.
3990     The <guilabel>Default movement mode</guilabel> is set under the
3991     <guilabel>Applets</guilabel> tab.
3992    </para>
3993   </sect2>
3994
3995   <sect2 id="removing-applets">
3996    <title>Removing Applets from a Panel</title> 
3997    <para>  
3998     To remove an applet from a <interface>Panel</interface>,
3999     right-click on the applet and select <guimenuitem>Remove from
4000     panel...</guimenuitem>. 
4001    </para>
4002   </sect2>
4003  </sect1>
4004
4005
4006  <!-- #### Intro | The Right-Click Pop-Up Menu ###### -->
4007  <sect1 id="right-click-pop-up-menu">
4008   <title>The Right-Click Pop-Up Menu</title>
4009   <para>
4010    Clicking the right mouse button on any applet brings up
4011    a <guimenu>pop-up menu</guimenu>. This 
4012    menu always has certain standard menu items in it and
4013    often has additional items which vary depending on the particular
4014    applet. 
4015   </para>
4016   <sect2 id="standard-right-click-items"> 
4017    <title>Standard Pop-Up Items</title>
4018    <para>
4019     All applets should have the following items in their right-click
4020     <guimenu>pop-up menu</guimenu>:
4021     <variablelist>
4022      <varlistentry>
4023       <term>Remove from panel</term>
4024       <listitem>
4025        <para>
4026         The <guimenuitem>Remove from panel</guimenuitem> menu item
4027         removes the applet from the <interface>Panel</interface>. 
4028        </para>
4029       </listitem>
4030      </varlistentry>
4031
4032      <varlistentry>
4033       <term>Move</term>
4034       <listitem>
4035        <para>
4036         After selecting <guimenuitem>Move</guimenuitem>, your mouse
4037         pointer will change appearance (typically to a cross with
4038         arrows in each direction). As you move your mouse, the applet
4039         will move with it.  When you have finished moving the applet,
4040         click any mouse button and the applet will anchor in its
4041         current position.  Note that applets can be moved between two
4042         <interface>Panels</interface> this way.
4043        </para>
4044       </listitem>
4045      </varlistentry>
4046
4047      <varlistentry>
4048       <term>Panel</term>
4049       <listitem>
4050        <para>
4051         The <guisubmenu>Panel</guisubmenu> submenu contains various
4052         items and submenus for adding and removing
4053         <interface>Panels</interface> and applets and for changing
4054         the configuration.
4055        </para>
4056       </listitem>
4057      </varlistentry>
4058
4059      <varlistentry>
4060       <term>About</term>
4061       <listitem>
4062        <para>
4063         The <guimenuitem>About...</guimenuitem> menu item brings up a 
4064         dialogue box containing various information about the applet,
4065         typically including the applet's  name, version, author,
4066         copyright, license and desciption. 
4067        </para>
4068       </listitem>
4069      </varlistentry>
4070
4071      <varlistentry>
4072       <term>Help</term>
4073       <listitem>
4074        <para>
4075         The <guimenuitem>Help</guimenuitem> menu item brings up the help
4076         manual for the applet. 
4077        </para>
4078       </listitem>
4079      </varlistentry>
4080     </variablelist>
4081    </para>
4082   </sect2>
4083
4084   <sect2 id="applet-properties-dialog"> 
4085    <title>The Applet Properties Dialog</title>
4086    <para>
4087     Many applets have customizable properties.  These applets will
4088     have a <guimenuitem>Properties...</guimenuitem> menu item in their
4089     right-click <guimenu>pop-up menu</guimenu> which brings up the
4090     <interface>Properties</interface> dialog where you can alter the 
4091     appearance or behaviour of the applet.
4092     <figure id="example-props-dialog-fig">
4093      <title>An Example Applet Properties Dialog</title>
4094      <screenshot>
4095       <screeninfo>An Example Applets Properties Dialog</screeninfo>
4096       <graphic fileref="applet_props_dialog" format="png"
4097        srccredit="muet">
4098       </graphic>
4099      </screenshot>
4100     </figure>
4101     All <interface>Properties</interface> dialogs have the following
4102     buttons at the bottom of the dialog:
4103     <itemizedlist>
4104      <listitem>
4105       <para>
4106        <guibutton>OK</guibutton> &mdash;
4107        Pressing <guibutton>OK</guibutton> will activate any changes
4108        in the properties you have made and close the
4109        <interface>Properties</interface> dialog.
4110       </para>
4111      </listitem>
4112      <listitem>
4113       <para>
4114        <guibutton>Apply</guibutton> &mdash;
4115        Pressing <guibutton>Apply</guibutton> at any time will
4116        make your changes active without closing the
4117        <interface>Properties</interface> dialog.  This is helpful if
4118        you would like to test the effects of the changes you have
4119        made but may want to continue changing the properties.
4120       </para>
4121      </listitem>
4122      <listitem>
4123       <para>
4124        <guibutton>Close</guibutton> &mdash;
4125        Pressing <guibutton>Close</guibutton> will close the
4126        <interface>Properties</interface> dialog.  Only changes in the
4127        configuration which were previously applied with the
4128        <guibutton>Apply</guibutton> button will persist.  Other
4129        changes will not be made active.
4130       </para>
4131      </listitem>
4132      <listitem>
4133       <para>
4134        <guibutton>Help</guibutton> &mdash;
4135        Pressing <guibutton>Help</guibutton> brings up the manual for
4136        the application, opening it to the page describing the
4137        <interface>Properties</interface> dialog.
4138       </para>
4139      </listitem>
4140     </itemizedlist>
4141    </para>
4142   </sect2>
4143 
4144   <sect2 id="common-right-click-items"> 
4145    <title>Other Common Pop-Up Items</title>
4146    <para>
4147     Many applets also have one or more of the following items in their
4148     right-click pop-up menu:
4149     <variablelist>
4150      <varlistentry>
4151       <term>Run...</term>
4152       <listitem>
4153        <para>
4154         The <guimenuitem>Run...</guimenuitem> menu item generally
4155         invokes a program  which is related to the applet in some way
4156         but which runs in its own window rather than in the
4157         panel. For example: 
4158        </para>
4159        <orderedlist>
4160         <listitem>
4161          <para>
4162           The <application>CPU Load</application> applet, which monitors
4163           what programs are running, has a <guimenuitem>Run
4164           gtop...</guimenuitem>  menu item. Selecting this menu item
4165           starts <application>GTop</application>, which allows you to
4166           view and control programs which are running.
4167          </para>
4168         </listitem>
4169         <listitem>
4170          <para>
4171           The <application>CD Player</application> applet has a
4172           <guimenuitem>Run gtcd...</guimenuitem> menu item which
4173           starts the GNOME <application>CD Player</application> when
4174           selected, which has more capabilities than the applet.
4175          </para>
4176         </listitem>
4177        </orderedlist>
4178       </listitem>
4179      </varlistentry>
4180     </variablelist>
4181    </para>
4182   </sect2>
4183  </sect1>
4184  
4185  <sect1 id="feedback">
4186   <title>Feedback</title>
4187   <sect2 id="reporting-bugs"> 
4188    <title>Reporting Applet Bugs</title>
4189    <para>
4190     GNOME users are encouraged to report bugs to <ulink type="http"
4191     url="http://bugs.gnome.org">The GNOME Bug Tracking
4192     System</ulink>.  The easiest way to submit bugs is to use the
4193     <application>Bug Report Tool</application> program by selecting
4194     <menuchoice>
4195      <guimenu>Main Menu</guimenu> <guisubmenu>Utilities</guisubmenu>
4196      <guimenuitem>Bug Report Tool</guimenuitem> 
4197     </menuchoice>.
4198     Be sure to be complete in describing what you did to cause the
4199     bug to surface and, if possible, describe how the developer can
4200     reproduce the the scenario.
4201    </para>
4202   </sect2>
4203   <sect2 id="documentation-feedback"> 
4204    <title>Providing Feedback</title>
4205    <para>
4206     GNOME users are welcome to provide suggestions for how
4207     applications and documentation can be improved.  Suggestions for
4208     application changes should be submitted using the
4209     <application>Bug Report Tool</application> discussed above.
4210     Suggestions for documentation changes can be emailed directly to
4211     the documentation author (whose email should be included in the
4212     "Authors" section of the document) or by sending an email to
4213     <email>docs@gnome.org</email>. 
4214    </para>
4215   </sect2>
4216   <sect2 id="joining-gnome">  
4217    <title>Joining GNOME</title>
4218    <para>
4219     GNOME is a community project, created by hundreds of programmers,
4220     documentation writers, icon design artists, web masters, and
4221     other people, most of whom work on a volunteer basis.  New GNOME
4222     contributors are always welcome. To join the GNOME team, visit
4223     these web sites: developers &mdash; <ulink type="http"
4224     url="http://developer.gnome.org">The GNOME Development
4225     Site</ulink>, documentation writers &mdash; <ulink type="http"
4226     url="http://developer.gnome.org/projects/gdp">The GNOME Documentation
4227     Project</ulink>, icon design artists &mdash; <ulink type="http"
4228     url="http://gnome-icons.sourceforge.net/">Gnome Icon Web</ulink>,
4229     general &mdash; <ulink type="http"
4230     url="http://developer.gnome.org/helping/">Helping GNOME</ulink>,
4231     or just join the gnome-list email list (see <ulink type="http"
4232     url="http://www.gnome.org/resources/mailing-lists.html">GNOME Mailing
4233     Lists</ulink>) to discuss what you are interested in doing.
4234    </para>
4235   </sect2>
4236  </sect1>
4237 </chapter>
4238
4239 <!-- ############### Template Applets ##################### -->
4240 <chapter id="template-applets">
4241  <title>Template Applets</title>
4242
4243  &TEMPLATE-APPLET
4244
4245 </chapter>
4246
4247</book>
4248
4249
4250
4251
4252
4253
4254
4255]]>
4256	</programlisting>
4257	
4258        <programlisting>
4259<![CDATA[
4260
4261  <!-- Please replace everywhere below GNOMEAPPLET with the name of -->
4262  <!-- your applet. Most importantly, all id attributes should start -->
4263  <!-- with the name of your applet - this is necessary to avoid name -->
4264  <!-- conflict among different applets --> 
4265  <!-- Please replace YOUR-NAME with your name and YOUR-EMAIL with your email-->
4266  <!-- Please replace HACKER-NAME with the applet author's name and -->
4267  <!-- HACKER-EMAIL with the applet author's email -->
4268
4269  <!-- You should name your file: GNOMEAPPLET-applet.sgml -->
4270  <!-- Screenshots should be in PNG format and placed in the -->
4271  <!-- same directory as GNOMEAPPLET-applet.sgml -->
4272
4273  <!-- Applet docs will be merged into <chapter>'s inside a -->
4274  <!-- <book>. Thus, the indentation below (2 spaces before the <sect1>) is -->
4275  <!-- correct.-->
4276
4277  <!-- Permission is granted to make and distribute verbatim copies of -->
4278  <!-- this manual provided the copyright notice and this permission -->
4279  <!-- notice are  preserved on all copies. -->
4280  <!-- -->
4281  <!-- Permission is granted to copy and distribute modified versions of -->
4282  <!-- this manual under the conditions for verbatim copying, provided -->
4283  <!-- that the entire resulting derived work is distributed under the -->
4284  <!-- terms of a permission notice identical to this one. -->
4285  <!-- -->
4286  <!-- Permission is granted to copy and distribute translations of this -->
4287  <!-- manual into another language, under the above conditions for -->
4288  <!-- modified versions, except that this permission notice may be -->
4289  <!-- stated in a translation approved by the Foundation. -->
4290
4291  <!-- ###############   GNOMEAPPLET   ############### -->
4292  <sect1 id="GNOMEAPPLET">
4293   <title>GNOMEAPPLET Applet</title> 
4294
4295   <para> 
4296    <application>GNOMEAPPLET</application> applet, shown in <xref
4297    linkend="GNOMEAPPLET-fig">, does this and that. To learn how to
4298    add this applet to a <interface>Panel</interface>, see <xref
4299    linkend="adding-applets">. 
4300   </para>
4301  
4302 
4303   <figure id="GNOMEAPPLET-fig">
4304   <title>GNOMEAPPLET</title>
4305   <screenshot>
4306    <screeninfo>GNOMEAPPLET</screeninfo>
4307    <graphic format="png" fileref="GNOMEAPPLET-fig" srccredit="ME">
4308    </graphic>
4309   </screenshot>
4310   </figure>
4311
4312   <sect2 id="GNOMEAPPLET-usage">
4313    <title>Usage</title>
4314    <para>
4315     This applet does nothing. To use it, just
4316     left-click on it and it will instantly do nothing.   
4317    </para>
4318   </sect2>
4319
4320   <sect2 id="GNOMEAPPLET-right-click">
4321    <title>Right-Click Pop-Up Menu Items</title>
4322    <para> 
4323     In addition to the standard menu items (see <xref
4324     linkend="standard-right-click-items">), the right-click pop-up menu has 
4325     the following items: 
4326     <itemizedlist> 	
4327      <listitem>
4328       <para>
4329        <guimenuitem>Properties...</guimenuitem> &mdash; This menu
4330        item opens the <interface>Properties</interface> dialog (see
4331        <xref linkend="GNOMEAPPLET-properties">) which allows you to
4332        customize the appearance and behavior of this applet.
4333       </para>
4334      </listitem>
4335      <listitem>
4336       <para>
4337        <guimenuitem>Run Hello World...</guimenuitem> &mdash; This
4338        menu item starts the program <application>Hello
4339        World</application>, used to say "hello" to the world. 
4340       </para>
4341      </listitem>
4342     </itemizedlist>
4343    </para>
4344   </sect2>
4345
4346   <sect2 id="GNOMEAPPLET-properties">
4347    <title>Properties</title>
4348    <para>
4349     You can configure <application>GNOMEAPPLET</application> applet by
4350     right-clicking on the applet and choosing the
4351     <guimenuitem>Properties...</guimenuitem> menu item. This will open the
4352     <interface>Properties</interface> dialog, shown in <xref
4353     linkend="GNOMEAPPLET-properties-fig">.
4354    </para>
4355    <figure id="GNOMEAPPLET-properties-fig">
4356     <title>Properties Dialog</title>
4357     <screenshot>
4358      <screeninfo>Properties Dialog</screeninfo> 
4359      <graphic format="png" fileref="GNOMEAPPLET-properties" srccredit="ME">
4360      </graphic>
4361     </screenshot>
4362    </figure>
4363    
4364    <para> 
4365     To change the color of the applet, click on the
4366     <guibutton>color</guibutton> button. To change other properties,
4367     click on other buttons. 
4368    </para>
4369
4370    <para>
4371     For more information on the <interface>Properties</interface>
4372     dialog, including descriptions of the <guibutton>OK</guibutton>,
4373     <guibutton>Apply</guibutton>, <guibutton>Cancel</guibutton>, and
4374     <guibutton>Help</guibutton> buttons, see <xref
4375     linkend="applet-properties-dialog">.
4376    </para>
4377   </sect2>
4378  
4379   <sect2 id="GNOMEAPPLET-bugs">
4380    <title> Known Bugs and Limitations</title>
4381    <para>
4382     There are no known bugs in the
4383     <application>GNOMEAPPLET</application> applet. 
4384    </para>
4385   </sect2>
4386
4387   <sect2 id="GNOMEAPPLET-authors">
4388    <title>Authors</title>
4389    <para>
4390     This applet was writen by HACKER-NAME
4391     <email>HACKER-EMAIL</email>.  The documentation for this applet
4392     which you are reading now was written by
4393     YOUR-NAME <email>YOUR-EMAIL</email>. For information on submitting
4394     bug reports and suggestions for improvements, see <xref
4395     linkend="feedback">. 
4396    </para>
4397   </sect2>
4398
4399  </sect1>
4400
4401
4402
4403
4404
4405]]>
4406
4407
4408</programlisting>
4409      </para>
4410    </sect1>
4411
4412<!-- ####### Document Templates | Templates 3: Application Help ####### 
4413
4414    <sect1 id="template3">
4415      <title>Template 2: Application Help</title>
4416      <programlisting>
4417<![CDATA[(Put sgml here.)]]> </programlisting>
4418    </sect1>
4419
4420####### Document Templates | Templates 4: Application Context Sensitive Help #######
4421
4422    <sect1 id="template4">
4423      <title>Template 3: Application Context Sensitive Help</title>
4424      <para>
4425        Context sensitive help is still in development.
4426      </para>
4427    </sect1>
4428
4429####### Document Templates | Templates 5: Complete Application: gnome-hello  ####### 
4430
4431    <sect1 id="template5">
4432      <title>Template 4: Complete Application: gnome-hello</title>
4433      <programlisting>
4434<![CDATA[(Put sgml here.)]]>
4435      </programlisting>  
4436    </sect1>
4437
4438####### Document Templates | Templates 6: Tutorial ####### 
4439
4440    <sect1 id="template6">
4441      <title>Template 5: Tutorial</title>
4442      <programlisting>
4443<![CDATA[(Put sgml here.)]]>
4444      </programlisting>  
4445    </sect1>-->
4446  </appendix>
4447
4448</article>
4449