Skip to main content
\( \newcommand{\lt}{<} \newcommand{\gt}{>} \newcommand{\amp}{&} \)


PreTeXt is a markup language, which means that you explicitly specify the logical parts of your document and not how these parts should be displayed. This is very liberating for an author, since it frees you to concentrate on capturing your ideas to share with others, leaving the construction of the visual presentation to the software. As an example, you might specify the content of the title of a chapter to be Further Experiments, but you will not be concerned if a 36 point sans-serif font in black will be used for this title in the print version of your book, or a CSS class specifying 18 pixel height in blue is used for a title in an online web version of your book. You can just trust that a reasonable choice has been made for displaying a title of a chapter in a way that a reader will recognize it as a name for a chapter. (And if all that talk of fonts was unfamiliar, all the more reason to trust the design to software.)

You are also freed from the technical details of presenting your ideas in the plethora of new formats available as a consequence of the advances in computers (including tablets and smartphones) and networks (global and wireless). Your output “just works” and the software keeps up with technical advances and the introduction of new formats, while you concentrate on the content of your book (or article, or report, or proposal, or …).

If you have never used a markup language, it can be unfamiliar at first. Even if you have used a markup language before (such as HTML or basic ) you will need to make a few adjustments. Most word-processors are WYSIWYG (“what you see is what you get”). That approach is likely very helpful if you are designing the front page of a newspaper, but not if you are writing about the life-cycle of a salamander. In the old days, programs like troff and its predecessor, RUNOFF (1964), implemented simple markup languages to allow early computers to do limited text-formatting. Sometimes the old ways are the best ways.

PreTeXt is what is called an XML application or an XML vocabulary (I prefer the latter). Authoring in XML might seem cumbersome at first, but you will eventually appreciate the long-run economies, so keep an open mind. And if you are already familiar with XML, realize we have been very careful to design this vocabulary with human authors foremost in our mind.


The creation, design, development and maintenance of PreTeXt (MBX here) is guided by the following list of principles. They may not be fully understood on a first reading, but should be useful as you become more familiar with authoring texts with PreTeXt and should amplify some of the previous discussion.

  1. MBX is a markup language that captures the structure of textbooks and research papers in the mathematical sciences.

  2. MBX is human-readable and human-writable.

  3. MBX documents serve as a single source which can be easily converted to multiple other formats, current and future.

  4. MBX respects the good design practices which have been developed over the past centuries.

  5. MBX makes it easy for authors to implement features which are both common and reasonable.

  6. MBX supports online documents which make use of the full capabilities of the Web.

  7. MBX output is styled by selecting from a list of available templates, relieving the author of the burden involved in micromanaging the output format.

  8. MBX is free: the software is available at no cost, with an open license. The use of MBX does not impose any constraints on documents prepared with the system.

  9. MBX is not a closed system: documents can be converted to and then developed using standard tools.

List1.1.1PreTeXt Principles