• Updated 2023-07-12: Hello, Guest! Welcome back, and be sure to check out this follow-up post about our outage a week or so ago.

QuickLook for legacy (MacWrite, etc) files

pl212

Active member
A common problem when rooting around on old media is the tedious process of converting MacWrite files for viewing. Oftentimes these are ReadMe files that explain exactly what the software is, or provide other crucial information about what's on a disk. Unlike pure-text documents from TeachText/SimpleText, these MacWrite files won't easily open in modern software. Sure, you can mount the disk image in an emulator, but that means keeping around various versions of MacWrite (5, Pro, etc) that can successfully open these files -- and browsing large archives (such as late-1980s CD-ROMs) is painful on System 6 machines, without features such as the Desktop Manager.

I'm wondering how hard it would be to build a QuickLook indexer, to generate both static thumbnails (for Finder icons) and multi-page previews (for spacebar-activated QuickLook previews) for these files. There's an open-source package out which is working towards command-line conversion of MacWrite, WriteNow, and other System 6-era documents:

http://sourceforge.net/projects/libmwaw/

For better or worse, the output format is ODT -- OpenDocument format, which is XML-based. Luckily, QuickLook understands these files natively, and already builds previews and thumbnails for them.

So one approach would be to build a QL Indexer which 1) converted MacWrite files in a temporary directory, 2) ran the standard system OTD ingester on them, and 3) incorporated the results into the QL database.

One unsolved problem is that system has to "know" about various file types, which it does through the 10.4-era UTI system. This is obviously a long way from the Type/Creator codes that all MacWrite documents will have. But this information is still around:

mdls Print\ Utility\ 1.0\ Docs

Results:

Code:
kMDItemDisplayName             = "Print Utility 1.0 Docs"
kMDItemFSContentChangeDate     = 1988-06-02 04:11:40 +0000
kMDItemFSCreationDate          = 1988-05-31 22:41:57 +0000
kMDItemFSCreatorCode           = "MACA"
kMDItemFSTypeCode              = "WORD"
I haven't dug deep enough to figure out if one can assign a QL Indexer based on Type/Creator, rather than the more modern UTI. It may be we have to create a "stub" application that registers MacWrite files and assigns them a new, modern UTI. (This could be bundled with the QL Indexer for distribution purposes.)

Some resources:

http://www.qlplugins.com/developer

https://developer.apple.com/library/mac/#documentation/UserExperience/Conceptual/Quicklook_Programming_Guide/Introduction/Introduction.html

 
Top