Infrastructure updates to support new Swarm
DocBook documentation:
- Strip out XSLTHL; it does a poor job of highlighting
the kinds of syntax included in our documentation,
and it does an awful job when code to be highlighted
contains other markup, such as xref, link, or
replaceable.
- Add in google-code-prettify (from Swarm) so that
generated HTML has fairly decent syntax highlighting
for many of the code examples we use.
Further work on syntax highlighting, particularly for
PDF output, is required.
- Disable TOC generation in HTML; the HTML template
already includes the full TOC as a sidebar on every
page.
- Update the xmlns attribute and image URL filtering.
- Fix a bug in HTML page title XSL that often prevented
the current section title from being included. This
was more obvious in the Swarm documentation which
chunks into pages by section, rather than by chapter.
- Update the HTML indexer to process multiple HTML
files in one pass for performance, and overall simplify
the code structure.
- Adjust sidebar TOC activation logic to allow Bootstrap's
scrollSpy code to work with section-based chunking.
- Re-introduce the "brand" markup in the HTML doc
heading so that Swarm's documentation can include its
logo. Other guides can do so if required, but none have
been updated to do so yet.
- Add facility for guide-specific custom javacsript
inclusion.
- Add facility to apply custom CSS classes to images in
documentation. This is used in Swarm documentation
to provide thumbnail, popup, and "framed" images.
- Adjust xref and link text to just report the chapter or
section name, without the preamble text, for example:
"the section called".
- Add <replaceable role="bold"> to provide a second
kind of emphasis to programlistings.
- Added a subtle color to <filename> content, to help
distinguish from other literal text.
- Removed the separator rule from the first section
heading while chunking by section.
- Added Swarm's orderedlist styling so that each
numbered item has a circle around the number and
a vertical bar indicating the extend of the item.
- Added a visual indicator when a link points to an
external document.
- Rewrote the javascript search code to search for
exact and fuzzy terms matches, as well as phrases.
Relevance scoring is included, but likely needs some
fine tuning to suit our documentation.