Fixed a lot of shadow warnings. Haven't actually turned shadow warnings
on, as there are a lot of warnings in dependencies. Also made some
constructors explicit, and tweaked the initialisers in some places.
Docbook requires sections to have titles, but if they're empty it writes
out a '???' title, having not title seems cleaner. Can be fooled by
putting empty phrase markup in the title, so might need to be a little
smarter about that.
I'm considering adding a warning, perhaps an error in strict mode.
When adding links, don't add them around other links. If there's
anything outside of existing links, they'll still get linked. Although,
maybe it would be better to only add link tags when the title doesn't
contain any links. This might be over-complicated and confusing.
Sometimes when including files on the path the same glob will match the
same relative path from different include paths. In this case the paths
were ordered by their absolute paths. Instead use the order they occur
in the include path, which is a little more independent of the local
machine.
[SVN r86708]
Note that the test cases are really awkward so this is unlikely to
actually happen normally, but implementation is much easier if it
doesn't have to worry about these cases.
[SVN r86704]
This is based on Rene's implementation, but I used my own glob function,
and adjusted a few things since it's now always using ascii. It would be
nice to support unicode, but that would require at the very least a
normalization library, and perhaps more than that.
[SVN r86699]
Actually a subtle change, as includes and anchors could previously
contain spaces. Possibly should still alow that, although I expect it's
never used.
[SVN r86688]
Which sounds obvious when it's put like that. But I originally did this
in the parser because the parser was tracking lists anyway. But that
made a mess of handling `[ordered_list]` and `[itemized_list]`, I tried
fixing that but made a pig's ear of it.
The code for handling 'explicit lists' will still be a bit messy because
the generator is currently oblivious to what type of block element it's
generating markup for, and it needs to be aware for lists.
[SVN r85339]