Information For Authors And Collaborators


This document contains information for authors and other individuals collaborating on the book, a work in progress, tentatively entitled "A Practitioner's Guide To The Design And Development Of Small Microcontroller Software".


Bookmarks (To This Page)


License And Copyright Information

The license for the book is still under construction.  The goal is to phrase the license so that anyone may print or distribute the book, including for profit, so long as the work is correctly attributed and the copyright is not transferred.


Typographic, LaTeX, Etc. Conventions

Choice Of Word-Processing Software

LaTeX was chosen as the word-processing software for this work, for the following reasons:

Nomenclature Of Scopes

There are four scopes discussed in this document:

Number Of Volumes And Organization

All volumes of this work are generated using Wish or an equivalent.  (Wish is the Tk shell of the Tcl/Tk scripting language).  Wish is used because of the complexity of the LaTeX compilations--some files must be generated on the fly, and there are other build complexities that require scripting automation.  The maximum number of pages that can be bound in a book is on the order of several hundred, and this work could easily exceed that length.  For this reason, the work is designed so that it can be split into volumes.  It is logistically easier to plan for the possibility of multiple volumes from the beginning, rather than needing to split an existing single-volume work into multiple volumes without an advance plan.

At the present time, the Wish script compiles a single-volume work, as well as all volumes of a multi-volume work, re-using the same chapters as input to both the single-volume work and the multi-volume work.  The number of volumes and the way that chapters are assigned to volumes is controlled by arrays of strings in the Wish script.  The process is nearly fully automatic.

However, the preface, which gives an overview of volumes and chapters, has to be manually maintained to match the Wish script.  This is a minor inconvenience, and would be very difficult to automate.

At the present time, in the multi-volume work, each volume has a separate index.  A future improvement planned is to enhance the Wish script to combine the indices of all volumes.  The plan is to combine index entries so that the volume tag is included with each page number cited in the index.  This will give a full index of all volumes.  For the single-volume work, this limitation does not exist, as the index is all-inclusive.

Only the single-volume work will be published on the Web.  Readers can print page ranges, so the length will not be an inconvenience.

The number and titles of volumes and the assignment of chapters to volumes is not known precisely at this time.  This information will settle later as the work is presented to a publisher.  However, the most important attribute of the work is that it is designed in advance to be split into multiple volumes.

If the conventions outlined in this appendix are followed, the possible split into multiple volumes should be straightforward and nearly fully automatic (except for the preface).

Mechanisms For Cross-Referencing Across Documents

David Carlisle's xr package is used to cross-reference across documents.  In practice, this creates a global \label and \ref namespace which spans all volumes, so care must be given to naming conventions to keep order and prevent naming collisions.

The use of the xr package is straightforward:

The use of xr does require that the entire set of cross-referenced volumes be compiled at least twice in a round-robin fashion to resolve all foreign dependencies.

The Wish script automatically generates the "main" LaTeX file for the single-volume work and for each volume of the multi-volume work.  The insertion of the \usepackage{xr} and \externaldocument{<name>} commands is automatic, and is done on the basis of arrays of strings embedded in the Wish script.

Naming And Usage Conventions

Naming and usage conventions apply at the work level, at the volume level, at the chapter level, and optionally at the section level.

Naming conventions at the work level are enumerated below.

Naming and usage conventions at the volume level are enumerated below.

Naming and usage conventions at the chapter level are enumerated below.

Subdirectory Tree Structure

Need to add a figure here to illustrate the subdirectory structure.


This web page is maintained by David T. Ashley.
Sound credit:  As Good As It Gets.
$Header: /cvsroot/esrg/sfesrg/esrgweba/htdocs/devels/uc_sw_bk_auth_collab/auth_info.htm,v 1.4 2003/05/15 08:12:53 dtashley Exp $