Annotation of embedaddon/libxml2/test/relaxng/docbook_0.xml, revision 1.1
1.1 ! misho 1: <?xml version="1.0"?>
! 2: <!DOCTYPE article [
! 3: <!ENTITY version "1.0.53">
! 4: <!ENTITY mdash "--">
! 5: <!ENTITY hellip "...">
! 6: <!ENTITY copy "©"> <!-- 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><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>
! 481: PUBLIC "-//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>
! 485: PUBLIC "-//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
! 505: V1.1//EN"[]>]]>
! 506: </programlisting>
! 507: </para>
! 508: <para>
! 509: Books:
! 510: <programlisting>
! 511: <![CDATA[<!DOCTYPE Book PUBLIC "-//GNOME//DTD DocBook PNG Variant
! 512: V1.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
! 1000: Documentation 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
! 1021: Components ####### -->
! 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, < and >. Text is marked by both beginning and
! 1142: ending elements, for example in the DocBook DTD, one denotes a
! 1143: title with <sgmltag><title></sgmltag>The
! 1144: Title<sgmltag></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 — 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 — 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 <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: </>, for example:
! 1235: <literal><sgmltag><title></sgmltag>The
! 1236: Title<sgmltag></></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><xref></sgmltag> not to have a closing tag:
! 1256: <literal><sgmltag><xref
! 1257: linkend="someid"></sgmltag></literal>. In
! 1258: XML, it is illegal; instead, you should use
! 1259: <literal><sgmltag><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><title></sgmltag> and
! 1272: <sgmltag><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><chapter></sgmltag>; it may contain one or more
! 1297: <sgmltag><sect1></sgmltag>, each of them may contain
! 1298: <sgmltag><sect2></sgmltag> and so on up to
! 1299: <sgmltag><sect5></sgmltag>. The top-level element of an
! 1300: article body is always
! 1301: <sgmltag><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><sect1></sgmltag> and
! 1307: <sgmltag><sect2></sgmltag> should be sufficient. If not,
! 1308: you probably should split your <sgmltag><sect1></sgmltag>
! 1309: into several smaller ones.
! 1310: </para>
! 1311: <para> Use the tag <sgmltag><para></sgmltag> for
! 1312: paragraphs, even if there is only one paragraph in a
! 1313: section—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><note></sgmltag>, <sgmltag><tip></sgmltag>,
! 1324: <sgmltag><warning></sgmltag>,
! 1325: <sgmltag><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><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 — 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—for example, program
! 1390: listing—use <sgmltag><programlisting></sgmltag> tag:
! 1391: <programlisting>
! 1392: <![CDATA[
! 1393: <programlisting>
! 1394: [Desktop Entry]
! 1395: Name=Gnumeric spreadsheet
! 1396: Exec=gnumeric
! 1397: Icon=gnome-gnumeric.png
! 1398: Terminal=0
! 1399: Type=Application
! 1400: </programlisting>]]>
! 1401: </programlisting>
! 1402: which produces
! 1403: <programlisting>
! 1404: [Desktop Entry]
! 1405: Name=Gnumeric spreadsheet
! 1406: Exec=gnumeric
! 1407: Icon=gnome-gnumeric.png
! 1408: Terminal=0
! 1409: Type=Application
! 1410: </programlisting>
! 1411: As a matter of fact, all examples in this document were
! 1412: produced using <sgmltag><programlisting></sgmltag>.
! 1413: </para>
! 1414: <para>
! 1415: To show a record of terminal session—i.e., sequence of
! 1416: commands entered at the command line—use
! 1417: <sgmltag><screen></sgmltag> tag:
! 1418: <programlisting>
! 1419: <![CDATA[
! 1420: <screen>
! 1421: <prompt>bash$</prompt><userinput>make love</userinput>
! 1422: make: *** No rule to make target `love'. Stop.
! 1423: </screen>]]>
! 1424: </programlisting>
! 1425: which produces
! 1426: <screen>
! 1427: <prompt>bash$</prompt><userinput>make love</userinput>
! 1428: make: *** No rule to make target `love'. Stop.
! 1429: </screen>
! 1430: Note the use of tags <sgmltag><prompt></sgmltag> and
! 1431: <sgmltag><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><programlisting></sgmltag>
! 1437: and <sgmltag><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><itemizedlist></sgmltag>,
! 1451: <sgmltag><orderedlist></sgmltag>, and
! 1452: <sgmltag><variablelist></sgmltag>.
! 1453: </para>
! 1454: <variablelist>
! 1455: <varlistentry>
! 1456: <term> <sgmltag><itemizedlist></sgmltag></term>
! 1457: <listitem><para>
! 1458: This is the simplest unnumbered list, parallel to
! 1459: <sgmltag><ul></sgmltag> in HTML. Here is an example:
! 1460: <programlisting>
! 1461: <![CDATA[
! 1462: <itemizedlist>
! 1463: <listitem>
! 1464: <para>
! 1465: <guilabel>Show backup files</guilabel> — 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> — 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> — 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> —
! 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> —
! 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: — 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>&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><guilabel></sgmltag></link>
! 1523: tag. In other cases, use appropriate tags such as
! 1524: <link linkend="gui"><sgmltag><guimenuitem></sgmltag></link>,
! 1525: <link
! 1526: linkend="filenames"><sgmltag><command></sgmltag></link>,
! 1527: or — if none of
! 1528: this applies — use
! 1529: <link linkend="gui"><sgmltag><emphasis></sgmltag></link>.
! 1530: </para>
! 1531: </listitem>
! 1532: </varlistentry>
! 1533: <varlistentry>
! 1534: <term> <sgmltag><orderedlist></sgmltag></term>
! 1535: <listitem><para>
! 1536: This list is completely analogous to
! 1537: <sgmltag><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><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><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><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><variablelist></sgmltag>. The
! 1562: source looked liked this:
! 1563: <programlisting>
! 1564: <![CDATA[
! 1565: <variablelist>
! 1566: <varlistentry>
! 1567: <term> <sgmltag><itemizedlist></sgmltag></term>
! 1568: <listitem><para>
! 1569: This is the simplest unnumbered list, parallel to
! 1570: <sgmltag><ul></sgmltag> in HTML. Here is an example:...
! 1571: </para></listitem>
! 1572: </varlistentry>
! 1573: <varlistentry>
! 1574: <term> <sgmltag><orderedlist></sgmltag></term>
! 1575: <listitem><para>
! 1576: This list is completely analogous to
! 1577: <sgmltag><itemizedlist></sgmltag>
! 1578: </para></listitem>
! 1579: </varlistentry>
! 1580: <varlistentry>
! 1581: <term> <sgmltag><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><orderedlist></sgmltag>) or marks of each entry
! 1597: (in <sgmltag><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><guibutton></sgmltag> — used for
! 1614: buttons, including checkbuttons and radio buttons
! 1615: </para>
! 1616: </listitem>
! 1617:
! 1618: <listitem>
! 1619: <para>
! 1620: <sgmltag><guimenu></sgmltag>,
! 1621: <sgmltag><guisubmenu></sgmltag> —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><guimenuitem></sgmltag>—an entry in a
! 1632: menu
! 1633: </para>
! 1634: </listitem>
! 1635:
! 1636: <listitem>
! 1637: <para>
! 1638: <sgmltag><guiicon></sgmltag>—an icon
! 1639: </para>
! 1640: </listitem>
! 1641:
! 1642: <listitem>
! 1643: <para>
! 1644: <sgmltag><guilabel></sgmltag>—for items which have
! 1645: labels, like tabs, or bounding boxes.
! 1646: </para>
! 1647: </listitem>
! 1648: <listitem>
! 1649: <para>
! 1650: <sgmltag><interface></sgmltag>— 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><xref></sgmltag> and
! 1677: <sgmltag><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><ulink></sgmltag>
! 1696: tag, for example:
! 1697: <programlisting>
! 1698: <![CDATA[ To find more about GNOME, please visit <ulink type="http"
! 1699: url="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—see discussion of
! 1707: <sgmltag><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><filename></sgmltag> — used
! 1720: for filenames,
! 1721: e.g.<sgmltag><filename></sgmltag>
! 1722: foo.sgml
! 1723: <sgmltag></filename></sgmltag>
! 1724: produces: <filename>foo.sgml</filename>.
! 1725: </para>
! 1726: </listitem>
! 1727: <listitem>
! 1728: <para> <sgmltag><filename
! 1729: class="directory"></sgmltag> — used for
! 1730: directories, e.g.<sgmltag><filename
! 1731: class="directory"></sgmltag>/usr/bin
! 1732: <sgmltag></filename></sgmltag>
! 1733: produces: <filename
! 1734: class="directory">/usr/bin</filename>.
! 1735: </para>
! 1736: </listitem>
! 1737: <listitem>
! 1738: <para>
! 1739: <sgmltag><application></sgmltag> — used for
! 1740: application names,
! 1741: e.g. <sgmltag><application></sgmltag>Gnumeric
! 1742: <sgmltag></application></sgmltag> produces:
! 1743: <application>Gnumeric</application>.
! 1744: </para>
! 1745: </listitem>
! 1746: <listitem>
! 1747: <para>
! 1748: <sgmltag><envar></sgmltag> — used for
! 1749: environment variables, e.g.
! 1750: <sgmltag><envar></sgmltag>PATH<sgmltag></envar></sgmltag>.
! 1751: </para>
! 1752: </listitem>
! 1753:
! 1754: <listitem>
! 1755: <para>
! 1756: <sgmltag><command></sgmltag> — used for
! 1757: commands entered on command line, e.g.
! 1758: <sgmltag><command></sgmltag>make install
! 1759: <sgmltag></command></sgmltag> produces:
! 1760: <command>make install</command>.
! 1761: </para>
! 1762: </listitem>
! 1763: <listitem>
! 1764: <para>
! 1765: <sgmltag><replaceable></sgmltag> — used for
! 1766: replaceable text, e.g.
! 1767: <sgmltag><command></sgmltag>db2html<sgmltag><replaceable></sgmltag>
! 1768: foo.sgml
! 1769: <sgmltag></replaceable></sgmltag><sgmltag></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><userinput></sgmltag>.
! 1781: </para>
! 1782: <para> To mark keystrokes such as shortcuts and other
! 1783: commands, use <sgmltag><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><keysym></sgmltag>
! 1787: and <sgmltag><keycode></sgmltag>. However you are
! 1788: unlikely to need these for most documentation. For reference,
! 1789: <sgmltag><keysym></sgmltag> is for the <quote>symbolic
! 1790: name</quote> of a key. <sgmltag><keycode></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><keysym></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><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><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><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>&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;</sgmltag> — ampersend (&)
! 1859: </para></listitem>
! 1860: <listitem><para>
! 1861: <sgmltag>&lt;</sgmltag> — left angle bracket (<)
! 1862: </para></listitem>
! 1863: <listitem><para>
! 1864: <sgmltag>&copy;</sgmltag> — copyright sign (©)
! 1865: </para></listitem>
! 1866: <listitem><para>
! 1867: <sgmltag>&mdash;</sgmltag> — long dash (—)
! 1868: </para></listitem>
! 1869: <listitem><para>
! 1870: <sgmltag>&hellip;</sgmltag> — ellipsis (…)
! 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>&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 — 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 — 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><book></sgmltag> (and thus
! 2002: use <sgmltag><chapter></sgmltag> for each primary section)
! 2003: , instead of <sgmltag><article></sgmltag> which most
! 2004: applications use(with each primary section being a
! 2005: <sgmltag><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><sect1></sgmltag>. Applet manuals will typically
! 2017: have several sections, each of which is
! 2018: <sgmltag><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>
! 2051: One line for each 'topic'.
! 2052:
! 2053: Two columns, as defined by perl -e 'split(/\s+/,$aline,2)'
! 2054:
! 2055: First column is the HTML file (and optional section) for the topic,
! 2056: relative to the app's help file dir.
! 2057:
! 2058: Second 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>
! 2063: gnumeric.html Gnumeric manual
! 2064: function-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>
! 2086: GnomeUIInfo 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>
! 2138: gchar *tmp;
! 2139: tmp = gnome_help_file_find_file ("module", "page.html");
! 2140: if (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><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><legalnotice></sgmltag> and
! 2195: <sgmltag><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 */
! 2219: applet_widget_register_callback(APPLET_WIDGET(applet), "manual",
! 2220: _("Manual"), &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>
! 2238: applet_widget_register_stock_callback (APPLET_WIDGET(applet), "about",
! 2239: GNOME_STOCK_MENU_ABOUT, _("About"), &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><book></sgmltag> tag instead of
! 2347: <sgmltag><chapter></sgmltag> or
! 2348: <sgmltag><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><xref></sgmltag> <sgmltag><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><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
! 2483: GDP 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: — 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: — 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: — 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: — 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: — 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: — 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: — This pastes any text or data which is copied into
! 3158: the buffer.
! 3159: </para>
! 3160: </listitem>
! 3161: <listitem>
! 3162: <para>
! 3163: <guimenuitem>COMMAND1…</guimenuitem>
! 3164: — 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: — 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…</guimenuitem>
! 3189: — 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> —
! 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> — 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> — 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 …. 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…</guimenuitem> —
! 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> —
! 3600: displays this document.
! 3601: </para>
! 3602: </listitem>
! 3603:
! 3604: <listitem>
! 3605: <para>
! 3606: <guimenuitem>About…</guimenuitem> —
! 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…</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) — If this button is
! 3647: checked…(description)
! 3648: </para>
! 3649: </listitem>
! 3650:
! 3651: <listitem>
! 3652: <para>
! 3653: (Configuration Item Label) — Selecting this
! 3654: button…(description)
! 3655: </para>
! 3656: </listitem>
! 3657:
! 3658: <listitem>
! 3659: <para>
! 3660: (Configuration Item Label) — Enter the name of
! 3661: …(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> —
! 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> —
! 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> —
! 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> —
! 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 — <ulink type="http"
! 4224: url="http://developer.gnome.org">The GNOME Development
! 4225: Site</ulink>, documentation writers — <ulink type="http"
! 4226: url="http://developer.gnome.org/projects/gdp">The GNOME Documentation
! 4227: Project</ulink>, icon design artists — <ulink type="http"
! 4228: url="http://gnome-icons.sourceforge.net/">Gnome Icon Web</ulink>,
! 4229: general — <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> — 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> — 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>
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>