In the eat-your-own-dogfood dept, I decided over the weekend that it would be a good idea to make the effort to use the @selector
attribute on <rendition>
, instead of having the body of the document full of huge numbers of repeated @rendition
attributes in the document body. However, this requires that we process the results, and actually reconstruct all those pointers by resolving @selector
at the standalone XML generation stage. I've put that into practice today. It's a slightly tricky process involving the creation and execution of a temporary XSLT file for every document concerned; I don't yet know whether it will work, but I think it can be made to do so, and I've consequently pruned Stow 1598 quite fiercely to remove a lot of these attributes.
For a while now, as the static build process has become more complicated and lengthy, it's been a bit tedious to wait to see the results of changes you made to the build or the documents. Today I reworked the whole process to parameterize it, so that you can pass in a set of document ids and have it process only those ids. This should only really be done in a context where the whole build has been run at least once, to give you all the surrounding framework for a functioning site, but after that it's very quick.
You can now send a single document or a few through the build process like this:
ant -lib ../utilities -DdocsToBuild=ABCH1,stow_1598_CORN1 subset
This will complete the entire build process including all the various XML outputs as well as the XHTML, for the specified ids. It doesn't do any validation. It does copy all the schemas, JS files, CSS etc. to the site folder, since that's trivial and quick, and often needed if you're working on rendering issues.
The individual stages have also been parameterized, so you can (for instance) just generate the XHTML5 for a specific document like this:
ant -lib ../utilities -DdocsToBuild=ABCH1 createXhtmlDocs
This should significantly streamline our dev process.
At the moment, I see no reason to parameterize the validation targets, but we may decide we want to do that at some point.
Last night I added RSS feed generation to the static build, with the blog feed, then supplemented it with the news feed this morning. In the process I discovered that our existing feeds have been slightly broken for ever; they were pointing at mapoflondon.uvic.ca/redesign, which redirects to the correct location, but still; fixed now.
Added fixes for:
- Paragraphs which were losing class="para" when they had @rendition.
- Images which had style attributes to size them, but they were not being used.
- Items in the blog post listings page, which needed their sample text.
- Images in the blog post listings page, which needed to be thumbnailed and gray-scaled.
In order to be able to back completely away from the original-document-style display, it makes sense to be able to provide a real hard-core rendering of the document, using blackletter and all that; if that's available, then we can switch away from it with much more freedom to transform the rendering to something more standardized and reader-friendly. I've been working on that for most of this afternoon, and we're making some progress. Lots more work to do, though.
Did the POPE ones because they came up when I was working on KING12 and since I had the info I did them. I think we're now left with about a dozen locations for Cornhill.
In the loc-a-thon, did stubs/abstracts for KING2, FLEE6, STMA1 and TEMP1; found a modern location for POPE6; and fixed a bunch of bad links in Stow in the process.
No time to report...
The appearance of an invalid file that broke builds prompted me to implement a Schematron rule that checks that your document filename matches the root element's @xml:id. That then triggered a bunch of errors in the static build because we were being cavalier about that sort of thing when creating and using temporary files during the build process. I've now fixed all those errors.
Today:
- Duplicate rendering of names in popups and person pages now fixed.
- Footnotes are now working properly, with Schematron preventing use of unnecessary paragraphs inside them.
- I fixed a bunch of issues in Stow 1598 (bad links, missing style, etc.), and in some other files.
- I added test rendering in CSS for the empty hi elements from Stow, so we can visualize what they might look like.
- Made the map work slightly differently when you link to a single location: now it's selected.
- I've made a start on the creation of the A-Z listings page, but have no content in it yet. There are decisions to make about how linking should work from that page. Obviously we don't want to populate it with everything on the site.