The source splitting is now completely generalised, and I have set it up to automatically find and split all sources that contain terms like Baptism Register, Probate Calendar, Census, etc. The new source name is generally a combination of the original lumped source, the citation, and other fields as appropriate to the source type to make it more readable to us mere humans, and hopefully keep it unique (at least in the context of my databases). Examples include
Baptism Register, Chelsea St. Luke, MDX: John Smith, 22 MAR 1817
Census, 1851: Dover, Kent, England (HO107/1632, folio 471 p33)
England and Wales National Probate Calendar: 1925, Jane Smith, and so on.
Adding both names to marriage sources is slightly more complicated, but I might do that later. It also adds an appropriate Source Type automatically.
Duplication is identified on the basis of the new name, so the final GEDCOM contains just one unique copy of each source. All media file links are transferred, but they are now source media rather than citation media.
As well as the conventional GEDCOM file, the output comprises an Excel workbook containing the original and new GEDCOM, plus a list of all the sources in the original file with those split highlighted for audit purposes.
Although it is not yet tested thoroughly, a quick check of a few randomly selected records did indicate that it also works as intended on the FH database GEDCOM, not just the FTM import. So in principle it could also be useful for established databases, not just new imports.
As discussed before, this is a rather niche application, as it relies on a third party software package (MS Excel) that not everybody will have, and the code does need some customisation to how the user names their sources. But it could be useful for demonstration pending the development of a user-friendly generalised FH plug-in, or even a simple stand-alone source splitter. It has at least saved me from a lot of tedious re-keying or copy/pasting as I gradually review my data over the coming weeks