Wrote XSLT to generate library metadata for PDFs and EPUBs in the form of a spreadsheet; this has triggered some additions and rewrites of content in those files. Still need to add the abstract field once it's in the data. 180 minutes.
The encoding team raised the issue of needing to break various elements around page-breaks so that the fw elements don't inherit styling from their ancestor paragraph (or similar). I've written some usefully-repurposable XSLT in /db/data/utilities/break_elements_at_pbs.xsl, and debugged/tested it with TEH's help, to recursively split elements up through the hierarchy and knit them together with @next and @previous.
This was conceptually quite tricky, although the solution is relatively straightforward once written. Recording details here because one day I'll need to reorganize or restructure a document hierarchy in a similar way, and I don't want to have to reinvent this particular wheel. 120 minutes.
Trying to get validation working on Windows, JT and I have succeeded, but at the cost of breaking the regular diagnostics build on Jenkins. I think there's only one remaining problem to solve, though. 90 minutes.
CSS floats are extensively used in our primary source encoding, and they're now no longer really necessary in many cases (such as forme works). They also cause problems for the PDF generation. I've started a process to remove them, processing away all the right floats used for catchwords. So far the results are pretty good. I'm next going to look at running headers and page numbers. The code was a bit tricky because in some situations I needed to flip the order of forme works, and in others not. 180 minutes.
Worked with TEH a lot today on the FO rendering, and found a workaround for the problem of floats in forme works. I've tested a better encoding method for the situation where catchwords appear on the same line as signatures, using negative margins instead of floats, and it works well, so if JT can't see any reason against it, we'll implement that.
I also changed thousands of list type="bulleted" to list rend="bulleted", to conform with current TEI -- need to look out for fallout from that -- and put the redirects file into the XML processing pipeline so that it's available for building the id listing page, so that people don't accidentally re-use an already-obsolete id.
The search box in the banner disappears when the page width is too small; I've coded a workaround which makes a new menu item appear to replace it, and I'm now waiting for that to percolate through the build to see if it works OK. 15 minutes.
Met with TEH and worked through some issues relating to the title page background, font embedding, and FOP configuration.
Met with TEH and got a run-down on the current situation; she's down to the last ten or so rather thorny rendering issues, in particular problems with whitespace and tables. We fixed a couple of things relating to block vs inline, and discussed some others. Good progress.
Yesterday and today, TEH and I got the code I originally started in September brushed up and working, so there is a functional PDF generation pipeline; she's now beginning to fill in some template details and getting familiar with how attribute-sets work. There's quite a lot of work to do here, but it's all going to be quite satisfying from an Endings point of view, and there's a lot to learn for TEH.