Fix the block example.

git-svn-id: https://svn.boost.org/svn/boost/trunk/tools/quickbook@84062 b8fc166d-592f-0410-95f2-cb63ce0dd405
Support the token pasting operator in C++ code blocks. Refs #8510.

git-svn-id: https://svn.boost.org/svn/boost/trunk/tools/quickbook@84063 b8fc166d-592f-0410-95f2-cb63ce0dd405
Merge branch 'trunk'
Options class to reduce parameters to parse_document.
Escape paths in dependency list - I want to make this optional.
Make escaping dependent file names optional.
Add comments to location finding code for indented blocks.
Stop storing indentation in mapped source.

Instead work out the relevant position by finding the start of content
and working from there. It doesn't quite get it right if the position is
in the middle of the indentation, but that's fine.

I'm doing this because I want to be able to change the indentation if
it's a mix of tabs and spaces (which it currently messes up).
Store start of unindented block, as the original start.

Was storing the position after the removed text, this meant that I had
to use a special case for the first line, but now the algorithm is smart
enough to get it right.
Clean up mixed tabs/spaces when unindenting.

If the whitespace to be removed when unindenting a block is not
consistent, then replace all the indentation in that block with spaces
(i.e. expand tabs). This fixes some odd results that could happen, e.g.

    ....Line 1
    --->Line 2

(dots = spaces, arrow = tab) would become:

    ...Line 1
    Line 2

Because the first character was removed from each line. This now works
okay.

But I don't expand tabs when the whitespace that isn't removed is
inconsistent, which can have odd results, for example:

    ..Line 1
    ..->Line 2
    ......Line 3

Will just remove the first two spaces, resulting in:

    Line 1
    --->Line 2
    ....Line 3

This should be rare, as tabs after spaces are a bit odd. But maybe I
should convert to spaces more often. Perhaps when indentation is
inconsistent, or perhaps whenever a mixture of tabs and spaces are used,
or even always just do it.