# GAP package GAPDoc

Authors: Frank Lübeck (maintainer) and Max Neunhöffer
Needs: GAP in version at least 4.11.0
and for creating high quality output of GAPDoc documents a sufficiently new version of `LaTeX/pdfLaTeX` and certain `LaTeX` packages, `makeindex`.
Operating systems: Any, on which GAP and the programs mentioned above are running.
Current version: 1.6.7 (02/2024)
Status: Accepted (since October 2006)
Contact: Frank.Luebeck@Math.RWTH-Aachen.De
Download: See below for archives in several formats.
Source repository and issue tracker: https://github.com/frankluebeck/GAPDoc
History: This text file CHANGES describes the most important differences to former versions of GAPDoc.

## Description

This package describes a document format for writing GAP documentation.

The idea is to define a sufficiently abstract markup language for GAP documentation which can be (relatively easily) converted into different output formats. We used XML to define such a language.

This package provides:

- Utilities to use the documentation which is written in GAPDoc format with the GAP help system. If you don't want to write your own (package) documentation you can skip to the last point of this list.
- The description of a markup language for GAP documentation (which is defined using the XML standard).
- Three example documents using this language: The GAPDoc documentation itself, a short example which demonstrates all constructs defined in the GAPDoc language, and a very short example explained in the introduction of the main documentation.
- A mechanism for distributing documentation among several files, including source code files.
- GAP programs (written by the first named author) which produce from documentation written in the GAPDoc language several document formats:
  - text format with color markup for onscreen browsing.
  - LaTeX format and from this PDF- (and DVI)-versions with hyperlinks.
  - HTML (XHTML 1.0 strict) format for reading with a Web-browser (and many hooks for CSS layout), including a version of the files which use MathJAX for rendering mathemtical formulae.
- Utility GAP programs which are used for the above but can be of independent interest as well:
  - unicode strings with translations to and from other encodings
  - further utilities for manipulating strings
  - tools for dealing with BibTeX data
  - another data format BibXMLext for bibliographical data including tools to manipulate/translate them
  - a tool `ComposedDocument` for composing documents which are distributed in many files

## Installation

Just unpack one of the archives given below in the `pkg` subdirectory of your GAP installation.

Unpacking generates a subdirectory `GAPDoc-1.6.7`.

That's it! (Maybe you want to read the help section '`?SetHelpViewer`' in the GAP reference manual.)

Installation outside the GAP main directory: When you don't have access to the directory of your main GAP installation you can also install the package by unpacking inside a directory `MYGAPDIR/pkg`. (Don't forget to call `gap` with the `-l ";MYGAPDIR"` option.) The only drawback with this installation is that in the HTML version of the package documentation the links to the main GAP manuals don't work. You can correct this by recompiling the HTML version of the documentation: Say `cd GAPDoc*; gap makedocrel.g`.

## Online Documentation

Here is the documentation of the GAPDoc package in several output formats. If you have installed the package as described above you can also access all of these documents from the GAP online help.

### Main GAPDoc documentation

- HTML-version
- `pdf`-version
- postscript-version (no color, for printing)
- text-version with and without color markup (you can read the colored version with `less` on a terminal screen, if it looks like garbage, type `-r<CR>` or start with `less -r`)

There is also an example document which uses all constructs which are allowed in a GAPDoc document. Here you can compare directly the GAPDoc-XML-source code and how it looks like in each format.

### Example GAPDoc document

- HTML-version
- `pdf`-version
- postscript-version (no color, for printing)
- text-version with and without color markup.

## Package Archives for Download

The GAPDoc package is availabe in several formats:

- `GAPDoc-1.6.7.tar.gz` (GNU `tar` archive, `gzip`'ed)
- `GAPDoc-1.6.7.tar.bz2` (GNU `tar` archive, `bzip2`'ed)
- `GAPDoc-1.6.7-win.zip` (with DOS/Windows style line breaks in text files)

Frank Lübeck / Last modified: Wed, 21 Feb 2024 17:24:28 +0100