Writing Documentation Using Docbook

Total Page:16

File Type:pdf, Size:1020Kb

Writing Documentation Using Docbook Writing Documentation Using DocBook A Crash Course David Rugge [email protected] Mark Galassi [email protected] Eric Bischoff [email protected] Writing Documentation Using DocBook: A Crash Course by David Rugge, Mark Galassi, and Eric Bischoff Copyright © 1997-2002 by David Rugge, Mark Galassi, Eric Bischoff This document is a first tutorial on how to write documentation in DocBook using the Docbook-Tools distribution. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License". Table of Contents 1. Introduction.....................................................................................................................................9 1.1. About this Booklet ...............................................................................................................9 1.2. Why DocBook?..................................................................................................................10 1.3. Your World View................................................................................................................11 1.4. Markup based on content ...................................................................................................12 2. Getting started ..............................................................................................................................15 2.1. Presentation of the DocBook-Tools ...................................................................................15 2.2. Installing the DocBook-Tools ............................................................................................15 2.3. My First DocBook File ......................................................................................................17 2.4. Introducing the Style Sheets ..............................................................................................18 2.5. Other conversion utilities ...................................................................................................19 3. Basic notions..................................................................................................................................21 3.1. Anatomy of a DocBook Tag ..............................................................................................21 3.2. The Structure of a DocBook File .......................................................................................21 4. The Document Type Declaration.................................................................................................25 4.1. Using Entities for Shared Text ...........................................................................................25 4.2. Using Entities to Include Other files ..................................................................................26 4.3. Identifying files with formal public IDs.............................................................................27 4.4. Using Marked Sections to Handle Conditional Content....................................................28 5. Meta Information..........................................................................................................................31 6. Lists ................................................................................................................................................33 6.1. The simplelist.....................................................................................................................33 6.2. The itemizedlist..................................................................................................................34 6.3. The orderedlist ...................................................................................................................34 6.4. The variablelist...................................................................................................................35 6.5. The segmentedlist...............................................................................................................36 6.6. qandaset..............................................................................................................................37 6.7. Procedures..........................................................................................................................38 7. Tables .............................................................................................................................................41 8. Graphics.........................................................................................................................................45 9. Links...............................................................................................................................................47 10. Describing the Application’s Interface .....................................................................................49 10.1. Examples..........................................................................................................................49 10.2. GUI Interface Elements....................................................................................................50 10.3. Command Line Elements.................................................................................................53 10.4. Describing an API............................................................................................................55 11. Miscellaneous Useful Tags..........................................................................................................57 11.1. Labelling Tags..................................................................................................................57 11.2. Formatting Tags................................................................................................................57 5 11.3. Warnings, Tips, and Notes ...............................................................................................57 12. Where to Go Next .......................................................................................................................59 12.1. DocBook and SGML Resources ......................................................................................59 A. Licence ..........................................................................................................................................61 A.1. Free Documentation Licence ............................................................................................61 B. Emacs PSGML mode tips............................................................................................................71 Glossary .............................................................................................................................................73 6 List of Tables 7-1. Mouse Mileage............................................................................................................................42 List of Examples 2-1. A minimal DocBook file .............................................................................................................17 2-2. The minimal DocBook file, with some attributes........................................................................18 3-1. Chapters and sections ..................................................................................................................22 4-1. Entities used to share text............................................................................................................25 4-2. Entities used to include other files...............................................................................................26 5-1. DocBook metainformation..........................................................................................................31 6-1. A simplelist..................................................................................................................................33 6-2. An itemizedlist ............................................................................................................................34 6-3. An orderedlist..............................................................................................................................35 6-4. A variablelist ...............................................................................................................................35 6-5. A segmentedlist ...........................................................................................................................36 6-6. A qandaset ...................................................................................................................................37 6-7. A procedure list ...........................................................................................................................38 7-1. A table .........................................................................................................................................41 8-1. An inline media object ................................................................................................................45 8-2. A screenshot ................................................................................................................................45
Recommended publications
  • An Improved Parallel Hashed Oct-Tree N-Body Algorithm for Cosmological Simulation 1
    Scientific Programming 22 (2014) 109–124 109 DOI 10.3233/SPR-140385 IOS Press 2HOT: An improved parallel hashed oct-tree N-body algorithm for cosmological simulation 1 Michael S. Warren Theoretical Division, Los Alamos National Laboratory, Los Alamos, NM, USA E-mail: [email protected] Abstract. We report on improvements made over the past two decades to our adaptive treecode N-body method (HOT). A math- ematical and computational approach to the cosmological N-body problem is described, with performance and scalability mea- sured up to 256k (218) processors. We present error analysis and scientific application results from a series of more than ten 69 billion (40963) particle cosmological simulations, accounting for 4×1020 floating point operations. These results include the first simulations using the new constraints on the standard model of cosmology from the Planck satellite. Our simulations set a new standard for accuracy and scientific throughput, while meeting or exceeding the computational efficiency of the latest generation of hybrid TreePM N-body methods. Keywords: Computational cosmology, N-body, fast multipole method 1. Introduction mological parameters, modeling the growth of struc- ture, and then comparing the model to the observations We first reported on our parallel N-body algorithm (Fig. 1). (HOT) 20 years ago [67] (hereafter WS93). Over the Computer simulations are playing an increasingly same timescale, cosmology has been transformed from important role in the modern scientific method, yet a qualitative to a quantitative science. Constrained by a the exponential pace of growth in the size of calcu- diverse suite of observations [39,44,47,49,53], the pa- lations does not necessarily translate into better tests rameters describing the large-scale Universe are now of our scientific models or increased understanding of known to near 1% precision.
    [Show full text]
  • C-C++ Beautifier HOW-TO
    C-C++ Beautifier HOW-TO Al Dev (Alavoor Vasudevan) < alavoor[AT]yahoo.com > v16.7, 2 Nov 2003 Abstract This document will help you to format (beautify) the C/C++ programs so that it is more readable and confirms to your site C/C++ coding standards. The information in this document applies to all the operating sytems that is - Lin- ux, MS DOS, Apple Macintosh, Windows 95/NT/2000, BeOS, OS/2, IBM OSes, all flavors of Unix like Solaris, HPUX, AIX, SCO, Sinix, BSD, UnixWare, etc.. and to all other operating systems which support "C" compiler (it means almost all the operating systems on this planet!). Table of Contents Introduction ...................................................................................................................... 1 Installing BCPP ................................................................................................................. 2 How can I trust Beautifier programs??!! ................................................................................ 3 Method 1: Verfication Program for C++/C ..................................................................... 3 Method 2: Verfication Program for C++/C ..................................................................... 3 Method 3: Verfication Program for Java/C++/Others ........................................................ 4 Method 4: Shell script: Verfication Program for C++/C .................................................... 5 HTML Beautifier ..............................................................................................................
    [Show full text]
  • OASIS Response to NSTC Request for Feedback on Standard Practices
    OASIS RESPONSE TO NSTC REQUEST FOR FEEDBACK ON STANDARDS PRACTICES OASIS (Organization for the Advancement of Structured Information Standards) is pleased to respond to the request from the National Science and Technology Council's Sub-Committee on Standards published at 75 FR 76397 (2010), and extended by 76 FR 3877 (2011), for feedback and observations regarding the effectiveness of Federal agencies' participation in the development and implementation of standards and conformity assessment activities and programs. We have advised our own members about the Federal Register inquiry, in case they wish to respond. Of course, their opinions are their own, and this response does not represent the views of any members, but only the observations of OASIS professional staff. I. RESPONDENT'S BACKGROUND OASIS is one of the largest and oldest global open data standards consortia, founded in 1993 as SGML Open. OASIS has over 5000 active participants representing about 600 member organizations and individual members in over 80 countries. We host widely-used standards in multiple fields including • cybersecurity & access control (such as WS-Security, SAML, XACML, KMIP, DSS & XSPA) [/1], • office documents and smart semantic documents (such as OpenDocument, DITA, DocBook & CMIS) [/2], and • electronic commerce (including SOA and web services, such as BPEL, ebXML, WS-ReliableMessaging & the WS-Transaction standards) [/3] among other areas. Various specific vertical industries also fulfill their open standards requirements by initiating OASIS projects, resulting in mission-specific standards such as • UBL and Business Document Exchange (for e-procurement) [/4], • CAP and EDML (for emergency first-responder notifications) [/5], and • LegalXML (for electronic court filing data)[/6].
    [Show full text]
  • Automated Software System for Checking the Structure and Format of Acm Sig Documents
    AUTOMATED SOFTWARE SYSTEM FOR CHECKING THE STRUCTURE AND FORMAT OF ACM SIG DOCUMENTS A THESIS SUBMITTED TO THE GRADUATE SCHOOL OF APPLIED SCIENCES OF NEAR EAST UNIVERSITY By ARSALAN RAHMAN MIRZA In Partial Fulfillment of the Requirements for The Degree of Master of Science in Software Engineering NICOSIA, 2015 ACKNOWLEDGEMENTS This thesis would not have been possible without the help, support and patience of my principal supervisor, my deepest gratitude goes to Assist. Prof. Dr. Melike Şah Direkoglu, for her constant encouragement and guidance. She has walked me through all the stages of my research and writing thesis. Without her consistent and illuminating instruction, this thesis could not have reached its present from. Above all, my unlimited thanks and heartfelt love would be dedicated to my dearest family for their loyalty and their great confidence in me. I would like to thank my parents for giving me a support, encouragement and constant love have sustained me throughout my life. I would also like to thank the lecturers in software/computer engineering department for giving me the opportunity to be a member in such university and such department. Their help and supervision concerning taking courses were unlimited. Eventually, I would like to thank a man who showed me a document with wrong format, and told me “it will be very good if we have a program for checking the documents”, however I don’t know his name, but he hired me to start my thesis based on this idea. ii To Alan Kurdi To my Nephews Sina & Nima iii ABSTRACT Microsoft office (MS) word is one of the most commonly used software tools for creating documents.
    [Show full text]
  • Howtos with Linuxdoc
    HOWTOs with LinuxDoc David S. Lawyer v0.09, November 2007 Questo testo tratta di come scrivere gli HOWTO usando il semplice linguaggio a marcatori (markup) LinuxDoc. È rivolto principalmente agli autori del Linux Documentation Project (e ad autori futuri alle prime armi che vogliono iniziare rapidamente). Se si vuole usare DocBook, il linguaggio a marcatori più completo e dicile, (incluso XML), vedere la LDP Authoring Guide (Guida per gli autori di LDP). Traduzione ed adattamenti in italiano a cura di Beatrice Torracca, beatricet (at) libero (dot) it, e Hugh Hartmann, hhartmann (at) libero (dot) it, revisione a cura di Vieri Giugni, v.giugni (at) gmail (dot) com). Per versioni aggiornate di questo documento, e per trovare altra documentazione in italiano sul software libero, visitare il sito dell' ILDP <http://it.ildp.org> Indice 1 Introduzione 2 1.1 Per partire immediatamente.....................................2 1.2 Copyright e licenza..........................................3 1.3 Perché si dovrebbe scrivere un HOWTO?.............................3 1.4 Perché ho scritto questo documento................................3 2 Informazioni sulla scrittura di un HOWTO3 2.1 Copyright...............................................3 2.2 Scegliere un argomento........................................3 3 Il formato degli HOWTO4 3.1 Introduzione..............................................4 4 LinuxDoc e DocBook a confronto4 5 Imparare LinuxDoc 6 5.1 Introduzione..............................................6 5.2 Esempio 1 (nome le: esempio1.sgml)...............................6 5.3 Esempio 2 (nome le: esempio2.sgml)...............................7 5.4 Esempio 3 (nome le: esempio3.sgml)...............................9 5.5 Guida di consultazione rapida di LinuxDoc............................ 11 5.5.1 Intestazione.......................................... 11 5.5.2 Impaginazione del corpo................................... 12 5.5.3 Tipi di carattere....................................... 12 1.
    [Show full text]
  • Open-Source Documentation
    Open-Source Documentation: In Search of User-Driven, Just-in-Time Writing Erik Berglund Michael Priestley Linköping University IBM Toronto Lab S-581 83, Linköping, Canada Sweden [email protected] + 46 13 28 24 93 [email protected] ABSTRACT Keywords Iterative development models allow developers to respond quickly Open source documentation, just-in-time, user-driven. to changing user requirements, but place increasing demands on writers who must handle increasing amounts of change with ever- 1. THE PROBLEM decreasing resources. In the software development world, one Over the years, the software industry has accepted that changing solution to this problem is open-source development: allowing the requirements are simply part of the software development process. users to set requirements and priorities by actually contributing to An allowance for client requirements change, even an expectation the development of the software. This results in just-in-time of change, is at the foundation of most software development software improvements that are explicitly user-driven, since they methodologies. The Rational Unified Process (RUP) illustrates are actually developed by users. this, and Extreme Programming (XP) exemplifies it. Taken to the In this article we will discuss how the open source model can be extreme, as it often is in open-source development, the extended to the development of documentation. In many open- functionality of the product may not be determined until the day it source projects, the role of writer has remained unchanged: is completed. documentation development remains a specialized activity, owned Continuous requirements change makes traditional methods of by a single writer or group of writers, who work as best they can software documentation difficult.
    [Show full text]
  • A Self-Referential HOWTO on Release Engineering∗
    A self-referential HOWTO on release engineering∗ Mark Galassi† Space Science and Applications group Los Alamos National Laboratory‡ February 1, 2018 Abstract Release engineering is a fundamental part of the software development cycle: it is the point at which quality control is exercised and bug fixes are integrated. The way in which software is released gives the end user her first experience of a software package, while in scientific computing release engineering can guarantee reproducibility. For these reasons and others the release process is a good indicator of the maturity and organization of a development team. Software teams often do not put in place a release process at the beginning. This is unfortunate because the team does not have early and continuous execution of test suites, and it does not exercise the software in the same conditions as the end users. I describe an approach to release engineering based on the software tools developed and used by the GNU project, together with several specific proposals related to packaging and distribution. I do this in a step-by-step manner, demonstrating how this very paper is written and built using proper release engineering methods. Because many aspects of release engineering are not exercised in the building of the paper, the accompanying software repository also contains examples of software libraries. ∗For use with software version 1.0.0plus †[email protected] ‡LA-UR-14-21151 1 4 Introducing a library, and release 0.5.0 15 4.1 A simple library, built and installed by hand 15 4.2 Building and installing that simple library with automake .
    [Show full text]
  • JSON Application Programming Interface for Discrete Event Simulation Data Exchange
    JSON Application Programming Interface for Discrete Event Simulation data exchange Ioannis Papagiannopoulos Enterprise Research Centre Faculty of Science and Engineering Design and Manufacturing Technology University of Limerick Submitted to the University of Limerick for the degree of Master of Engineering 2015 1. Supervisor: Prof. Cathal Heavey Enterprise Research Centre University of Limerick Ireland ii Abstract This research is conducted as part of a project that has the overall aim to develop an open source discrete event simulation (DES) platform that is expandable, and modular aiming to support the use of DES at multi-levels of manufacturing com- panies. The current work focuses on DES data exchange within this platform. The goal of this thesis is to develop a DES exchange interface between three different modules: (i) ManPy an open source discrete event simulation engine developed in Python on the SimPy library; (ii) A Knowledge Extraction (KE) tool used to populate the ManPy simulation engine from shop-floor data stored within an Enterprise Requirements Planning (ERP) or a Manufacturing Execution System (MES) to allow the potential for real-time simulation. The development of the tool is based on R scripting language, and different Python libraries; (iii) A Graphical User Interface (GUI) developed in JavaScript used to provide an interface in a similar manner to Commercial off-the-shelf (COTS) DES tools. In the literature review the main standards that could be used are reviewed. Based on this review and the requirements above, the data exchange format standard JavaScript Object Notation (JSON) was selected. The proposed solution accom- plishes interoperability between different modules using an open source, expand- able, and easy to adopt and maintain, in an all inclusive JSON file.
    [Show full text]
  • Reconnaissance Structurelle De Formules Mathématiques : État De L’Art 9
    CORE Metadata, citation and similar papers at core.ac.uk Provided by HAL-UNICE Reconnaissance Structurelle de Formules Math´ematiques Typographi´eeset Manuscrites St´ephaneLavirotte To cite this version: St´ephaneLavirotte. Reconnaissance Structurelle de Formules Math´ematiques Typographi´ees et Manuscrites. Interface homme-machine [cs.HC]. Universit´eNice Sophia Antipolis, 2000. Fran¸cais. <tel-00523373> HAL Id: tel-00523373 https://tel.archives-ouvertes.fr/tel-00523373 Submitted on 5 Oct 2010 HAL is a multi-disciplinary open access L'archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destin´eeau d´ep^otet `ala diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publi´esou non, lished or not. The documents may come from ´emanant des ´etablissements d'enseignement et de teaching and research institutions in France or recherche fran¸caisou ´etrangers,des laboratoires abroad, or from public or private research centers. publics ou priv´es. UNIVERSITEDENICE–SOPHIAANTIPOLIS´ Ecole´ Doctorale des Sciences et Technologies de l’Information et de la Communication Reconnaissance structurelle de formules math´ematiques typographi´ees et manuscrites THESE` de doctorat pour obtenir le titre de Docteur en Sciences Discipline : Informatique par St´ephane LAVIROTTE Soutenue le 14 juin 2000 a` l’ESSI (Sophia-Antipolis) Composition du jury Pr´esident : Jean-Marc FEDOU Professeur `a l’Universit´e de Nice Sophia-Antipolis Rapporteurs : Karl TOMBRE Professeural’ ` Ecole´ des Mines de Nancy Guy LORETTE Professeura ` l’Universit´e de Rennes I Examinateurs : Lo¨ıc POTTIER Charg´e de Recherche `a l’INRIA Sophia-Antipolis Peter SANDER Professeura ` l’Universit´e de Nice Sophia-Antipolis Marc BERTHOD Directeur de Recherchea ` l’INRIA Sophia-Antipolis Universit´e de Nice Sophia-Antipolis / Institut National de Recherche en Informatique et Automatique Mis en page avec la classe thloria.
    [Show full text]
  • Release Notes for the Docbook XSL Stylesheets I
    Release Notes for the DocBook XSL Stylesheets i Release Notes for the DocBook XSL Stylesheets Release Notes for the DocBook XSL Stylesheets ii Contents 1 Release Notes: snapshot 1 2 Release Notes: 1.79.2 1 3 Release Notes: 1.79.1 1 3.1 Gentext . .1 3.2 Common . .2 3.3 FO...........................................................4 3.4 HTML.........................................................9 3.5 Manpages . 13 3.6 Epub.......................................................... 14 3.7 HTMLHelp . 16 3.8 Eclipse . 16 3.9 JavaHelp . 16 3.10 Slides . 17 3.11 Website . 17 3.12 Webhelp . 18 3.13 Params . 18 3.14 Profiling . 20 3.15Lib........................................................... 20 3.16 Tools . 20 3.17 Template . 21 3.18 Extensions . 21 4 Release Notes: 1.79.0 21 4.1 Gentext . 22 4.2 Common . 23 4.3 FO........................................................... 24 4.4 HTML......................................................... 29 4.5 Manpages . 34 4.6 Epub.......................................................... 35 4.7 HTMLHelp . 36 4.8 Eclipse . 36 4.9 JavaHelp . 37 4.10 Slides . 37 4.11 Website . 38 4.12 Webhelp . 38 4.13 Params . 39 Release Notes for the DocBook XSL Stylesheets iii 4.14 Profiling . 40 4.15Lib........................................................... 40 4.16 Tools . 40 4.17 Template . 41 4.18 Extensions . 42 5 Release Notes: 1.78.1 42 5.1 Common . 42 5.2 FO........................................................... 43 5.3 HTML......................................................... 43 5.4 Manpages . 44 5.5 Webhelp . 44 5.6 Params . 44 5.7 Highlighting . 44 6 Release Notes: 1.78.0 44 6.1 Gentext . 45 6.2 Common . 45 6.3 FO........................................................... 46 6.4 HTML......................................................... 47 6.5 Manpages .
    [Show full text]
  • Docbook to XHTML I
    DocBook to XHTML i DocBook to XHTML DocBook to XHTML ii COLLABORATORS TITLE : DocBook to XHTML ACTION NAME DATE SIGNATURE WRITTEN BY Jordi Fita February 6, 2018 REVISION HISTORY NUMBER DATE DESCRIPTION NAME 29081e152caf 2011-05-31 Added the ’notranslate’ class to the code’s div jfita output in db2html. 34b7522b4f97 2011-03-28 atangle is now using a new style for directives jfita which don’t collide with XML tags. I had to update all games and programs as well in order to use the new directive syntax. 6cc909c0b61d 2011-03-07 Added the comments section. jfita a43774cb5c70 2011-01-25 db2html now takes into account XML jfita idiosyncrasies. 3afa2eb8824f 2010-11-12 Fixed missing tokens from lexer in db2html. jfita 2d89308d5f16 2010-11-10 Fixed a problem with double end of line values in jfita db2html’s literate programming filter. d1e8f7703f36 2010-11-10 Corrected the literate programming directive’s jfita regexp to include the dot character. 8c7d8f36c874 2010-10-30 Fixed a typo. jfita a643bad18ca3 2010-10-28 Fixed a typo in db2html. jfita ec13c85db550 2010-10-27 Added a missing source style to db2html.txt jfita DocBook to XHTML iii REVISION HISTORY NUMBER DATE DESCRIPTION NAME 30b4b6244050 2010-10-27 Added the filter for atangle’s directive to db2html. jfita e3241d8e1dc9 2010-10-25 Added the AsciiDoc’s homepage’s link to jfita db2html. 05a1b32f8b4a 2010-10-22 The appendix sections now aren’t actual jfita appendix when making a book. 0ab76df46149 2010-10-20 Added the download links. jfita 9efbebdaa6ab 2010-10-19 Fixed an unused ’tmp’ variable in db2html’s jfita print_error function.
    [Show full text]
  • Markup Languages and TEI XML Encoding
    Methods and tools for Digital Philology: markup languages and TEI XML encoding Digital Tools for Humanists Summer School 2019 Pisa, 10-14 June 2019 Roberto Rosselli Del Turco Dipartimento di Studi Umanistici Università di Torino [email protected] XML encoding Markup languages there are many markup languages, which differ greatly fundamental distinction: procedural markup vs. descriptive markup procedural markup is typical of word processors: instructions for specifying where the characters should appear on the page, their appearance, etc. WYSIWYG approach, but also see LaTeX the user doesn’t see or modify the markup directly (but again see LaTeX) descriptive markup describes text this distinction isn’t as neat as one would love to think, see for instance the structural aspect of text 2 XML encoding Descriptive markup allows the scholar to do a semantic annotation of text the current standard is the XML language (← SGML) in spite of the multiple hierarchies problem XML has been used to produce many different encoding schemas: TEI schemas for all types of texts TEI-derived schemas: EpiDoc, MEI, CEI, etc. other schemas: DOCBOOK, MML – Music Markup Language, MathML, SVG, etc. it is also possible to create a personal encoding schema, but you would need a very good reason not to use TEI XML 3 Il linguaggio XML Markup languages: XML SGML is the “father” of XML (eXtensible Markup Language) XML was created to replace both SGML, offering similar characteristics but a much lower complexity, and also HTML, going beyond the intrinsic
    [Show full text]