(classpack LaTeX package)
This is the README.md file for the classpack LaTeX package v1.19 (2020-05-19) generated by ClassPack v.1.19 (2020-05-19) on 20 May 2020 at 14:32:36
LaTeX document classes and packages are conventionally created, maintained, and distributed in DocTeX (
.dtx) format using the ltxdoc class, which provides for interleaved code and documentation (“literate programming”). However, the accurate construction of these files is technically challenging, and editing them is tedious and error-prone.
ClassPack allows a developer to create a DocBook5 XML document for a class or package, containing the documentation and annotated code, and it provides XSLT3 scripts to generate the
.ins, and other files, which can be combined into a zip file suitable for submission to CTAN.
This package classpack contains the small typographic adjustments and utilities needed to re-typeset the documentation of classes and packages developed using classpack-dev. It is not used for any other purpose and is not required for using any other class or package, only for the documentation of ClassPack–developed classes and packages.
You do not need to install the upcoming development package classpack-dev unless you want to develop classes or packages by using ClassPack yourself.
ClassPack is a work-in-progress. A paper describing an earlier version was presented at the Balisage markup conference in Montréal (Flynn, 2013).
If this package is distributed from CTAN, it should be in a zip file which allows it to be installed automatically by the TeX Live Manager (tlmgr) and similar automated installers.
If you are using automated LaTeX package installation, no further action is required: the package will be installed the first time you use it in a LaTeX document.
If you are using the TeX Live Manager (tlmgr) program manually, you can install this package with the command:
$ tlmgr install classpack
This package is also available as a TeX Directory System (TDS) zip file (
.tds.zip). This is the standard directory layout for a modern TeX installation which enables the package to be unzipped directly into your Personal TeX Directory without the need to use tlmgr. If you haven’t yet created a Personal TeX Directory, see below for details of what one is, and how to create it.
- You can install this package on any TDS-compliant personal system
- On a shared (multiuser) system like a server, the administrator can
$TEXMFLOCALdirectory instead (see below), and run your TeX directory-indexing program (eg texhash, mktexlsr, etc) so that everyone can use it.
- If you are using an old non-TDS-compliant system, see below under Manual
Your Personal TeX Directory
This is a directory (folder) where you should put all local manual modifications (updates, additions such as new or updated classes, packages, and fonts) that are not handled automatically by tlmgr. The name and location are fixed (for all practical purposes):
- Apple Mac OS X
- Unix and GNU/Linux
- MS-Windows 95/XP/NT
- MS-Windows 2007 and above
Create that folder now if it does not already exist. Put (or unzip) all additions to your system that are not handled by tlmgr into this directory, following exactly the subdirectory structure that is used in your main TeX distribution (unzipping a TDS file does this for you). This is what enables LaTeX to find stuff automatically.
If you are a Windows user running MiKTeXWhen you create the folder for your Personal TeX Directory, you MUST add it to MiKTeX ’s list of supported folders. Run the MiKTeX Maintenance/Settings program, select the
Rootstab, and add the folder. You only have to do this once.Each time you add or remove software in your Personal TeX Directory, you MUST then click on the
Update FNDBbutton in the
Generaltab of the MiKTeX Maintenance/Settings program, otherwise MiKTeX will not find them and nothing will work!
Unix (Mac and GNU/Linux) users do not need to (indeed, should not) run their filename database indexer program (mktexlsr or texhash) for files put into a personal TeX directory.
Installation on shared systems
On multi-user systems (Unix-based), identify the shared local directory tree with the command
kpsewhich -expand-var '$TEXMFLOCAL'
This will give you the location of the shared
texmf directory into which you must unzip these files.
Do not forget to run your local TeX filename database indexer program (texhash or mktexlsr) after installation, otherwise the files will not be found by LaTeX and nothing will work!
Manual installation (non-TDS systems)
To install this software manually, download and unzip the non-TDS zip file into a temporary directory and move the class and/or package files and other files to the proper locations where LaTeX will find them on your system. This is referred to in some documentation as “the
TEXINPUTS directory”, although it may be called something else on your system.
It is your responsibility to know where this location is. See the question in the TeX FAQ at http://www.tex.ac.uk/cgi-bin/texfaq2html?label=inst-wlcf for more information. If you do not know, or cannot find it, or do not have access to it, your TeX system may be out of date and may need replacing.
Online systems and “last resort” systems
Some online LaTeX systems use CTAN, so a package from there should be available on demand. For other online LaTeX systems where you do not have access to the file system, unzip the non-TDS zip file into a temporary directory and upload the files to the online system. Follow their instructions for where to put them.
In an emergency, or as a last resort on unmanageable systems, it is possible simply to put the class and/or package files into your current working directory (the same folder as your
While this may work, it is not supported, and may lead to other resources (packages, fonts, images etc) not being found.
Include the line shown below in the Preamble of your LaTeX document; a
\documentclass line should be at the top; a
\usepackage command normally goes anywhere in the Preamble:
(similarly for other classes or packages if more than one is supplied with this package). Read the documentation for the options available, if any. The documentation is distributed as a PDF document in the zip file. You can also regenerate it by typesetting the
classpack.dtx file with
biber and makeindex) in the normal way.
Bugs and TODO
No outstanding reported bugs at the time of this version.
For TODO items, see the PDF documentation.
The following statement is included in the source code:
Transformed from classpack.xml by ClassPack db2dtx.xsl version 1.19 (2020-05-19) on Wednesday 20 May 2020 at 14:32:36 classpack.sty is copyright © 2012-2020 by Peter Flynn <firstname.lastname@example.org> This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3 of this license or (at your option) any later version. The latest version of this license is in: http://www.latex-project.org/lppl.txt and version 1.3 or later is part of all distributions of LaTeX version 2005/12/01 or later. This work has the LPPL maintenance status ‘maintained’. The current maintainer of this work is Peter Flynn <email@example.com> This work consists of the files classpack.dtx and classpack.ins, the derived file , and any other ancillary files listed in the MANIFEST.
Download the contents of this package in one zip archive (162.6k).
classpack – XML mastering for LaTeX classes and packages
The package provides an experiment in using XML (specifically DocBook 5) to mark up and maintain LaTeX classes and packages. XSLT 2 styleheets generate the .dtx and .ins distribution files expected by end users.
|Licenses||The LaTeX Project Public License 1.3|
|Copyright||2012–2020 Peter Flynn|
|Contained in||TeX Live as classpack|
MiKTeX as classpack