| Home | Libraries | People | FAQ | More

## Chapter 39. Quickbook 1.5

### Joel de Guzman

### Eric Niebler

Copyright © 2002, 2004, 2006 Joel de Guzman, Eric Niebler

Copyright © 2010, 2011 Daniel James

Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)

## Introduction

> “Why program by hand in five days what you can spend five years of your life automating?”

> -- Terrence Parr, author ANTLR/PCCTS

Well, QuickBook started as a weekend hack. It was originally intended to be a sample application using Spirit. What is it? What you are viewing now, this documentation, is autogenerated by QuickBook. These files were generated from one master:

> quickbook.qbk

Originally named QuickDoc, this funky tool that never dies, evolved into a funkier tool thanks to Eric Niebler who resurrected the project making it generate BoostBook instead of HTML. The BoostBook documentation format is an extension of DocBook, an SGML or XML based format for describing documentation.

| Tip
You don't need to know anything about BoostBook or DocBook to use QuickBook. A basic understanding of DocBook might help, but shouldn't be necessary. For really advanced stuff you will need to know DocBook, but you can ignore it at first, and maybe continue to do so.

QuickBook is a WikiWiki style documentation tool geared towards C++ documentation using simple rules and markup for simple formatting tasks. QuickBook extends the WikiWiki concept. Like the WikiWiki, QuickBook documents are simple text files. A single QuickBook document can generate a fully linked set of nice HTML and PostScript/PDF documents complete with images and syntax- colorized source code.

Features include:

- generate BoostBook xml, to generate HTML, PostScript and PDF
- simple markup to link to Doxygen-generated entities
- macro system for simple text substitution
- simple markup for italics, bold, preformatted, blurbs, code samples, tables, URLs, anchors, images, etc.
- automatic syntax coloring of code samples
- CSS support